diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 650549c..01926dc 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -4,6 +4,7 @@ ### Fixed +- Python namespace name conflict when package and module have the same name - Internal namespace name error which occured when generating Python documentation with `.` as the project directory ## [0.2.0] - 2026-09-28 diff --git a/src/jcloud_docsgen/core/python/_core.py b/src/jcloud_docsgen/core/python/_core.py index c84cb11..78b3f14 100644 --- a/src/jcloud_docsgen/core/python/_core.py +++ b/src/jcloud_docsgen/core/python/_core.py @@ -1107,7 +1107,9 @@ class PythonDocumentationGenerator: ) for entry in directory.iterdir(): - if entry.is_dir(): + if entry.is_dir() and ( + entry.parent / (f'{entry.stem}.py') + ).resolve() not in [e.resolve() for e in entry.parent.iterdir()]: namespace.add(self._namespace(entry)) elif entry.suffix == '.py': namespace.add(PythonModuleNamespace(entry.stem)) diff --git a/tests/unit/core/python/_core/test_PythonDocumentationGenerator/test_generate_documentation/case02/project/pkg/module/module2.py b/tests/unit/core/python/_core/test_PythonDocumentationGenerator/test_generate_documentation/case02/project/pkg/module/module2.py new file mode 100644 index 0000000..3d76135 --- /dev/null +++ b/tests/unit/core/python/_core/test_PythonDocumentationGenerator/test_generate_documentation/case02/project/pkg/module/module2.py @@ -0,0 +1,3 @@ +""" +Module 2. +"""