Release 1.03 (connection constructor allows additional option arguments)
[ZOOM-Perl-moved-to-github.git] / Changes
diff --git a/Changes b/Changes
index e828bfb..3b87129 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,83 @@
-Revision history for Perl extension ZOOM.
+$Id: Changes,v 1.21 2006-03-09 12:57:19 mike Exp $
+
+Revision history for Perl extension Net::Z3950::ZOOM.
+
+1.03  Thu Mar  9 12:55:23 GMT 2006
+       - Allow additional key => value pairs as arguments to the
+         ZOOM::Connectoion constructor; these are added as Connection
+         options before the protocol connection is forged.
+
+1.02  Thu Mar  9 11:36:55 GMT 2006
+       - Add interface to yaz_version().
+       - Emit big warning at startup time if YAZ version is less than
+         2.0.11 (which is what ZOOM-Perl 1.02 requires) unless the
+         file /tmp/ignore-ZOOM-YAZ-version-mismatch exists.
+       - Fix incorrect ZOOM-package URL in documentation.
+       - Fix typo ("createdb" package) in documentation.
+       - The ZOOM::Connection constructor may now be called with only
+         a single argument (host-string) and does not require a
+         dummy port-number argument.
+
+1.01  Thu Dec 22 14:13:34 GMT 2005
+       - Place some CODE: chunks in "ZOOM.xs" inside curly brackets
+         so that the declarations they begin with are at the start of
+         the block.  This avoid mixed code/declarations.  (The
+         "correct" solution is to use INIT: clauses in the XS file,
+         but they don't seem to work: the code in them is slapped
+         down right next to the CODE:, so declarations are not
+         acceptable there either.)
+       - Add new function Net::Z3950::ZOOM::connection_scan1(), which
+         uses a query object to indicate the start-term.  This opens
+         the way for using CQL queries for scanning once the
+         underlying ZOOM-C code supports this.
+       - NOTE BACKWARDS-INCOMPATIBLE CHANGE: The ZOOM::Connection
+         method scan() is renamed scan_pqf(), and a new scan() method
+         is introduced which calls the underlying scan1() function.
+         Thus the scan()/scan_pqf() dichotomy is consistent with that
+         between search()/search_pqf().
+       - The tests t/15-scan.t and t/25-scan.t now also test for
+         scanning by CQL query.  To support these tests, a new files
+         is added to the distribution, "samples/cql/pqf.properties"
+       - Remove nonsensical clause about CQL sort-specifications from
+         the documentation.
+       - Add new function Net::Z3950::ZOOM::query_cql2rpn(), for
+         client-side CQL compilation.
+       - Add new ZOOM::Query::CQL2RPN class, encapsulating CQL
+         compiler functionality as a Query subclass.
+       - Add two new error-codes, CQL_PARSE and CQL_TRANSFORM,
+         returned by the client-side CQL facilities.
+       - The test-scripts t/12-query.t and t/22-query.t are extended
+         to also test client-side CQL compilation.
+       - Add all the yaz_log*() functions within the Net::Z3950::ZOOM
+         namespace. 
+       - Add new ZOOM::Log class for logging, providing aliases for
+         the functions in the Net::Z3950::ZOOM layer.
+       - Add diagnostic set to rendering of Exception objects.
+       - Documentation added for CQL compilation and logging.
+
+1.00  Wed Dec 14 11:18:33 GMT 2005
+       - First distributed version.
 
 0.01  Fri Oct  7 16:14:20 2005
        - original version; created by h2xs 1.23 with options
-               --name=ZOOM --compat-version=5.8.0 --omit-constant --skip-exporter --skip-ppport --autogen-xsubs yaz/zoom.h -lyaz
+               --name=Net::Z3950::ZOOM --compat-version=5.8.0 \
+               --omit-constant --skip-exporter --skip-ppport \
+               --autogen-xsubs yaz/zoom.h -lyaz -lxml2
+
+--
+
+To be done in future releases:
+       - Fix Net::Z3950::ZOOM::record_get() to use a struct datachunk
+         _when_ appropriate, e.g. for "render" but probably not for
+         "database" and "syntax".
+       - Support for asynchronous multiplexing: implement
+         ZOOM::event() and test ZOOM::Connection::last_event().
+       - Write example programs for "samples" direction.
+       - Create old-style Net::Z3950 compatibility layer.
+       - Fix memory leaks in callback functions for option sets.
+       - Fix limitation that option-set callback functions must be
+         specified as strings containing package-qualified function
+         names.
+       - Fix test-suite to actually send the "drop" packages once
+         Zebra's been fixed so this doesn't current the store.