Metadata-Version: 2.1
Name: invoke-plugin-for-sphinx
Version: 1.0.0
Summary: Sphinx plugin which can render invoke tasks with autodoc
Author-email: Kai Mueller <kai.mueller01@sap.com>
License: Apache-2.0
Project-URL: Issue Tracker, https://github.com/SAP/invoke-plugin-for-sphinx/issues
Project-URL: Changelog, https://github.com/SAP/invoke-plugin-for-sphinx/blob/main/CHANGELOG.md
Keywords: sphinx,invoke,plugin,inv,documentation
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
Classifier: Framework :: Sphinx :: Extension
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Documentation
Classifier: Topic :: Documentation :: Sphinx
Classifier: Typing :: Typed
Requires-Python: <4,>=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: sphinx (<7,>=4)
Requires-Dist: invoke (<3,>=1)
Requires-Dist: importlib-metadata (>3) ; python_version < "3.8"
Provides-Extra: dev
Requires-Dist: pre-commit (==2.21.0) ; extra == 'dev'
Requires-Dist: pylint (==2.16.2) ; extra == 'dev'
Requires-Dist: pytest (==7.2.1) ; extra == 'dev'
Requires-Dist: pytest-mock (==3.10.0) ; extra == 'dev'
Requires-Dist: coverage (==7.2.0) ; extra == 'dev'
Requires-Dist: diff-cover (==7.5.0) ; extra == 'dev'
Requires-Dist: pytest-cov (==4.0.0) ; extra == 'dev'
Requires-Dist: black (==23.1.0) ; extra == 'dev'
Requires-Dist: isort (==5.11.5) ; extra == 'dev'
Requires-Dist: mypy (==1.0.1) ; extra == 'dev'
Requires-Dist: types-invoke (==2.0.0.5) ; extra == 'dev'

# 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.

## 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 2023 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).
