APSW 3.6.19-r1 released (Another Python SQLite Wrapper)

2009-10-17 Thread Roger Binns
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

APSW 3.6.19-r1 is now available. The home page is at
http://code.google.com/p/apsw/ which includes full documentation, source
and binary distributions for Windows (Python 2.3 onwards including 3.0 &
3.1).

APSW is a wrapper around SQLite that provides all SQLite API
functionality in Python.  It is not DBAPI compliant as it provides
SQLite semantics.  pysqlite provides DBAPI semantics.  You can see the
two approaches contrasted at
http://apsw.googlecode.com/svn/publish/pysqlite.html

Changelist is below and a clickable version at
http://apsw.googlecode.com/svn/publish/changes.html

Backwards incompatible change: Fixed issue 72 where APSW wasn’t zero basing
virtual table BestIndex() constraints returned as documented. If you have
working BestIndex code then you need to update it for this release. Thanks
to Lefteris for finding this issue.

Backwards incompatible change: The complete() method has moved from
Connection to apsw where it should have been all along. You should now call
apsw.complete() instead. (It even had an example showing it to be part of
the module and not a specific connection!)

There is now an interactive shell very similar to that provided by SQLite.
You can embed it in your own program, inherit from it to provide more
commands and output modes, or just run it like this:

  $ python -c "import apsw ; apsw.main()"

Added the SQLITE_LIMIT_TRIGGER_DEPTH, SQLITE_OPEN_PRIVATECACHE and
SQLITE_OPEN_SHAREDCACHE constants.

The setup.py file now has the various options available made applicable to
appropriate commands only. Read the updated documentation.

You can now specify build --enable=stat2 to setup.py to enable advanced
statistics gathering for query planning.

setup.py can automatically fetch the Asynchronous VFS extension for you. If
the source is present when APSW is built then it will be automatically
included and the API provided.

A fork_checker() is available which turns on detection when you have used
SQLite objects across a fork (a very bad thing). This is possible on Unix
like operating systems, especially if you use the multiprocessing module.

Extension loading is now compiled in by default when using the amalgamation
and compiled out when using existing libraries. This is more likely to match
your machine. You can use --omit=load_extension or --enable=load_extension
to the build/build_ext commands to explicitly disable/enable extension
loading. (Issue 67).

setup.py will now abort on a download that has no checksum. See more
information on checksums in the documentation.

setup.py can also fetch the version of SQLite currently under development
before a release. Use --version=fossil.

Updated which code uses experimental SQLite APIs based on changes in SQLite.
The test suite will also work correctly with experimental on or off. (It is
on by default.)

Roger
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkrZTboACgkQmOOfHg372QRxXwCg0rv8o1c2rSY3Fbz8FGJv9iVo
YNYAoJEvcBW4hENyoD5zeTqD7sBgby9M
=QtKv
-END PGP SIGNATURE-
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


APSW 3.6.17-r1 released

2009-08-12 Thread Roger Binns
APSW 3.6.17-r1 is now available. The home page is at
http://code.google.com/p/apsw/ which includes full documentation, source and
binary distributions for Windows (Python 2.3 onwards including 3.0 & 3.1).
The opensource license used is the zlib/png license.

APSW is a wrapper around the SQLite embedded database that provides all
SQLite API functionality in Python.  It is not DBAPI compliant as it
provides SQLite semantics.  pysqlite provides DBAPI semantics.  You can see
the two approaches contrasted at
http://apsw.googlecode.com/svn/publish/pysqlite.html

Changelist is below and a clickable version at
http://apsw.googlecode.com/svn/publish/changes.html

APSW has migrated from Subversion to Mercurial for source code control.
Hosting remains at Google Code

Updated a test due to VFS xUnlock errors now being ignored sometimes by
SQLite (SQLite ticket 3946).

The downloads page in the help didn’t mention the Windows Python 3.1 installer.

Running the test suite is now integrated into setup.py so you can do the
building and testing all in one go. Sample command line:

$ python setup.py install test

The test suite will now check the functionality of the FTS3, RTree and ICU
extensions if they were included. (The Windows binary distribution includes
FTS3 and RTree by default.)

Fixed issue 55 where FTS3 was unintentionally omitted from the Windows
binary distribution.

Various documentation updates.

Roger
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Ann: apsw 3.3.10-r1 (Another Python SQLite Wrapper)

2007-01-17 Thread Roger Binns
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

APSW 3.3.10-r1 is now available.

Home page: http://www.rogerbinns.com/apsw.html

APSW provides an SQLite 3 wrapper that provides the thinnest layer over
SQLite 3 possible. Everything you can do from the C API to SQLite 3, you
can do from Python. Although APSW looks vaguely similar to the DBAPI, it
is not compliant with that API and instead works the way SQLite 3 does.

This release must be used with SQLite 3.3.10 or above

Notable changes since the last release:

* Even more test cases (you can't have too many!)

* Augmented stack traces giving more details when errors or exceptions occur

http://www.rogerbinns.com/apsw.html#augmentedstacktraces

* String/Unicode values work correctly if they have embedded NULL
characters (ie not truncated at the NULL).

* You can load SQLite shared library extensions.

* You can write virtual tables in Python

http://www.sqlite.org/cvstrac/wiki?p=VirtualTables
http://www.rogerbinns.com/apsw.html#VirtualTables

* You must call close() on connections. You can also call close on
cursors, but it usually isn't necessary.

* All strings are returned as unicode

* Uses the sqlite3_prepare_v2 api which means SQLITE_SCHEMA no longer
occurs except when there is a permanent error

* Added a statement cache


Differences between APSW and PySqlite:

http://www.rogerbinns.com/apsw.html#pysqlitediffs

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

iD8DBQFFrXpCmOOfHg372QQRAmtsAJkBm7K1BFtojpe4AJRfIB94tniY6gCfRIrB
3q2yq/nkmJNcDCb8wcCPpSg=
=Su+i
-END PGP SIGNATURE-
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html