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