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