Python database tools have tended to suffer from the the 80% problem. (Open-source hackers tend to come up with solutions that solve 80% of a problem. Then someone else comes along and covers a different 80% of the same problem. And so on, so you end up with different solutions that attack the same problem, none of which are general enough for others to build on.) SQLAlchemy is making this a thing of the past, thanks to Mike Bayer's hard work. And, increasingly, others.
SQLAlchemy made its second major release today, the big zero-dot-two-oh. (Mike is conservative with version numbers; most projects would call this 0.9 if not 1.0.) There's also a migration guide for porting 0.1-based code.
SQLAlchemy lives up to its billing as The Python SQL Toolkit and Object Relational Mapper. (Emphasis mine.) This is possible is because of the extensive under-the-hood effort Mike has expended keeping dependencies to a minimum; you really can build on its functionality at any level -- not just the high-level ORM.
Some projects building on SQLAlchemy:
- The first (?) SA extension, Jonathan LaCour's ActiveMapper
- Jeff Shell's Zope integration
- The pocoo database api
- Jonas Borgstrom's SelectResults
- My own SqlSoup
- Evan Rosson's Summer of Code schema migration tool
This is already more than older ORM tools have gathered in years! Not bad for a project whose first release was less than four months ago. SQLAlchemy is filling a real need for many people.