changes:
-Changes the interface to the recently added set_bt_compare callback to
only take two arguments like a normal comparison function.
-Fixes a crash in DB.associate when it wanted to raise an exception.
cvs: ----------------------------------------------------------------------
python*-pth packages into meta-packages which will install the non-pth
packages. Bump PKGREVISIONs on the non-pth versions to propagate the
thread change, but leave the *-pth versions untouched to not affect
existing installations.
Sync all PYTHON_VERSIONS_AFFECTED lines in package Makefiles.
Note: This fix the build with latest db4 package.
Package changes:
Remove references to LOCALBASE.
Add test target support.
Changes since last packaged version (4.2.4):
4.3.0:
* Added support for building properly against BerkeleyDB 4.3.21.
* fixed bug introduced in 4.2.8 that prevent the module from
compiling against BerkeleyDB 3.2 (which doesn't support pget).
* setup.py was cleaned up a bit to search for and find the latest
version of the correct combo of db.h and libdb.
4.2.9:
* DB keys() values() and items() methods were ignoring their optional
txn parameter. This would lead to deadlocks in applications
needing those to be transaction protected.
4.2.8:
* Adds support for DB and DBCursor pget methods. Based on a patch
submitted to the mailing list by Ian Ward <ian@arevco.ca>
* Added weakref support to all bsddb.db objects.
* Make DBTxn objects automatically call abort() in their destructor if
not yet finalized and raise a RuntimeWarning to that effect.
4.2.7:
* fix an error with the legacy interface relying on the DB_TRUNCATE
flag that changed behaviour to not work in a locking environment
with BerkeleyDB 4.2.52. [SF bug id 897820]
* fixed memory leaks in DB.get, DBC.set_range and potentially several
other methods that would occur primarily when using queue | recno
format databases with integer keys. [SF patch id 967763]
4.2.6:
* the DB.has_key method was not honoring its txn parameter to perform
its lookup within the specified (optional) transaction. fixed.
[SF bug id 914019]
4.2.5:
* Fixed a bug in the compatibility interface set_location() method
where it would not properly search to the next nearest key when
used on BTree databases. [SF bug id 788421]
* Fixed a bug in the compatibility interface set_location() method
where it could crash when looking up keys in a hash or recno
format database due to an incorrect free().
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
be imported by a non-thread aware python without it core dumping.
Hence restrict accepted python packages to threaded ones if native
threads are supported by the platform.
Bump PKGREVISION for that.
Provide a buildlink3.mk file mostly to help bl3ified packages to pick up
the right python packages with respect to this threading issue.
Changes:
* changed DB and DBEnv set_get_returns_none() default from 1 to 2.
* cleaned up compatibility iterator interface.
* the legacy compatibility dict-like interface now support iterators
and generators and allows multithreaded access to the database.
* fixed a tuple memory leak when raising "object has been closed"
exceptions for DB, DBEnv and DBCursor objects. I doubt much
previous code triggered this.
* use of a closed DBCursor now raises a DBCursorClosedError exception
subclass of DBError rather than a boring old DBError.
* added DBCursor.get_current_size() method to return the length in bytes
of the value pointed to by the cursor without reading the actual data.
* Standalone pybsddb builds now use a _pybsddb dynamic/shared library
rather than _bsddb. This allows for pybsddb to be built, installed
and used on python >= 2.3 which includes an older version of pybsddb
as its bsddb library.
* Can now compile and link with BerkeleyDB 4.2.x (when its released).
* the legacy bsddb module supports the iterator interface on python 2.3.
* Support the DBEnv.set_shm_key() method.
* Fixed setup.py include/{db4,db3} header file searching (SF bug #789740).
Changes sinec 4.1.1:
* Extended DB & DBEnv set_get_returns_none functionality to take a
"level" instead of a boolean flag. The boolean 0 and 1 values still
have the same effect. A value of 2 extends the "return None instead
of raising an exception" behaviour to the DBCursor set methods.
This will become the default behaviour in pybsddb 4.2.
* Updated documentation for set_get_returns_none. Regenerated the
stale html docs from the text documentation.
* Fixed a typo in DBCursor.join_item method that made it crash instead
of returning a value. Obviously nobody uses it. Wrote a test case
for join and join_item.
* Added the dbobj wrapper for DBEnv set_timeout method.
* Updated README.txt
* Added the DBEnv.set_timeout method.
* code cleanup to use python 2.x features in .py files
* the standalone pybsddb distribution will install a module
called bsddb3 while the module included with python >= 2.3
will be known as bsddb.
* Shared all .py and .c source with the Python project.
* Fixed DBTxn objects to raise an exception if they are used after
the underlying DB_TXN handle becomes invalid. (rather than
potentially causing a segfault)
* Fixed module to work when compiled against a python without thread
support.
* Do not attempt to double-close DB cursor's whos underlying DB
has already been closed (fixes a segfault).
* Close DB objects when DB.open fails to prevent an exception about
databases still being open when calling DBEnv.close.
Inspired by FreeBSD "ports".
Fix the PLISTs accordingly.
Also, while at it, remove now obsolete compileall.py calls in post-install
targets and insure that extension.mk is in included before builinlinks of
other Python modules.
Discussed with/ok'ed by drochner@.
This NetBSD package includes the patches from bug reports #667340,
#667343, and #669533, which are in the SourceForge pybsddb3 CVS but
not yet in the 4.1.1 release; hence PKGREVISION=1.