🔩 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
Matt Wilber 2150d745dc Remove unnecessary import 2018-12-22 18:24:39 -08:00
boltons Support abstract @cachedproperty and @cachedmethods 2018-12-22 18:24:39 -08:00
docs bump docs version 2018-08-29 16:39:58 -07:00
misc Python 3 fixes 2018-10-10 23:34:34 -07:00
tests Remove unnecessary import 2018-12-22 18:24:39 -08:00
.gitignore Remove six dependenct in ioutils 2016-10-21 16:35:22 -05:00
.travis.yml Travis CI has depreciated the use of 'sudo' 2018-12-10 23:19:34 -08:00
CHANGELOG.md Fix spme spelling errors. 2018-10-11 15:11:30 -07:00
LICENSE adding license 2013-03-22 21:50:02 -07:00
MANIFEST.in Create MANIFEST.in 2018-07-01 16:41:06 -07:00
README.md Remove indentation in code blocks in README 2018-10-11 15:13:16 -07:00
TODO.rst clean up TODO 2017-05-01 12:49:47 -07:00
appveyor.yml Force a retest 2018-10-10 23:46:24 -07:00
pytest.ini adding pytest.ini to enable u'' doctest agnosticism 2017-03-15 00:53:28 -07:00
requirements-rtd.txt a bunch of docs cleanups 2015-09-24 11:51:21 -07:00
requirements-test.txt modernize test requirements somewhat. py26 is on its last legs 2018-08-28 16:03:08 -07:00
setup.cfg Include LICENSE file in wheels 2018-07-01 16:41:06 -07:00
setup.py bump version for 18.0.2dev 2018-08-29 16:59:29 -07:00
tox.ini readd 2.6 to the tox 2018-10-10 23:46:24 -07:00

README.md

Boltons

boltons should be builtins.

Boltons is a set of over 220 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 2.6, 2.7, 3.3, 3.4, 3.5, 3.6, 3.7-dev (aka nightly), and PyPy.

Installation

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

pip install 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.