YAZ version 1.4.
[yaz-moved-to-github.git] / CHANGELOG
1 Possible compatibility problems with earlier versions marked with '*'.
2
3 --- XXXXX
4
5 Added NT Services interface for Z39.50 Server. 
6
7 Windows 95/NT port using MSV5.0. Project files are included in
8 the distribution.
9
10 * Defined new 'global' handle for the retrieval (data1) system. The
11 new handled, data1_handle, describes the state of the data1 system.
12 This handle is passed as first argument to virtually all
13 data1 related routines. The functions data1_create and data1_destroy
14 creates and destroys a data1 handle respectively.
15
16 Added ODR encode stream member to all backend request structures
17 init, search, scan etc. This stream should be used to allocate all
18 memory used for the response when thread safe operation is needed.
19
20 Changed the comstack utility, cs_addstr, to be thread safe. The
21 returned hostname string returned by the function is now part the
22 COMSTACK instance.
23
24 Added comstack utility, cs_straddr, which replaces the tcpip_strtoaddr
25 function. The cs_straddr takes a COMSTACK handle as argument, so this
26 function must be used after cs_create and before bind/connect.
27 This function is thread safe.
28
29 Moved test server to 'ztest' directory - generic server code still
30 in 'server' directory.
31
32 Made prefix query handling thread safe.
33
34 Added new function modifier YAZ_EXPORT to 'export' public DLL
35 functions when using windows (see include/yconfig.h).
36
37 Added definitions to the OID database (util/oid.c) (RVDM).
38
39 Added new BIB-1 diagnostic messages to the handler diagbib1_str.
40
41 Added call to ccl_rpn_delete in client program.
42
43 Added ODR argument to ccl_rpn_query and ccl_scan_query to provide
44 release of RPN structure.
45
46 Added support for C++, headers uses extern "C" for public definitions.
47 With input from RVDM.
48
49 In handling of SEQUENCE OF: Counter set to zero when SEQUENCE OF is absent.
50 Thanks to Ronald van der Meer (RVDM).
51
52 Added initializers (zget_ routines) for a number of PDUs. Thanks to RVDM.
53
54 Added support for private extensions to the OID database
55 (oid_setprivateoids()). Thanks to RVDM.
56     
57 Added optional, physical ANY (key replication)
58
59 Fixed null-reference problem in GRS-1 output filter.
60
61 Proximity operator added to Prefix Query Format (PQF).
62
63 In test client command "base" accepts multiple databases.
64
65 Fixed bug in cs_close stack that caused trouble with WINSOCK.
66
67 --- 1.3 1996/10/11
68
69 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
70
71 Smallish bug-fixes in the new encoders/decoders (explain).
72
73 Bug fixed in DeleteRequest.
74
75 Fixed tagging bug of type 101 query in SearchRequest-Query PDU encoder/decoder.
76
77 Fixed tagging bug in ResourceReportResponse PDU encoder/decode.
78
79 Added SOIF syntax (using private OID for now) to retrieval module and client.
80
81 Added Update extended service.
82
83 Added SearchResult-1 additional info structure.
84
85 Added optional CCL (ISO8777) interpreter as separate module. Available
86 in linemode client.
87
88 --- 1.2 1996/6/10 (1st anniversary release)
89
90 Added Summary record syntax. Lightly tested.
91
92 Added OPAC record syntax. Untested.
93
94 Added ResourceReport service encoders/decoders. Untested.
95
96 Fixed bug in z_Unit - wrong tagging on unitSystem.
97
98 Fixed bug in the DiagRecs decoder.
99
100 Added options for max PDU size and session timeout to frontend-server.
101
102 Added documentation of query-language parsers and other supporting utilities.
103
104 [frontend-server] Added Attribute set to the bend_scanrequest API.
105
106 [frontend-server] NextResultSetPosition was sometimes set incorrectly when
107 surrogate diagnostics were generated.
108
109 [retrieval] Allow multiple local values for attribute.
110
111 [retrieval] Allow multiple attributes per element in .abs files. index type.
112
113 [retrieval] Added Summary tagset, abstract syntax, and d1-node/ASN filter.
114
115 --- 1.1pl2  1996/4/10
116
117 Minor changes, mostly specific to Zebra's requirements (retrieval)
118
119 --- 1.1  1996/2/20
120
121 Repaired bug in frontend server when running multiple listening
122 endpoints in dynamic mode.
123
124 z_External() now won't break if a known, ASN.1 value comes encapsulated
125 in an octet-string. The value will pass through unmodified in an Odr_oct.
126
127 Added a bit of code to the demo client to decode & display
128 ASN.1-structured records represented in the octet-aligned branch of
129 the EXTERNAL CHOICE. Thanks to CAS for prodding us to finally do this.
130
131 Added z_ext_getentbyref() to the ASN module. Doc updated.
132
133 * Completed the SCAN definition in the ASN module. This may break SCAN
134 code based on older YAZ-versions at compile-time. The fix is easy -
135 look in proto.h.
136
137 * Added 'displayTerm' and OtherInformation to the TermInfo structure
138 under the SCAN definition. Remember to initialize this, server-people.
139
140 Comstack should now support the WAIS protocol in TCP/IP mode. Note
141 that this does not extend to ODR and ASN.
142
143 Comstack allows insertion of established socket (primarily for
144 inetd-operation of servers). Doc updated.
145
146 Front-end server can now start from the inetd in TCP mode. Doc
147 updated.
148
149 --- 1.0pl4 1996/1/24
150
151 Added Sort PDU.
152
153 Fixed small problem in SUTRS-filter. A newline was sometimes inserted before
154 the rank and record number.
155
156 Adjustments to the frontend server.
157
158 Fixed diagnostic BER dumper. It ignored the file argument.
159
160 --- 1.0pl3 1996/1/2
161
162 Various changes to retrieval module.
163
164 Changed the union discriminators of the protocol files from enums to
165 ints paired with #defines.
166
167 *Changed oident.class to oident.oclass to avoid a reserved word in C++
168  compilers.
169
170 *Changed operator in the RPN structure to 'roperator', again to avoid a
171  conflict with C++.
172
173 Fixed problems in Explain decoders/encoders.
174
175 --- 1.0pl2 1995/12/6
176
177 Memory bug in log module fixed.
178
179 --- 1.0pl1 1995/12/5
180
181 Occasional malloc() of 0 bytes fixed in d1_espec.c.
182
183 Bug in Explain DatabaseInfo module fixed.
184
185 Some '\r' snuck into one or two of the ret'l config tables. A curse on Windows.
186
187 --- 1.0 1995/11/28
188
189 The shift to v1.0 signals that we now consider the *core* functionality
190 of YAZ reasonably stable (the core being more or less equivalent to
191 Z39.50-1992). Some of the really nifty v3 stuff is still not heavily
192 tested (Explain not at all - though that will happen soonish).
193
194 Minor changes to code to support Windows port.
195
196 Various minor changes after we're getting to use GRS-1 & co. more.
197
198 Added Espec-1 format.
199
200 Added VisibleString field body type to GRS-1. It is illegal acc. to my copy
201 of the protocol and it cannot be selected when encoding (maps into 'string'
202 when decoding). Needed to talk to some servers.
203
204 Demo client can request simple element set names.
205
206 Added Diagnostic Format encoders/decoders.
207
208 Added simple Close handling to frontend server (no hooks for resource
209 reporting yet), and demonstration client.
210
211 Added cs_addrstr() command to COMSTACK to retrieve peer hostname/address.
212
213 --- 1.0b3 1995/08/24
214
215 Fixed bug in the frontend-server. The numberOfRecordsReturned field was
216 handled incorrectly when records were requested in the searchResponse. This
217 will only affect you if you use the frontend-server.
218
219 Added GRS-1 encoders/decoders to the service-level API. Lightly tested.
220 Test-client will ask for and print GRS1. Ztest will return dummy records
221 on request.
222
223 Added Explain encoders/decoders to the service-level API. Untested.
224
225 Added Extended Services: Item Order encoders and decoders to the Service-
226 level API. Untested. We could use a recent copy of the pertinent bits
227 of the ILL protocol to add those bits.
228
229 Added diagnostic format 1 encoders/decoders to the service-level API.
230 Untested.
231
232 Moved pretty-printing of structure-wrappers ({..}) from odr_seq.c to
233 odr_cons.c, which causes a more correct output.
234
235 Fixed handling of searchRequest in frontend server. NextResultSetPosition
236 was always set to 0 when no records were requested in the searchRequest.
237
238 * Added better external-handling. This shouldn't harm old code that
239 *encodes* externals. It can break code that looks for a
240 'single-ASN1-type' representation, since those types that are known
241 are now decoded immediately. Look at the SUTRS sample code in
242 seshigh.c and client.c. Documentation updated.
243
244 Handling of structured records in bend_fetchresponse. Length -1 marks
245 structured record, type is deduced from format field.
246
247 --- 1.0b2 1995/06/27
248 Fairly quick maintenance release to add SUTRS support.
249
250 Fixed handling of SUTRS records in the demonstration client.
251
252 * Added format field to the bend_fetchrequest and bend_fetchresponce
253 structures of the backend API (frontend server). When the record is
254 returned, the value of the format field is mapped to an OID. The
255 value VAL_SUTRS will also cause a slightly different ASN.1 packaging
256 of the record. The special value VAL_NONE in the bend_request means
257 that no specific format was requested by the client. Documentation
258 updated accordingly. Test server (ztest) will return a fixed dummy
259 SUTRS record if your client requests SUTRS.
260
261 Documentation updated accordingly.
262
263 You can now set external libraries and RANLIB support in the top-level
264 Makefile.
265
266 --- 1.0b 1995/06/19
267 First public release.