A utility to trim Python traceback information.
Project description
tbtrim
tbtrim
is a utility to trim Python traceback information. By assigning user-refined sys.excepthook
, one can easily customize the behavior after an exception is raise and uncaught, and just before the interpreter prints out the given traceback and exception to sys.stderr
.
In a more human-readable way, tbtrim
is to let you handle the last words of a program when it exits because of an exception.
Installation
Simply run the following to install the current version from PyPI:
$ pip install tbtrim
Or install the latest version from the git repository:
git clone https://github.com/gousaiyang/tbtrim.git
cd tbtrim
pip install -e .
# and to update at any time
git pull
Usage
set_trim_rule(predicate, target=BaseException, exclude=None, strict=False, exception=None)
Set the rule for trimming traceback (will set sys.excepthook
and threading.excepthook
if available).
You can determine whether to start trimming traceback items based on the filename (using predicate
), and can choose to trim traceback only for some certain exceptions (using target
and exclude
).
Args:
- predicate (function): a function which takes one
str
parameter (the filename of a traceback item) and returnsbool
(returningTrue
indicates that this traceback item and the following items should be trimmed) - target (class_or_tuple): an exception or a tuple of exceptions may be given to trim traceback only for those exceptions
- exclude (class_or_tuple): an exception or a tuple of exceptions may be given to exclude them from traceback trimming
- strict (bool): indicate whether to check an exception against
target
andexclude
in a strict mode (settingTrue
usesis
to check,False
usesissubclass
to check) - exception (class_or_tuple): this is a deprecated alias of
exclude
, retained for backward compatibility
clear_trim_rule()
Clear the rule for trimming traceback (restore the excepthooks).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tbtrim-0.3.1.tar.gz
.
File metadata
- Download URL: tbtrim-0.3.1.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6285ac02e9a7b78fab97de65668fe2def0f5d8783b0e0dfcb4b7c0a635b3d11 |
|
MD5 | 914f742aa6d97817c10ad69249b4090e |
|
BLAKE2b-256 | 856289756f5d2d61691591c4293fd4cc1fbb3aab1466251c7319fe60dd08fb27 |
File details
Details for the file tbtrim-0.3.1-py2.py3-none-any.whl
.
File metadata
- Download URL: tbtrim-0.3.1-py2.py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48265ad3aeee3bfcc6f0972f6fad623bd99302dce616e1d451663649b50fde19 |
|
MD5 | 4d9ea7777696d77892d4db5b9cf474a9 |
|
BLAKE2b-256 | 072161b192799083492255efc53950ba47317087e1a3d2b5e767c29f71c8c4ca |