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