1 $Id: Changes,v 1.34 2006-06-05 16:34:40 mike Exp $
3 Revision history for Perl extension Net::Z3950::ZOOM.
6 - Add a nice, simple update client: samples/zoom/update.pl
8 1.08 Thu May 11 22:40:41 BST 2006
9 - Requires version 2.1.11 of YAZ, not 2.0.11. This is a
10 bugfix: the old reliance on 2.0.11 was merely a typo.
12 1.07 Thu May 11 17:45:37 BST 2006
13 - Makefile.PL checks for at least version 2.1.11 of YAZ, and
14 refuses to build if it's not present. Thanks to "gregor"
15 (an otherwise anonymous CPAN tester) for notifying me of the
16 previously poor reporting of failure when running against an
18 - No changes to functionality or documentation.
20 1.06 Wed Apr 19 21:11:52 BST 2006
21 - Avoid mixed statement/declaration in ZOOM.xs. *sigh* Why
22 the heck GCC allows this by default I will never understand.
23 - Add (commented out) OPTIMIZE option to Makefile.PL, to turn
24 on -Wdeclaration-after-statement, which makes mixed
25 statement/declaration illegal.
27 1.05 Wed Apr 12 13:31:27 BST 2006
28 - Implementation of asynchronous events! The Net::Z3950::ZOOM
29 interface provides this through the event, last_event() and
30 event_str() functions. The ZOOM interface provides it
31 through the ZOOM::event() and ZOOM:event_str() functions,
32 and the ZOOM::Connection class's last_event() function.
33 - New sample programs added illustrating both asynchronous
34 interfaces: samples/net-z3950-zoom/zoomtst3.pl and
35 samples/zoom/zoomtst3.pl respectively. Additional sample
36 programs "async.pl" and "trivial-async.pl" for the ZOOM
37 interface only, the latter being a "shortest possible
38 broadcast search application".
39 - Added documentation on writing asynchronous applications.
40 - Added test-scripts "t/19-events.t" and "t/29-event.t" for
41 events on an asynchronous connection.
42 - Fix ZOOM::Connection::new so that options are handled in
43 accordance with the documentation: applied _before_ the
44 connection is forged, so that "async" and similar options
47 1.04 Mon Apr 3 14:56:11 BST 2006
48 - The ZOOM-Perl layer now provides access to the underlying
49 ZOOM-C's character-translation functionality, through new
50 optional arguments to ZOOM::Record's render() and raw()
51 methods, and a new underlying get() method.
53 1.03 Thu Mar 9 12:55:23 GMT 2006
54 - Allow additional key => value pairs as arguments to the
55 ZOOM::Connectoion constructor; these are added as Connection
56 options before the protocol connection is forged.
58 1.02 Thu Mar 9 11:36:55 GMT 2006
59 - Add interface to yaz_version().
60 - Emit big warning at startup time if YAZ version is less than
61 2.0.11 (which is what ZOOM-Perl 1.02 requires) unless the
62 file /tmp/ignore-ZOOM-YAZ-version-mismatch exists.
63 - Fix incorrect ZOOM-package URL in documentation.
64 - Fix typo ("createdb" package) in documentation.
65 - The ZOOM::Connection constructor may now be called with only
66 a single argument (host-string) and does not require a
67 dummy port-number argument.
69 1.01 Thu Dec 22 14:13:34 GMT 2005
70 - Place some CODE: chunks in "ZOOM.xs" inside curly brackets
71 so that the declarations they begin with are at the start of
72 the block. This avoid mixed code/declarations. (The
73 "correct" solution is to use INIT: clauses in the XS file,
74 but they don't seem to work: the code in them is slapped
75 down right next to the CODE:, so declarations are not
76 acceptable there either.)
77 - Add new function Net::Z3950::ZOOM::connection_scan1(), which
78 uses a query object to indicate the start-term. This opens
79 the way for using CQL queries for scanning once the
80 underlying ZOOM-C code supports this.
81 - NOTE BACKWARDS-INCOMPATIBLE CHANGE: The ZOOM::Connection
82 method scan() is renamed scan_pqf(), and a new scan() method
83 is introduced which calls the underlying scan1() function.
84 Thus the scan()/scan_pqf() dichotomy is consistent with that
85 between search()/search_pqf().
86 - The tests t/15-scan.t and t/25-scan.t now also test for
87 scanning by CQL query. To support these tests, a new files
88 is added to the distribution, "samples/cql/pqf.properties"
89 - Remove nonsensical clause about CQL sort-specifications from
91 - Add new function Net::Z3950::ZOOM::query_cql2rpn(), for
92 client-side CQL compilation.
93 - Add new ZOOM::Query::CQL2RPN class, encapsulating CQL
94 compiler functionality as a Query subclass.
95 - Add two new error-codes, CQL_PARSE and CQL_TRANSFORM,
96 returned by the client-side CQL facilities.
97 - The test-scripts t/12-query.t and t/22-query.t are extended
98 to also test client-side CQL compilation.
99 - Add all the yaz_log*() functions within the Net::Z3950::ZOOM
101 - Add new ZOOM::Log class for logging, providing aliases for
102 the functions in the Net::Z3950::ZOOM layer.
103 - Add diagnostic set to rendering of Exception objects.
104 - Documentation added for CQL compilation and logging.
106 1.00 Wed Dec 14 11:18:33 GMT 2005
107 - First distributed version.
109 0.01 Fri Oct 7 16:14:20 2005
110 - original version; created by h2xs 1.23 with options
111 --name=Net::Z3950::ZOOM --compat-version=5.8.0 \
112 --omit-constant --skip-exporter --skip-ppport \
113 --autogen-xsubs yaz/zoom.h -lyaz -lxml2
117 To be done in future releases:
118 - Complete, test and document "update.pl"
119 - Fix Net::Z3950::ZOOM::record_get() to use a struct datachunk
120 _when_ appropriate, e.g. for "render" but probably not for
121 "database" and "syntax".
122 - Create old-style Net::Z3950 compatibility layer.
123 - Fix memory leaks in callback functions for option sets.
124 - Fix limitation that option-set callback functions must be
125 specified as strings containing package-qualified function