4.5.0:
* Adds supports for compiling and linking with BerkeleyDB 4.5
* Python Bug #1599782: Fix segfault on bsddb.db.DB().type() due to
releasing the GIL when it shouldn't. (nnorowitz)
* Fixes a bug with bsddb.DB.stat where the flags and txn keyword
arguments are transposed.
* change test cases to use tempfile.gettempdir()
4.4.5:
* pybsddb Bug #1527939: bsddb module DBEnv dbremove and dbrename
methods now allow their database parameter to be None as the
sleepycat API allows.
4.4.4:
* fix DBCursor.pget() bug with keyword argument names when no data= is
supplied [SF pybsddb bug #1477863]
* add support for DBSequence objects [patch #1466734]
* support DBEnv.log_stat() method on BerkeleyDB >= 4.0 [patch #1494885]
* support DBEnv.lsn_reset() method on BerkeleyDB >= 4.4 [patch #1494902]
* add DB_ARCH_REMOVE flag and fix DBEnv.log_archive() to accept it without
potentially following an uninitialized pointer.
4.4.3:
* fix DBEnv.set_tx_timestamp to not crash on Win64 platforms (thomas.wouters)
* tons of memory leak fixes all over the code (thomas.wouters)
* fixes ability to unpickle DBError (and children) exceptions
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
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.