From 712bc1c13763759967e9d33e281c12cc1c9b0456 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20Krzy=C5=9Bk=C3=B3w?= Date: Fri, 16 Feb 2024 19:48:19 +0100 Subject: [PATCH] Fixed info plugin to gather all files recursively --- material/plugins/info/plugin.py | 12 ++++-------- src/plugins/info/plugin.py | 12 ++++-------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/material/plugins/info/plugin.py b/material/plugins/info/plugin.py index c7ed33833d1..f226f16563c 100644 --- a/material/plugins/info/plugin.py +++ b/material/plugins/info/plugin.py @@ -30,7 +30,6 @@ from io import BytesIO from markdown.extensions.toc import slugify from mkdocs.plugins import BasePlugin, event_priority -from mkdocs.structure.files import get_files from mkdocs.utils import get_theme_dir from zipfile import ZipFile, ZIP_DEFLATED @@ -115,15 +114,12 @@ def on_config(self, config): # Create self-contained example from project files: list[str] = [] with ZipFile(archive, "a", ZIP_DEFLATED, False) as f: - for path in ["mkdocs.yml", "requirements.txt"]: - if os.path.isfile(path): + for abs_root, dirnames, filenames in os.walk(os.getcwd()): + for name in filenames: + path = os.path.join(abs_root, name) + path = os.path.relpath(path, os.path.curdir) f.write(path, os.path.join(example, path)) - # Append all files visible to MkDocs - for file in get_files(config): - path = os.path.relpath(file.abs_src_path, os.path.curdir) - f.write(path, os.path.join(example, path)) - # Add information on installed packages f.writestr( os.path.join(example, "requirements.lock.txt"), diff --git a/src/plugins/info/plugin.py b/src/plugins/info/plugin.py index c7ed33833d1..f226f16563c 100644 --- a/src/plugins/info/plugin.py +++ b/src/plugins/info/plugin.py @@ -30,7 +30,6 @@ from io import BytesIO from markdown.extensions.toc import slugify from mkdocs.plugins import BasePlugin, event_priority -from mkdocs.structure.files import get_files from mkdocs.utils import get_theme_dir from zipfile import ZipFile, ZIP_DEFLATED @@ -115,15 +114,12 @@ def on_config(self, config): # Create self-contained example from project files: list[str] = [] with ZipFile(archive, "a", ZIP_DEFLATED, False) as f: - for path in ["mkdocs.yml", "requirements.txt"]: - if os.path.isfile(path): + for abs_root, dirnames, filenames in os.walk(os.getcwd()): + for name in filenames: + path = os.path.join(abs_root, name) + path = os.path.relpath(path, os.path.curdir) f.write(path, os.path.join(example, path)) - # Append all files visible to MkDocs - for file in get_files(config): - path = os.path.relpath(file.abs_src_path, os.path.curdir) - f.write(path, os.path.join(example, path)) - # Add information on installed packages f.writestr( os.path.join(example, "requirements.lock.txt"),