Revision history for Perl extension TDB_FileX.

TODO: perlmulticore?

0.97 Sat 03 May 2025 21:24:41 CEST
	- put this under LGPL license, as (hopefully) the original
          author intended.
	- a lot of functionality hasn't been tested thoroughly yet.
	- rename to TDB_FileX, maybe temporarily.
        - many functions croak on errors. The nonblock variants return success
          status, but croak on unexpected errors.
        - use key/value pairs for open parameters.
        - new open parameter "mutex".
        - new open parameter "nocow".
        - support up to four custom hash functions.
	- fixed various undefined types.
        - fix the perl unicode bug.
        - port to current versions of tdb, remove support for antique tdb versions.
        - removed tdb_chain*lock.
        - replaced logging_function by set_logging_function.
        - store logging function callback in tdb context.
        - added methods:
          lockall_nonblock
          lockall_read
          lockall_read_nonblock
          unlockall_read
          lockall_mark
          lockall_unmark
          transaction_start
          transaction_start_nonblock
          transaction_cancel
          transaction_commit
          transaction_prepare_commit
          transaction_active
          enable_seqnum
          get_seqnum
          increment_seqnum_nonblock
          hash_size
          map_size
          add_flags
          remove_flags
          set_max_dead
          fd
          name
          wipe_all
          repack
          freelist_size
          validate_freelist
          summary
          runtime_check_for_robust_mutexes (function)
	- don't export anything by default, rework
          export tags, remove TDB_ prefix for all exports,
          do not use AUTOLOAD for constants.
        - add constants:
          TDB_NOSYNC
          TDB_SEQNUM
          TDB_VOLATILE
          TDB_ALLOW_NESTING
          TDB_DISALLOW_NESTING
          TDB_INCOMPATIBLE_HASH
          TDB_MUTEX_LOCKING
          TDB_ERR_EINVAL
          TDB_ERR_RDONLY
	  TDB_DEBUG_FATAL
          TDB_DEBUG_ERROR
          TDB_DEBUG_WARNING
          TDB_DEBUG_TRACE}
        - use modern xs syntax.
        - add fnv1ax and xxh3 hash options.
        - use wipe_all for CLEAR.
        - switch to XSLoader.
        - remove Carp, Errno dependencies.
        - reduce (perl interface) memory usage and code size.
        - callbacks gernerally are called with G_EVAL, for some added bit of protection.

Older changes are for TDB_File, form which this module was cloned.

0.96a Mon Mar 17 21:36:52 2008
	- Remove bogus (and unused) stop() macro on freebsd.

0.96  Tue Jun  5 00:14:02 2007
	- Fix memory leak in TDB_DATA typemap.  Thanks nigelw.

0.95  Tue Jun  5 00:12:02 2007
	- Makefile.PL now attempts to determine various tdb
	  differences.
	- tdb_open_ex with a hash_fn arg now generates a warning if
	  TDB_File was compiled against a tdb version that lacks this
	  argument.
	- Change tdb_printfreelist to return void, since the
	  sourceforge 1.0.6 version has this, and we don't care about
	  the return value in other versions.
	- Protect TDB_ERR_LOCK_TIMEOUT, since that constant doesn't
	  exist in some versions.

0.90  Tue Jun 21 09:02:15 2005
	- Support a log callback for each TDB_File object
	- Pass logging function to tdb_open_ex()
	- Remove tdb_lockkeys/tdb_unlockkeys functions, since they
	  seem to have gone from TDB
	- Use ExtUtils::Constant to build constant() function

0.50  Sat Jun 29 15:29:20 2002
	- initial release to CPAN

0.01  Tue Mar 26 17:02:46 2002
	- original version; created by h2xs 1.21 with options
	   -x -n TDB_File -p tdb_ /home/gus/projects/tdb-perl/tdb-perl/tdb.h