click-plugins is an extension module for the Click library, designed to enable registering CLI commands via setuptools entry-points. The project's official PyPI package is currently marked as inactive, with version 1.1.1.2 being the final release. While a 2.0 release exists on GitHub, it restructured the project to support vendoring and no longer directly supports building a `pip` package, effectively making the PyPI offering abandoned.
pip install click-pluginsVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to use `with_plugins` to enable a Click group to discover commands via setuptools entry-points. The `ep_group` parameter specifies the entry-point group to look for. For this example to be fully functional, you would typically define entry points in your `setup.py` or `pyproject.toml` under a section like `[options.entry_points]`, e.g., `click_commands = my_package.my_plugins:my_command_function`.
Consider migrating to alternatives or vendoring the necessary code. If you must use `click-plugins`, pin your dependency to `click-plugins==1.1.1.2`.
Do not attempt to install version 2.0 via `pip` or expect it to be a drop-in replacement for earlier PyPI versions. It's intended for direct inclusion in other projects.
Avoid using version 1.1; use 1.1.1 or 1.1.1.2 instead.
Carefully review your `pyproject.toml` (or `setup.py`) to ensure the `[options.entry_points]` section correctly defines your plugin groups (e.g., `click_commands = ...`) and points to the correct functions.
For `click-plugins` version 2.0+, download the `click_plugins.py` file from the official GitHub repository and place it directly into your project. Adjust any import statements from `from click_plugins import ...` to reflect its new location (e.g., `from .your_module_path.click_plugins import ...`). If attempting to use the older 1.x PyPI version, ensure it's correctly installed with `pip install click-plugins` in your active environment.
Execute the CLI command or group that issued the warning and observe the full traceback printed to the console. This traceback will pinpoint the specific error (e.g., `ImportError`, `AttributeError`, syntax error) within the plugin's code or its dependencies. Debug and correct the underlying issue in the plugin or its `setup.py` entry point configuration.
Update `click-plugins` to its latest available version (if a compatible PyPI update exists, which is unlikely given its status) or, if vendoring, ensure your `click_plugins.py` file is from the latest `click-contrib/click-plugins` GitHub repository. Alternatively, if updating is not an option or causes other conflicts, consider pinning your `Click` library to an older version known to be compatible with your `click-plugins` installation (e.g., `pip install 'click<8.1'`).
Update all libraries in your project that depend on `Click` to their latest compatible versions. If the problem persists, or if you have a specific dependency that is not yet compatible with newer `Click` versions, you may need to explicitly pin the `Click` library to an older, compatible version, such as `pip install --upgrade click==8.0.2`.