Skip to content

Pylint plugin which automatically disables unnecessary checks for invoke tasks.

License

Notifications You must be signed in to change notification settings

SAP/invoke-plugin-for-pylint

REUSE status Code style: black Imports: isort PyPI version

Invoke Plugin for Pylint

This is a plugin for pylint which disables certain checks when using invoke.

Installation

pip install invoke-plugin-for-pylint, that's it.

Usage

Add invoke_plugin_for_pylint to the list of pylint plugins.

Disabled check

  • unused-argument: Each invoke task needs a context argument even if not needed. Therefore this plugin will find all tasks and suppress all unused-argument errors when related to the context argument

Configuration

If custom decorators for invoke tasks are used which wrap invoke.task the additional-invoke-task-decorators option by checker invoke-plugin-for-pylint can be used. It's a csv list of names which indicate an invoke task.

Please note, that the names must be full qualified and reflect the name of the final function. For example, a decorator factory called "foo" in package "bar" which returns a function called "_inner", will result in the name "bar.foo._inner".

Example for the pyproject.toml:

[tool.pylint.invoke-plugin-for-pylint]
additional-invoke-task-decorators = [
    "my_package.foo.make_task._inner",
    "my_package.foo.make_other_task",
]

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

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 at all times.

Licensing

Copyright 2024 SAP SE or an SAP affiliate company and invoke-plugin-for-pylint contributors. Please see our LICENSE for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available via the REUSE tool.