Official Firebird driver FDB release 0.7.2 is out with Support for Python 3 and Distributed Transactions
FDB release 0.7.2 is out:
Highlights for this release:
– Python 3 Support (thanks to Philippe Makowski)
– Support for Distributed Transactions
– Support for NBACKUP Service
– Support for Trace Service
And as always, some bugs fixed.
Main target for next version: support for Firebird Events.
Note: I’m really glad that Philippe joined the FDB team, especially to look after Python 3 support (but not only that). Thanks!
You can also read the announcement on firebird-python list
There are quite a few changes if you watch the svn and github changelog
He implemented firebird services api for Python 3 driver, this driver version doesn’t work yet for Python 2, and it is only the first step.
Certainly some improvements would be welcome.You can see diff here
The hope is that he will start working on fbcore soon
As promised, FDB initial release (0.7.0) is out: http://pypi.python.org/pypi/fdb/0.7.0
It’s almost feature-complete (ready for 95% of users), but it could be
still buggy (it’s beta!), and the code wasn’t optimized for size and
speed. In all other ways it’s ready for wide testing.
– Distributed transactions
– ARRAY support
– EVENTs support
– Stream BLOBs
– TRACE service
– Documentation (but you can use KInterbasDB one as FDB is as close to
it as possible).
– Python 3.x support (haven’t had time to test it, but it shouldn’t be
hard to make it work there)
What’s new since my last post here:
– Support for stored procedures (proper one according to Python DB API,
behaviour is the same as in KInterbasDB)
– Prepared Statements. It works in exactly the same way as in
KInterbasDB, i.e. you can use explicit PS via cursor.prep(), or use the
internal PS cached for all statements executed via cursor.execute() – it
will detect previously executed command and re-use prepared statement
(cached per cursor instance!).
– Fully implemented cursor.description attribute, i.e. including
precision for DECIMAL/NUMERIC fields. Should now return the same results
– trans_info/transaction_info and db_info/database_info calls like in
– Better object dependency and lifetime management, so Python memory GC
should be much happier now. I modelled it as much as KDB does it as
Source code is also in Firebird Project’s Subversion repository:
(KInterbasDB source moved)
Sorry for GIT/Mercurial etc. fans, but Firebird project uses only SVN
for all its code (except old obsolete ones that are still in CVS) and it
would be pointless to create another type of repository for such a small
project. However, you’re free to set up mirrors or local repositories on
GIT or whatever 🙂
Merry Christmas to all
[ED: if you want to know how easy is to use , or how compatible it is related to kinterbasdb , read this post ]