click-noexit
A utility for the Click command-line interface library that prevents commands from exiting the application directly. Instead, it allows commands to return exit codes for improved control and handling in larger applications.
Introduction
click-noexit is a decorator for Click commands designed to suppress the default behavior of exiting the application upon command completion or when an error occurs. This is particularly useful when integrating Click commands into larger applications, where you want to handle exits and exceptions more gracefully.
Installation
Install click-noexit using pip:
pip install click-noexit
Or, if you are using Poetry:
poetry add click-noexit
Ensure that you have Click version 8.0.0 or newer.
Installation
Import and use the noexit decorator to wrap your Click commands:
import click
import click_noexit
@click_noexit.noexit()
@click.command()
def my_command():
# Command logic here
pass
The noexit decorator can be used without any additional arguments. It modifies the behavior of the Click command to prevent the application from exiting and allows the command to return exit codes instead.
Examples
Basic Command
@click_noexit.noexit()
@click.command()
def hello() -> None:
click.echo("Hello, World!")
Command with Exit Code
@noexit()
@click.command()
def goodbye():
click.echo("Goodbye!")
return 42
Contributing
Contributions are welcome! If you have a feature request, bug report, or a pull request, please feel free to open an issue or a pull request on the project repository.
License
click-noexit is released under the MIT License. See the LICENSE file for more details.
Metadata
Release files for click-noexit 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| click_noexit-0.1.0.tar.gz | 3.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| click_noexit-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.9 kB
Release files / click_noexit-0.1.0.tar.gz
| Download URL | click_noexit-0.1.0.tar.gz |
|---|---|
| Size | 3.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cc22f2e6fc9d2f9a3e09faea34db04ea8843345c26bc29e6b367c3302c1d0c96
|
|
BLAKE2b-256 checksum How to use checksums |
c01466f398afda30794f9131b68a7d802b99e87e425af573fecaaee920eb6f99
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Release files / click_noexit-0.1.0-py3-none-any.whl
| Download URL | click_noexit-0.1.0-py3-none-any.whl |
|---|---|
| Size | 3.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5ab1050f8c9a12f3be638f853fa2f576de82ea94ca017c1f9da36ab8068d2e15
|
|
BLAKE2b-256 checksum How to use checksums |
1bbb8db760ab6a14d6d80b3b7b667c275760933dce4e8c3094f55b157484f463
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|