build-dependencies added
[yaz-moved-to-github.git] / CHANGELOG
index 9cbc063..550eb74 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,318 @@
 Possible compatibility problems with earlier versions marked with '*'.
 
+For SSL, use -lssl -lcrypto on systems that don't have pkg-config.
+
+--- 2.0.12 2004/02/16
+
+Added member 'schema' to bend_explain_rr structure so that backend
+can specify explain record identifier. Defaults to Zeerex 2.0.
+
+Fix encoding of OID's of form 1.0.X. Bug introduced in 2.0.11.
+
+--- 2.0.11 2004/02/16
+
+* SRW/SRU 1.1 updates: updated diagnostic in srw.h to use uri instead
+of code.
+
+Added init command for yaz-client which sends "extra" init request.
+
+Fixed two bugs in OID codec - ber_oidc. Throw error when encoding/decoding
+bad truncated OID. Fix decoding of OID X.Y... when X=2 and Y>39.
+
+Fixed a bug in ASN.1 compiler that caused Type-1 Operator codec to fail.
+
+Make ZOOM error code for "invalid query".
+
+Fixed compilation for SSL which wasn't properly enabled for all platforms.
+
+--- 2.0.10 2004/02/05 
+
+For yaz.m4, allow second argument for YAZ_INIT to hold minimal version of
+YAZ required.
+
+* SRW/SRU 1.1 updates. Diagnostic code now a URI.
+
+Added option -p <file> to make Generic Frontend Server to write PID file.
+
+Added option -D to put Generic Frontend Server in background on its own.
+
+Make ZOOM C recognize option "password". If unset, "pass" is used
+(for backwards compatibility).
+
+Fixed a bug in Generic Frontend Server that could make it crash if a
+client sets characterSetNegotation bit, but didn't pass negotiation stuff
+in InitRequest.
+
+New YAZ client command, zversion, that sets Z39.50 version (1,2,3..).
+Must be issued before open, in order to be in effect.
+
+--- 2.0.9-6 2004/01/12  Debian/Windows
+
+Make the SRU server more picky WRT unknown params, etc.
+
+Bug fix: ZOOM scan response didn't return displayTerm - when present.
+
+New YAZ client command, options, that sets Z39.50 options.
+
+New utility functions yaz_init_opt_{encode,decode} to encode/decode Z39.50
+options from a string of tokens (one token for each option bit).
+
+Update SRW diagnostic code messages.
+
+--- 2.0.9-5 2004/01/07  Debian/Windows
+
+Handle user defined stylesheet for SRW/SRU.
+
+--- 2.0.9-4 2004/01/06  Debian/Windows
+
+Fix bug in decoding of Content-Length.
+
+--- 2.0.9-3 2004/01/06  Debian/Windows
+
+Fix a bug with decoding of XML packed records.
+
+--- 2.0.9-2 2004/01/05  Debian only
+
+Allow empty ODR (NMEM=0) for odr_oiddup and odr_getoidbystr.
+
+Fix bug in SRW/SRU diagnostics decoding.
+
+--- 2.0.9 2004/01/05
+
+Fixed bug in Generic Frontend Server which could drop records exceeding
+preferred message size. Reported and fixed by Irina Dijour.
+
+Fixed calculation of package size for structured records in Generic
+Frontend Server. Reported and fixed by Irina Dijour.
+
+Fixed namespace for SRW/SRU diagnostics.
+
+Fixed SEGV in yaz-client that occured for HTTP connection errors.
+
+--- 2.0.8 2003/12/22
+
+* SRW/SRU 1.1. Since the Namespace has changed for SRW/SRU, it means that
+this version is incompatible with version 1.0 and older YAZ SRW/SRU
+implementations.
+
+CQL changes to reflect recent changes to the specification:
+* Documentation talks about context sets instead of index sets.
+* Documentation talks about indexes instead of qualifiers.
+* The CQL-to-PQF transformer's configuration file now uses
+       "index.set.name = <attributes>" instead of the old form
+       "qualifier.set.name = <attributes>".  (Both forms are still
+       understood but the latter is deprecated.)
+* CQL terms with no explicit index specified are now interpreted as
+       cql.serverChoice instead of srw.serverChoice (which of course
+       behaves exactly the same.)
+
+--- 2.0.7 2003/12/16
+
+MARC conversion can now generate ISO2709 output in another
+character set. yaz-marcdump uses this facility if you invoke it
+with option -O.
+
+Added missing C decl macros for include/yaz/{soap.h,srw.h,cql.h}, so that
+functions from there can be used from C++.
+
+--- 2.0.6 2003/12/04
+
+Frontend server now transfers memory from decoded packages to stream
+ODR for search.
+
+NMEM now clears freed blocks with 'Y' (hex 59) to force bad memory
+references to show up. 
+
+ZOOM-C now supports standard ZOOM option names as described in v1.4 of
+the ZOOM Abstract API.  The older names for the same options are still
+also supported for the benefit of old applications.
+
+ZOOM-C supports "implementationId" and "implementationVersion" options
+to go along with "implementationName".  These allow the user code to
+specify identification strings to be sent to servers.
+Add OID for the new ExtLite attribute set.
+
+Add OIDs for NACSIS-CATP, FINMARC2000 and MARC21-fin record-syntaxes,
+ as requested/supplid by Ere Maijala <ere@atp.fi>
+
+For generic frontend server, reverse the order of
+"toolkit-supplied / application-supplied" strings sent as implementationId,
+Name and Version.  Also, remove the spaces around the slash.  This brings
+the GFS in line with the behaviour of ZOOM-C on the client side.
+
+Add function ZOOM_scanset_display_term.
+
+yaz-client shows scan displayTerm if present.
+
+Utility yaz-iconv is now installed by default along with the man page 
+yaz-iconv.1.
+
+Extend configure check for OpenSSL to use pkg-config where available (such
+as RedHat 9).
+
+Incorporate patch by Morten Bogeskov which allows a Unix file socket
+server to specify uid/gid/mask for socket using the format
+ unix:[user=uid,][group=gid,][umask=mask,]file=path
+If file= is omitted the existing format is assumed, e.g.
+ unix:path
+in which case the mask is 0666 (rw for everybody).
+
+Major restructure of YAZ source. All source in libyaz is in src directory.
+Programs in client (yaz-client), ztest (yaz-ztest), zoom (zoom programs),
+util (utility programs such as ASN.1 compiler, yaz-marcdump). 
+
+Added man page for utility yaz-marcdump (used to be called marcdump).
+yaz-marcdump is installed by 'make install'.
+
+Fixed a memory leak in Generic Frontend Server that occurred when decoding
+of incoming package failed.
+
+Fixed a potential DOS attack vulnerability in COMSTACK/ODR.
+
+Change prototype of odr_perror: add const to message string.
+
+New function yaz_log_reopen which reopens log file (for log rotate, etc.)
+
+* Blocking parameter for COMSTACK cs_create is now a bit mask rather
+than a blocking flag. Bit 0 is set for blocking, reset for non-blocking.
+Bit 1 is set if cs_addrstr should avoid DNS lookup; reset for full
+DNS lookup. There should not be any compatibility problems with this
+assuming that blocking=1 or 0 is used.
+
+Fix bad reference in UNIX comstack in function cs_addrstr.
+
+Fix for compilation on AIX.
+
+The generic front-end server (server/seshigh.c) now supports returning
+Init diagnostics to the client in User-information-field, in
+accordance with Z35.90 Implementor Agreement 5 (Returning diagnostics
+in an InitResponse)
+
+--- 2.0.4 2003/09/04
+
+Allow any CQL relation (not just all,any,exact,scr).
+
+Fixes for OCLC UI ASN.1 to make it work with SilverPlatter targets
+that features the same UI.
+
+Implemented command update0 in YAZ client which is equivalent to
+update but uses old of Ext Update ASN.1.
+
+Use OID 1.2.840.10003.15.1000.81.1 for privately defined charsets
+in charset negotiation. Added VAL_ID_CHARSET in oid.h.
+Previously no OID was used for this info.
+
+ZOOM uses smallSetUpperBound=1 instead of 0 for piggyback searches.
+It apparantely upsets EBSCO Publishing IR Z39.50 Server which
+returns 'malformed search term' otherwise.
+
+SortResponse member resultCount now set to NULL in sort handler of
+frontend server.
+
+OPAC support ZOOM. ZOOM_record_get returns OPAC info (as XML) if
+type is "opac".
+
+Add three new utility functions for translating OIDs between various
+formats -- symbolic name such as "Usmarc", minus-1-terminated int
+arrays and dotted strings such as "1.2.840.10003.9.5.1":
+ int *oid_name_to_oid(oid_class oclass, const char *name, int *oid);
+ char *oid_to_dotstring(const int *oid, char *oidbuf);
+ char *oid_name_to_dotstring(oid_class oclass, const char *name, char *oidbuf);
+
+Reverted modifications for ES Update definition for z_IU0Update 
+(OID 1.2.840.10003.9.5.1 and 1.2.840.10003.9.5). The definition
+is back to YAZ 2.0.2.
+
+String value attributes for CCL parser.
+
+Support for OCLC's locally registered "OCLC-UserInformation" PDU,
+which their FirstSearch server returns in Init responses, sometimes
+carrying useful diagnostic information when Init fails.  This has the
+OID 1.2.840.10003.10.1000.17.1 and is defined in the file
+"z39.50/oclcui.asn", where its definition is somewhat different from
+what OCLC document on their web-site, as required to interoperate with
+their servers.
+
+Support for anonymous authentication in yaz-client.  Use the command
+"auth -".
+
+* Fix the OID of the Index Data-local "admin" Extended Service from 
+  1.2.840.10003.9.81.1 to 1.2.840.10003.9.1000.81.1.  The omission of
+  the 1000, which indicates a locally-defined OID, was a mistake.
+
+--- 2.0.3 2003/06/20
+
+Fix CCL directive @case handling so that it affects string match for
+both CCL keywords and qualifiers.
+
+* ESFormat-Update updates. Packages with OID 1.2.840.10003.9.5.1 and
+1.2.840.10003.9.5 are now handled by the same decoder z_IU0Update .
+Decoder has been updated with ASN.1 changes as listed in
+http://lcweb.loc.gov/z3950/agency/defns/updateES.html
+Note that the "latest" DB Update, OID 1.2.840.10003.9.5.1.1 , handler
+z_IUUpdate, remains unchanged. 
+
+ZOOM_record_get may now return a record in a specific character set.
+For type use "form; charset=from[,to]" where form (render, xml, ..) ,
+"from" is the character set of record as returned by target. "to" is
+the character set to be returned. If omitted, "to" is UTF-8.
+
+YAZ ASN.1 compiler renamed from yaz-comp to yaz-asncomp
+
+New ODR utility, odr_getelement, which returns name of element for
+which encoding/decoding failed.
+
+Fixed ODR so that it returns error code OREQUIRED rather than ONONE
+in cases where a required element was omitted.
+
+Bug fix: some MARC8 sequences were not converted.
+
+New ZOOM option "step" which specifies number of records to be
+retrieved in one chunk. Used in conjunction with "start" and "count".
+
+SRW support for yaz-client. Use scheme http: to use it, e.g.
+ http://host:port/db
+
+yaz-client no longer does (un)intelligent character set conversions
+by default. Can be enabled with charset and marc_charset commands.
+
+xmalloc trace fix for 64-bit systems such as DEC alpha. 
+
+Solaris 2.6 compile fix.
+
+New function, cql_strerror() translates SRW error codes, as returned
+by cql_transform_error(), into human-readable English strings.  Used
+in yaz-client diagnostics when appropriate.
+
+New CQL2RPN query-type for the command-line yaz-client, parses CQL and
+converts it into a type-1 query which is sent to the server.  This
+makes CQL available for use with all Z-servers, as opposed to the tiny
+minority that can handle CQL queries themselves.
+
+--- 2.0.2 2003/04/28
+
+New Debian package layout similar to the Redhat Package layout.
+
+New ZOOM events ZOOM_EVENT_RECV_{RECORD,SEARCH} for receiving a record
+and search result respectively.
+
+--- 2.0.1 2003/04/25
+
+Redhat package is now several packages: libyaz (runtime libraries),
+libyaz-devel (development and documentation, and yaz (utility programs).
+Package spec file by Morten Bøgeskov.
+
+New member 'schema' in struct bend_fetch_rr which the name of requested
+schema (SRW/SRU) for record (or NULL if none was given). The fetch
+handler MAY set this to reflect the schema of the returned record.
+
+New member 'display_term' in struct scan_entry. GFS now sets member entries
+and allocates scan entries to be filled by user scan handler. In previous
+version, entries member was allocated by the scan handler. That still works,
+but the GFS will ignore member display_term - assuming it was NOT set by
+the handler. The fact that the GFS now allocates the entries both allows
+for new members and makes a scan handler easier to write.
+
 Fix CQL lex buffer overflow.
 
 SRW/SRU recordPacking. For SRW default recordPacking is string. For