🔩 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 dfb4c8dea7 prune docs build dir from manifest 2023-11-01 00:04:00 -07:00
.github/workflows Test and fix for #348 (#349) 2023-10-29 21:31:16 -07:00
boltons Adding fill parameters to pairwise and windowed (#350) 2023-10-31 11:31:12 -07:00
docs bump docs version 2023-10-31 12:32:30 -07:00
misc Fix warnings regarding invalid escape sequences 2020-02-01 00:22:52 +05:30
tests Adding fill parameters to pairwise and windowed (#350) 2023-10-31 11:31:12 -07:00
.gitignore Refresh CI matrix (#320) 2022-12-08 01:28:02 -08:00
CHANGELOG.md changelog for 23.1.0 2023-10-31 12:41:12 -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 quick refresh of the ole README (#352) 2023-10-31 11:53:55 -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-rtd.txt a bunch of docs cleanups 2015-09-24 11:51:21 -07:00
requirements-test.txt Refresh CI matrix (#320) 2022-12-08 01:28:02 -08:00
setup.cfg Include LICENSE file in wheels 2018-07-01 16:41:06 -07:00
setup.py bump version for 23.1.1dev 2023-10-31 12:42:32 -07:00
tox.ini Add Python 3.11 to docs/build matrix. (#327) 2023-02-19 21:13:43 -08: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.6-3.11, as well as Python 2.7 and 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.