🔩 Like builtins, but boltons. 250+ constructs, recipes, and snippets which extend (and rely on nothing but) the Python standard library. Nothing like Michael Bolton.
Go to file
Mahmoud Hashemi df92fa4f0e set the shell to make windows ci happy maybe 2024-11-01 20:25:48 -07:00
.github/workflows set the shell to make windows ci happy maybe 2024-11-01 20:25:48 -07:00
boltons Update typeutils.py 2024-10-16 22:54:37 -07:00
docs bump docs version for 24.0 2024-03-31 14:25:22 -07:00
misc Upgrade Python syntax with pyupgrade --py37-plus 2024-03-31 13:37:54 -07:00
tests add no-copy-of-sentinels test 2024-10-16 22:54:37 -07:00
.gitignore Refresh CI matrix (#320) 2022-12-08 01:28:02 -08:00
.readthedocs.yaml quick default .readthedocs.yml config 2024-03-31 13:42:27 -07:00
CHANGELOG.md write changelog for 24.0 2024-03-31 15:40:06 -07:00
LICENSE adding license 2013-03-22 21:50:02 -07:00
MANIFEST.in prune docs build dir from manifest 2023-11-01 00:04:00 -07:00
README.md Drop support for EOL Python 2.6 and 2.7 2024-03-31 13:37:54 -07:00
TODO.rst add quick error report for wrap 2019-05-02 09:45:30 -07:00
pytest.ini docstring/test for OneToOne.unique alternate constructor 2019-06-11 23:59:46 -07:00
requirements-test.txt revert to tox==4.8.0 as 4.9 seems to have quietly dropped 3.7 support 2024-04-28 14:53:40 -07:00
setup.cfg Drop support for EOL Python 2.6 and 2.7 2024-03-31 13:37:54 -07:00
setup.py bump version for 24.0.1dev 2024-03-31 15:41:50 -07:00
tox.ini add py313 to tox 2024-06-15 16:34:15 -07:00

README.md

Boltons

boltons should be builtins.

Boltons is a set of over 230 BSD-licensed, pure-Python utilities in the same spirit as — and yet conspicuously missing from — the standard library, including:

Full and extensive docs are available on Read The Docs. See what's new by checking the CHANGELOG.

Boltons is tested against Python 3.7-3.12, as well as PyPy3.

Installation

Boltons can be added to a project in a few ways. There's the obvious one:

pip install boltons

On macOS, it can also be installed via MacPorts:

sudo port install py-boltons

Then, thanks to PyPI, dozens of boltons are just an import away:

from boltons.cacheutils import LRU
my_cache = LRU()

However, due to the nature of utilities, application developers might want to consider other options, including vendorization of individual modules into a project. Boltons is pure-Python and has no dependencies. If the whole project is too big, each module is independent, and can be copied directly into a project. See the Integration section of the docs for more details.

Third-party packages

The majority of boltons strive to be "good enough" for a wide range of basic uses, leaving advanced use cases to Python's myriad specialized 3rd-party libraries. In many cases the respective boltons module will describe 3rd-party alternatives worth investigating when use cases outgrow boltons. If you've found a natural "next-step" library worth mentioning, see the next section!

Gaps

Found something missing in the standard library that should be in boltons? Found something missing in boltons? First, take a moment to read the very brief architecture statement to make sure the functionality would be a good fit.

Then, if you are very motivated, submit a Pull Request. Otherwise, submit a short feature request on the Issues page, and we will figure something out.