Skip to content

bug: Non-exported submodules included in Modules table following "Auto-summary of members" #203

@ringohoffman

Description

@ringohoffman

Description of the bug

Following 7f9757d, other submodules of the package not exported via __all__ are being included in a Modules: section.

e.g. for:

foo/module2.py:

from foo import module1

__all__ = [
    "Bar",
]

class Bar:
    """Bars the bazes."""

module1 is getting included into a Modules table even though it is not exported.

To Reproduce

https://github.com/ringohoffman/mkdocstrings-python-minimum-reproducible-example/tree/main

git clone https://github.com/ringohoffman/mkdocstrings-python-minimum-reproducible-example
cd mkdocstrings-python-minimum-reproducible-example
python -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
mkdocs build
mkdocs serve

Then open the doc page for module2.

Full traceback

Screenshot 2024-11-11 at 15 13 26

Expected behavior

I only expect the modules to be included in the Modules section if they are exported via __all__.

Environment information

python -m mkdocstrings_handlers.python.debug  # | xclip -selection clipboard
- __System__: Linux-5.15.0-117-generic-x86_64-with-glibc2.31
- __Python__: cpython 3.10.15 (/home/matthew/.conda/envs/mkdocstrings/bin/python)
- __Environment variables__:
- __Installed packages__:
  - `mkdocs` v1.6.1
  - `mkdocstrings` v0.26.2
  - `mkdocstrings-python` v1.12.2
  - `griffe` v1.5.1

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    pFad - Phonifier reborn

    Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

    Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy