Metadata-Version: 2.1
Name: py-buzz
Version: 4.2.0
Summary: "That's not flying, it's falling with style": Exceptions with extras
Home-page: https://github.com/dusktreader/py-buzz
License: MIT
Author: Tucker Beck
Author-email: tucker.beck@gmail.com
Requires-Python: >=3.8,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
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: Programming Language :: Python :: 3.12
Project-URL: CHANGELOG, https://github.com/dusktreader/py-buzz/blob/main/CHANGELOG.md
Project-URL: Documentation, https://dusktreader.github.io/py-buzz/
Project-URL: Repository, https://github.com/dusktreader/py-buzz
Description-Content-Type: text/markdown

![Latest Version](https://badge.fury.io/py/py-buzz.svg)
![Build Status](https://github.com/dusktreader/py-buzz/actions/workflows/main.yml/badge.svg)
![Documentation Status](https://github.com/dusktreader/py-buzz/actions/workflows/docs.yml/badge.svg)

![py-buzz-logo](https://github.com/dusktreader/py-buzz/blob/main/docs/source/images/buzz-logo-text.png)

**That's not flying, _it's falling with style_: Exceptions with extras**

![asciicast](https://github.com/dusktreader/py-buzz/blob/main/docs/source/images/py-buzz.gif)

py-buzz is fully equipped with a suite of exception tools that will save you
from writing the same code over and over again in your python projects. These
include:

* checking conditions and raising errors on failure (`require_conditon`)
* checking that values are defined and raising errors if not (`enforce_defined`)
* catching exceptions wrapping them in clearer exception types with better error
  messages (`handle_errors`)
* checking many conditions and reporting which ones failed
  (`check_expressions`)

py-buz also provides an exception class, Buzz, that can be used  as a base class
for custom exceptions within a project.

## Super-quick Start

* Only requires Python 3.8 or later
* Installed with pip (`$ pip install py-buzz`)
* Each feature demonstrated in [examples](https://github.com/dusktreader/py-buzz/tree/main/examples)

## Documentation

The complete documentation can be found at the [py-buzz documentation page](https://dusktreader.github.io/py-buzz/)

