+1.21 Mon Oct 29 12:07:25 GMT 2007
+ - In the "typemap" file's handling of opaquechar*, use STRLEN
+ type for _unused_len in instead of unsigned: this prevents a
+ (possibly serious) warning on some 64-bit architectures,
+ although applications that do not use the option_binary()
+ methods will be safe with the previous release.
+ - Add explicit "#include <yaz/log.h>" to ZOOM.xs in the hope
+ of preventing undeclared-function warnings that some users
+ have reported but which I have been unable to reproduce.
+
+1.20 Fri Sep 21 17:51:55 BST 2007
+ - Add new sample program, samples/zoom/zoomscan.pl
+ - samples/zoom/zoomtst1.pl now accepts arbitrary options at
+ the end of the command-line, so that (for example) you can
+ specify a non-USMARC record syntax.
+ - Add new functions Net::Z3950::ZOOM::diag_srw_str() and
+ ZOOM::diag_srw_str() to map SRW diagnostic codes into
+ human-readable messages.
+ - ZOOM::Exception() constructor uses diag_srw_str() to fill in
+ the error message, if it is undefined, for SRW errors.
+ - The render() method of ZOOM::Exception(), and therefore the
+ overloaded stringifying operator, deals with exceptions that
+ have no message().
+ - Corrected the scan parts of the test-suite that use CQL so
+ that they explicitly perform client-side CQL compilation and
+ send the resulting Type-1 query. Previously, these tests
+ were (accidentally) requesting that CQL be sent as-is to the
+ server, but this mistake was being masked by an error in
+ older versions of ZOOM-C that compiled client-side anyway!
+
+1.19 Mon Jul 9 14:09:31 BST 2007
+ - Add $conn->exception() method.
+ - Set version number for Net::Z3950 to 0.99 -- less than the
+ 1.0 version number that will be used when it successfully
+ emulates the old Net::Z3950 module, but superseding the last
+ release, 0.51, of that module.
+ - Include samples/zoom/zdump.pl in distribution.
+ - Add "irspy" namespace to samples/zoom/zselect
+
+1.18 Mon Feb 26 14:57:48 GMT 2007
+ - When a connection is in asynchronous mode, failing
+ operations (search, scan, etc.) no longer throw exceptions.
+ This is because the event-loop in asychronous applications
+ needs to check for errors anyway, in case the server has
+ returned high-level diagnostics such as "unsupported use
+ attribute". So this check within the event-loop is now the
+ only place where error-checking need be done.
+ - Add new public ZOOM::Connection() function, check(), which
+ throws an exception if an error is pending (even if the
+ connection is asynchronous).
+ - New YAZ logging level, "zoom_check", notes when errors are
+ detected and either left unreported (asynchronous
+ connections) or thrown as exception (synchronous).
+