https://github.com/sap/invoke-plugin-for-sphinx
A plugin for Sphinx which let's you document invoke tasks.
https://github.com/sap/invoke-plugin-for-sphinx
documentation invoke python sphinx sphinx-extension task
Last synced: 4 months ago
JSON representation
A plugin for Sphinx which let's you document invoke tasks.
- Host: GitHub
- URL: https://github.com/sap/invoke-plugin-for-sphinx
- Owner: SAP
- License: apache-2.0
- Created: 2023-03-15T08:57:23.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-08-12T09:44:57.000Z (6 months ago)
- Last Synced: 2025-08-17T14:50:29.962Z (6 months ago)
- Topics: documentation, invoke, python, sphinx, sphinx-extension, task
- Language: Python
- Homepage:
- Size: 206 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[](https://api.reuse.software/info/github.com/SAP/invoke-plugin-for-sphinx)
[](https://github.com/psf/black)
[](https://pycqa.github.io/isort/)
[](https://badge.fury.io/py/invoke-plugin-for-sphinx)
[](https://coveralls.io/github/SAP/invoke-plugin-for-sphinx)
# Invoke Plugin for Sphinx
This is a plugin which allows the documentation of invoke tasks with sphinx `autodoc`.
An invoke task looks like a normal function but the `@task` decorator creates a `Task` object behind the scenes.
Documenting these with `autodoc` can lead to errors or unexpected results.
## Installation
`pip install invoke-plugin-for-sphinx`, that's it.
## Usage
Add the plugin to the extensions list:
```py
extensions = ["invoke_plugin_for_sphinx"]
```
Then you can use `.. automodule::` as usual.
Behind the scenes, the function documenter of `autodoc` is extended to also handle tasks equal to functions.
Therefore the same configurations, limitations and features apply.
## Development
This project uses `uv`.
To setup a venv for development use
`python3.14 -m venv venv && pip install uv && uv sync --all-groups && rm -rf venv/`.
Then use `source .venv/bin/activate` to activate your venv.
## Build and Publish
This project uses `setuptools` as the dependency management and build tool.
To publish a new release, follow these steps:
* Update the version in the `pyproject.toml`
* Add an entry in the changelog
* Push a new tag like `vX.X.X` to trigger the release
## Support, Feedback, Contributing
This project is open to feature requests/suggestions, bug reports etc. via [GitHub issues](https://github.com/SAP/invoke-plugin-for-sphinx/issues). Contribution and feedback are encouraged and always welcome. For more information about how to contribute, the project structure, as well as additional contribution information, see our [Contribution Guidelines](CONTRIBUTING.md).
## Code of Conduct
We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone. By participating in this project, you agree to abide by its [Code of Conduct](CODE_OF_CONDUCT.md) at all times.
## Licensing
Copyright 2025 SAP SE or an SAP affiliate company and invoke-plugin-for-sphinx contributors. Please see our [LICENSE](LICENSE) for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available [via the REUSE tool](https://api.reuse.software/info/github.com/SAP/invoke-plugin-for-sphinx).