1 $Id: Changes,v 1.41 2007-08-20 10:58:35 mike Exp $
3 Revision history for Perl extension Net::Z3950::SimpleServer
6 - When the scan-handler callback returns, do not attempt to
7 copy the terms from Perl structures if the error-code is
8 non-zero (i.e. if an error has occurred). This protects
9 against a segmentation fault when the Perl callback does not
10 explicitly set $args->{NUMBER} = 0 on error.
11 - Some clarifications to documentation.
12 - Correct transcription of string-valued attributes in
14 - Scan handler is now passed RPN as well as TERM, a tree of
15 Perl structures representing the entire scan clause
16 including access-points and other attributes (which are
18 - The various classes used to represent nodes in the RPN query
19 tree (Net::Z3950::APDU::Query, Net::Z3950::RPN::And,
20 Net::Z3950::RPN::Or, Net::Z3950::RPN::AndNot,
21 Net::Z3950::RPN::Term and Net::Z3950::RPN::RSID) now all
22 share a newly introduced superclass Net::Z3950::RPN::Node,
23 making it possible to write methods that apply to all node
25 - A utility method toPQF() is provided for
26 Net::Z3950::RPN::Node, enabling the RPN tree to be converted
27 back into a flat PQF query.
29 1.06 Fri Aug 10 23:30:00 BST 2007
30 - New global-handle element can be specified when creating a
31 simple-server object and will be passed to all callback
32 functions. This allows global state to be eliminated from
33 SimpleServer applications ... finally!
34 - Search handler now deals correctly with undefined addinfo:
35 previously a (harmless) error message was emitted.
36 - Add Perl API to yaz_diag_srw_to_bib1(), which SimpleServer
37 applications will need if they access SRU/SRW back-end
38 databases and need to report errors.
39 - Add Perl API to yaz_diag_bib1_to_srw(), because it would
42 1.05 Wed Dec 27 13:19:13 CET 2006
43 - Taking new naming convention for YAZ constants into account.
45 1.04 Fri Dec 1 10:48:32 CET 2006
46 - Build such that SimpleServer links to new yaz shared object.
48 1.03 Tue Aug 8 17:27:16 BST 2006
49 - Rely on version 2.1.14 or later of YAZ; this is the first
50 version that reliably passes through the additional
51 information associated with errors generated while serving
52 SRU/W requests. No functional differences since 1.02.
54 1.02 Wed Jul 26 12:09:50 BST 2006
55 - Better support for Open and User/Password authentication.
56 - SimpleServer.xs's rpn2pquery() is now discarded, and YAZ's
57 yaz_rpnquery_to_wrbuf() used instead. This is more robust
58 in dealing with unusual cases such as string-valued
60 - Support for SCHEMA element when fetching records.
62 1.01 Fri Mar 24 12:09:32 GMT 2006
63 - Documentation of release 1.00's SRU/SRW facilities.
64 - Makefile.PL now fails if YAZ version is earlier than 2.0.0,
65 which was the first with SRU/SRW support.
67 1.00 Fri Mar 24 01:20:24 GMT 2006
68 - Support for SRU and SRW. Mostly this is provided by the YAZ
69 GFS, but changes are needed to allow for the case where
70 there is no RPN query (due to absent on invalid <cql2rpn>
71 element in GFS configuration) so that CQL is passed through
72 natively; and also to fake up an {REQ_FORM} and {REP_FORM}
73 parameters set to the "text/xml" OID when this information
74 is not specified by the GFS.
75 (The jump in version number is due to the SRU/W support.)
76 - Include "logging-server.pl" in the distribution: the
77 simplest possible SimpleServer application, which merely
78 logs the client-request data structures.
79 - Makefile.PL is more helpful if yaz-config isn't found.
80 - Explicitly disable prototypes in SimpleServer.xs: makes no
81 difference but suppresses an error message for a cleaner
84 0.08 Mon Jun 14 14:51:01 2004
85 - SimpleServer is now perl 5.8 thread proof
86 - Support for IMP_ID parameter in Init responses. This was
87 actually written a long time ago, but left commented out as
88 the underlying YAZ back-end server didn't support
89 implementation-ID setting. Now that it does (and has done
90 for eighteen months -- since YAZ release 1.8.6 of
91 2002/03/25!), I've finally removed the comments.
92 - Init handler now understands the setting of {ERR_CODE} as
93 more than a boolean success indicator, and also {ERR_STR}.
94 They are now passed back to the client (thanks to recent
95 changes to the YAZ generic front-end server) in accordance
96 with Z39.50 Implementor Agreement 5, found at
97 http://lcweb.loc.gov/z3950/agency/agree/initdiag.html
99 0.07 Fri Jan 03 10:12:15 2003
100 - Applied Dave Mitchell's (davem@fdgroup.com) GRS-1 parsing patch.
101 Thanks Dave, and sorry it didn't find its way to release 0.06,
104 0.06 Thu Jan 02 11:15:01 2003
105 - Added support for authentication
106 - Add documentation for the object tree passed as the RPN
107 member of the search-handler's argument hash.
108 - We actually removed the vacuous Changelog and TODO files
109 back in 0.05. They should never have been here :-)
111 0.05 Tue Feb 05 21:54:30 2002
112 - Add brief documentation of the new handling
115 0.04 Tue Feb 05 21:49:56 2002
116 - Add Changelog (Why? We already have this file!)
117 - Add TODO file (although it's empty!)
118 - Change interface to constructor, and fix test.pl script to
119 use the new interface.
120 - Add support for Scan.
121 - Add support for building GRS-1 records.
122 - Add grs_test.pl test suite for new GRS-1 code.
123 - Add RPN structure to search-handler argument hash.
124 - Add PID element to init, search, fetch and present-handler
125 argument hashes (but not the sort, scan and close-handlers,
127 - Fix typos in documentation.
129 0.03 Thu Nov 09 16:22:00 2000
130 - Add the INSTALL file.
131 - Add support for a present-handler (distinct from fetch).
132 - Remove `$args->{LEN} = length($record)' from the example
133 fetch-handler in the documentation.
134 - Minor corrections to documentation, e.g. add commas after
135 elements in anonymous hash of arguments.
136 - Record syntaxes (formats) are now specified as ASCII OIDs
137 (e.g. "1.2.840.10003.5.10") rather than human-readable
138 strings (e.g. "usmarc")
139 - Add some XS code to support sorting, though it doesn't seem
140 to be finished yet, and is not wired out.
141 - Use symbolic constants (e.g. Z_ElementSetNames_generic
142 instead of hard-wired magic number 1).
143 - Add PEER_NAME element to init-handler argument hash.
144 - Minor changes to ztest.pl.
146 0.02 Mon Sep 11 12:32:00 2000
147 - First released versions
149 0.01 Wed Aug 30 14:54:01 2000
150 - original version; created by h2xs 1.19