1 Revision history for Perl extension Net::Z3950::SimpleServer
4 - Corrections to manual, kindly supplied by Ben Webb
5 <bjwebb67@googlemail.com>
6 - Resolve contradictory licence terms: SimpleServer is now
7 definitely distrbuted under the Revised BSD licence, whereas
8 earlier versions claimed in the source code to be Revised
9 BSD but in the README to be under the same terms as Perl.
11 1.13 Wed Mar 16 17:07:10 GMT 2011
12 - The SimpleServer test-script now uses a Unix-domain socket,
13 with a filename generated from the process-ID, rather than
14 the default Inet-document socket on port 9999. Hopefully
15 this should resolve the race-condition problems that have
16 been affecting the "make test" part of the build cycle when
17 building packages for four systems simultaneously under
20 1.12 Thu Feb 4 16:33:19 GMT 2010
21 - Remove handling of "hits" parameter in the present handler.
22 That should never have been there (and was probably sloppy
23 copy), and prevents compilation under YAZ 4, which has
24 removed the member from the bend_present_rr structure.
26 1.11 Wed Mar 4 15:12:53 GMT 2009
27 - Add explicit statement of license (same terms as Perl).
28 No functional changes.
30 1.10 Tue Mar 3 22:47:16 GMT 2009
31 - Document the init-handler's PEER_NAME argument.
32 - Update URL into YAZ documentation.
33 - bend_delete() no longer returns without value.
34 - Route around ActivePerl's damage to the "open" symbol.
36 1.09 Mon Sep 10 15:54:38 BST 2007
37 - *Argh* Another mixed statement/declaration.
39 1.08 Mon Sep 10 12:15:29 BST 2007
40 - *Sigh* Fix mixed statement/declaration.
42 1.07 Sat Sep 1 10:31:26 BST 2007
43 - When the scan-handler callback returns, do not attempt to
44 copy the terms from Perl structures if the error-code is
45 non-zero (i.e. if an error has occurred). This protects
46 against a segmentation fault when the Perl callback does not
47 explicitly set $args->{NUMBER} = 0 on error.
48 - Correct transcription of string-valued attributes in
50 - Scan handler is now passed RPN as well as TERM, a tree of
51 Perl structures representing the entire scan clause
52 including access-points and other attributes (which are
54 - The various classes used to represent nodes in the RPN query
55 tree (Net::Z3950::APDU::Query, Net::Z3950::RPN::And,
56 Net::Z3950::RPN::Or, Net::Z3950::RPN::AndNot,
57 Net::Z3950::RPN::Term and Net::Z3950::RPN::RSID) now all
58 share a newly introduced superclass Net::Z3950::RPN::Node,
59 making it possible to write methods that apply to all node
61 - A utility method toPQF() is provided for
62 Net::Z3950::RPN::Node, enabling the RPN tree to be converted
63 back into a flat PQF query.
64 - Add support for the Delete Result Set service.
65 - Add documentation for the Sort service.
66 - Some clarifications to documentation.
68 1.06 Fri Aug 10 23:30:00 BST 2007
69 - New global-handle element can be specified when creating a
70 simple-server object and will be passed to all callback
71 functions. This allows global state to be eliminated from
72 SimpleServer applications ... finally!
73 - Search handler now deals correctly with undefined addinfo:
74 previously a (harmless) error message was emitted.
75 - Add Perl API to yaz_diag_srw_to_bib1(), which SimpleServer
76 applications will need if they access SRU/SRW back-end
77 databases and need to report errors.
78 - Add Perl API to yaz_diag_bib1_to_srw(), because it would
81 1.05 Wed Dec 27 13:19:13 CET 2006
82 - Taking new naming convention for YAZ constants into account.
84 1.04 Fri Dec 1 10:48:32 CET 2006
85 - Build such that SimpleServer links to new yaz shared object.
87 1.03 Tue Aug 8 17:27:16 BST 2006
88 - Rely on version 2.1.14 or later of YAZ; this is the first
89 version that reliably passes through the additional
90 information associated with errors generated while serving
91 SRU/W requests. No functional differences since 1.02.
93 1.02 Wed Jul 26 12:09:50 BST 2006
94 - Better support for Open and User/Password authentication.
95 - SimpleServer.xs's rpn2pquery() is now discarded, and YAZ's
96 yaz_rpnquery_to_wrbuf() used instead. This is more robust
97 in dealing with unusual cases such as string-valued
99 - Support for SCHEMA element when fetching records.
101 1.01 Fri Mar 24 12:09:32 GMT 2006
102 - Documentation of release 1.00's SRU/SRW facilities.
103 - Makefile.PL now fails if YAZ version is earlier than 2.0.0,
104 which was the first with SRU/SRW support.
106 1.00 Fri Mar 24 01:20:24 GMT 2006
107 - Support for SRU and SRW. Mostly this is provided by the YAZ
108 GFS, but changes are needed to allow for the case where
109 there is no RPN query (due to absent on invalid <cql2rpn>
110 element in GFS configuration) so that CQL is passed through
111 natively; and also to fake up an {REQ_FORM} and {REP_FORM}
112 parameters set to the "text/xml" OID when this information
113 is not specified by the GFS.
114 (The jump in version number is due to the SRU/W support.)
115 - Include "logging-server.pl" in the distribution: the
116 simplest possible SimpleServer application, which merely
117 logs the client-request data structures.
118 - Makefile.PL is more helpful if yaz-config isn't found.
119 - Explicitly disable prototypes in SimpleServer.xs: makes no
120 difference but suppresses an error message for a cleaner
123 0.08 Mon Jun 14 14:51:01 2004
124 - SimpleServer is now perl 5.8 thread proof
125 - Support for IMP_ID parameter in Init responses. This was
126 actually written a long time ago, but left commented out as
127 the underlying YAZ back-end server didn't support
128 implementation-ID setting. Now that it does (and has done
129 for eighteen months -- since YAZ release 1.8.6 of
130 2002/03/25!), I've finally removed the comments.
131 - Init handler now understands the setting of {ERR_CODE} as
132 more than a boolean success indicator, and also {ERR_STR}.
133 They are now passed back to the client (thanks to recent
134 changes to the YAZ generic front-end server) in accordance
135 with Z39.50 Implementor Agreement 5, found at
136 http://lcweb.loc.gov/z3950/agency/agree/initdiag.html
138 0.07 Fri Jan 03 10:12:15 2003
139 - Applied Dave Mitchell's (davem@fdgroup.com) GRS-1 parsing patch.
140 Thanks Dave, and sorry it didn't find its way to release 0.06,
143 0.06 Thu Jan 02 11:15:01 2003
144 - Added support for authentication
145 - Add documentation for the object tree passed as the RPN
146 member of the search-handler's argument hash.
147 - We actually removed the vacuous Changelog and TODO files
148 back in 0.05. They should never have been here :-)
150 0.05 Tue Feb 05 21:54:30 2002
151 - Add brief documentation of the new handling
154 0.04 Tue Feb 05 21:49:56 2002
155 - Add Changelog (Why? We already have this file!)
156 - Add TODO file (although it's empty!)
157 - Change interface to constructor, and fix test.pl script to
158 use the new interface.
159 - Add support for Scan.
160 - Add support for building GRS-1 records.
161 - Add grs_test.pl test suite for new GRS-1 code.
162 - Add RPN structure to search-handler argument hash.
163 - Add PID element to init, search, fetch and present-handler
164 argument hashes (but not the sort, scan and close-handlers,
166 - Fix typos in documentation.
168 0.03 Thu Nov 09 16:22:00 2000
169 - Add the INSTALL file.
170 - Add support for a present-handler (distinct from fetch).
171 - Remove `$args->{LEN} = length($record)' from the example
172 fetch-handler in the documentation.
173 - Minor corrections to documentation, e.g. add commas after
174 elements in anonymous hash of arguments.
175 - Record syntaxes (formats) are now specified as ASCII OIDs
176 (e.g. "1.2.840.10003.5.10") rather than human-readable
177 strings (e.g. "usmarc")
178 - Add some XS code to support sorting, though it doesn't seem
179 to be finished yet, and is not wired out.
180 - Use symbolic constants (e.g. Z_ElementSetNames_generic
181 instead of hard-wired magic number 1).
182 - Add PEER_NAME element to init-handler argument hash.
183 - Minor changes to ztest.pl.
185 0.02 Mon Sep 11 12:32:00 2000
186 - First released versions
188 0.01 Wed Aug 30 14:54:01 2000
189 - original version; created by h2xs 1.19
192 - When invoking Init callback, set initial values of IMP_ID,
193 IMP_NAME and IMP_VER from the client's Init request.