🔩 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
Emanuele Cesena 6d3d2f375e Fix typo in docs index 2016-11-04 13:00:04 -07:00
boltons iterutils: complete GUIDerator and SequentialGUIDerator. had to take a hammer to python3 support because the string APIs got uglified post-2, but at least python2 performance is preserved. 2016-11-04 00:28:54 -07:00
docs Fix typo in docs index 2016-11-04 13:00:04 -07:00
misc more readable linkification for the CHANGELOG 2015-08-22 16:48:52 -07:00
tests iterutils: complete GUIDerator and SequentialGUIDerator. had to take a hammer to python3 support because the string APIs got uglified post-2, but at least python2 performance is preserved. 2016-11-04 00:28:54 -07:00
.gitignore Remove six dependenct in ioutils 2016-10-21 16:35:22 -05:00
.travis.yml exclude function_builder branch from travis 2016-05-23 23:07:11 -07:00
CHANGELOG.md add 16.5.0 changelog changes 2016-07-19 00:41:49 -07:00
LICENSE adding license 2013-03-22 21:50:02 -07:00
README.md Add ioutils module 2016-10-21 16:13:44 -05:00
TODO.rst a few trace TODOs 2016-05-20 19:13:22 -07:00
appveyor.yml ignore function_builder branch in appveyor.yml 2016-05-23 23:07:11 -07:00
requirements-rtd.txt a bunch of docs cleanups 2015-09-24 11:51:21 -07:00
requirements-test.txt add a bit of coverage utility stuff in case others would like to run it (though the py2/py3 stuff would make getting to 100 a big ole headache. need to look at tox + coverage combining for that at some point) 2016-07-31 19:03:15 -07:00
setup.cfg hynek's guide says setup.cfg should be [wheel] 2016-04-18 22:59:53 -07:00
setup.py Remove six dependenct in ioutils 2016-10-21 16:35:22 -05:00
tox.ini have tox work off of the installed package instead of the source tree 2016-02-11 00:20:06 -08:00

README.md

Boltons

boltons should be builtins.

Boltons is a set of over 160 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.4, 3.5, 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.