Skip to main content

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)

Source distribution for click-noexit 0.1.0
File Size Uploaded
click_noexit-0.1.0.tar.gz 3.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for click-noexit 0.1.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page