RefDB NEWS file
===============
___________________________________
Version 1.0.3 (February 2022)
Improvements:
- refdbd now accepts a new mysql_sql_mode option from its configuration
files. This allows to exclude the "STRICT_TRANS_TABLES" mode which is
the default in newer MySQL and MariaDB releases but breaks legacy RefDB
SQL code. NB this feature requires an updated libdbi MySQL driver which
is only available from the git repository at the time of this writing.
It is of course still possible to configure the database server the old
way, without the convenience of the new per session settings.
- the manual was updated. It now describes MariaDB as equivalent to MySQL for
the purposes of storing RefDB references, and references to database
versions in general and the tools required to run the web interface
were updated
- several citation styles were updated or added
___________________________________
Version 1.0.2 (February 2014)
Bugfixes:
- a buffer overflow in the XML parsing code was fixed
___________________________________
Version 1.0.1 (January 2014)
Bugfixes:
- due to a packaging error, the 1.0.0 tarball did not contain two
essential bugfixes which already made it into svn. The new tarball
fixes this without any additional changes
___________________________________
Version 1.0.0 (January 2014)
Bugfixes:
- assorted stylesheet fixes for namespaced XML output
- fixed bibliography sorting order if author name is missing
- fixed a style export bug
- refdb-init no longer attempts to add schemas.xml as a style
Improvements:
- added a new tool runbib-missing to list the references which were
reported missing by a previous runbib call
- added a new tool refdb-pubmed to import data from the Pubmed
database using lists of Pubmed IDs. Pubmed IDs are now saved by
default as links in L2
- now creates bibliographies for RTF documents (still considered
experimental)
- added styles for some common formats like AMA, APA, Chicago,
Harvard, MLA, Turabian, as well as for the biomedical journals CHA-MC
and JPET
- the web interface now supports result list paging, i.e. the query
results and index searches no longer show the whole list of 5000+
matches :-) but only a limited (configurable) number at a time. You
can conveniently page forward or back using buttons.
- you can now provide driver files to the XML bibliography processing
tools, e.g. to use custom formatting of the parts not managed by
RefDB independent of other users on your system.
Backwards-incompatible changes:
- UNPB references are now considered not-yet-accepted INPR articles
and thus use part data, just like JOUR. Previous versions have
treated UNPB like an unpublished BOOK or RPRT. The current behaviour
is more convenient for people who write more articles than books.
___________________________________
Version 0.9.9 (November 2007)
Bugfixes:
- raw bibliographies were fixed again
- a bug in the tokenizers used by refdbd and by the clients to parse
command line arguments has been fixed. Now escaped characters should
be treated as such in all cases.
- fixed the missing author type in part authors imported from risx
- fixed the style export on OS X (PPC)
- fixed the publication year output in RIS export if the otherinfo
field is empty
- crash during bibliography creation on OS X was fixed
- unknown reference data types are now changed to "GEN" when importing
risx data as well
- abbreviated journal names which use periods without spaces are now
imported properly
- config.rpath was added to the tarball to avoid configure errors on
particular OSes
- upgrading the main database no longer creates duplicate entries in
t_meta when using PostgreSQL as the database engine
- fixed missing permissions after upgrading the main PostgreSQL database
- the preconfigured locations of log and pid files now honor the
prefix (usually /usr or /usr/local)
- fixed a table locking error if a risx dataset is skipped during
import
- special characters are now properly converted to XML entities even
in long texts with lots of these characters
- now purges "(", ")", and "?" from citation keys
- now checks the reference types before adding them to the
database. Unknown types are changed to "GEN".
- a sanity check in the RIS import code prevents segfaults if risx
data are accidentally fed to it.
- risx datasets which are accidentally added as RIS datasets no longer
crash refdbd.
- a possible client/server hiccup caused by checkref reports of a
particular size was fixed.
- the handling of the (entirely broken by design) issue, edition, and
volume fields in a variety of reference types has been improved
- when checking risx datasets the tables are now properly unlocked if
a dataset is skipped
Improvements:
- the en2ris script now uses UTF-8 as the default output encoding
- boatload of improvements of the PHP web interface, among these is
the tag cloud display of authors, keywords, and periodical names in
the search results.
- the handling of the AV field has been cleaned up. As of this
version, the AV field should only contain a physical location,
i.e. either a description of the location, or a call number. The
formerly applied PATH: kludge to manage links to local copies of PDF
files is no longer supported. To store user-specific locations of
PDF files, use the L1-L4 fields and start the URL with the "file://"
protocol prefix. These links are assumed to point to local copies
owned by the user. If the URL uses a relative path, i.e.
"file://offprints/Miller2002"
instead of
"file:///home/markus/offprints/Miller2002"
(note the additional root slash in the latter URL), the same pdfroot
mangling is applied as was previously to the AV - PATH: paths.
Please see the UPGRADING file for some hints how to efficiently
migrate existing AV field contents.
- in order to reflect the above change in risx datasets, the risx dtd
was adapted accordingly. The <link> element is now also allowed in
<libinfo>. Although the DTD can't enforce this, the pubinfo/link
elements are supposed to hold publicly accessible URLs of offprints,
images and such, whereas the libinfo/link elements should receive
only user-specific local paths to offprints.
- if a character encoding conversion is necessary during data import
or data export, refdbd now uses the transliteration facility of iconv
for characters which cannot be mapped to the target encoding, a
problem which often arises when exporting UTF-8 data to European
encodings.
- the new PHP web interface was thoroughly overhauled to cope with
whitespace, apostrophes, and regular expression characters in
keywords, author names, and journal names. Adding references now works
from risx data too, and the feedback about the success of adding a
file has been improved. Adding data from the web form was improved too
in that empty fields are left out, author name and keyword lists are
appropriately tokenized, and addref or updateref is used whenever
appropriate. The code now makes sure to use a unique temporary filename
which is deleted again afterwards, avoiding clutter in your /tmp. The
field descriptions of the Add reference form was overhauled too to better
reflect the contents depending on which reference type is used. The month
selector now creates a numeric month to comply with the RIS format's
requirements.
- added a getax command to retrieve authors of any level
- added namespace handling for DocBook and TEI stylesheet driver
files. TEI P4 and DocBook V4.x files are now always processed with the
non-namespaced stylesheets, whereas TEI P5 and DocBook V5 files are
handled by the stylesheets with namespace support. In contrast to the
stock DocBook stylesheets there is no auto-detection whether or not
the document uses namespaces.
- TEI P5 cooked bibliographies are now directly generated by refdbd
instead of transforming them from DocBook bibliographies
- refdbib now optionally retrieves raw bibliographies based on a
citationlistx input document. This allows using RefDB as a data
source for SGML/XML documents even if RefDB's citation and
bibliography formatting capabilities are not desired or applicable
- the PHP web interface has been replaced with a new implementation
from scratch (thanks to Dan O'Donnell and Dominik Reusser).
- added config files for runbib and refdbjade to pass additional
options to (open)jade, especially to increase or disable the error
limit
- added a standalone SRU server for personal use or for testing purposes
- bibliography styles now have elements to record the style author, a
description, and an URL that points to the source of the
bibliographic rules.
- added a new legal bibliography style contributed by Jeremy Malcolm
- DocBook and TEI XML output is now indented and can optionally be namespaced
- DocBook XML V5.0 support
- the internal representation of authors and titles is now based on
the three-level library system (part, publication, series) instead of
on the once-and-for-all-screwed RIS definition. This makes both the
programmer's life and the style author's life quite a bit easier
- the internal representation of the M1-M3 fields was improved to
simplify data access. The contents of these RIS fields is now stored
in separate fields which reflect the purpose in context of the
respective reference type
- citation styles now support both authors and editors in monographic data
- citation styles now support the replacements of the M1-M3 fields,
i.e. stuff like conference location, sender and recipient email
addresses, class codes, running time and so on
- the output of adduser/deleteuser was cleaned up if no hostname is
available
- the format specifier NX of the getref command no longer retrieves
all extended notes associated with a particular reference, as these
would always include the users reference lists. If you positively want
those lists, use ALL or NXNL instead.
- the citestylex.dtd now supports different formatting options for
authors (TEXT) and editors (TEXTED). The styles shipped with RefDB
were updated accordingly.
- all backends were updated and now export the contents of the RIS
fields M1-M3 as far as possible
- two new citation styles were added (Tissue_Eng. and Biomaterials)
- the bibliography sorting order is now case-insensitive and takes
into account missing authors, using the title for sorting in this
case
- the MySQL reference database schema now uses TEXT instead of BLOB to
make use of the improved character encoding and collation features of
newer MySQL versions
- the new refdbc:countref and refdbc:countnote commands are equivalent
to the getref and getnote commands, respectively, except that they
do not actually retrieve the reference or note data. Instead, they
return the number of matching references and notes, respectively.
- the query language supports additional relational operators: <=
(less than or equal), >= (larger than or equal), <> (not like).
- there is a new backend for MODS output, an XML format maintained by
the Library of Congress.
- the XML output (risx, mods, xnote) now supports namespaces.
- the -n switch of getbib is no longer supported (it was hardly ever
used anyway). refdbd now sends a stylespec no matter what.
- the getnote/countnote commands now also support query strings of
unlimited length, just like the getref/countref commands.
- the adduser/deleteuser commands now support two classes of users:
read-only users and read/write-users. The former is a simple way to
generate a database account for users accessing your databases through
SRU or via the web interface without permitting write access to
your databases for everyone.
- the new CGI script refdbsru provides an optional SRU (Search and
Retrieve via URL) interface to your databases.
- the checkref command can now be limited to check individual fields
or combinations of fields.
- improved import of tagged Pubmed data (med2ris)
- digital object identifiers (DOI) are now harvested from Pubmed data
and are stored properly. DOIs are presented as links (via
dx.doi.org) by the (x)html backend.
Backwards-incompatible changes:
- the -i option of refdbjade was changed to I (capital i) to make it
the same as in runbib (which uses -i for a different
purpose). runbib in turn now uses -s instead of -I to skip the ID
extraction step, and -I instead of -m to set include options
______________________________
Version 0.9.8-1 (January 2007)
Bugfixes:
- the implementation of the client/server dialog for the addref,
updateref, and checkref commands was fixed
- a possible segfault in the checkref command was fixed
- several memory leaks were plugged
- SGML/XML bibliographies are now valid even if entries lack titles
_____________________________
Version 0.9.8 (December 2006)
Bugfixes:
- queries for UR and L1-L4 fields now work again
- en2ris now properly imports the start and end page information from
newer EndNote versions
- using multiple databases in LaTeX documents now works again properly
- bibtex output is now properly escaped
- getref now honours backslash-escaped apostrophes in query strings
- strings extending the length of limited size fields in t_refdb are
now properly truncated during data import
- correctly rollback if adding RIS data fails
- exclusive queries (e.g. :UR:!~"http") now work as expected for links
(UR, L1-L4, authors, and keywords
- refdbd now modifies citation keys containing the string "-ID" as
this may cause problems when creating bibliographies. "-ID" will be
replaced with "_ID" to avoid problems.
- if an iconv error occurs during data import, refdbd now returns a
meaningful error message.
- in Pubmed XML data, <PersonalNameSubject> name parts no longer leak
into the next author name
Improvements:
- the refdba:listuser command now checks for the required database
argument
- improved manpage layout by using new DocBook stylesheet capabilities
when available, and workarounds for older stylesheet versions
- configure now simplifies the task of building modularized RefDB
packages. You can now build server, clients, and doc packages
separately. Additionally, you can switch off building docs and
manpages to build the RefDB binaries from the SVN sources on systems
without an XML/DocBook toolchaiin
- the code that generates citation keys from author names was improved
by using iconv to transliterate foreign characters.
- the default setup now uses UTF-8 as the default input, storage, and
output encoding.
- the wrapper script bib2ris-utf8 was added to simplify postprocessing
of the bib2ris output with the new refdb_latex2uft8txt script. The
latter converts foreign characters to their UTF-8 equivalents and
strips off other LaTeX commands.
- personal reference lists are now implemented on top of extended
notes. This means in particular that each user can maintain an
unlimited number of reference lists
- various fixes to the PHP web interface
- use an improved bibtex citation format (\cite{dbname:citekey})
- now supports citation key based citation formats in addition to
author/year and numeric
- improved citation formats handle more reference types
- refdbd can now install and upgrade the main database without
external tools. See the file UPGRADING and the refdbd man page for
further information.
- for this to work, the main database dump files are now versioned
- refdb-init now uses these new refdbd capabilities to simplify the
initial setup.
- refdbd can also be run to check the database connection and to
retrieve the database version. This is mainly useful for
package/ports builders.
- the help messages of the binaries now show the subversion revision
they were built from. This makes it easier to track down bugs to
specific builds.
- refdbd can now run from a single main+reference database to allow
the installation on cheap web space with access to a single MySQL
database.
- RefDB now provides frequency data for various statistical
purposes. The get{au|ed|as|kw|jo|jf|j1|j2} commands allow to display
the absolute number of references that use the particular item, or a
relative number between 0 and 10
- the new checkref command allows to compare new data against the
existing data before adding them permanently. This helps to identify
duplicate references, as well as spelling variants and synonyms of
keywords, author names, and periodical names.
- The xhtml output of getref and checkref now contain frequency
data. If you view the output with a new optional stylesheet, the
authors, journal names, and keywords will be displayed according to
their frequency in terms of font size and colour, similar to the tag
clouds in services like del.icio.us.
- getref and get{au|ed|as|kw|jo|jf|j1|j2} now support a new option -N
limit[:offset] to cut down on the number of returned datasets. This
feature can be conveniently used to loop over the result set in
e.g. increments of 5 or 10, a feature most useful for graphical
frontends.
- the dump files of empty reference databases (these are required
e.g. to set up RefDB using a single database) were updated and
versioned.
- the name of the main database is now configurable through the
refdbdrc config file or by means of refdbd's -M command-line
option. This allows RefDB to run in situations where you cannot choose
the database name.
Backwards-incompatible changes:
- The -N option of the refdba:adduser command (which specifies the
password of a new user) was renamed to -W. -N is now used by the
clients to specify a number or a range of datasets.
- The addref and updateref commands now use -A to specify the
input reference type instead of -r. This was necessary to stay
consistent with the new checkref command which has to deal with both
an input (-A) and an output (-r) format.
- To avoid confusion, these changes extend to the internal
client/server protocol. Its version is now 5. As a result, old clients
won't talk to the new server and vice versa.
_________________________
Version 0.9.7 (June 2006)
Bugfixes:
- multiple citation texts are now properly included in the character
encoding conversion
- periodical titles need to be escaped during import
- a possible segfault during the formatting of journal names in
bibliographies was fixed
- the formatting (bold, italics, superscript and so on) of intext
citations was fixed for both the DSSSL and the XSL stylesheets
- fixed missing preceding/following export in journal names during
style export
- all XML output now correctly exports empty strings as empty elements
instead of dropping the element
- bibliography titles are now left empty if the style says so, instead
of inventing a default title
- fixed a crash in the bibliography generation code when an URL was
missing
- print empty part title instead of none to make the output comply
with the DTD
- fixed possible segfaults if the automatic keyword scan ran without
any keywords
- fixed client/server dialog mishap in refdbc:getref, refdbc:getnote
and getbib
- assorted causes of segfaults during bibliography creation were
eliminated
- build problems on Debian due to the lack of
batik-rasterizer. ./configure now checks for this image converter
and falls back to ImageMagick's convert if the former is not
available. The latter produces buttugly output from the SVG sources
but this is better than a build that fails.
- style problems due to bugs in refdb.dump.mysql and
refdb.dump.mysql41. The *NAMEORDER field sizes were chosen too short
which caused valid values for these fields to become truncated when
MySQL was used as the database engine. See the instructions in
UPGRADING if you're a MySQL user.
- refdbd now uses the path to DB_VERSION from the config file instead
of a compile-time value
Improvements
- added a refdb-init.sh script that helps setting up RefDB after
installation
- added a citationlistx backend to support refdb-publist
- some fixes in the bibtex export
- the XML headers now contain a larger selection of predefined
entities
- FIRSTSPCM (without a dot) was added to the *NAMEORDER values
- support for multi-head tex citations was added
- import and export fixes for CONF, HEAR, and ELEC types
- replaced SGML manual sources by XML sources
- replaced handcrafted man pages by DocBook output
- the logic of the configure switch to build docs was reversed: docs
are now built by default (this is required to install the prebuilt
docs), but if you run into problems when building from the CVS
sources you can disable the docs by means of the --disable-docs
switch
- alltitles and link0 support was added to the dsssl stylesheets
- the biblioset and bibliomset grouping was improved in the
bibliography output
- alltitle, which is the only useful title code if you want titles in
the in-text citations, is now supported
- LINK ROLE="0", MISC, and USERDEF without role attribute are now
properly imported
- the key/citekey mismatch in the notes import code was fixed
- removed a pair of parens from print/docbook-refdb-dsl which caused a
warning
- style export now includes the character encoding into the processing
instruction line
- the Makefile created by refdbnd no longer removes the source file
using the full citation format when running make clean. If you
really need to do this, run "make shortclean". This change was done
to better support refdb-mode which uses the full citation format by
default.
- fixed a bug in the packaging code which kept refdb-backup and
refdb-restore out of the tarball
- the main database version check and the update of the database
version file are now performed only once per refdbd session
- marc2ris now imports the call numbers contained in the MARC fields
050 (AV) and 082 (U1)
______________________________
Version 0.9.6 (November 2005)
Bugfixes:
- fixed hangs when getref and getnote returned zero datasets
- fixed DocBook bibliography output
- fixed missing slashes in RIS date output
- fixed RIS date output for missing year and otherinfo data
- fixed risx reprint date output
- fixed getref xhtml header
- fixed erroneous month and day entries popping up in pubdates
- fixed obscure bug in stylespec generation code
- fixed refdb-backup and refdb-restore bugs
- fixed quoting problems in addlink command
- fixed dozens of int vs. long long mismatches (hi OSX!)
- fixed problems when reading from stdin
Improvements
- added sqlite3 support
- added support for MySQL > 4.0
- added transaction support for MySQL
- improved character encoding handling
- databases are now versioned
- refdba:addstyle() can now read from stdin
- added getref AX and TX pseudo targets
- refdbnd now supports DocBook XML 4.3
- getref now supports query strings of unlimited size
- getref now supports the AX (all authors/editors) and TX (all titles)
pseudo targets
- client/server protocol was improved and documented
- moved to libdbi-0.8.x
- integrated manual into sources
- integrated DTD documentation into sources
- new PHP-based web interface
- now supports multiple UR and L1-L4 fields per dataset
- now supports public or private extended notes
- now supports titles instead of missing authornames in bibliographies
- new command updatejo allows editing periodical synonyms
- refdb-ms is now an integral part of RefDB
- new scripts refdb-backup and refdb-restore help to backup databases
- man pages for all user tools are now available
- updated for most recent TEI stylesheets
Backwards-incompatible changes:
- The client/server communication protocol has changed as of
0.9.6-pre2. Old clients cannot talk to new servers and vice versa.
- The Perl scripts en2ris.pl, marc2ris.pl, and med2ris.pl were renamed
to en2ris, marc2ris, and med2ris, respectively. The scripts dos2unix
and tex2mail were renamed to refdb_dos2unix and refdb_tex2mail,
respectively.
- The default locations of the default SQLite database directory has
changed. It is now {prefix}/var/lib/refdb/db in compliance with the
Filesystem Hierarchy Standard.
- The builtin web interface has been removed.
______________________________
Version 0.9.5 (December 2004)
Bugfixes:
- a boatload of bibliography formatting bugs was fixed
- sync'ed defaults in citestylex.dtd and refdbd to avoid segfaults
- fixed a bug in the inline citation string spec which caused possible
duplicate IDs
- refdb.css is now usable also for xhtml output
- refdbnd-generated Makefiles now properly remove .aux and .fo files
- fixed some bugs in publication year input and output
- fixed entity replacement in SGML/XML output
- do not allow XML reserved chars and colons in citation keys
- separate primary and secondary publication year logically to prevent
unwanted side effects
- fixed LOCK issue for MySQL 4.0.2 and later
- fixed memory management in refdbxp to make it a gazillion times
faster
- getref -s switch now overrides the fields variable as expected
- formatting of day output in bibliographies was fixed
- med2ris.pl now handles the updated Pubmed output correctly
- fixed unique suffix behaviour (if two or more works share the
identical authorlist and pubyear, all receive a suffix)
Improvements:
- added a new config file refdbxmlrc to handle the configuration of
XML tools
- XSLT driver files were updated to match the current versions of the
original stylesheets
- pass through the -h command line option to the individual commands
in refdbc and refdba to allow command-specific help in batch mode
- added database typing for future support of additional database
types
- refdbnd and runbib now support character encodings
- added an option to refdb-bug to protect passwords
- added support for the YMD date format
- added support for the ICAPS title and journalname formatting
- refdbib now reports the number and IDs of cited works which are not
in the database
- added a new pseudo target TA to the getref query language to search
for a phrase in all title levels
- citestylex now supports the bibliography formatting in terms of
indentation and font size
- runbib now creates css stylesheets for the bibliography formatting
which can be used either stand-alone or be included into a driver file
- runbib now accepts a switch to set the server IP
- refdbd now always reports the database name if it can't connect to
the database engine
- XSLT stylesheets can now be referenced via a XML catalog, obviating
the need for configure-time decisions if catalog support is available
- adapted the directory hierarchy expectations for TEI XSLT files to
support both P4 and the upcoming P5 versions
Backwards-incompatible changes:
- The system database uses a different layout compared
to previous versions. If you upgrade, make sure to create a new system
database using the supplied dump files.
- Running older and newer versions of RefDB in parallel now works a
little different. By default, the system database is always called
"refdb" but you can change this with the --with-main-db configure
switch.
- The TEI stylesheets as supplied by www.tei-c.org now use a different
directory layout than in the past. RefDB now assumes this new layout
which looks like this:
value of --with-tei-xsl|generated by unpacking stylesheets
|______________________|_________|
/usr/local/share/xsl/tei/P4/fo
/html
/common
- The default FO processor used to be PassiveTeX. Due to ongoing
incompatibilities of this tool with recent DocBook stylesheets I've
switched to FOP as the default processor. Please edit refdbxmlrc
accordingly if you want to keep PassiveTeX as your processor of
choice.
- The in-text citation format had to be changed in order to avoid
ambiguities. The refdbxp tool was adapted accordingly. Documents using
the short citation style are not affected by this change.
- runbib now uses the new -m option to set one or more include variables
for marked sections. The previously used -i option now sets the server
IP or hostname, just as in most other tools.
______________________________
Version 0.9.4 (February 2004)
Bugfixes:
- fixed risx output
- fixed wrong mapping of titles in some risx types
- added publication type HEAR to the risx DTD
- fixed a possible segfault if messages are logged to stderr
- fixed case mismatches in DocBook XML driver files
- fixed bug in bibliography code for subsequent multiple citations
- fixed deleteref return message if the requested reference does not
exist
- fixed junk error messages if refdbc was run in batch mode without
specifying a default database.
- fixed erroneus trailing spaces in middle names
- fixed handling of hyphenated double-initials (K.-H.)
- fixed error in handling of journal custom abbrev2
- fixed bug that would have blocked concurrent addref commands
Improvements:
- added XHTML support to the getref command and to DocBook XML
bibliographies
- added support for extended notes. Extended notes can be linked to
any number of references, keywords, author names, and periodical
names in your database. You can search for references and display
all notes attached to them, or you can search for notes and display
which references they are linked to. You can search for notes which
are attached to particular references and vice versa. The new
refdbc commands addnote, updatenote, deletenote, and getnote work
essentially like their *ref counterparts. The new refdbc command
addlink adds or removes links from notes to other database objects.
- by default refdbd answers only connections from localhost. The new
-I switch allows remote connections as well.
- deleteref will refuse to delete a reference if it is in the personal
lists of more than one user.
- reference databases now carry additional meta information like the
refdb version they were created with and the dates of creation and
last modification. This information is available through the
refdbc:whichdb command.
- listdb now only returns RefDB reference databases
- the refdbnd script was enhanced to simplify generating a Makefile
for an existing SGML or XML document
- server and clients can now be built and installed separately
- if a default database is selected in refdbc, the program will try to
select this database at startup to test for its presence.
- the getref and getnote query language now uses literal string
matches by default. Use the new "~" operator to obtain a regexp
match.
- the string quoting was improved to simplify running regexp queries
in the batch mode.
- refdbd now has built-in support for character encoding
conversions. You can add datasets and notes in several encodings,
including Unicode, and retrieve datasets in all encodings that your
libiconv supports. Incoming data is automatically converted to the
encoding used by the current database.
Backwards-incompatible changes:
- Both the system database (now called refdb instead of refdb1 to allow
parallel installations of new and older versions) and the reference
databases use different layouts compared to older versions. In order
to use your existing reference data with 0.9.4, make sure to follow
the instructions in UPGRADING.
- For security reasons refdbd no longer accepts remote connections by
default. If you want to continue accessing refdbd from a remote
box, make sure to start refdbd with the -I switch or use the
"remoteconnect" variable in refdbdrc.
- The query language now performs literal string matches by default. Use
the new operator "~" to request a regular expression match.
______________________________
Version 0.9.3 (August 2003)
Bugfixes:
- citation key case mismatches fixed for SGML and XML documents
- fixed table locking problem in MySQL 4.02 and later
- work around OSX sprintf() bug
- fixed some build issues on OSX
- fixed SQLite problems on OSX
- assorted fixes in the backends
- queries including journals now use regexp match instead of full
match
- fixed CGI problem caused by Windoze browsers
- fixed CGI edit problem
- fixed problem with t_periodical entries
- fixed assorted segfaults in the bibliography code
- fixed problems with queries if personal list is empty
Improvements:
- use xsltproc and a XSLT stylesheet to extract IDs/citation keys from
XML documents
- risx.dtd defines an additional XML reference data input format
- improved support for availability strings
- manual keyword scan
- new risx backend
- med2ris.pl now has full iconv support
- the getref -S option is now honored by most backends
- new RefDBClient::Client Perl module allows to access the
functionality provided by refdbd through Perl scripts
- refdbjade and refdbxml now use -s instead of -d to specify the
stylesheet to avoid confusion with the -d switch of runbib
- personal reference list is now also supported by SQLite
- the refdbctl script now uses the reload and restart commands
according to the LSB specifications
Backwards-incompatible changes:
- The med2ris.pl script now uses the uppercase "-T" switch to manually
select the input data type. The lowercase "-t" switch is now used to
select the output character encoding.
______________________________
Version 0.9.2 (February 2003):
Bugfixes:
- a few minor fixes for building on Cygwin
- bibtex bibliographies now work again
- fixed prefs-related crash (on selected platforms) of refdbib
- fixed premature end due to debug code in refdbxp
- now formats abbreviated first/middle names correctly in
bibliographies if the database provides full names
- fixed quoting problem in refdbc:getref command
- fixed incorrect query results in getfoo and getref commands (if a
getref query included a journal name, only the first reference
containing this periodical was returned; commands like getjo returned
as many identical hits as there were references using the particular
journal name)
- assorted fixes to run refdba/refdbc as regular apps within a CGI
environment (think Perl or PHP).
- a missing "SYSTEM" was added to Makefile.template for DocBook XML
documents
- refdbib now returns a proper error code for server-side errors
Improvements:
- now supports SQLite as an embedded database engine
- med2ris.pl was extended to handle both tagged and XML Pubmed data,
now runs as CGI script, the web interface now uses med2ris.pl by
default
- med2ris.pl and marc2ris.pl were extended to handle RefDB-style
configuration and log files; they now depend on the separate
RefDB-perlmod package
- now strips off TeX special characters when building a citation key
from an author name
- refdbc:getref now displays the number of retrieved references
- runbib automatically uses the refdb.cat catalog file for its
(open)jade calls to make sure the driver files are found
- Makefile.template and refdbnd were improved to allow changing the
style by changing a single variable (this was advertised in the
previous release but it actually required changing the names of the
driver files too)
- configure checks for the presence of the XSL stylesheets. You'll get
a warning if you forget to set --with-docbook-xsl or --with-tei-xsl or
if you specify incorrect paths
- refdb will now use its own default SGML declarations if you don't
specify other copies on the configure command line with the
--with-sgml-declaration and --with-xml-declaration options.
- if a runbib call fails, the refdbib output files are renamed to
XY.err to give the refdbnd-created Makefile a second chance
Backwards-incompatible changes:
- A minor change in the client/server communication protocol was
required to allow displaying the number of retrieved references with
the refdbc:getref command. The server of this version accommodates
both new and old clients. New clients will not be able to talk to
older servers, though.
______________________________
Version 0.9.1 (December 2002):
Bugfixes:
- printf() conversion specifier incompatibility on Solaris was fixed.
- refdbctl was fixed to run on Solaris out of the box
- nmed2ris now handles datasets w/o end page or w/o page information
or w/o volume/issue information properly.
- selecting character encodings with PostgreSQL now works properly.
- creating bibliographies with PostgreSQL should now work properly
- citations.dsl was fixed
- import of RIS data with non-tagged lines now works properly
- runbib now creates the proper .bib file for DocBook XML
- example documents were fixed and extended
- refdbxp now treats strings containing "%" properly
Improvements:
- A new interactive shell script refdbnd (like "new document") creates
a new skeleton document with a SGML or XML prolog and an entity
declaration for your bibliography. It also creates a Makefile that
controls all of the subsequent processing steps.
- A new Perl script med2ris.pl converts Pubmed XML datasets to
RIS. This script is intended to replace nmed2ris, although the latter
will remain in the distribution for a while.
- The marc2ris.pl Perl script was extended to handle UKMARC and
UNIMARC data.
- A new tutorial is available online at
http://refdb.sourceforge.net/doc.html. This is targeted at new users
(not administrators) and explains the basics with a lot of examples.
____________________________
Version 0.9 (November 2002):
Bugfixes:
- Fixed another segfault in refdbib
- Changing databases in the web interface now actually works
- All list* client commands now list everything if no regexp is given
as an argument.
Improvements:
- RefDB now uses a database abstraction library (libdbi). Both MySQL
and PostgreSQL are supported as SQL database servers. Support for
additional servers is in preparation.
- PostgreSQL users can choose between several character encodings
including Unicode for each database. They also enjoy transaction
support.
- Reference databases now store a unique citation key in addition to
the automatically assigned ID for each reference. This is a mnemonic
string supplied by the user or auto-generated from the first author
and the publication year.
- The getref command uses a new tag :CK: to query the new citation key
field.
- SGML and XML documents can now use a greatly simplified short
notation for citations. All you need to do is create a citation
element and list the IDs or citation keys. A new tool refdbxp
automatically expands the short to the full notation.
- All configuration files are now installed in a subdirectory "refdb"
of sysconfdir to unclutter the latter.
- A new import filter for MARC data was added.
- RefDB now offers an optional automatic keyword scan. The title and
abstract fields of new references are scanned for existing keywords
and all matches are added to the database.
- A new teix backend allows export of reference data as TEI XML
datasets.
- The output of the db31 backend is improved.
- All RefDB backends now treat non-abbreviated first and middle names
correctly.
- Deleted references are replaced by invisible skeleton entries. This
greatly simplifies restoring a database with the same ID sequence from
either a RIS or a SQL dump.
- Bibliography styles can now be exported as XML files.
- A set of example files: reference data in various formats, test
documents with RefDB citations.
Backwards-incompatible changes:
- The configuration files moved again. This time they were collected
into a subdirectory 'refdb' below the system configuration directory
specified in the configuration step. E.g. if you specify
--sysconfdir=/usr/local/etc (the default), the configuration files
will end up in /usr/local/etc/refdb. This cleans up the system
configuration directory and makes all global RefDB configuration files
easier to access.
- The schema of the common database refdb has changed. To allow old and
new RefDB versions to run in parallel, versions 0.9 and later use
refdb1 as the common database. Create this database after installation
of the refdb components according to the user manual.
- The refdbvar database used by refdb versions prior to 0.9 is
obsolete. After upgrading to 0.9 you may safely drop this database.
- The schema of the reference databases has changed. The main table
t_refdb now has an additional column for the citation keys. In order
to use your existing reference databases, please follow the
instructions in the file UPGRADING.
- The remoteadmin configuration variable for refdbd now uses 't' and 'f'
as argument instead of '1' and '0'.
- The cgiurl configuration variable for refdbc was renamed to cssurl
which better reflects its purpose (it was a braino to call it cgiurl
in the first place).
- There are a few new configuration variables and command line switches
to allow usage with PostgreSQL. However, all defaults still assume
MySQL so your configuration should keep working.
- The DocBook export format has changed considerably. Any applications
or stylesheets that you wrote for the old format need to be adapted.
____________________________
Version 0.8.6 (August 2002):
Bugfixes:
- fixed a segfault in refdbib
- the adduser command was fixed for host names containing wildcards
- retrieving journal abbreviations through the web interface now works
as expected
- etc/Makefile now correctly creates the sysconfdir directory if it
doesn't exist yet
- fixed a protocol error in the bibliography code
- fixed handling of visible and hidden user config files
- the additional information in PY fields is now correctly added to
the appropriate row
Improvements:
- a new command line option (-y) allows to specify the directory
containing the configuration files. This is important only if you move
around precompiled binaries, e.g. when relocating a rpm package.
____________________________
Version 0.8.5 (July 2002):
Bugfixes:
- Another password encryption bug (unterminated string) was fixed
- The link color was changed in the CSS file for the web interface as
the links to offprints were rendered white on white :-/
- access.js now uses an expiry time of 1 day for the cookies to avoid
connection errors through the web interface
- The refdbctl script now uses the standard "restart" argument instead
of "reload"
- If pdfroot uses a protocol (http or ftp), the links in the web
interface and the other output formats now reflect this; otherwise
the pseudo-protocol file:// will be used instead as before.
- refdbd now properly cleans up its fifos regardless of the way it
exits
- The refdb-bug script now looks for the global configuration files in
the system configuration directory and no longer uses $REFDBLIB.
- make clean now works properly in all subdirectories
Improvements:
- The Makefiles use $(DESTDIR) to simplify package building
- The reference converters bib2ris and nmed2ris are now accessible
through the web interface
- The path to shareable files which was previously defined by the
$REFDBLIB environment variable can now be defined in the
configuration files. The value is correctly set in the example
configuration files which are created during the
installation. $REFDBLIB will only be consulted if the variable
refdblib is not set in the configuration file ($REFDBLIB will be
dropped entirely in future versions).
- The example configuration files are now installed in the system
configuration directory (default: /usr/local/etc) instead of the
package data directory (default: /usr/local/share/refdb).
- The command help messages of refdba and refdbc were improved
____________________________
Version 0.8.4 (April 2002):
Bugfixes:
- Password encryption bug on PPC Linux (and other PPC OSes?) was fixed
- It is now possible to specify empty variable values with the set
command in refdba and refdbc
- The RIS backend accidentally returned the value of USER1 for all
USERX fields and MISC1 for all MISCX fields. This is corrected now.
- The application server now handles SIGCHLD correctly to avoid
zombies on BSD-style systems.
- refdba and refdbc now correctly pass non-option arguments to the
command if run in batch mode
- the "'' could not be resolved as hostname" bug in refdbc and refdbib
was fixed
- a bug in the detection of unabbreviated words in journal names was
fixed
- a bug in the post-processing of the default_ris variable was fixed
- the address, ISSN, URL, publisher, and city fields are now available
for display in the screen and HTML backends as well as in the web
interface
Improvements:
- New refdba functions addword and listword to manage reserved journal
words
- The getref HTML output now generates output suitable for CSS
stylesheets. A new command-line option/configuration file variable
allows to specify the URL of the CSS file to use.
- All RefDB applications now look into /usr/local/etc (or whatever you
choose as "sysconfdir" during configuration) to find their global
configuration files. Only if they're not found there, the apps will
consult $REFDBLIB. The latter is done in order not to break existing
installations, but you should move your config files to the proper
location now (unless you really share them between machines). This
change was made to separate the shareable data in $REFDBLIB from
machine-specific configuration data.
- Building and installing is now possible from a separate build
directory
- The script refdb is now suitable for use on both SysV-style and
BSD-style systems to start and stop the refdbd daemon
Other changes:
- ris.el is now no longer byte-compiled. This simplifies building
Debian packages and does not really hurt speed-wise. You can still
byte-compile this file manually if you believe it helps.
Backwards-incompatible changes:
- All RefDB applications now look into /usr/local/etc to find their
global configuration files (this can be changed during
configuration). Only if they're not found there, the apps will
consult $REFDBLIB. The latter is done in order not to break existing
installations, but you should move your config files to the proper
location now. This change was made to separate shareable data from
machine-specific configuration data.
____________________________
Version 0.8.3 (March 2002):
Bugfixes:
- Several less commonly used fields (e.g. SN or T3) were accidentally
not implemented in the query code. With this version, queries work
for all existing fields.
- RefDB should now compile and install cleanly on Solaris.
Improvements:
- The data file installation was finally implemented. That is, all
stylesheets, scripts, configuration files, and DTDs will be
automatically installed and all paths and URLs will be customized
according to your local installation. This should take out most of
the pain of the RefDB installation, as it reduces your
post-installation hassles essentially to creating or changing a few
environment variables.
- The configure script gained about half a dozen additional options in
order to allow the automatic customization of the data files.
- The interactive clients refdba and refdbc have a new command "set"
which allows to modify configuration variables during a session. You
can e.g. change your pager or connect to refdbd on a different server
without leaving your session. The same command can be used to
display the current values of the configuration variables.
- refdbc, when run as a CGI application, can now automatically exit
after a predetermined time. This prevents clogging the memory with
hanging programs (should not happen, but you never know).
- A new configuration variable for refdbc allows to display additional
fields by default in every screen or html search result.
- The runbib script now supports a -i option to include marked
sections
____________________________
Version 0.8.2 (January 2002):
Bugfixes:
- refdbd now reads the pidfile setting from the config file
- fixed some signal oddities that just happened to work on Linux and
Cygwin (but not on FreeBSD)
Improvements:
- DocBook XML and TEI XML were added to the supported document types
for generating bibliographies. A set of XSL stylesheets is available
for both document types
- textual citations (Miller et al. reported recently [1]...) are now
supported
- The CiteStyle DTD now supports month names and their abbreviations in
the language required by the publication
- configure options were added to simplify building on systems that
put libraries into odd places
- builds cleanly on FreeBSD (and runs, too)
- The Makefiles were brushed up so "make dist" finally works
Backwards-incompatible changes:
- The DocBook bibliographic output was changed again to allow textual
citations. Due to this change, citations in existing documents need to
be slightly changed to work with new bibliographies. The new
stylesheets will not work with old documents and vice versa.
- The SGML versions of the CiteStyle DTD and the CitationList DTD were
dropped. The XML versions are now authoritative.
____________________________
Version 0.8.1 (November 2001):
Bugfixes:
- fixed occasional crash during bibliography creation due to free() on
uninitialized pointer
- fixed server crash for client commands with a mandatory argument
if they were called without an argument
- fixed occasional "could not connect" problems when password
authentication was used
- fixed obscure "POSPOSPOS" output after running addstyle in refdba
- fixed minor bugs in the DSSSL stylesheets for bibliography output
- fixed CiteStyle XML DTD which used constructs only available in SGML
- removed erroneous dependence of almost all backend output on a
journalname
Improvements:
- refdbib now generates DSSSL files (.dsl) instead of style
specification files (.spc). These DSSSL files act as driver files for
the RefDB DSSSL stylesheets which in turn are driver files for the
original DocBook DSSSL stylesheets. Therefore the final
transformation of a DocBook document with a RefDB bibliography can now
also be done with plain old Jade.
- The DocBook bibliography output was slightly changed to make it
smaller and better suited for subsequent SGML-to-SGML
transformations. The stylesheets were changed accordingly.
- A new DSSSL stylesheet performs the transformation of DocBook
bibliography output into TEI bibliography output.
- The web interface now allows to display additional fields in
reference queries.
- The log level and log destination can now also be specified
verbosely on the command line and in the configuration files
Backwards-incompatible changes:
- refdbib now generates DSSSL files (.dsl) instead of style
specification files (.spc). These DSSSL files act as driver files for
the RefDB DSSSL stylesheets which in turn are driver files for the
original DocBook DSSSL stylesheets. For this to work, a new catalog
file must be included in your SGML_CATALOG_FILES environment variable.
The refdbjade script was changed and will no longer work with .spc
files.
- The DocBook bibliographic output was slightly changed to make it more
suitable for transformations into e.g. TEI. The DSSSL stylesheets were
adapted accordingly. Use only old stylesheets for documents containing
old-style bibliographies, or re-create them with the current version.
____________________________
Version 0.8.0 (October 2001):
Bugfixes:
- fixed two potential coredumps due to NULL or unassigned pointers
- fixed canonicalize_path() which failed if the file does not
exist
- refdbc now correctly handles the -t switch in batch mode
Improvements:
- added bib2ris converter to import BibTeX reference data
- refdbib can extract the citations from LaTeX documents and generate
a .bib file for use with BibTeX
- added db2ris converter to import DocBook bibliography entries
- added a dos2unix script to help importing Windows reference
databases
- added an Emacs major mode for editing RIS files
- the makefile now installs most of the scripts and the ris-mode
____________________________
Version 0.7.2 (August 2001):
Bugfixes:
- The example configuration file for refdbd used a wrong port. This
is fixed now
- fixed logging in refdba
Improvements:
- The timeout command line switch of refdbd is now also -T instead of
-t just as in the clients. The old version will still work in this
release but it will be dropped eventually.
- refdbd can now also grok hostnames in addition to IP addresses
Backwards-incompatible changes:
- Now refdbd also uses -T instead of -t for the timeout switch, just
like the clients. -t is still supported by this release but it will be
dropped in upcoming versions.
____________________________
Version 0.7.1 (August 2001):
Bugfixes:
- configure now uses libncurses or libcurses if libtermcap is absent
- sequence of configure tests was changed to avoid incorrect
readline error message if libtermcap/libcurses/libncurses cannot be
found.
- changed the letters of a few command line options to achieve
consistency across all programs and commands
Improvements:
- added the etc/ subdirectory with commented example configuration
files for all programs
- added logging capabilities to refdbc and refdba
- added batch mode to refdba
Backwards-incompatible changes:
- Now all clients including refdbc and refdba support logging and a
batch mode for use in scripts. Due to these modifications some command
line option letters had to be changed. All options are now consistent in
all applications. Use the -h switch of the applications or of the
interactive commands to view the updated option lists.
__________________________
Version 0.7.0 (July 2001):
Bugfixes:
- Now compiles and links cleanly with readline 4.2
- nmed2ris now correctly detects the new "URLF- " tag
- syslog output in refdbd is fixed
Improvements:
- All new and shiny CGI-based web interface for the most common refdbc
commands
- The configuration files were renamed to <progname>rc
- The global configuration files are no longer hidden. The RefDB
applications now first look for hidden personal configuration files,
then for non-hidden files.
- New shell scripts to simplify the installation of refdbd as a daemon
on Unix-like systems
- The refdbd parent process now writes the process ID to a file on
startup. This simplifies administration with the above scripts
Backwards-incompatible changes:
- All configuration files have been renamed to <progname>rc. The global
files no longer have a leading dot, e.g. .refdbd-init is now
refdbdrc. The personal configuration files may have a leading dot (the
apps first look for a hidden config file, then for a non-hidden file
if the former is not found).
__________________________
Version 0.6.0 (June 2001):
Bugfixes:
Improvements:
- Client-server dialog was changed to introduce versioned protocols
- Passwords are now encrypted in the client-server dialog
- The confserv command now has access control
- Simplified user management: Missing entries in mysql.user and in
mysql.db (for refdb and refdbvar) will be automatically created
- The clients will use the login name as account name if no name
is specified
Backwards-incompatible changes:
- The client-server communication protocol was changed. Old clients
don't work with the new application server and vice versa
__________________________
Version 0.5.2 (June 2001):
Bugfixes:
- Cygwin invented a mkfifo stub that screwed the configure process
A new macro in acinclude.m4 checks whether mkfifo() actually works
__________________________
Version 0.5.1 (June 2001):
Bugfixes:
- eliminated several potential memory leaks
- fixed the client-server dialog for the bibliography tool
- moved a homegrown m4 macro from aclocal.m4 to acinclude.m4 so the
configure script can be recreated from the input files without
problems
Improvements:
- better error reporting for SQL-related errors
- improved whichdb output: now shows number of references and highest
ID
- it is possible to use hostnames instead of IP addresses on the
command line or in the init files
_______________________
Version 0.5 (May 2001):
Initial public release. Alpha release.