New CCL feature
[yaz-moved-to-github.git] / CHANGELOG
1 Possible compatibility problems with earlier versions marked with '*'.
2
3
4 --- 1.8.7 2002/MM/DD
5
6 Attributes from multiple CCL fields may be OR'ed rather than merged
7 using directive "@field or". Fields are still merged by default -
8 equivalent to "@field merge".
9
10 XML reader for data1 (EXPAT).
11
12 Fixed bug in ZOOM connect that occurred on OpenBSD (maybe others). Patch
13 by Oleg Kolobov.
14
15 Fixed bug in zget for parameter ExtendedServicesResponse.
16
17 Fix OID for ILL.
18
19 --- 1.8.6 2002/03/25
20
21 Added PQF feature: '@attr type=value' may be written as '@type=value'.
22
23 Client displays USR.1:SearchResult-1 (hits per term).
24
25 Additional Search Info for search in Generic Frontend Server.
26
27 Fixed CCL parsing of "field=s".
28
29 WIN32 installer - using the excellent NSIS software from nullsoft.
30
31 Fixed CCL parsing of "field = - <number>".
32
33 Added function yaz_marc_decode that decodes MARC for line mode
34 display or XML (similar to that used by JZKit).
35
36 Fixed BER decoding of OPTIONAL CHOICE. The bug didn't affect the
37 Z39.50. But ISO/ILL was, however.
38
39 Added patch by Rustam T. Usmanov that implements Z39.50 duplicate
40 detection service (Z39.50-1995 Amendment 2) and Language Negotiation (3).
41 See:
42  http://lcweb.loc.gov/z3950/agency/amend/am2.html
43  http://lcweb.loc.gov/z3950/agency/defns/charneg-3.html
44
45 --- 1.8.5 2002/02/03
46
47 New YAZ client features: Command completion and new commands:
48 push_command, set_apdufile, set_marcdump, set_cclfields, register_oid.
49 Code provided by Jacob Poulsen.
50
51 New call oid_trav, that visits all registered OIDs via callback.
52
53 Function ZOOM_record_get now returns const char pointer rather than
54 void pointer. It saves a lot of type casts.
55
56 For YAZ client, command "auth" now allows you to set authentication
57 in IdPass style. It is enabled when three tokens are given - order
58 is user, group and password.
59
60 Fix memory leaks in MARC record handling for ZOOM.
61
62 New option for YAZ client, -k <kilobytes> that sets
63 maximum record size. Similar to -k option for generic frontend
64 server and yaz-ztest.
65
66 More fixes for scan. Non-zero stepSize handled. OID's fixes.
67
68 Prefix query parser reports "fail" when bad attribute set is given.
69
70 Fix in MARC decoder. Proximity logging. Fix for attribute set
71 in scan handler for server. Patches by Shigeru Ishida.
72
73 SSL/COMSTACK updates. cs_rcvconnect completes SSL handshake. ZOOM
74 works with SSL.
75
76 Configure option --with-openssl=<dir> now works when a directory is
77 specified. Patch provided by Morten Bøgeskov.
78
79 New option for YAZ client, -u <auth>, that sets authentication.
80
81 ZOOM fix: error information was sometimes "missing", since error
82 was cleared/reset too when it shouldn't.
83
84 ZOOM_record_get returns ISO2709 buffer when "raw" is given.
85
86 --- 1.8.4 2002/01/04
87
88 Scan for ZOOM API. New object ZOOM_scanset. New functions
89 ZOOM_connection_scan, ZOOM_scanset_size, ZOOM_scanset_term and
90 ZOOM_scanset_destroy.
91
92 New ZOOM function, ZOOM_connection_last_event, that returns type
93 of last event (such as "receive data", "send data", "apdu received",
94 etc.
95
96 New ZOOM option, schema, that specifies shema OID for retrieval.
97
98 New CCL feature. Qualifiers can be aliases for one or more
99 other qualifiers (if more than one is given, OR is used).
100
101 ZOOM uses named result sets if target supports it.
102
103 Two new YAZ client commands: .  (dot, which sources a script of YAZ
104 client commands), and ! (to execute shell command.). Implemented
105 by Jacob Poulsen.
106
107 Working on Debian packages.
108
109 --- 1.8.3 2001/11/19
110
111 YAZ client enables named result sets only if target supports it.
112
113 *** ZOOM. Prefix for ZOOM definitions changed from Z3950_ to ZOOM_.
114
115 * ZOOM. Removed Z3950_connection_host. Use Z3950_connection_option_get
116 with key="host" to get same result.
117
118 * ZOOM. Added Z3950_record_clone and removed Z3950_resultset_get.
119 Function Z3950_resultset_record(s) returns references to records
120 "owned" by resultset. To become owner use Z3950_record_clone.
121
122 Function z_ext_record handles Extended Services. Thanks to
123 Irina Dijour.
124
125 --- 1.8.2 2001/11/12
126
127 CCL Parser fix: ignore token comma when dealing with and-lists.
128
129 Documentation updates for COMSTACK.
130
131 * ZOOM changes. Query object renamed from Z3950_search to Z3950_query.
132 Changed prototype Z3950_records. For some functions, int parameters
133 were changed to size_t.
134
135 TCP/IP COMSTACK no longer uses getprotobyname to avoid memory leak
136 on some Unices.
137
138 New MARC decode/display function, marc_display_exl, which properly rejects
139 non-ISO2709 records. YAZ client uses it.
140
141 --- 1.8.1 2001/10/29
142
143 Fix bug: local attribute set wasn't set correctly in PQF strings.
144
145 --- 1.8 2001/10/25
146
147 * Old Z39.50 codecs no longer supported. 
148
149 Added ZOOM C binding. See http://zoom.z3950.org/
150
151 Renamed states for COMSTACKs to avoid confusion with events.
152
153 Implemented cs_look and proper cs_rcvconnect.
154
155 Fixed COMSTACK error that occurred on HPUX. Fix by Giannis Kosmas.
156
157 Configure detects POSIX threads on OpenBSD.
158
159 When sort flag 'i' was specified in yaz-client the caseSensitivy flag
160 was set to a wrong value.  Thanks to Robert Sanderson for reporting this.
161
162 When error is returned from present handler, non-surrogate diagnostic
163 is returned in present response (and fetch handler is no longer called).
164
165 * Minor adjustments to pquery parser (PQF). Token characters may be
166 escaped by using backslash (C-style).
167
168 PQF parser allows string attribute values to be specified. For @attr,
169 non-numeric characters after the equal-sign are treated as strings
170 (e.g. @attr 9=title).
171
172 CCL trunction character may be defined (@truncation in file)
173
174 * function zget_ExtendedServicesRequest sets waitAction to
175   waitIfPossible (was wait).
176
177 Added cs_set_blocking to set change blocking mode of a COMSTACK. Thanks
178 to Matthew Carey.
179
180 CCL operator names may be set in field definition files (CCL_bibset).
181 See ccl/bib1 for an example.
182
183 Fixes in ASN.1 compiler for C++ compatibility.
184
185 * Renamed members "and" and "or" in struct Z_Operator to "op_and"
186 and "op_or" to avoid conflict with C++.
187
188 Fixed problem with GNU readline detection on Redhat 7.0.
189
190 Added step-size for Scan backend handler.
191
192 Fixed bug that made the frontend server crash when no attribute
193 set was specified for scan.
194
195 Front-end server automatically switches to original working directory
196 when installed as an NT service. Previously -w had to be specified to
197 make it work.
198
199 Added extended attributes for retrieval module (data1), so that data1
200 records carry d1_readXML/SGML attributes. d1_read also supports
201 null-data rules ( <tag/>)
202
203 On UNIX when POSIX threads are available, a separate library libyazthread
204 is created. Programmers should link with that library and the yaz library
205 when using threads. The reason for the split was that some applications
206 on Linux, such as Apache, doesn't work well when using shared objects that
207 relies on threads.
208
209 Added SSL support for the COMSTACK. You start yaz-client and yaz-ztest
210 (or any frontend server) in SSL mode by specifying ssl: followed by
211 address. Only tested on UNIX.
212
213 Added feature for CCL module. Virtual structure s=al or s=ol generates
214 and-list and or-list respectively instead of phrase search.
215
216 Added some OID's.
217
218 * Added prefix "yaz_" for the functions log_init.., log_file..  and
219 log_mask_str. This was done to avoid name conflicts with other libraries
220 (such as other PHP extensions).
221
222 Added raw OID member for preferred record syntax (request_format_raw)
223 and returned record syntax (output_format_raw) for backend fetch method.
224
225 Config file yaz-config now accepts options so that it returns specific
226 compile settings, etc. Thanks to Morten Bøgeskov <morten@bogeskov.dk>
227
228 Shared library support for UNIX using GNU libtool.
229
230 * Modified backend interface. Request/Response struct's replaced by
231 one read/write C struct. For example bend_fetchrequest and
232 bend_fetchresult have been replaced by single bend_fetch_rr struct.
233 Every handler - even search has to be registered in bend_init
234 handler. This means that the YAZ library no longer refers to
235 external functions and it makes it possible to make the whole
236 thing a single DLL/SO.
237
238 Added Segment handler for backend server.
239
240 Added Zmbol/Zebra administrative functions to YAZ client.
241
242 Threaded frontend server on UNIX (when POSIX Threads are available).
243 Starting the server with option -T enables multi-threading.
244
245 --- 1.6 2000/03/03
246
247 Added configure option --enable-comp/disable-comp to control use
248 of YAZ ASN.1 compiler. Use --disable-comp to use the old *coders
249 located in sub directory asn.
250
251 YAZ ASN.1 compiler renamed to yaz-comp in sub directory. It's installed
252 in ${exec_prefix}/bin along with the other programs yaz-client and
253 yaz-ztest.
254
255 GNU automake used to maintain makefiles.
256
257 Added several OID's.
258
259 Changed retrieval module so that we can load records with no abstract
260 syntax defined. Tagpaths in these records are fully composed of string
261 tags.
262
263 Implemented ISO ILL protocol. Refer to stuff in sub directory ill.
264
265 --- 1.5 1999/12/10
266
267 On UNIX, the generated makefile now supports a proper 'make install'.
268 The prefix can be set via GNU configure to set the install location
269 (default is /usr/local).
270
271 * YAZ programs client and ztest were renamed to yaz-client and
272 yaz-ztest to avoid conflicts when users install YAZ in "standard"
273 locations, such as /usr/bin,/usr/local/bin,etc.
274
275 * YAZ Header files were moved from include to include/yaz. YAZ Header
276 files are referred to as include <yaz/log.h> rather than <log.h>.
277 The YAZ include path (-I ..) is therefore the same as before. Programmers
278 should update their #include statements or use -Ipath/include/yaz
279 instead. The main motivation for doing this change is that YAZ header files
280 can be installed in "standard" locations /usr/include,/usr/local/include 
281 without introducing conflicts, since ALL YAZ header files are stored
282 in subdirectory yaz (under /usr/include for example).
283
284 Compilation of YAZ for WIN32 is now handled by an nmake-style makefile 
285 rather than project/workspace files. We switched because project files
286 are incompatible between Visual C++ 5 and 6. Refer to windows.txt for
287 details.
288
289 Changed name of logging function, logf, to yaz_log, to prevent name
290 clash with some math-log functions. The YAZ header log.h defines logf
291 to yaz_log (#define) so there should be no incompatibilities by this
292 modification.
293
294 Added bend_start/bend_stop handlers for server. These handler are
295 called on start/stop of server. For windows they are called whenever
296 a service is started/stopped.
297
298 * YAZ now auto-generates decoders/encoders for the Z39.50 protocol using
299 a fairly small ASN.1 compiler written in Tcl. The compiler is located
300 in util/yc.tcl. The auto-generated C code structures are, in a few
301 cases, incompatible with the old decoders. There are differences in the
302 following C structures Z_DiagRec, Z_External, Z_SortRequest, Z_SortResponse,
303 Z_AttributesPlusTerm, Z_ProximityOperator, Z_DefaultDiagFormat.
304 The preprocessor variable ASN_COMPILED is defined when the compiled
305 ASN.1 is being used. Encoder/decoder routines as well as the Z39.50
306 protocol ASN.1 is located sub directory <tt>z39.50</tt>. If you
307 wish to use the old encoders/decoders you can specify --disable-yc
308 for configure.
309
310 Assigned OID for old DB Update (VAL_DBUPDATE0). Updated YAZ compiled
311 version so that it supports both new - and old version of DB Update
312
313 * Added 'name' parameter to ODR encoder/decoder routines to facilitate
314 pretty ODR print. Updated whole Z39.50 encoder/decoder to reflect the
315 change. The name parameter can be set to 0 in which no name is specified
316 for the construction. The macros odr_implicit and odr_explicit sets name
317 parameter to zero for the construction involved. New macros
318 odr_implicit_tag and odr_explicit_tag are similar to the others,
319 except that a name parameter is added. For programmers' that don't use
320 ODR they probably only need to change the call to z_APDU and z_External.
321
322 Added access control facility by interfacing the TCP wrapper library.
323 YAZ automatically attempts to find the TCP wrapper Library (-lwrap) and
324 tcpd.h on Unix systems. For the server, option -d<daemon> specifies the
325 name of the daemon and enables the access control as specified in
326 hosts.allow/hosts.deny. Refer to man pages tcpd(8) and hosts_access(5).
327
328 Fixed memory leak in ccl_find_str and ccl_qual_rm. Thanks to Hans van
329 den Dool <H.M.vdnDool@kub.nl>.
330
331 Added reference ID parameter to most functions in server API - refer
332 to backend.h. Thanks to Hans van den Dool <H.M.vdnDool@kub.nl>.
333
334 Changed name of ccl library to libccl.a (was ccl.a).
335
336 Fixed bug in decoder for Explain (Category TargetInfo).
337
338 Added support for GNU readline in client. Thanks to Jacob Poulsen
339 <ja7@dbc.dk>. GNU configure attempts to detect if readline is available.
340
341 * CHANGED DEFINITION OF ES: UPDATE (INCLUDING THE OID) to reflect the
342 new definition from the ZIG. NOTE THIS IF YOU HAVE AN UPDATE
343 IMPLEMENTATION! This change was made to the development version before
344 the ZIG decided to retract the amendment. If any users MUST be
345 compatible with the original Update definition, PLEASE CONTACT US, and
346 we will include a separate definition corresponding to the old Update
347 ES. Note that because of the change to the ASN.1 of the
348 TaskPackageRecordStructure we cannot define a single structure that
349 will support both versions.
350
351 * Added const modifier to buffer parameter for some ODR/BER encoding
352 routines: ber_dectag, ber_declen, odp_more_chunks, completeBER,
353 completeWAIS, odr_dumpBER.
354
355 Fixed bug in client.c which caused a crash when a scanResponse didn't
356 contain positionOfTerm.
357
358 * Fixed inconsistency in the ScanResponse/ListEntries protocol. This
359 * will cause an error in a client if a non-YAZ target sends both a
360 * list of Scan entries and non-surrogate diagnostics.
361
362 Retrieval module enhancements. Tag sets may be typed in the reference
363 to it. From the .abs-file the "tagset" directive takes a third optional
364 integer type for the tag set referenced. From a .tag-file the "include"
365 directive takes a third optional type as well. The old "type" directive
366 in the tag set itself is still recognized but acts as the default type
367 for the tag set.
368
369 Backend interface change. Individual Scan terms returned from bend_scan
370 may also be tagged as Surrogate Diagnostics. Refer to struct scan_entry
371 in include/backend.h.
372
373 Retrieval module enhancements. Multiple tag sets and attribute sets may
374 be specified in abstract syntax specs. Revised the error/warning for
375 logging messages reported by the retrieval module when reading the
376 various spec files.
377
378 Object Identifier system (oid_..) changed. The API is backwards
379 compatible but the oid-routines now allocates new OID's when needed.
380 Raw OID's may be specified in oid_getvalbyname.
381
382 YAZ now uses GNU configure to generate Makefile(s).
383
384 * Minor changes in some of the member names of DeleteResultSetRequest and
385 DeleteResultSetResponse. See include/proto.h.
386
387 * Changed some C definitions regarding EXPLAIN record syntax (prt-exp.h)
388 and added member 'languages' in TargetInfo (which was missing).
389
390 Changed the way attribute sets are handled in the retrieval
391 module. These are now cached, just like the abstract syntaxes
392 (schemas).
393
394 Changed YAZ so that it links with compiled ASN.1.
395
396 Added Explain-schema definitions and mapping routines. The following
397 Explain categories have been implemented: AttributeDetails,
398 AttributeSetInfo, DatabaseInfo, CategoryList and TargetInfo.
399
400 Fixed minor bug in Windows version of Server Library.
401
402 --- 1.4pl2+ 1998/4/17 (Released with Zebra)
403
404 Added Extended Services to server (backend.h). Thanks to Charles Woodfield.
405
406 Added EXTERNAL: UNIverse Resource Report (non-standard).
407
408 Implemened odr_enum and odr_set_of functions to handle ASN.1 types
409 ENUMERATED and SET OF.
410
411 * Added 'const' to some of the char pointer arguments for the
412 functions, data1_read_node, data1_getelementbytagname,
413 data1_insert_taggeddata, data1_getesetbyname, data1_getelementbyname,
414 data1_get_absyn.
415
416 Fixed bug in data1_insert_taggeddata - the last_child member of
417 parent wasn't initialised.
418
419 * Changed data1_read_record and data1_read_node so that the supplied
420 "SGML"-buffer is read-only. In particular the resulting data1 - tree
421 doesn't refer to any parts of the "SGML"-buffer.
422
423 Fixed bug in server library (Windows version of statserv_remove).
424
425 * Changed code so that it compiles as C++. The type definition
426 of Odr_fun which is a member of Odr_arm was changed. The result is,
427 that an explicit typecast is needed for the fun pointer when
428 using Odr_arm - as in:
429     {1, -1, -1, Z_IdAuthentication_idPass, (Odr_fun)z_IdPass},
430
431 Updated TagSet-G and -M definitions (tagsetm.tag and tagsetg.tag).
432
433 Implemented the new structured date and time definition as approved
434 by the ZIG. Added schemaId element to the specificTag in Espec-1
435 (also approved at the last ZIG). Thanks to RVDM.
436
437 Added some Object identifiers (RVDM).
438
439 Changed the Update Extended Service (RVDM).
440
441 Added command "refid" to client which specifies referenceId for
442 the following requests.
443
444 Implemented extended service handling for server. See ztest.c
445 for an example as well as backend.h. New handlers are registerd
446 in the Init handler.
447
448 * Changed interface for sort in server.
449
450 Added new members to statserv_options_block. It allows a server
451 to read options from another source than just the command line. Thanks
452 to Charles Woodfield.
453
454 * Changed definition of Z_Triple in file prt-grs.h - member boolean
455 renamed to zboolean. Some C++ compilers complained about the name.
456
457 Minor changes to gils.abs. Added index 's' (sort) on title
458 and date/time-last-modified.
459
460 --- 1.4pl2 1998/1/30
461
462 Fixed bug in server library regarding inetd mode (-i). This bug
463 was introduced by release 1.4.
464
465 --- 1.4pl1 1998/1/29
466
467 Added sort facility in client and backend server interface.
468
469 Fixed problem with dependencies in Makefile(s).
470
471 Fixed bugs for encoders/decoders of extended services and 
472 SearchInfoReport.
473
474 Implemented sub-tree feature for schemas. Sub-trees are
475 referenced in *.abs-files. See explain.abs for an example
476 of the use of this feature.
477
478 Modified bib1.att; local attributes for ANY didn't include
479 ANY itself (only affects use of the retrieval module).
480
481 Fixed bug in plain SGML reader in function data1_read_node:
482 tags with prefix "var" was incorrectly interpreted as variants.
483
484 Added feature "sub-schemas" to enable references to - and definitions
485 of - group of elements.
486
487 * Removed member parent from type data1_element (in data1.h).
488
489 Implemented function odr_nullval() that returns the value of
490 ODR_NULLVAL.
491
492 * Removed member num_children from data1_node (in data1.h).
493
494 Made NT service interface part of the server library. The
495 function statserv_main uses the NT service when required and
496 calls the statserv_start / statserv_close routines.
497
498 Routine zget_SearchRequest and zget_PresentRequest fills
499 resultSetName/Id member with "default" instead of "Default".
500
501 Fixed memory leak in server. Request queue member wasn't freed.
502
503 Fixed nmem_exit so that memory is freed.
504
505 --- 1.4 1997/10/2
506
507 Revised the CCL parser utility to be thread safe.
508
509 Added function, oid_ent_to_oid, to replace the function 
510 oid_getoidbyent, which is not thread safe.
511
512 * Added nmem_init and nmem_exit to initialize and release
513 NMEM resources. Function nmem_init should be called once in the
514 initial thread before NMEM/ODR is used. statserv.c and client.c
515 have been changed accordingly. The change was necessary to make
516 NMEM thread safe. The NMEM memory pool is shared amongst threads
517 in a process. Unix-based applications will still work fine without
518 calling this.
519
520 Added NT Services interface for the the Z39.50 (statserv) Server. 
521 Refer to the ztest.c source on the usage.
522
523 Windows 95/NT port using MSVC5.0. Project files are included in the
524 distribution.
525
526 * Defined new 'global' handle for the retrieval (data1) system. The
527 new handled, data1_handle, describes the state of the data1 system.
528 This handle is passed as first argument to virtually all
529 data1 related routines. The functions data1_create and data1_destroy
530 creates and destroys a data1 handle respectively.
531
532 Added ODR encode stream member to all backend request structures
533 init, search, scan etc. This stream should be used to allocate all
534 memory used for the response when thread safe operation is needed.
535
536 Changed the comstack utility, cs_addstr, to be thread safe. The
537 returned hostname string returned by the function is now part the
538 COMSTACK instance.
539
540 Added comstack utility, cs_straddr, which replaces the tcpip_strtoaddr
541 function. The cs_straddr takes a COMSTACK handle as argument, so this
542 function must be used after cs_create and before bind/connect.
543 This function is thread safe.
544
545 Moved test server to 'ztest' directory - generic server code still
546 in 'server' directory.
547
548 Made prefix query (pquery.c) utility thread safe.
549
550 Added new function modifier YAZ_EXPORT to 'export' public DLL
551 functions when using windows (see include/yconfig.h).
552
553 Added definitions to the OID database (util/oid.c) (RVDM).
554
555 Added new BIB-1 diagnostic messages to the handler diagbib1_str.
556
557 Added call to ccl_rpn_delete in client program.
558
559 Added ODR argument to ccl_rpn_query and ccl_scan_query to provide
560 release of RPN structure.
561
562 Added support for C++, headers uses extern "C" for public definitions.
563 With input from RVDM.
564
565 In handling of SEQUENCE OF: Counter set to zero when SEQUENCE OF is absent.
566 Thanks to Ronald van der Meer (RVDM).
567
568 Added initializers (zget_ routines) for a number of PDUs. Thanks to RVDM.
569
570 Added support for private extensions to the OID database
571 (oid_setprivateoids()). Thanks to RVDM.
572     
573 Added optional, physical ANY (key replication)
574
575 Fixed null-reference problem in GRS-1 output filter.
576
577 Proximity operator added to Prefix Query Format (PQF).
578
579 In test client command "base" accepts multiple databases.
580
581 Fixed bug in cs_close stack that caused trouble with WINSOCK.
582
583 --- 1.3 1996/10/11
584
585 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
586
587 Smallish bug-fixes in the new encoders/decoders (explain).
588
589 Bug fixed in DeleteRequest.
590
591 Fixed tagging bug of type 101 query in SearchRequest-Query PDU encoder/decoder.
592
593 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
594
595 Added SOIF syntax (using private OID for now) to retrieval module and client.
596
597 Added Update extended service.
598
599 Added SearchResult-1 additional info structure.
600
601 Added optional CCL (ISO8777) interpreter as separate module. Available
602 in linemode client.
603
604 --- 1.2 1996/6/10 (1st anniversary release)
605
606 Added Summary record syntax. Lightly tested.
607
608 Added OPAC record syntax. Untested.
609
610 Added ResourceReport service encoders/decoders. Untested.
611
612 Fixed bug in z_Unit - wrong tagging on unitSystem.
613
614 Fixed bug in the DiagRecs decoder.
615
616 Added options for max PDU size and session timeout to frontend-server.
617
618 Added documentation of query-language parsers and other supporting utilities.
619
620 [frontend-server] Added Attribute set to the bend_scanrequest API.
621
622 [frontend-server] NextResultSetPosition was sometimes set incorrectly when
623 surrogate diagnostics were generated.
624
625 [retrieval] Allow multiple local values for attribute.
626
627 [retrieval] Allow multiple attributes per element in .abs files. index type.
628
629 [retrieval] Added Summary tagset, abstract syntax, and d1-node/ASN filter.
630
631 --- 1.1pl2  1996/4/10
632
633 Minor changes, mostly specific to Zebra's requirements (retrieval)
634
635 --- 1.1  1996/2/20
636
637 Repaired bug in frontend server when running multiple listening
638 endpoints in dynamic mode.
639
640 z_External() now won't break if a known, ASN.1 value comes encapsulated
641 in an octet-string. The value will pass through unmodified in an Odr_oct.
642
643 Added a bit of code to the demo client to decode & display
644 ASN.1-structured records represented in the octet-aligned branch of
645 the EXTERNAL CHOICE. Thanks to CAS for prodding us to finally do this.
646
647 Added z_ext_getentbyref() to the ASN module. Doc updated.
648
649 * Completed the SCAN definition in the ASN module. This may break SCAN
650 code based on older YAZ-versions at compile-time. The fix is easy -
651 look in proto.h.
652
653 * Added 'displayTerm' and OtherInformation to the TermInfo structure
654 under the SCAN definition. Remember to initialize this, server-people.
655
656 Comstack should now support the WAIS protocol in TCP/IP mode. Note
657 that this does not extend to ODR and ASN.
658
659 Comstack allows insertion of established socket (primarily for
660 inetd-operation of servers). Doc updated.
661
662 Front-end server can now start from the inetd in TCP mode. Doc
663 updated.
664
665 --- 1.0pl4 1996/1/24
666
667 Added Sort PDU.
668
669 Fixed small problem in SUTRS-filter. A newline was sometimes inserted before
670 the rank and record number.
671
672 Adjustments to the frontend server.
673
674 Fixed diagnostic BER dumper. It ignored the file argument.
675
676 --- 1.0pl3 1996/1/2
677
678 Various changes to retrieval module.
679
680 Changed the union discriminators of the protocol files from enums to
681 ints paired with #defines.
682
683 *Changed oident.class to oident.oclass to avoid a reserved word in C++
684  compilers.
685
686 *Changed operator in the RPN structure to 'roperator', again to avoid a
687  conflict with C++.
688
689 Fixed problems in Explain decoders/encoders.
690
691 --- 1.0pl2 1995/12/6
692
693 Memory bug in log module fixed.
694
695 --- 1.0pl1 1995/12/5
696
697 Occasional malloc() of 0 bytes fixed in d1_espec.c.
698
699 Bug in Explain DatabaseInfo module fixed.
700
701 Some '\r' snuck into one or two of the ret'l config tables. A curse on Windows.
702
703 --- 1.0 1995/11/28
704
705 The shift to v1.0 signals that we now consider the *core* functionality
706 of YAZ reasonably stable (the core being more or less equivalent to
707 Z39.50-1992). Some of the really nifty v3 stuff is still not heavily
708 tested (Explain not at all - though that will happen soonish).
709
710 Minor changes to code to support Windows port.
711
712 Various minor changes after we're getting to use GRS-1 & co. more.
713
714 Added Espec-1 format.
715
716 Added VisibleString field body type to GRS-1. It is illegal acc. to my copy
717 of the protocol and it cannot be selected when encoding (maps into 'string'
718 when decoding). Needed to talk to some servers.
719
720 Demo client can request simple element set names.
721
722 Added Diagnostic Format encoders/decoders.
723
724 Added simple Close handling to frontend server (no hooks for resource
725 reporting yet), and demonstration client.
726
727 Added cs_addrstr() command to COMSTACK to retrieve peer hostname/address.
728
729 --- 1.0b3 1995/08/24
730
731 Fixed bug in the frontend-server. The numberOfRecordsReturned field was
732 handled incorrectly when records were requested in the searchResponse. This
733 will only affect you if you use the frontend-server.
734
735 Added GRS-1 encoders/decoders to the service-level API. Lightly tested.
736 Test-client will ask for and print GRS1. Ztest will return dummy records
737 on request.
738
739 Added Explain encoders/decoders to the service-level API. Untested.
740
741 Added Extended Services: Item Order encoders and decoders to the Service-
742 level API. Untested. We could use a recent copy of the pertinent bits
743 of the ILL protocol to add those bits.
744
745 Added diagnostic format 1 encoders/decoders to the service-level API.
746 Untested.
747
748 Moved pretty-printing of structure-wrappers ({..}) from odr_seq.c to
749 odr_cons.c, which causes a more correct output.
750
751 Fixed handling of searchRequest in frontend server. NextResultSetPosition
752 was always set to 0 when no records were requested in the searchRequest.
753
754 * Added better external-handling. This shouldn't harm old code that
755 *encodes* externals. It can break code that looks for a
756 'single-ASN1-type' representation, since those types that are known
757 are now decoded immediately. Look at the SUTRS sample code in
758 seshigh.c and client.c. Documentation updated.
759
760 Handling of structured records in bend_fetchresponse. Length -1 marks
761 structured record, type is deduced from format field.
762
763 --- 1.0b2 1995/06/27
764 Fairly quick maintenance release to add SUTRS support.
765
766 Fixed handling of SUTRS records in the demonstration client.
767
768 * Added format field to the bend_fetchrequest and bend_fetchresponce
769 structures of the backend API (frontend server). When the record is
770 returned, the value of the format field is mapped to an OID. The
771 value VAL_SUTRS will also cause a slightly different ASN.1 packaging
772 of the record. The special value VAL_NONE in the bend_request means
773 that no specific format was requested by the client. Documentation
774 updated accordingly. Test server (ztest) will return a fixed dummy
775 SUTRS record if your client requests SUTRS.
776
777 Documentation updated accordingly.
778
779 You can now set external libraries and RANLIB support in the top-level
780 Makefile.
781
782 --- 1.0b 1995/06/19
783 First public release.