Burin Logging Utility

PyPI - Release License Python Versions GitHub Actions Workflow Status Codecov Coverage Percentage

Burin (/ˈbyʊər ɪn, ˈbɜr-/byoor-in, bur-/) is a logging library that is meant to add features and simplify usage compared to the Python standard library logging package. It can be used as a direct replacement in most cases.

The name Burin is based on the (originally French) name of a handheld chisel like tool used for engraving.

Currently Python 3.7, 3.8, 3.9, 3.10, 3.11, and 3.12 are all supported. There are no dependencies or additional requirements for Burin and it should work on any platform that Python does.

Warning

Python 3.7 support is deprecated and will be removed in a future release.

An important aspect of Burin is an easy migration that allows changing from the logging package to Burin without anything breaking in most use cases. While class names may need to be changed this generally should work well. Although some situations may require other small changes due to the added features of Burin.

Using Burin to replace logging use in a program can be done gradually or all at once. Burin should not interfere with logging usage as its internal references are all managed independently. However; it’s best to ensure that they are not trying to log to the same file as this may cause issues.

Note

While some classes in Burin inherit from classes in the Python standard logging package they cannot be used interchangeably.

Using classes from logging in Burin or vice-versa may cause exceptions or other issues.

Note

Burin is still in early development and may change in backwards incompatible ways between minor release versions. This should be rare as general compatibility with logging is desired to ease switching, but it is a good idea check the release notes when upgrading between minor (0.X.0) releases.