[ANN] pysqlite 2.3.0

Gerhard Häring gh at ghaering.de
Tue Jun 13 14:52:50 EDT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

pysqlite 2.3.0 released
=======================

I'm pleased to announce the availability of pysqlite 2.3.0. This is a major
release with a few new features.

Go to http://pysqlite.org/ for downloads, online documentation and
reporting bugs.

What is pysqlite?

    pysqlite is a DB-API 2.0-compliant database interface for SQLite.

    SQLite is a relational database management system contained in a
    relatively small C library. It is a public domain project created
    by D. Richard Hipp.  Unlike the usual client-server paradigm, the
    SQLite engine is not a standalone process with which the program
    communicates, but is linked in and thus becomes an integral part
    of the program. The library implements most of SQL-92 standard,
    including transactions, triggers and most of complex queries.

    pysqlite makes this powerful embedded SQL engine available to
    Python programmers. It stays compatible with the Python database
    API specification 2.0 as much as possible, but also exposes most
    of SQLite's native API, so that it is for example possible to
    create user-defined SQL functions and aggregates in Python.

    If you need a relational database for your applications, or even
    small tools or helper scripts, pysqlite is often a good fit. It's
    easy to use, easy to deploy, and does not depend on any other
    Python libraries or platform libraries, except SQLite. SQLite
    itself is ported to most platforms you'd ever care about.

    It's often a good alternative to MySQL, the Microsoft JET engine
    or the MSDE, without having any of their license and deployment
    issues.

pysqlite can be downloaded from http://pysqlite.org/ - Sources and
Windows binaries for Python 2.4 are available. Windwos binaries for
Python 2.3 will follow during the next days.


=======
CHANGES
=======

"Errors should never pass silently."
====================================

Errors in callbacks used to simply be ignored. They would lead to the
column in question having a NULL value, for example. Now they result
in the query being aborted with a useful error message like
"User-defined function raised exception".

Errors in callbacks can now be printed to stderr. You have to enable
this feature first by calling enable_callback_tracebacks(1), though.

Aborting long-running queries
=============================

You can now interrupt queries by calling interrupt() on the connection
(from a different thread)

Now with built-in paranoia
==========================

There is a new connection-level method set_authorizer() for adding authorizer
hooks. You can use it to accept arbitrary SQL statements from users
and limiting what they can do with the database, for example only
allow SELECT statements and restricting access to certain tables or
columns.

Changes for converters
======================

Converters are now looked up in a case-insensitive manner.

Bugfixes
========

Fixed a bug where it was possible that one error while constructing a
result row was hidden by another error. This resulted in segmentation
faults.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEjwmCdIO4ozGCH14RAtUAAJ9UpQFdcPhqEvQEdPWNJUaP2LtoagCcC8Hu
JhIIha/vNIOpahH+pNMOZzo=
=VpsE
-----END PGP SIGNATURE-----



More information about the Python-list mailing list