
On Tue, Feb 26, 2008 at 09:46:04PM -0800, Gregory P. Smith wrote:
My opinion on bsddb as a standard library module is based mostly on "its always been there" and a vague memory of the last time this came up I thought people piped up saying they liked batteries being included, including bsddb and sqlite, but I don't have a handy reference to that email thread.
Looking at the July 2000 python-dev archive, it was added in the lead-up for Python 2.0 because the bsddb185 module was becoming increasingly difficult to support; fewer and fewer platforms were including it, I think. So we included the BerkeleyDB wrapper which was backward-compatible and provided much lower-level access. I think BerkeleyDB was also the only stdlib database that included transactional features until sqlite was included. It's disappointing that the API has gotten so complicated and that a few releases have been broken.
Doing a code search finds a fair number of users of the module: Zope's BDBStorage, Mailman 2.x's archiver, 4Suite, PyTone, OuterSpace, Chandler, BioPython.
--amk