• v0.2.0 b2a8e54766

    0.2.0
    Release package / Build package (release) Successful in 24s
    Release package / Prepare release asset upload (release) Successful in 14s
    Release package / Publish package to package registry (release) Successful in 16s
    Release package / Upload release asset (${{ fromJSON(needs.prepare_upload_release_asset.outputs.files) }}) (release) Successful in 23s
    Stable

    jakob.scheid released this 2026-09-28 00:40:29 +02:00 | 43 commits to main since this release

    0.2.0

    Major Highlights

    Base command-line interface

    A base command-line interface (CLI) is now available for you. With this, it is easier to use jcloud-docsgen. When you install it, the CLI is directly accessible via jcloud-docsgen—you do not need to write python3 -m jcloud_docsgen.

    Each language is a subcommand of the CLI and there are some common arguments like -f for overwriting the output directory or -o for the output directory path. Each language has its own additional options.

    Errors are handled by the CLI, so the full traceback is not displayed, but a short message like

    jcloud-docsgen: error: docs/reference: directory not empty
    

    See #16.

    Protection against accidental output directory overwriting

    From now on, you are protected from overwriting the output directory. Example:

    > jcloud-docsgen python src -o docs/reference
    jcloud-docsgen: error: docs/reference: directory not empty
    

    You can bypass this protection with the -f or --force flag:

    > jcloud-docsgen python src -fo docs/reference
    

    When you do this, the output directory will be deleted recursively first.

    See #40.

    No requirements for the project directory structure

    Previously, a src/ directory with directories for each package were required. Now, you are free to choose your own structure of the project directory—jcloud-docsgen will collect each *.py file in the project directory.

    But pay attention: If you use the src/ structure, you have to specify the code directory as the project directory—for example src/package_name/ or src/.

    See #39.

    All changes since last stable release (0.1.0)

    Features

    • Feat(python-generator): protection against accidental overwriting of the output directory in #40
    • Feat(python-generator): remove implicit assumptions of project directory structure in #39
    • Feat(python-generator): output directory creation in #37
    • Feat(cli): add base command-line interface in #16

    Fixes

    • Fix(ci): spelling error in API reference workflow in #48
    • Fix(python-generator): Python namespaces comparision type check in #41
    • Fix(python-generator): make generated signatures compliant with PEP 8 in #35

    Chore

    • Chore: prepare release 0.2.0 in #49
    • Chore(ci): adapt API reference workflow to the new API in #45
    • Chore(ci): add workflow to generate API reference in #29
    • Chore: conventional commit messages template in #25
    • Chore(lint): set up Ruff, lint and format in #22
    • Chore: Python .gitignore template in #13
    • Chore: add .venv to .gitignore in #11
    • Chore(deps): add development dependencies in #9
    • Chore: migration to Poetry in #6

    Style

    • Style: trailing commas in multi-line statements in #21
    • Style: ensure line character limit and remove trailing whitespace in #19

    Testing

    • Test(python-generator): name testing function correctly in #36

    Refactorings

    • Refactor: lint code in #43
    • Refactor(python-generator): rename misnamed testing function in #23
    • Refactor(utils): mark ExistingDirectory and ExistingFile as deprecated in #14

    Documentation

    • Docs(readme): reference to Gitea Package Registry instead of concrete installation instructions in #28

    Contributors

    Full Changelog: v0.1.0...v0.2.0

    Changelog: CHANGELOG.md

    Downloads