From 98335dc763bf10eb0e1cae00fbeeb384d3c7298a Mon Sep 17 00:00:00 2001 From: sayalaruano Date: Mon, 24 Feb 2025 15:06:57 +0100 Subject: [PATCH 1/6] =?UTF-8?q?=F0=9F=90=9B=20Fix:=20solve=20issue=20of=20?= =?UTF-8?q?the=20dfi=20library=20to=20export=20a=20dataframe=20as=20an=20i?= =?UTF-8?q?mage=20for=20static=20reports.=20Also,=20publish=20a=20new=20st?= =?UTF-8?q?reamlit=20report=20upon=20a=20new=20release?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/docs.yml | 1 + src/vuegen/quarto_reportview.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index e787663..c5ac1a2 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -57,6 +57,7 @@ jobs: run: | find docs/streamlit_report/sections -type f -name "*.py" -exec sed -i 's|/home/runner/work/vuegen/vuegen/docs/||g' {} + - name: Publish Streamlit report to streamlit-example branch + if: startsWith(github.ref, 'refs/tags') uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/src/vuegen/quarto_reportview.py b/src/vuegen/quarto_reportview.py index e68be0c..db94780 100644 --- a/src/vuegen/quarto_reportview.py +++ b/src/vuegen/quarto_reportview.py @@ -641,7 +641,7 @@ def _show_dataframe(self, dataframe, is_report_static, static_dir: str = STATIC_ if is_report_static: # Generate path for the DataFrame image df_image = os.path.join(static_dir, f"{dataframe.title.replace(' ', '_')}.png") - dataframe_content.append(f"dfi.export(df, '{os.path.abspath(df_image)}', max_rows=10, max_cols=5)\n```\n") + dataframe_content.append(f"df.dfi.export('{os.path.abspath(df_image)}', max_rows=10, max_cols=5)\n```\n") # Use helper method to add centered image content dataframe_content.append(self._generate_image_content(df_image)) else: From f1fbbfa87eba611b70f7fc2d6cb5dd66dcceb97a Mon Sep 17 00:00:00 2001 From: sayalaruano Date: Mon, 24 Feb 2025 17:50:33 +0100 Subject: [PATCH 2/6] =?UTF-8?q?=F0=9F=90=9B=20Fix:=20remove=20unnecesary?= =?UTF-8?q?=20indentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/vuegen/quarto_reportview.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/vuegen/quarto_reportview.py b/src/vuegen/quarto_reportview.py index 932c1f3..600174d 100644 --- a/src/vuegen/quarto_reportview.py +++ b/src/vuegen/quarto_reportview.py @@ -770,10 +770,10 @@ def _show_dataframe( if is_report_static: # Generate path for the DataFrame image df_image = os.path.join( - static_dir, f"{dataframe.title.replace(' ', '_')}.png" + static_dir, f"{dataframe.title.replace(' ', '_')}.png" ) dataframe_content.append( - f"df.dfi.export('{os.path.abspath(df_image)}', max_rows=10, max_cols=5)\n```\n" + f"df.dfi.export('{os.path.abspath(df_image)}', max_rows=10, max_cols=5)\n```\n" ) # Use helper method to add centered image content dataframe_content.append(self._generate_image_content(df_image)) From a8a96ef6142316f14b2a1cc5c490e1274a9516e3 Mon Sep 17 00:00:00 2001 From: sayalaruano Date: Mon, 24 Feb 2025 18:04:09 +0100 Subject: [PATCH 3/6] =?UTF-8?q?=F0=9F=A5=85=20Build:=20add=20validation=20?= =?UTF-8?q?for=20quarto=20installation.=20Closes=20#47?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/vuegen/report_generator.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/vuegen/report_generator.py b/src/vuegen/report_generator.py index 8faaf99..b64f462 100644 --- a/src/vuegen/report_generator.py +++ b/src/vuegen/report_generator.py @@ -1,4 +1,5 @@ import logging +import shutil from .config_manager import ConfigManager from .quarto_reportview import QuartoReportView @@ -61,6 +62,11 @@ def get_report( st_report.run_report() else: + # Check if Quarto is installed + if shutil.which("quarto") is None: + logger.error("Quarto is not installed. Please install Quarto before generating this report type.") + raise RuntimeError("Quarto is not installed. Please install Quarto before generating this report type.") + quarto_report = QuartoReportView(report=report, report_type=report_type) quarto_report.generate_report() quarto_report.run_report() From 40919a1c22787ee93dcbb36852cd65ebd82323a3 Mon Sep 17 00:00:00 2001 From: sayalaruano Date: Mon, 24 Feb 2025 18:07:38 +0100 Subject: [PATCH 4/6] =?UTF-8?q?=F0=9F=8E=A8=20Fix:=20add=20indentation=20f?= =?UTF-8?q?ollowing=20black=20format?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/vuegen/report_generator.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/vuegen/report_generator.py b/src/vuegen/report_generator.py index b64f462..841fe26 100644 --- a/src/vuegen/report_generator.py +++ b/src/vuegen/report_generator.py @@ -64,8 +64,12 @@ def get_report( else: # Check if Quarto is installed if shutil.which("quarto") is None: - logger.error("Quarto is not installed. Please install Quarto before generating this report type.") - raise RuntimeError("Quarto is not installed. Please install Quarto before generating this report type.") + logger.error( + "Quarto is not installed. Please install Quarto before generating this report type." + ) + raise RuntimeError( + "Quarto is not installed. Please install Quarto before generating this report type." + ) quarto_report = QuartoReportView(report=report, report_type=report_type) quarto_report.generate_report() From d8d476aeb97a0c99b8976d094bc722a808da7ead Mon Sep 17 00:00:00 2001 From: sayalaruano Date: Mon, 24 Feb 2025 18:20:59 +0100 Subject: [PATCH 5/6] =?UTF-8?q?=F0=9F=90=9B=20Build:=20remove=20space=20to?= =?UTF-8?q?=20follow=20black=20format?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/vuegen/report_generator.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/vuegen/report_generator.py b/src/vuegen/report_generator.py index 841fe26..db06d10 100644 --- a/src/vuegen/report_generator.py +++ b/src/vuegen/report_generator.py @@ -70,7 +70,6 @@ def get_report( raise RuntimeError( "Quarto is not installed. Please install Quarto before generating this report type." ) - quarto_report = QuartoReportView(report=report, report_type=report_type) quarto_report.generate_report() quarto_report.run_report() From d94154b62eb522cbccad2c6afe14d34b9720485c Mon Sep 17 00:00:00 2001 From: Henry Webel Date: Tue, 25 Feb 2025 10:21:17 +0100 Subject: [PATCH 6/6] :bug: increase limit of per cell execution timeout for mystnb --- docs/conf.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/conf.py b/docs/conf.py index 61c767d..f0d12b8 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -56,6 +56,8 @@ nb_execution_raise_on_error = True # Rendering nb_merge_streams = True +# maximum execution time per cell in seconds +nb_execution_timeout = 120 # https://myst-nb.readthedocs.io/en/latest/authoring/custom-formats.html#write-custom-formats # ! if you use it, then you cannot directly execute the notebook in the browser in colab