← GDG /

#284 gdtest_auto_include

#284 gdtest_auto_include OK CONFIG
Force-include AUTO_EXCLUDE names via auto_include config
Module exports names that match AUTO_EXCLUDE (config, logging, main) alongside real API (Widget, process). The auto_include config option forces config and logging back into documentation while main remains excluded. Tests selective override of AUTO_EXCLUDE.
View Site → Build Log ๐Ÿงช Test Coverage

Build Mode

● Has great-docs.yml

This package ships a pre-supplied config. The great-docs init step is skipped and great-docs build uses the spec-defined configuration directly. Tests specific config options and their rendered output.

Dimensions

A1 B7 C4 D1 E6 F6 G1 H7
A1Flat layoutlayout
B7AUTO_EXCLUDE namesexports
C4Mixed class+funcobjects
D1NumPydocstrings
E6No directivesdirectives
F6No user guideuser_guide
G1README.mdlanding
H7No extrasextras

Source Files

๐Ÿ“ gdtest_auto_include/
๐Ÿ“„ __init__.py
"""A test package with auto_include overriding AUTO_EXCLUDE."""

__version__ = "0.1.0"
__all__ = ["Widget", "process", "config", "logging", "main"]


class Widget:
    """
    A public widget class.

    Parameters
    ----------
    label
        Widget label.
    """

    def __init__(self, label: str):
        self.label = label

    def render(self) -> str:
        """
        Render the widget.

        Returns
        -------
        str
            Rendered HTML.
        """
        return f"<widget>{self.label}</widget>"


def process(data: str) -> str:
    """
    Process input data.

    Parameters
    ----------
    data
        Raw input data.

    Returns
    -------
    str
        Processed data.
    """
    return data.strip()


class config:
    """
    Configuration manager for the package.

    This is a real public API class that happens to be named ``config``
    โ€” a name normally in AUTO_EXCLUDE. The ``auto_include`` option
    forces it back into documentation.

    Parameters
    ----------
    path
        Configuration file path.
    """

    def __init__(self, path: str = "config.ini"):
        self.path = path

    def load(self) -> dict:
        """
        Load configuration from file.

        Returns
        -------
        dict
            Loaded configuration values.
        """
        return {}


class logging:
    """
    Logging facade for the package.

    This is a real public API class that happens to be named ``logging``
    โ€” a name normally in AUTO_EXCLUDE. The ``auto_include`` option
    forces it back into documentation.

    Parameters
    ----------
    level
        Default log level.
    """

    def __init__(self, level: str = "INFO"):
        self.level = level

    def info(self, msg: str) -> None:
        """
        Log an informational message.

        Parameters
        ----------
        msg
            The message to log.
        """
        pass


def main():
    """CLI entry point โ€” should still be auto-excluded."""
    pass
๐Ÿ“„ README.md
# gdtest-auto-include

A synthetic test package testing auto_include override of AUTO_EXCLUDE.
๐Ÿ“„ great-docs.yml
auto_include:
  - config
  - logging