X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=NEWS;h=11fb2fc5e1ea23d9a60ea44fd802f473832d2e1c;hp=131f42cb4bc80b418d051ea15b18cf7298c320f2;hb=45a886a6827c18bb47fafa3822e7e2496d386bb7;hpb=5e6dd2bd57b34f26e8bed2034450540ad1ec3d12 diff --git a/NEWS b/NEWS index 131f42c..db5b749 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,1197 @@ +zoom/record_render: add support for Base64 decoding fo MARC records +within XML element. For example: "xml; charset=marc-8; base64=/my/text()" +which will decode base64 + ISO2709 marc-8 encoded material from text node +under /my . + +--- 4.2.34 2012/06/07 + +Add missing definitions ZOOM_resultset_get_facet_field_by_index +and ZOOM_resultset_facets_names. + +zoom: fix bad free for ZOOM_connect - happened when ZOOM connection +options was in use. + +Change APDU dump printing to avoid long leading blanks. For levels 16 +or larger the level is shown and the indentation is truncated but +recursed with modula 8. This makes it still reasonable easy to read +- even for nested BER dumps. + +Fix bug completeBER_n WRT too nested BER. Function completeBER_n could +return 0 (incomplete package) in case where the BER package was +considered too nested (return value of -2). + +dumpber: lines of level 15 are not indented further. Two spaces per +indentation; indentation 15 or more is indented to a fixed indentation +and augmented with a level= indication. + +zoomsh: increase max size of command+args + +GFS: No limit in RPN buf size in CQL to RPN conversion. + +--- 4.2.33 2012/05/09 + +New function for daemon utility, yaz_daemon_stop . + +Makes yaz_srw_sortkeys_to_sort_spec public on Windows. + +--- 4.2.32 2012/04/25 + +Add some Bib-1/SRU diagnostics + mappings. Bib-1: 1073 and +Bib-1 1074: Proxy failure. SRU: 1074: Proxy failure + +--- 4.2.31 2012/04/23 + +YAZ daemon utility relays SIGUSR1 to child process. + +ZOOM: handle trailing slash for Z39.50 urls. Previously localhost:9999/ +would result in en empty database list - which in turn would result in +encoding failure for search. + +Fix reading beyond string in yaz_sort_spec. + +--- 4.2.30 2012/04/11 + +Add two new SRU diagnostics: + 236: Access to specified database denied + 1015: Init/AC: Maximum number of simultaneous sessions for Userid + +Document the very useful ZOOM-C option "apdulog". + +CQL to RPN: term may be passed through verbatim. This is enabled with +truncation.cql . The assumption being that the term is already CQL. + +--- 4.2.29 2012/03/20 + +record_conv: leader spec may be given for marc element. +The leader spec is given as attribute leaderspec for element marc. +For example to convert a MARC21 record from MARC-8 to UTF-8: + + +record_conv: allow user-XSLT params. For example: + + + + + +record_conv: fix error handling for missing marc charsets. + +CQL: fix extra terms in wrong order. + +--- 4.2.28 2012/03/06 + +record_conv: modify new API for conversion types. The conversion types +may be passed in new functions yaz_record_conv_configure_t and +yaz_retrieval_configure_t. Removing yaz_record_conv_add_type . + +Avoid mixed statement/variable declare; fixes compilation with Visual +Studio. + +--- 4.2.27 2012/02/28 + +Add non-standard SRU diagnostic: 235: "Database does not exist". +Couldn't live without it. HTTP 404: "Not found" is just so anonymous. +Update SRU to Bib-1 diagnostic maps accordingly. + +CCL: add two new diagnostics for unsupported masking. The new +diagnostics are: "Embedded truncation not supported" and +"Single charcacter mask not supported". + +--- 4.2.26 2012/02/23 + +CCL: fix use of "term" field in sub queries. Bug introduced in YAZ 4.2.25. + +--- 4.2.25 2012/01/11 + +Build YAZ for Ubuntu Oneiric. + +CCL: allow parantheses for proximity operands. For example CCL query +(a) % (b) is now allowed. + +GFS: fix bend_assoc_is_alive. When cs_get returns 0 the association is +marked dead, rather then being destroyed. If not, the session memory is +being free'd before the search/scan handler is finished. Also destroy +'request' memory in request_release rather than in various places, +which resulted in leaks from time to time. + +--- 4.2.24 2011/12/21 + +cql_sortby_to_sortkeys: honor sort prefix. + +RPN to CQL: always quote resulting terms. For bizarre reasons, JSTOR's +SRU server returns 0 hits on ISSN searches unless a CQL term is quoted. +The rpn2cql family of functions now always returns quoted CQL terms. + +Fix CQL to CCL conversion for multiple terms. Add two test cases as well. + +--- 4.2.23 2011/12/15 + +Allow =val to be omitted for yaz_uri_to_array. Also, multiple &'s in +sequence is treated as one. For example, &&a=b&&&c& is identical to +a=b&c= . + +--- 4.2.22 2011/12/05 + +Add ZOOM_connection_save_apdu_wrbuf. This function may be used to save +APDUs for a connection to a WRBUF. + +--- 4.2.21 2011/11/23 + +Fix cql_sortby_to_sortkeys. Completely broken before. + +Make CCL's @truncation work again. + +--- 4.2.20 2011/11/09 + +New ZOOM connection setting: tproxy. It's like proxy, but does not +set Z39.50 proxy OID or change HTTP for proxy behavior. Can be used +to set resolved address + port for a connection outside ZOOM itself. + +Fix atoi_n_check digit test. Thanks to Giannis Kosmas for spotting it. + +--- 4.2.19 2011/11/07 + +Fix uninitialized variable in Solr spell support (could cause SEGV +for SRU response decoding). + +Error handling for Z_APDU_close uses ZOOM_set_dset_error() to pass +back-end's addinfo through into the ZOOM response addinfo. + +When ZOOM_set_dset_error() is passed an addinfo2 as well as addinfo, +they are separated by a colon and a space rather than simply +concatenated. + +--- 4.2.18 2011/10/28 + +Add support for Solr spell-checking/suggestions through ZOOM. +If a Solr target has been configured correctly for spelling-checking +and suggestions, these will now be returned on the ResultSet option +"suggestions". zoomsh has been extended to show this with the cmd suggestions. + +--- 4.2.17 2011/09/28 + +Fix function nmem_strsplit_escape2 which extends nmem_strsplit_escape +with a flag whether to substitute escape sequences or not. + +--- 4.2.16 2011/09/22 + +Fix nmem_strsplit_escape to substitute escape char properly. + +New option for zoomsh -e , which makes it abort on first error and +return process exit code to indicate success/failure. + +YAZ options utility supports special option -- which makes all it treat +all following arguments as non-options. + +--- 4.2.15 2011/09/16 + +Fix yaz_file_path_resolve/yaz_path_fopen/yaz_fopen so that path is not +searched if absolute filename is given. + +Fix conv_xslt() error-reporting when stylesheet is not found. +(The value of fullpath is meaningless in this situation.) + +--- 4.2.14 2011/09/07 + +Fix problem in CQL sort node creation: un-initialized memory. + +New ZOOM utility ZOOM_query_sortby2. That takes a strategy parameter: one of +"z3950", "type7", "cql", "sru11" or "embed". The "embed" chooses type-7 or +CQL sortby depending on whether Type-1 or CQL is actually sent to the +target. + +New sortspec utilities: yaz_srw_sortkeys_to_sort_spec, +yaz_sort_spec_to_srw_sortkeys, yaz_sort_spec_to_type and 7yaz_sort_spec_to_cql. + +rpn2solr supports Z39.58 truncation (104). Thus, CCL truncation mode t=z +will make it possible to use both single-character mask (#) and wildcard (?) +in CCL . Throw diagnostic for left truncation because that is not supported +by SOLR. + +--- 4.2.13 2011/09/01 + +Fixes for cql2rpn, cql2ccl and ccl2rpn; mostly in the area of special +cases using escapes (\-sequences) and masking. + +PQF parse fix: A trailing backslash followed by end-of-string (\0) +would result in a read one byte beyond string. + +rpn2ccl may use Z39.50 masking for terms (t=z). + +ICU check fix. Don't include library -lCrun on Solaris, unless present. + +ICU check fix: Use --cppflags-searchpath to determine ICU include files; +not --cppflags (which seeems like an error in icu-config). + +--- 4.2.12 2011/08/27 RPM package only + +cql2ccl: fix conversion of terms: operator characters were not +quoted/escaped. + +--- 4.2.11 2011/08/25 RPM package only + +ccl2rpn: Conversion to regexp-1 terms (trunc=102). For mode t=x, the +CCL parser will map both # and ? to their regular expression +quivalents (. and .*). + +rpn2cql: deal with truncation=102 (regexp-1). And ensure proper quoting +of reserved CQL characters. + +cql2ccl: deal with both * and ? in conversion. Also leave escaped ones as +is, so that they are passed through. + +--- 4.2.10 2011/08/24 + +ZOOM SRU mode: more aggressive re-connect. + +Private function prox_unit_name() renamed to yaz_prox_unit_name() and +made available as a utility function, declared in + +rpn2cql_structure() supports proximity nodes (except that the Type-1 +proximity node's "exclusion" binary is ignored, as there is no way to +express that in CQL). Fixes bug #4564. + +--- 4.2.9 2011/08/18 + +Fix SEGV that could occur if set command of zoomsh was given without +value (2nd argument). + +Fix SEGV that could occur if unsupported transport was given for +COMSTACK - say https (when SSL was unavailable). + +Build yaz-url on Windows too. + +--- 4.2.8 2011/08/11 + +New utility to get web content. Header is url.h. A command line tool +yaz-url is part of the distribution and packages. + +Fixes for SSL COMSTACK (when gnutls is in use). + +New functions yaz_base64{encode,decode}. Header is base64.h. + +--- 4.2.7 2011/08/03 + +ZOOM C includes HTTP response buffer as additional info if it fails +to decode the SRU response. + +Make wrbuf_json_puts available. + +--- 4.2.6 2011/07/28 + +zoom: throw diagnostic for invalid value for option "sru". Before a +bad SRU request was sent. + +Adding new utility wrbuf_vp_puts. + +Add cclxmlconfig.obj to win/makefile. It was missing completely. + +--- 4.2.5 2011/07/21 + +ZOOM HTTP: use absoluteURI's in proxy mode as required by RFC 2616 (HTTP). +Fix a bug in handling of cookies. Fix a bug that would occur if proxy + +redirect was used at the same time. + +MARC line mode decoding: be less picky about length given - first +5 digits of header that is. + +CQL to CCL conversion: deal with CQL proximity (cql_to_ccl function). + +Changes to decoding of SRU records: a record with recordPacking=xml is +modified with a new root element if the recordData contains +multiple children elements. This is to make the record XML parseable +afterwards. + +RPN to SOLR conversion: encode special characters. + +Generic Frontend Server: fix uinitialized member, stepSize. + +--- 4.2.4 2011/06/21 + +Fix a bug in SRU decoding of records.. The database records stored +had un-initialized memory, but it would only be seen with yaz_record_render +and type_spec="ext" . + +Fix a bug in ccl_qual_dup introduced in 4.2.3. + +--- 4.2.3 2011/06/17 + +Add new CCL utility, ccl_qual_dup, which makes a copy of a CCL bibset. + +--- 4.2.2 2011/06/10 + +Add new utilities to convert from CQL to CCL . These utilities have +prefix cql_to_ccl defined in cql.h. + +Defensive coding for an off-by-one bug in ucol_getSortKey. This could +lead to memory heap corruptions when ICU utilities were in use. + +--- 4.2.1 2011/06/07 + +Make compilation work without Libxml2. + +yaz-client: remove redundant blanks in display of searchResult-1 term +hit counts. + +--- 4.2.0 2011/05/18 + +CQL: parse CQL sortby spec. The resulting sort spec is stored in the +resulting CQL node (tree) in a new node CQL_NODE_SORT. + +CQL and GFS: add utility cql_sortby_to_sortkeys which converts CQL sortby +1.2 node tree to CQL 1.1 spec. This in turn allows the generic frontend +server to only consider srw_sortkeys and support both SRU 1.1 and 1.2. +Note that the CQL sortby spec is only converted when the GFS is already +converting from CQL to RPN (cql2rpn element). + +New function nmem_strsplitx. This is like nmem_strsplit but allows us to +specify whether to collapse delimitors or not. The existing nmem_strsplit +do collapse (collapse parameter = 1). + +Windows installer: For NSIS, set InstallDir depending on x86/x64. + +Rename internal func yaz_use_attribute_create. While non-static, this +function is not declared in a public header. + +--- 4.1.7 2011/03/15 + +Add -lCrun when linking with ICU on Solaris. + +More quicks character set conversions for OPAC records. + +--- 4.1.6 2011/03/10 + +fix problem with record_render: records were converted (character set +wise) even if no charset was given. Problem introduced in YAZ 4.1.5. + +--- 4.1.5 2011/03/08 + +SRU: add methods for handling DADS SRU-proxy facets. + +Separate OPAC record character set for ZOOM_record. yaz_record_render +allows a character set given as charset=from/opacfrom,to where 'from' is +the character set of a bibliographic record, 'opacfrom' is character set +of OPAC record and 'to' is the target character set. + +--- 4.1.4 2011/02/21 + +yaz-client: show may XML format records. Command show followed by 'format' +will format XML records retrieved using Libxml2's xmlDocDumpFormatMemory +function. + +src/stemmer.c: Avoid using unnamed union. It is not supported by some +older C compilers. + +For PHPYAZ: set YAZVERSION, not YAZ_VERSION. + +--- 4.1.3 2011/01/27 +Update yaz.spec to operate on both SLES11 / Centos 5.5. + +RPM: Release includes 'indexdata' name. Use indexdata in release name so +this package can be distinguished from other vendors. + +yaz-config: Use exec_prefix, libdir, includedir . Use these variables +as determined by configure + +yaz-config: set YAZ_VERSION env. php_yaz relies on it. + +GFS: Z_PresentStatus_partial_4 for missing record. If bend_fetch handler +returns no error and no record, the present request is considered +partial (only a subset of the records could be returned by backend), and +so it is appropriate to set Present Status to partial-4. + +--- 4.1.2 2010/11/02 + +Move yaz-config man pages to section 1. + +More documentation about SOLR. + +tcp comstack: change behavior for @-specs (anyaddr). @ listens on +AF_INET (IPV4) peers, and @6 listens to AF_INET6 (ipv6) peers. +Previously @ listened on AF_INET6 which accepted both IPV4 and IPV6 +peers on some Linux systems. However, in general that does not work +so YAZ can not rely on that to work. Debian changed behavior in this +respect from Debian lenny to Debian squeeze (still testing as of Oct +2010). Refer to: +http://www.mail-archive.com/debian-devel@lists.debian.org/msg277726.html + +zoomsh: remove "debugging" output. Was added by mistake in 4.1.0. + +--- 4.1.1 2010/10/05 + +Fix yaz-config output: echo_source not set correctly by configure. + +--- 4.1.0 2010/10/05 + +SOLR WebService support for yaz-client and ZOOM. + +Define record syntax JSON. OID: 1.2.840.10003.5.1000.81.3 . + +--- 4.0.12 2010/08/17 + +Z39.50 facet support. Facet specifications are passed for search in +other-information with ASN.1 as defined in facet.asn and OID +.10.1000.81.5 . Facets are expressed as an Attribute list as known +from Type-1/RPN queries. Type 1 is field. Type 2 is sort order. Type +3 is limit (number of entries to get in response). yaz-ztest returns +dummy facets if a client asks for them. + +--- 4.0.11 2010/07/09 + +CCL fixes: bug 2895 and bug 3539. + +GR1-display: add comma in display - was removed by mistake in +version 4.0.0. + +Windows installer: bundle MSVCP90.dll - used by icuuc42.dll. + +SRU: Merge cookies on HTTP redirects (Giannis Kosmas ). + +--- 4.0.10 2010/06/18 + +ZOOM C: Add ZOOM_resultset_release. ZOOM_resultset_release releases a +result set from a connection. The result set will be on its own +thereafter; no operations on it will perform retrievals from a target. +Only cached copies are returned. + +ZOOM C:fix case for HTTP servers responding with Connection:close. +Ensure that if there is a current task it is resumed (like fetching +more records in a result set) . Bug #3484. + +PQF parser: use odr_atoi for Odr_int (not atoi) + +Minor PQF encoding and decoding changes; reformat. PQF decoding: attribute +values that contain any non-digits are treated as string attributes +(previously decoding only checked for leading character ([0-9]). PQF +encoding: attribute string values are not surrounded by double-quotes. + +--- 4.0.9 2010/05/21 + +New utility for managing threads - thread_create.h. + +Add socket pipe utility - spipe.h. The socket pipe has same purpose as +Unix pipe . Unfortunately Windows pipes do not work on select/poll - +but YAZ' implementation do. + +Fixes for yaz_cond-functions on Windows 7. + +DLL export more symbols. + +zoomsh: show record do NOT render opac. + +Remove *.la files from Debian and RPM packages. + +--- 4.0.8 2010/05/11 + +Debian package libyaz-dev depends on libgnutls-dev again (was +removed in YAZ 4.0.6, but due to Libtool it is still needed +even though yaz-config do not list libgnutls libs). + +ZOOM: Use only one WRBUF for returning string results for +ZOOM_resultset. Reduces memory usage for ZOOM in general. + +ZOOM: ZOOM_connection do not use a shared pointer to +ZOOM_resultset after ZOOM_resultset is destructed by +user. Reverts to YAZ 4.0.4 behavior. + +--- 4.0.7 2010/05/04 + +record-conv: fix problem with at least one XSL conversion - +due to probably incorrect usage of XML XSL documents. + +--- 4.0.6 2010/04/29 + +Fix yaz-config for static mode and the use of SSL (gnutls). + +--- 4.0.5 2010/04/29 + +Forward decl timeval struct in mutex.h and gettimeofday.h. + +yaz-config: fix 'static' mode linking. + +--- 4.0.4 2010/04/28 + +Add functions yaz_cond_{create,destroy,wait,signal,broadcast}. These +are wrappers for pthreads or Windows. For Windows these are put in +a separate DLL: yaz_cond4. + +libyaz.la (whole source) is compiled with thread. If thread support +is enabled enabled, all source of YAZ is compiled with treading support. +This allows core utilities such as yaz_log to use thread facilities. +Previously (YAZ 3 and YAZ 4 releases), only libyaz_server.la was using +thread utilities. This commit moves mutex utilities (mutex.c) from +libyaz_server.la to libyaz.la. + +yaz-json-parse displays leading text until error. + +--- 4.0.3 2010/04/09 + +Handle HTTP redirect for SRU GET in yaz-client and ZOOM C. Based on +patch from Giannis Kosmas. + +SRU: no longer URL encode SRU database. The URL for an SRU server is +a URL and such is alreeady encoded - at least when given with leading +http:// or https://. This reverts behavior to YAZ 3.0.50. + +Support for new MARC XML notation TurboMARC which like MARCXML is a +complete representation of MARC/ISO2709.. This one, however, is more +compact and allows for faster processing with XSLT. TurboMARC can be +used in the marcdisp.h API, from the yaz-marcdump utility and from +the API of ZOOM C. + +yaz-ztest can be configured - via the database - to perform certain +delays when it performs operations search, present and single record +fetch. This allows testers to make yaz-ztest act as a real or even slow +Z39.50 server. Refer to the yaz-ztest man pages for details. + +--- 4.0.2 2010/03/09 + +wrbuf_destroy allows NULL WRBUF passed to it. + +Fix CCL qualifier aliases (did not work since YAZ 2.1.56). + +Add ZOOM_connection_close. + +No fixed size buffers for ZOOM shell - bug #3257. + +tstodr: make it work on s390 platform. + +New icu iterator-functions. The new icu_iter-functions makes it possible +to use ICU chains from many threads. + +yaz-client: better syntax check for show command. + +--- 4.0.1 2010/01/26 + +New glob file pattern utility. Like POSIX glob. For Windows too. Refer to +yaz/file_glob.h. + +New simple local-file XML include facility which allows file glob-patterns. +Refer to yaz/xml_include.h. + +Utility yaz-json-parse which parses JSON and demonstrates the JSON parser +API. + +ZOOM_record_get supports new parameter "format" which makes it format XML +record content. + +Fix JSON parser WRT start symbol. The start grammar symbol (referred to as +JSONText in ECMA-262) is JSONValue, not JSONObject. + +--- 4.0.0 2010/01/20 + +Windows binaries for YAZ now compiled with Visual Studio 2008 (VC9). +Older versions of YAZ was compiled with Visual Studio 6.0 (1998). + +Update so/DLL to version 4. Windows version builds YAZ4.DLL. +POSIX/Unix builds .so with major version 4. + +Remove old LOG_-defines from log.h. They have been obsolete and +undefined by default for the last 5 years. + +Odr_int is now of type 'long long'. Used to be 'int' in YAZ 3 series. + +GFS: Remove socket (int *fd) from search_rr handler. The socket +descriptor ptr is a facility that allowed a search handler to supply +a socket which would serve as a callback - when search was complete. +This facility has now been in use for years. + +COMSTACK API changes: cs_stackerr, cs_addrstr. COMSTACK method cs_stackerr +removed. It is not implemented by tcpip or unix COMSTACK, perhaps for ISO +SR which was removed 7 years ago. COMSTACK macro / method cs_addrstr now +returns 'const char *' rather than 'char *. The returned string is +read-only and should not be modified by applications. COMSTACK cs_close is +now a void function - it no longer returns int. No applications check for +the value and the implementations has always returned 0. + +ZOOM: use size_t for scan hit counts and str size. Functions +ZOOM_scanset_term and ZOOM_scanset_display_term have changed, so that +occ (hit count) and len (string length) are now of type size_t pointer +rather than int pointer. This is to be able to represent large hit counts +and to also just to use the proper type for string length (strlen result). + +New JSON parser. Refer to include/yaz/json.h . + +WRBUF API changes.. For size parameters for WRBUF size_t is now used .. +Used to be int in some cases. Many wrbuf_-functions used to return an int +indicating some length.. These return values were never used. And so they +are now void. + +ODR: odr_malloc, odr_total now takes size_t for size. + +clone_z_type: fix leak; occurred for encoding failures. + +--- 3.0.52 2009/12/03 + +tcpip comstack: fix use of uinitialized variable in cs_straddr. This +bug was introduced in 3.0.51. + +--- 3.0.51 2009/12/02 + +tcpip comstack: Remove TCP receiver buffer optimizations for Solaris. + +tcpip comstack: fix leak for getaddrinfo. + +Encoding of SRU database is performed by yaz_encode_sru_dbpath_odr or +yaz_encode_sru_dbpath_buf. Now used by yaz-client and the ZOOM API. +Decoding of SRU "path" database is performed by private function +yaz_decode_sru_dbpath_odr . This in turn is used by yaz_srw_decode +and yaz_sru_decode in server applications, GFS, yazproxy, metaproxy. + +yaz-client: honor base command for SRU. Change when database setting +is applied for SRU and ensure it is kept when a connection is reset. +Change also the way errors are displayed or SRU (decoding of packages). + +--- 3.0.50 2009/11/02 + +Add support for extra request / response data for SRU codecs and GFS. +The Z_SRW_PDU structure has two new members extraResponseData_{buf,len} +for extra data response buffer and length. For the GFS, both request +and response data (XML) is carried in extra_args and extra_response_data +for the search handler. Patch by Ko van der Sloot. + +ZOOM: For queries that cannot be converted to the specified rpnCharset, +ZOOM now returns a diagnostic on the client-side ('invalid query' / +10010). This fixes bug #2113. + +yaz-client fix: If cmdfile is passed to yaz-client (option -f) and that +cmdfile included a 'quit' command that would result in a memory violation. + +--- 3.0.49 2009/10/01 + +Make a number of functions defined in xmlquery.c static. These have +never been declared in a public header file (yaz/xmlquery.h) and was +made public by mistake. + +Improve speed of character conversions (iconv utilities). This makes +conversions from MARC-8 faster. + +ZOOM_record_get returns 0 pointer if a MARC record can not be decoded - +unless type desired is "raw". This will prevent type "xml" from +returning ISO2709 .. Which obviously can not be XML parsed. + +Fix memory leak in ZOOM that would occur if option apdulog was used +on a re-used connection. + +Frontend server logs HTTP requests. + +Frontend server now sends Z39.50 close when it times out (sesssion has +been idle for too long). Versions 2.0.30 and earlier also sent close. +But due to a mistake this was disabled in all versions after that, i.e. +the server would just close the socket immediately. + +yaz-client emits a better message when receiving an unrecognised +userInformationField. + +Skip zero-length subfields when decoding ISO2709. This rare case happens +if a record has two FS characters in a sequence. Without this patch +there would be a reference beyond char array in using_code_len fragments +in marcdisp.c. + +Fix yaz-marcdump error that would occur if option -n was used (bug #3028). + +--- 3.0.48 2009/08/28 + +The show command offered by the zoomsh command now takes a 3d optional +parameter type which is what is passed to ZOOM_record. If the type +argument is omitted, "render" is used. + +RPN to CQL conv may use USE string attributes (bug #2978). + +MarcXchange NS is now info:lc/xmlns/marcxchange-v1 . + +--- 3.0.47 2009/07/08 + +Function yaz_xml2query allows a diagnostic element in the PQF XML +representation .. diagnostic@code and diagnostic@addinfo is diagnostic +code and additional info respectively. + +The BER BOOLEAN is now the integral type Odr_bool which still happens +to be an 'int'. The BER INTEGER which used to be a plain 'int' is now +typedef'd to Odr_int. This is still an integral 'int', but it may be +changed to 64-bit via a one-liner in nmem.h (NMEM_64=1). The documentation, +ASN-1 compiler as well as programs has been updated to use the new types. + +--- 3.0.46 2009/06/08 + +zoom: ZOOM_record_get now renders OPAC records when type=xml. Previously +only the bibliographic record was rendered. For type=opac, an OPAC +record is only returned if it is present. + +iconv: small fix for encoding of advancegreek. + +yaz-client: avoid double display of SRU/SRW records (bug #2798). + +yaz-client: option auto_reconnect=on really reconnects. + +yaz-client: fix bug #2770 - avoid length limit for auth parameters. + +server: avoid null ptr ref for for yaz_poll errors. + +build: fix RPM build for RHEL 5.3. + +comstack: prefer IPV6 addresses over IPV4 - should refix bug #2350 + +--- 3.0.45 2009/03/31 + +Fixed bug #2709: TCP connect returns Invalid argument. + +Fixed compilation for mingw. + +Honor charset for raw records (ZOOM_record_get). + +Fixed use of errno for threaded mode that was seen on Solaris 10. + +Fixed argument passing with blanks in value for Windows Service. + +Disable YAZ' own log rotate by default (no 1 GB limit). +The variable l_max_size which specifies the log file limit is set to 0 +(DISABLED): This is due to the fact that YAZ is most often deployed using +logrotate. Also YAZ can not perform log rotate because of unsufficient +permissions (setuid). + +--- 3.0.44 2009/02/17 + +List supported encodings in man page for yaz-iconv. + +Fixed missing SSL libs for --libs output + +Re-established OID record syntax application-xml. Nobody should use it +but we don't want to change soname because of this symbol being absent. + +--- 3.0.42 2009/02/02 + +YAZ' RPM spec works for both SUSE Linux Enterprise and RedHat Fedora. + +Added member named_result_sets for init handler struct for the GFS. This +allows a server to disable named result sets. + +Removed OID record syntax application-xml. + +Added support for rule-based transliterator for ICU wrapper of YAZ. + +Fixed bug #1902: yaz-icu XML output. + +Make YAZ checks Emacs friendly. + +BITSTRING value shows value. Bug #2346. + +ISO2709 decoding: skip control characters from indicator data. + +Omit sort key by default in yaz-icu's output. + +Allow combined single char options (again) for YAZ' options function. + +Utility yaz-marcdump got option to display YAZ version (-V). + +Allow YAZ to use ICU 3.4. + +Added new ICU test case which illustrates removal of diacritics. + +--- 3.0.41 2008/12/29 + +Fixed Fixed test that makes VERSION_SHA1 appear on dist versions too. + +--- 3.0.40 2008/12/29 + +For configure, using option --without-xml2 also disables Libxslt/Libexslt +support. + +Fixed bug #2352: yaz-marcdump crashes for certain record. + +Added man page 'bib1-attr' which includes list of common Bib-1 attributes. + +Added support for Danmarc2 to UTF-8 conversion. + +Added support for ISO5426 to UTF-8 conversion. + +zget_InitRequest/zget_InitResponse returns GIT SHA1 hash as part of +implementation version. + +Function yaz_version returns GIT SHA1 hash for parameter sha1_str. + +--- 3.0.38 2008/11/10 + +ZOOM C now only fires one ZOOM_EVENT_SEARCH per search-task. Previously, +ZOOM_EVENT_SEARCH was fired for each searchRetrieve Response received. + +ZOOM C now interprets databaseName option for ZOOM connection as path +(SRU "database"). + +Windows version bundled with Libxml2 2.7.1 / Libxslt 1.1.24 / ICU 4.0. + +Fixed CCL to RPN/PQF conversion which could result in invalid PQF. + +Dummy Libxml2 types no longer defined in headers of YAZ'. + +Fixed memory violation for ZOOM C - could occur when SRU diagnostics was +received. + +--- 3.0.36 2008/09/26 + +Various ODR chapter fixes. + +Windows version uses libxml2 2.6.32+, libxslt 1.1.23+ and ICU 4.0. + +Added missing source for Windows compilation, mutex.c. + +Fixed compilation of YAZ for Visual Studio 2008. Bug #2256. + +For SRU connections in ZOOM all records up to "count" are now fetched. + +Fixed crash in generic frontend server (and yaz-ztest) which occurred +in Windows due to bad error handling for Libxml2. + +Added facility for sending arbitrary records (ASN.1 any) using +ZOOM C's Extended service update. Patch by Sam Reynolds. + +New options for ZOOM C's connection, logapdu which makes ZOOM log +APDUs. + +--- 3.0.34 2008/06/18 + +YAZ uses GNU TLS without the OpenSSL compatibility wrapper. + +--- 3.0.32 2008/06/12 + +Fixed memory violation that could occur when decoding UTF-8. This bug +was only present in 3.0.30 of YAZ. + +--- 3.0.30 2008/06/06 + +Implemented SSL sockets using GNU TLS. OpenSSL is still supported, but +GNU TLS is used by default (if found). + +yaz-ztest returns OPAC records if a client asks for OPAC. + +Improved speed of MARC-8 encoding. + +Added support for lossy and loss-less MARC-8 encoding. + +Changed yaz_record_conv_record to be reentrant for XSLT conversions. + +Added new Windows Service wrapper (sc). + +yaz-client's itemorder command may now send a file. + +Fixed yaz-marcdump to allow the use of NS prefix for record element. + +Added new function yaz_log_xml_errors. + +Allow (but warn) unknown XML attributes in MARCXML parsing. + +Handle G1 sequneces in MARC-8 decoding. Bug #2115. + +The UTF-8 to MARC-8 conversion now uses a different set of characters +for Greek symbols. Bug #2120. + +--- 3.0.26 2008/02/21 + +Added yaz_daemon (daemon.h). + +Fixed bug #2068: pkg-config trouble + +Fixed bug #395: ZOOM_record / OPAC record encoding problems. + +--- 3.0.24 2008/01/28 + +Document --with-xml2 option. + +Added OPAC XML XSD (etc/opacxml.xsd). + +Allow glob mask for name attribute in retrieval element for the +generic frontend server's retrieval facility. + +Changed yaz_poll_poll to return yaz_poll_except for all returned events +except POLLIN/POLLOUT. + +Fixed error handling in cs_listen. Bug #2037. + +--- 3.0.22 2008/01/20 + +Fixed version in yaz/yaz-version.h. + +Fixed bug #2027: Crash when closing connection. + +Changed configure so that ICU support is only enabled if only ICU +and Libxml2 is available (because the ICU chain is XML based). + +--- 3.0.20 2008/01/15 + +YAZ now makes ICU utilities for Windows. A separate DLL, yaz_icu3.dll, +is built. Only this DLL depends on the ICU runtime. + +yaz-ziffy is no longer part of YAZ. It is distributed separately by +Index Data because ziffy's license is GPL2 rather then 'Revised BSD'. + +Changed license of CCL module to 'Revised BSD'. After consultation with +remaining members of the original EUROPAGATE consortium, we are re-issuing +the CCL module without a separate license. The software was developed by +Index Data as part of a research project. The special license was included +to help feed usage information back to the project consortium to support +project evaluation. At this time, the project consortium has long-since +disbanded, and the majority of the original principals have retired. At the +same time, we have significantly modified the software during the following +years, to the point where very practically no original code remains. To +simplify re-use of the software, we have contacted those members of the +consortium who could be reached, and agreed to re-issue the module as a +proper part of the YAZ package. + +Tcl scripts uses /usr/bin/tclsh as preferred shell. + +CQL closer to being version 1.2 compliant. CQL also allows free-form +terms, such as 'title=a b', and thus, make the CQL parser more CCL-like +and user-frendly. + +Fixed bug in ZOOM_options_getl WRT setting of parameter lenp. This +bug could make Extended services handling crash in the ZOOM layer. This +bug was only present in YAZ 3.0.18. + +--- 3.0.18 2007/12/19 + +ziffy uses YAZ' options rather than getopt; getopt is unavailable on +some systems. + +yaz-marcdump reads and writes collection wrapped records. + +Handle OPAC for record conversion module. + +Fixes for ICU wrapper. + +Allow ICU libs to be controlled with --with-icu . + +--- 3.0.16 2007/11/12 + +Added yaz_poll which is a wrapper for select/poll. When poll is available +and non-buggy, it is used, by yaz_poll . This allows more than 1024 +sockets to be in use. + +Added ICU wrapper library which exposes ICU http://www.icu-project.org/ +functionality through an XML based configuration (ICU chain). This system +is useful for search facilities such as Pazpar2 and Zebra that needs to +perform tokenization of indexed material. The ICU code in a separate +library libyaz3_icu.a. + +Added HTTP tunnel facility for COMSTACK, bug #1752. +This is a facility that allows a Web proxy, such as squid, to tunnel +Z39.50 traffic. This facility is "transparent" to must applications +using YAZ. It's enabled by using pseudo transport connect: followed by +the proxy address, followed by command, then follwed by he regular +"virtual" addresss. For example, +connect:webproxy.com:3128,tcp:z3950.loc.gov:7090/voyager . + +More MARC-8/UTF-8 conversion fixes. Bugs #1666, #1667, #1778. + +--- 3.0.14 2007/09/21 + +Fixed bad memory reference in ZOOM_record - cuased by member not being +initialized. This was a problem only in YAZ 3.0.12. + +Fixed bug in conversion from MARC to XML: Non-XML characters in control +fields were not removed. + +Changed the way C code is generated from codetables.xml. Made a MARC-8 +conversion trie for each characterSet section rather than codeTable. +This is ensure the code can deal with G0/G1 sequences. Use of a newer version +of codetables.xml from Larry Dixson, LOC. Bug #1464. + +--- 3.0.12 2007/09/12 + +ZOOM C now handles SRU surrogate diagnostics (i.e. errors returned +from ZOOM_record_error). + +ZOOM C function ZOOM_record_get returns record schema for type="schema". + +Implemented HTTP Basic authentication to SRU/GET, SRU/POST and SRW requests. + +Added new ZOOM C connection option 'sru_option' which specifies SRU version. + +Better SRW-to-Bib-1 diagnostic mapping. + +ZOOM C and yaz-client announces SRU version 1.2 by default. + +yaz-client 'sru' command may specifiy both SRU version and transport (SOAP, +GET or POST). + +Fixed in yaz_sru_decode to allow other version than 1.1. + +--- 3.0.10 2007/08/22 + +Added support for SRU scan for ZOOM. + +Added support for the use of the older versions or Extended Service +Update in ZOOM. To faciliate this, an option "updateVersion" may be +set to the version , 1=first, 2=second, 3=third. The third version is +what ZOOM C has used so far. And that, obviously, is the default. + +Added support for CCL queries in Z39.50 queries sent to the GFS (and +therefore in Zebra and in SimpleServer-based applications). The new + element in a GFS configuration file, if present, names a CCL +qualifier file used to transform incoming CCL queries into Type-1 RPN, +which is passed into the back-end search callback function. + +Added support for HTTP Basic authentication in clients: the SRU/W +codec encodes the username/password elements of the PDU structure +appropriately, and these may be set using the "user" and "password" +options in ZOOM-C applications (the same options that are used for +Z39.50 authentication). + +--- 3.0.8 2007/06/25 + +Fixed bug #1208: SSL appears to be broken in ZOOM. + +Fixed bug #1206: Libxml2 include path weirdness. + +Added oid_name_to_dotstring. + +Allow elementSetName to be specified for ZOOM C record update. + +Allow waitAction to be specified for ZOOM C based for Extended Services. + +Fixed NULL ptr reference bug in yaz-ztest - caused by omitted record +syntax OID. Bug introduced in YAZ 3 series. + +Updated WIN32 build to include Libxml2 2.6.28 / Libxslt 1.1.19. + +--- 3.0.6 2007/06/06 + +Fixed bug #1157: yaz-client does not read .yazclientrc from current +directory. yaz-client now reads commands from file given by option -f +if specified; then tries to read .yazclientrc in current directory. +Failing that, it reads .yazclientrc from user's home directory. + +Added support for correlationInfo Note and ID for Record Update via +ZOOM C. + +Added yaz-client command querycharset which specifies character set for +query terms for Z39.50 RPN queries and Z39.50 Scan Requests +(termListAndStartPoint). + +Charset ISO5428:1984 is an alias for ISO5428-1984. + +Implemented a way to perform scan in a result set using Z39.50. This +is achieved by attaching the result set name in the characterInfo +(type InternationalString) of OtherInformation in the Scan Request PDU. +The result set is identified in the otherinformation by the new OID: + USERINFO, Z3950_PREFIX.10.1000.81.4, "Scan-Set +This allows for scan in result set and faceted search . Zebra did some +of this in the APT term using attribute type 8 and value being result +set. Using the OtherInformation approach for this is cleaner and easier +to work with in proxies and the like. This facility can be used in +yaz-client using new command setscan which takes a result set as first +argument, start position (APT) as second. + +Changed decoding of SRU XML packed records to deal with servers that +have recordData with XML data with multiple root nodes. Also make +comparison for recordPacking case insensitive. Again, one server +returns "XML" where others return "xml". + +For SRU responses allow Content-Type application/xml as well as text/xml. + +--- 3.0.4 2007/05/21 + +Fixed bug in character set conversion of BER strings. Bug introduced +in 3.0.0. + +--- 3.0.2 2007/05/08 + +For OIDs use Odr_oid type everywhere, i.e. do not assume Odr_oid=int. + +For OID class, use oid_class consistently. + +Fixed external handling for SUTRS and Explain records (bug appeared in 3.0 +series). + +Added partial support for ISO5428-1984, which is the "Greek alphabet coded +character set for bibliographic information interchange". By Giannis Kosmas. + +Added documentation on new OID API. + +--- 3.0.0 2007/05/02 + +Changes to generic frontend server interface: added new member +'query_charset' for bend_initrequest structure. A backend init handler +should set this member to its native character set for query terms. +When defined, the frontend server logic will announce this character set +to a client if the negotiationModel bit is set by the client. All server +implementors are encouraged to specify this. If a backend server does not +specify this a warning is issued using yaz_log(YLOG_WARN,..). + +Added CCL utility to remove terms (stop words) from resulting RPN +tree. This is handled by functions with prefix ccl_stop_words_ . + +New ZOOM C option, "rpnCharset", which allows client-side conversion of +terms in RPN queries. + +Clean-up the CCL API. Moved some internal structures from ccl.h to +private header cclp.h. Changed ccl_parser_create so that a Bibset must +be supplied. Removed tokenize API from ccl.h - including ccl_parser_find. +This is replaced by ccl_parser_find_str which takes a string instead. + +Split YAZ library into two libs : libyaz.la and libyaz_server.la. +libyaz.la is the core of YAZ except the generic frontend server and +does not depend on POSIX threads anymore. libyaz_server.la is the +generic frontend server facilities and uses POSIX thread functionality +if available. The libyaz.la no longer depends on POSIX threads because +the number of global structures is limited. NMEM no longer re-uses blocks +between threads ; it simply free's memory immediately but allocates in +"large" chunks as usual. We don't expect any performance penalties +because of this. The yaz_log system is still using a global log_level so +caution must be taken when modifying it with yaz_log_init_.. + +yaz_log_mask_str. This, however, should not cause any trouble because +these functions are called during initialization of application code +anyway. `yaz-config --libs server` returns libs for server applications; +`yaz-config --libs` returns libs for non-server applications. + +New OID database - with public definitions in oid_db.h. Removed old OID +database including the head oid.h and definitions such as enum oid_value +and struct oident. The new OID database uses the same string names as +before but the 'protocol' is gone. There are now only two representations +raw OID (int *) and string. Functions with prefix yaz_string_to_oid +converts from string to OID; functions with prefix yaz_oid_to_string +converts the other way. + +Change to emit_term() in CQL-to-PQF query translation: when a term has +the /regexp relation modifier, do not process it for leading and +trailing "^" and "*", which have quite different meanings in regular +expressions. + +Attempted fix of bug #976: Segfault in yaz_iconv. The yaz_iconv function +write handlers no longer carries a 'last' parameter. This will make +yaz_iconv flush "less" characters. A flush is performed by call to +yaz_iconv(cd, 0, 0, &outbut, &outbytesleft) . + +Definition of wrbuf_diags moved to querytowrbuf.h. Function wrbuf_put_zquery +removed, because function yaz_query_to_wrbuf does the same. + +API changes to WRBUF. wrbuf_free removed; replaced by wrbuf_destroy. And +wrbuf_puts no longer appends '\0'. Use wrbuf_cstr to get C-string out. + +Deprecated MARC utility functions removed. + +Changed prototype of yaz_marc_decode_buf: const char for result and size_t +for rsize. + +Branch split: YAZ_2_1_55_branch + +--- 2.1.54 2007/03/16 + +Fix to ZOOM-C so that transparent reconnection is properly handled on +connections that are in asynchronous mode. + +Fixed compilation on OpenBSD 4.0. + +Large strings in GRS-1 records are now properly displayed in yaz-client. + Added character conversion support for "advancegreek"; based on patch from Giannis Kosmas. +Fixed yaz_iconv to return YAZ_ICONV_EINVAL if an incomplete MARC-8 combo +sequence is met. Before the error was not set so it would be unknown. + +Adjust yaz-marcdump MARC reader so that it skips until record separator +is read + --- 2.1.52 2007/03/07 ZOOM-C: Removed hardcoded limit of 1024 sockets in ZOOM_event_sys_poll(). @@ -1094,7 +2285,7 @@ and search result respectively. Redhat package is now several packages: libyaz (runtime libraries), libyaz-devel (development and documentation, and yaz (utility programs). -Package spec file by Morten Bøgeskov. +Package spec file by Morten Bogeskov. New member 'schema' in struct bend_fetch_rr which the name of requested schema (SRW/SRU) for record (or NULL if none was given). The fetch @@ -1274,7 +2465,7 @@ Solaris recv sometimes returns errno == ENOENT. It is treated as EINPROGRESS. COMSTACK patch by Ko van der Sloot. New COMSTACK of type UNIX Socket. Use "unix:/path" as address for -both client and server. Code by Morten Bøgeskov. +both client and server. Code by Morten Bogeskov. --- 1.8.7 2002/05/22 @@ -1356,7 +2547,7 @@ SSL/COMSTACK updates. cs_rcvconnect completes SSL handshake. ZOOM works with SSL. Configure option --with-openssl= now works when a directory is -specified. Patch provided by Morten Bøgeskov. +specified. Patch provided by Morten Bogeskov. New option for YAZ client, -u , that sets authentication. @@ -1505,7 +2696,7 @@ Added raw OID member for preferred record syntax (request_format_raw) and returned record syntax (output_format_raw) for backend fetch method. Config file yaz-config now accepts options so that it returns specific -compile settings, etc. Thanks to Morten Bøgeskov +compile settings, etc. Thanks to Morten Bogeskov Shared library support for UNIX using GNU libtool.