From e2795876bba4d378765c71702ca301d767472c92 Mon Sep 17 00:00:00 2001 From: Andras Schmelczer Date: Sat, 25 Jun 2022 18:33:17 +0200 Subject: [PATCH] Add nbconvert by default --- setup.cfg | 1 + src/great_ai/__main__.py | 18 +++++++----------- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/setup.cfg b/setup.cfg index 85cf284..6294d0c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -41,6 +41,7 @@ install_requires = fastapi >= 0.70.0 plotly >= 5.8.0 dash >= 2.4.0 + nbconvert >= 6.5.0 uvicorn[standard] >= 0.18.0 watchdog >= 2.1.0 pymongo >= 4.0.0 diff --git a/src/great_ai/__main__.py b/src/great_ai/__main__.py index 9b2367a..39af9a0 100644 --- a/src/great_ai/__main__.py +++ b/src/great_ai/__main__.py @@ -116,18 +116,14 @@ def main() -> None: def get_script_name(file_name_argument: str) -> str: if file_name_argument.endswith(".ipynb"): logger.info("Converting notebook to Python script") - try: - from nbconvert import PythonExporter + from nbconvert import PythonExporter - exporter = PythonExporter() - content, _ = exporter.from_filename(file_name_argument) - file_name_argument = get_script_name_of_notebook(file_name_argument) - with open(file_name_argument, "w", encoding="utf-8") as f: - f.write(content) - except ImportError: - raise ImportError( - "Install `nbconvert` to be able to use Jupyter notebook files or use a regular Python file instead" - ) + exporter = PythonExporter() + content, _ = exporter.from_filename(file_name_argument) + file_name_argument = get_script_name_of_notebook(file_name_argument) + + with open(file_name_argument, "w", encoding="utf-8") as f: + f.write(content) return re.sub(r"\.(py|ipynb)$", "", file_name_argument)