Commit graph

10 commits

Author SHA1 Message Date
adam
9e5760b6c5 Changes 2.6.3:
Bug fixes.
2011-05-16 13:43:07 +00:00
adam
3d82d498eb Changes 2.6.0:
No release notes available.
2010-09-16 11:31:16 +00:00
drochner
9c0803a621 update to 2.5.5
changes: many bugfixes and compatibility fixes

The 2.5.0 version in pkgsrc was broken:
>>> from pysqlite2 import dbapi2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/pkg/lib/python2.5/site-packages/pysqlite2/dbapi2.py", line 27, in <module>
from pysqlite2._sqlite import *
ImportError: /usr/pkg/lib/python2.5/site-packages/pysqlite2/_sqlite.so: Undefined PLT symbol "sqlite3_enable_load_extension" (symnum = 158)
2009-07-09 19:02:58 +00:00
wiz
532151230c Update to 2.5.0a:
Mostly documentation changes.
2008-11-10 22:36:49 +00:00
wiz
92208d78bf Found a new homepage, and an even newer version, including changelogs:
2.5.0:
- Windows binaries are now cross-built using mingw on Linux
- import various fixes from Python 2.6 version
- Connection has new method iterdump() that allows you to create a script file
  that can be used to clone a database
- the docs are now built using Sphinx and were imported from Python 2.6's
  sqlite3 module
- Connection.enable_load_extension(enabled) to allow/disallow extension
  loading. Allows you to use fulltext search extension, for example ;-)
- Give the remaining C functions used in multiple .c source files the pysqlite_
  prefix.
- Release GIL during sqlite3_prepare() calls for better concurrency.
- Automatically download the SQLite amalgamation when building statically.

2.4.1:
- Made unicode strings for the database parameter in connect() work again
- Removed bad defaults from setup.cfg

2.4.0:
- Implemented context managers. pysqlite's connections can now be used as
  context managers with Python 2.5 or later:

        from __future__ import with_statement
        from pysqlite2 import dbapi2 as sqlite

        con = sqlite.connect(":memory:")
        con.execute("create table person (id integer primary key, firstname varchar unique)")

        # Successful, con.commit() is called automatically afterwards
        with con:
            con.execute("insert into person(firstname) values (?)", ("Joe",))

        # con.rollback() is called after the with block finishes with an exception, the
        # exception is still raised and must be catched
        try:
            with con:
                con.execute("insert into person(firstname) values (?)", ("Joe",))
        except sqlite.IntegrityError:
            print "couldn't add Joe twice"

- pysqlite connections can now be created from APSW connections. This enables
  users to use APSW functionality in applications using the DB-API from
  pysqlite:

        from pysqlite2 import dbapi2 as sqlite
        import apsw

        apsw_con = apsw.Connection(":memory:")
        apsw_con.createscalarfunction("times_two", lambda x: 2*x, 1)

        # Create pysqlite connection from APSW connection
        con = sqlite.connect(apsw_con)
        result = con.execute("select times_two(15)").fetchone()[0]
        assert result == 30
        con.close()

  Caveat: This will only work if both pysqlite and APSW are dynamically
  linked against the same SQLite shared library. Otherwise you will
  experience a segfault.

- Fixed shuffled docstrings for fetchXXX methods.

- Workaround for SQLite 3.5.x versions which apparently return NULL for
  "no-operation" statements.

- Disable the test for rollback detection on old SQLite versions. This prevents
  test failures on systems that ship outdated SQLite libraries like MacOS X.

- Implemented set_progress_handler for progress callbacks from SQLite. This is
  particularly useful to update GUIs during long-running queries.  Thanks to
  exarkun for the original patch.
2008-09-06 16:12:44 +00:00
wiz
279a309d61 Update to 2.4.1, changes undocumented. 2008-09-06 16:03:09 +00:00
drochner
e44754831d update to 2.3.5
changes:
-pysqlite is now easy_install-able
-misc bugfixes
-Allow the size parameter for fetchmany() for better DB-API compliance
-Allow a static build of pysqlite using the SQLite amalgamation
-improve concurrency
-Using mappings and sequences as parameters works now
-Performance optimizations
2007-08-13 17:37:58 +00:00
wiz
78bb72f5d9 Update to 2.3.3:
- self->statement was not checked while fetching data, which could
  lead to crashes if you used the pysqlite API in unusual ways.
  Closing the cursor and continuing to fetch data was enough.

- Converters are stored in a converters dictionary. The converter name
  is uppercased first. The old upper-casing algorithm was wrong and
  was replaced by a simple call to the Python string's upper() method
  instead.

- Applied patch by Glyph Lefkowitz that fixes the problem with
  subsequent SQLITE_SCHEMA errors.

- Improvement to the row type: rows can now be iterated over and have a keys()
  method. This improves compatibility with both tuple and dict a lot.

- A bugfix for the subsecond resolution in timestamps.

- Corrected the way the flags PARSE_DECLTYPES and PARSE_COLNAMES are
  checked for. Now they work as documented.

- gcc on Linux sucks. It exports all symbols by default in shared
  libraries, so if symbols are not unique it can lead to problems with
  symbol lookup.  pysqlite used to crash under Apache when mod_cache
  was enabled because both modules had the symbol cache_init. I fixed
  this by applying the prefix pysqlite_ almost everywhere. Sigh.
2007-01-20 17:28:37 +00:00
drochner
cc51ebe5ad update to 2.3.2
This is a major update (since 2.0.7), involving an API rework

add a bl3 file
2007-01-10 10:39:18 +00:00
drochner
a35e788c97 import pysqlite-2.0.7, an (incompatible) redesign of pysqlite 2006-03-14 20:17:59 +00:00