[ANN] PySQLite 1.1

G

Gerhard Haering

============
PySQLite 1.1
============


About this release:
===================

To let existing PySQLite users move to the SQLite3 engine, a created PySQLite
1.1. It supports all of the PySQLite 1.0 API, but uses the SQLite3 database
instead. The testsuite runs ok, and I did a few others checks, but now it needs
real-life exposure to find any remaining bugs that crawled in.


Different branches:
===================

- PySQLite 1.0 (SQLite 2.x) and PySQLite 1.1 (SQLite 3.x) will not gain
additional features, but they will both be maintained as branches in the
Subversion repository (http://initd.org/svn/initd/pysqlite/) and get
bugfixes.

- I will now resume development of PySQLite 2.0, with the new API and created
with SQLite3 in mind in the first place.


Changelog:
==========

- Hacked _sqlite.c to use the SQLite 3 API instead of the SQLite 2 one.

- The connection object now has a method insert_id() for better MySQLdb
compatibility. If you want portable code that also works with current
MySQLdb, however, then just use the .lastrowid attribute.


Place of development
====================

The development will move to initd.org step by step. For now, I only switched
from the Sourceforge CVS to initd.org Subversion. So file releases and bug
tracker can still be found on Sourceforge:

http://sf.net/projects/pysqlite


Known incompatibilites with PySQLite 1.0/SQLite 2
=================================================

- expressions/aggregates/functions will now always be of type TEXT, and thus
strings, unless you use the "-- types" facility.

- The lowlevel method "sqlite_busy_timeout" is not supported any longer. The
code that was in SQLite 2.x proper, had to be reimplemented in PySQLite, and
the simple timeout case was implemented in the Python layer. This shouldn't
bother you, unless you used the _sqlite module and used
""sqlite_busy_timeout" method. In this case, look into the PySQLite source
code, and adapt my timeout code from busy_handler(), hidden in
Connection.__init__.

- SQLite3 doesn't return a column name at all for columns, that don't come from
database tables. Only adapted the test for now, later we can probably make it
a little more intelligent using sqlite3_column_type().

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFBeZhjdIO4ozGCH14RAlx1AKC8VhsZXd9U/JF8BTr311NcvgaX5ACcCleC
jEKLvKAPYA0QlL26x+FMFjc=
=4YwJ
-----END PGP SIGNATURE-----
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,022
Latest member
MaybelleMa

Latest Threads

Top