boltons should be builtins.
Boltons is a set of over 100 BSD-licensed, pure-Python utilities in the same spirit as — and yet conspicuously missing from — the standard library, including:
- Atomic file saving, bolted on with fileutils
- A highly-optimized OrderedMultiDict, in dictutils
- Two types of PriorityQueue, in queueutils
- Chunked and windowed iteration, in iterutils
- A full-featured TracebackInfo type, for representing stack traces, in tbutils
Full and extensive docs are available on Read The Docs.
Boltons can be added to a project in a few ways. There's the obvious one::
pip install boltons
Then 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. Boltons is pure-Python and has no dependencies. See the Integration section of the docs for more details.
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!
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.