This is the mail archive of the cygwin-apps@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ready for test/1.5.1] gdbm-1.8.3-6


(Pretend the 1.5.0-versions of gdbm (-4 & -5) never happened.  I'm going
to start from the "beginning" in this announcement.)

I've previously (but recently) posted an *official* new release of gdbm
(-3) to the main list.  It was built on a pure cygwin-1.3.22 curr: system
with no test packages at all.  It contains two new programs contributed
by Pierre Humblett, for loading and dumping gdbm databases.

The package(s) announced in THIS message were built an a cygwin-1.5.1
test: system.  The DLL version number was bumped from "3" to "4", so that
the two DLLs (and the programs that rely on them) can coexist. 
Un-recompiled programs that rely on gdbm (like cvs!) will continue to
work with the -3 dll until they are recompiled.  Documentation has also
been moved to /usr/share/*.

I also included copies, precompiled, of Pierre's programs.  So,
gdbm-1.8.3-6 contains:

  dumpgdbm-1.3.22.exe
  loadgdbm-1.3.22.exe
    statically linked against gdbm (-3 version) on a 1.3.22 system

  loadgdbm-1.5.0.exe
  dumpgdbm-1.5.0.exe
    statically linked agaisnt gdbm (-6 version) on a 1.5.1 system
    (I know, I know.  Sue me.)

  loadgdbm.exe
  dumpgdbm.exe
    same as the -1.5.0 versions.

There's also a script, as suggested by Pierre, convert-gdbm:

#!/bin/sh
dumpgdbm-1.3.22 $1 | loadgdbm-1.5.0 $1.cygnew && \
  mv $1 $1.bak && mv $1.cygnew $1

It seems to work fine, and converts the databases so that the new gdbm
can read them.  However, the conversion tools are not idempotent.  Take a
database generated on a cygwin-1.5.0/gdbm-1.8.3-4 system (use testgdbm or
something).

then,
  dumpgdbm-1.5.0 my.db | loadgdbm-1.5.0 new.db
  diff my.db new.db
They will be different, because the ORDER in which the records are
written is not necessarily the same.  But all of the records are there,
so...

This little gotcha needs to be in the cygwin-1.5.1 mega-announcement,
when we throw the switch and make all of this "current".

---------------------
Note that database files generated by gdbm under cygwin-1.3.22 are NOT
compatible with gdbm on cygwin-1.5.1 (nor vice versa).  To convert, you
should use the 'convert-gdbm' script on the appropriate database files
(after backing them up, of course).  Now, you may not be aware of any
gdbm databases on your system.  At present, the known users of gdbm are

    cvs : convert  ${CVSROOT}/CVSROOT/modules.db and val-tags.db
    exim
    some perl applications
---------------------
--
  Charles Wilson
  cygwin at removespam cwilson dot fastmail dot fm


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]