Subject: CVS commit: pkgsrc/net/p5-Net-Z3950
From: Havard Eidnes
Date: 2008-06-22 18:49:49
Message id: 20080622164949.C09E3175D0@cvs.netbsd.org

Log Message:
Update from version 0.32 to 0.51.  Changes:

0.51  Mon May  8 11:55:19 BST 2006
	- Deprecation in favour of ZOOM-Perl.
	- Fix some compiler warnings.
	- Fix typo in documentation (thanks to Kimmo Valtonen).

0.50  Wed Jul 27 13:28:03 BST 2005
	- Correct the ResultSet::present() fix that was supposed to be
	  in the previous release: that code inadvertently always
	  returned undef in asynchronous mode.
	- "ywpriv.h" now #undefines "list", which the Perl development
	  header files inexplicably and inexcusably #define to
	  "Perl_list".
	- "ywpriv.h" now #undefines "open", which Solaris 9 #defines
	  (I really can't believe this) to "open64".  Maybe Sun would
	  like me to go round their place and dump a load of _my_ crap
	  in _their_ workspace?
	- New querytype "cql" can be used to pass CQL queries,
	  untranslated, straight through to the server.  Use like:
		$conn->search(cql => "au=(kernighan and richie)")

0.49  Thu Apr 21 11:06:02 BST 2005
	- Change to the ResultSet::present() API in asynchronous mode:
	  returns 1 if new requests were queued, 0 if all of the
	  requested records had already been queued.  (No changes to
	  its usage in synchronous mode.)
	- yazwrap/send.c no longer includes <yaz/log.h> (not needed,
	  generates warning)

0.48  Tue Apr 19 22:36:45 2005
	- Patches supplied by Jan Bauer Nielsen <jbn@dtv.dk> to
	  interpret otherInformation packets, in search responses,
	  containing a search-info report of subquery counts.
	- Patches supplied by Myron Turner <mturner@Ms.UManitoba.CA>
	  to protect the Net::Z3950 module against certain classes of
	  badly-behaved server.
	- Bring "samples/multiplex.pl" up to date, illustrating the
	  use of this module to run sequences of queries against
	  multiple servers in parallel.

0.47  Tue Jan  4 22:15:07 2005
	- The "connection refused" condition is now handled more
	  gracefully, so that there is no error message emitted by
	  Event.pm, just an undefined value returned and $! set to
	  ECONNREFUSED.
	- Improve many of the comments on this subject.

0.46  Mon Nov 22 23:42:40 2004
	- Use the MARC::Record module for rendering MARC records
	  instead of the older, unsupported and possibly buggy
	  MARC.pm.

	  WARNING: This change is backwards incompatible, but that
	  incompatibility will only affect you if you're relying on
	  the precise formatting of $rec->render() on MARC records.

0.45  Mon Nov  1 09:13:51 2004
	- Support for "charset" and "language" options added by Adam
	  Dickmeiss.

0.44  Fri May  7 18:00:54 2004
	Note that this release consists entirely of
	backwards-incompatible changes to new functionality introduced
	in 0.43, the previous release.  If you use Scan, then all your
	Scan code must change; if you do not use Scan, then this
	release will not affect you at all.
	- Change scan-option names to be ZOOM-compliant.
	- Introduce a new enumeration, Net::Z3950::ScanStatus
	- Add a new class, Net::Z3950::ScanSet, representing the
	  results of a Scan operation.  This is compliant with the
	  ZOOM Abstract API, and supports much nicer client code than
	  the previous release:
		$ss = $conn->scan('@attr 1=1003 kern');
		$status = $ss->status();
		print $ss->errmsg()
		    if $status == Net::Z3950::ScanSet::Failure;
		$count = $ss->size();
		($term, $hits) = $ss->term(0);
	  The scanResponse APDU, which used to be returned from the
	  scan() method, is still available via the scanResponse()
	  method, but there is no reason for new code to call this.
	- Complete rewrite of the sample client "scan.pl" to use the
	  new API.

0.43  Thu May  6 14:19:56 2004
	- Add support for Scan, using code contributed by Jan Bauer
	  Nielsen <jbn@dtv.dk>, somewhat tidied up.  Use it like this:
		$apdu = $conn->scan('@attr 1=1003 kern');
		$status = $apdu->scanStatus();
		if ($status == 6) print Dumper($apdu->diag());
		$count = $apdu->numberOfEntriesReturned();
		$term = $apdu->entries()->[0]->termInfo()->term()->general();
		$hits = $apdu->entries()->[0]->termInfo()->globalOccurrences();
	  Subsequent releases will support more corners of the Scan
	  specification (e.g. displayTerm and friends), and present a
	  much nicer API with a ZOOM-like ScanSet object.  See
		http://zoom.z3950.org/api/zoom-1.4.html#3.6
	- Included in the "samples" directory is a simple scanning
	  client program, "scan.pl".

0.42  Wed Mar 31 13:06:09 2004
	- Add support for Unix-domain sockets: use "unix" as the
	  hostname, and the path to the socket file as the port, in
	  the connection constructor.  Like this:
		$conn = new Net::Z3950::Connection("unix", "/tmp/socket");

0.41  Wed Mar 17 13:33:43 2004
	- When Net::Z3950::Manager::wait() times out, it now returns
	  an undefined value rather than, as in v0.40, the timeout
	  value.  This code is now tested, thanks to Rick Jansen.
	- Minor changes to some of the logic in ResultSet.pm

0.40  Tue Mar 16 13:57:33 2004
	- A timeout may be set for a Net::Z3950::Manager's wait() by
	  setting that manager's "timeout" option to the maximum
	  number of seconds to wait.  Donald Knuth once wrote,
	  "Beware: this code has not been tested, only proved
	  correct."  _This_ code improves on Knuth in that it has been
	  neither tested _nor_ proved correct.  However, I give you my
	  solemn promise that I think it probably works, as likely as
	  not.

0.39  Fri Dec 19 16:08:35 2003
	- Recognise record-syntax names such as "USMARC" as well as
	  enumerators such as Net::Z3950::RecordSyntax::USMARC, in
	  accordance with what's specified in v1.4 of the ZOOM AAPI.
	  Such names are recgonised case- and hyphen-insensitively, so
	  "GRS-1" and "grs1" are equivalent.
	- Add "XML" as an alias for the "TEXT_XML" record-syntax.
	- Handle the ZOOM AAPI's standard options "pass" and "group"
	  in preference to the old options "password" and "groupid"
	  (although these are still also recognised, for the benefit
	  of old applications.)
	- Handle the ZOOM AAPI's standard option "async" in preference
	  to the old "type" with _value_ "async" (although that's
	  still also recognised, for the benefit of old applications.)
	- Makefile.PL includes support for and instructions about
	  building against a YAZ in a non-standard place ("non-root
	  install").
	- Another slight refinement to samples/simple.pl's
	  diagnostics.
	- Documentation for diagnostic methods now includes a link to
	  the BIB-1 diagnostics web-page.

0.38  Fri Oct 24 13:28:42 2003
	- Fix a silly bug in Net::Z3950::Record::OPAC::rawdata(),
	  spotted by Kristina Long.  It was trying to return $$this,
	  like the opaque-array-of-bytes record-types such as USMARC,
	  whereas in fact $this is itself a Perl structure
	  representing the record.
	- Add a kludge to patch over anti-social behaviour from
	  servers that sometimes return USMARC records when asked for
	  OPAC records: the returned record is wrapped in an otherwise
	  empty OPAC record structure.

0.37  Tue Sep 16 15:14:40 2003
	- Remove a pair of extraneous declarations (copied from
	  "yaz/include/yaz/z-opac.h" for reference) at the end of
	  translateHoldingsAndCirc().  On recent GCC versions, such as
	  mine, they were pointless but harmless; but older versions,
	  such as the one in Debian/stable, croak if you mix
	  statements and declarations.
	- Improve behaviour when a server unilaterally closes the
	  connection while we're waiting for a Init response.
	  Previously, this would cause a segmentation fault; now you
	  get errno set to 104 (ECONNRESET) which is pretty close.
	- Improve the OPAC record renderer in Z3950/Record.pm so that
	  it walks more of the OPAC-record structure.  As well as
	  being prettier, this is better documentation-by-example of
	  how to use the record structure.

0.36  Fri Sep 12 23:47:00 2003
	- Add support for the OPAC record syntax: OPAC records are now
	  translated into self-describing Perl data-structures,
	  blessed into the class Net::Z3950::Record::OPAC.  There is a
	  rudimentary renderer included in that class, but
	  sophisticated applications will want to deal with the data
	  structure itself.  To see it in action, use something like:
		$ perl samples/simple.pl alpha.calarts.edu 210 \
			MARION fruit preferredRecordSyntax 35
	  WARNING: for some servers, e.g. troy.lib.sfu.ca:210/innopac,
	  you MUST request elementSetName "F", otherwise you'll just
	  be fed USMARC records whatever your preferredRecordSyntax.
	- Deal better with unrecognised or malformed APDUs from the
	  server, e.g. library.ucfv.bc.ca:2200/unicorn when asked
	  for the USMARC record found by "@attr 1=4 time".  Now, the
	  operation fails with diagnostic code 1001 (Malformed APDU).
	- Change all <mike@tecc.co.uk> addresses to
	  <mike@indexdata.com>.  (This change is well overdue, since I
	  changed jobs seven months ago!)
	- Fix reference for PQF in the YAZ manual.

0.35  Fri Jun 27 10:48:03 2003
	- Fix all non-US MARC record-types to return raw data from the
	  rawdata() method rather than, as before, the render()
	  method.
	- Add a new delete() method to Net::Z3950::ResultSet

0.34  Mon May 12 10:17:07 2003
	- Slightly more robust cleanup in Manager::forget()
	- Make samples/simple.pl a little less simple(!) by making a
	  manager so that pre-connection options such as
	  authentication parameters can be set.
	- In Makefile.PL, LIBS and INC are now both set via yaz-config,
	  so you don't need to mess with that file before building.
	  (Adam Dickmeiss)
	- The INC is now inherited by yazwrap/Makefile.PL, so that
	  this file also does not need to be edited.  (Adam Dickmeiss)
	- CCFLAGS is no longer set in the yazwrap directory.  I only
	  did that in order to add "-Wall", which is pleasant luxury
	  but not really necessary; and doing so caused problems as
	  other, default, components of that setting were discarded on
	  some platforms.  (Adam Dickmeiss)
	- Add support for the MAB record syntax, thanks to Heiko
	  Jansen <JANSEN@hbz-nrw.de>

0.33  Thu Apr  3 09:10:16 2003
	- Add explicit statement of GPL licence.
	  No code changes at all.

Files:
RevisionActionfile
1.16modifypkgsrc/net/p5-Net-Z3950/Makefile
1.3modifypkgsrc/net/p5-Net-Z3950/distinfo