d6aed350d59693fb15cca969f78d9b99c112c271
[gedcom-parse.git] / ChangeLog
1 2002-12-30  Peter Verthez  <Peter.Verthez@advalvas.be>
2
3         * gedcom/write.c: Give warning if character set in HEAD.CHAR is not
4         the same as current character set (and force value).
5
6         * gom/header.c, gom/gom_modify.c: Added function
7         gom_header_update_timestamp and supporting functions.
8
9 2002-12-29  Peter Verthez  <Peter.Verthez@advalvas.be>
10
11         * configure.in, include/gedcom.h.in: Move to three-part version
12         numbers.
13
14         * m4/gedcom.m4: Major changes.
15
16 2002-12-22  Peter Verthez  <Peter.Verthez@advalvas.be>
17
18         * gedcom-config.in: New file.
19
20 2002-12-21  Peter Verthez  <Peter.Verthez@advalvas.be>
21
22         * libutf8 is changed to a shared library, and has now its own
23         package (see further ChangeLog in that directory).
24
25         * gedcom/date.c, gedcom/gedcom_date.*: New functions for handling
26         date values.
27
28 2002-12-15  Peter Verthez  <Peter.Verthez@advalvas.be>
29
30         * gom/*.c, gedcom/write.c, gedcom/date.c, gedcom/age.c: Support for
31         writing age values and data values (rudimentary).
32
33         * gom/*.c, gedcom/write.c: Completed writing of strings and xrefs.
34
35 2002-12-08  Peter Verthez  <Peter.Verthez@advalvas.be>
36
37         * gedcom/write.c: Writing long strings (with continuation), and
38         doubling of at characters.
39
40         * gedcom/gedcom.y, gedcom/buffer.*: Use safe buffer mechanism for
41         storing gedcom value (to avoid fixed buffer size).
42
43 2002-12-07  Peter Verthez  <Peter.Verthez@advalvas.be>
44
45         * gom/*: Use complete concatenated text instead of concatenating the
46         texts itself.
47
48         * gedcom/gedcom.y: Pass complete concatenated text in end callback
49         (this causes a backward incompatibility in the end record callback!)
50
51 2002-12-04  Peter Verthez  <Peter.Verthez@advalvas.be>
52
53         * gedcom/write.c, gom/gom.c: Beginnings of write support.
54
55 2002-12-01  Peter Verthez  <Peter.Verthez@advalvas.be>
56
57         * gedcom/encoding.c (to_internal): Use the conv_buffer interface
58         from utf8/utf8-convert.c.
59
60 2002-11-30  Peter Verthez  <Peter.Verthez@advalvas.be>
61
62         * utf8/utf8-convert.c: More general conversion interface (extracted
63         from utf8-locale.c and gedcom/encoding.c).
64
65 2002-11-24  Peter Verthez  <Peter.Verthez@advalvas.be>
66
67         * gedcom/message.c: Extracted safe buffer mechanism to buffer.c
68         for reuse.
69
70 2002-11-22  Peter Verthez  <Peter.Verthez@advalvas.be>
71
72         * gom/gom_modify.c: Check whether given strings are valid.
73
74         * utf8/utf8.c: Functions for checking UTF-8 strings and computing
75         length.
76
77 2002-11-04  Peter Verthez  <Peter.Verthez@advalvas.be>
78
79         * gedcom/multilex.c, all: Use dgettext instead of gettext => no more
80         need of textdomain().
81
82 2002-11-03  Peter Verthez  <Peter.Verthez@advalvas.be>
83
84         * gedcom/multilex.c (gedcom_parse_file): Move setlocale call to
85         gedcom_init, make strdup of saved textdomain (to avoid corruption).
86
87         * all: Removed support for dmalloc (valgrind is much better and doesn't
88         require changing the sources).
89
90         * m4/gedcom.m4: Added m4 macro for configure.in support.
91
92 2002-11-01  Peter Verthez  <Peter.Verthez@advalvas.be>
93
94         * gedcom/gedcom_*.lex: A pointer with only one character between the
95         at signs is also valid.
96
97         * gedcom/xref.c (is_valid_pointer): New function (also checks for
98         maximum size).
99
100         * include/gom.h: Added links to the definitions in the Gedcom standard.
101
102         * all: update of documentation
103
104 2002-10-30  Peter Verthez  <Peter.Verthez@advalvas.be>
105
106         * gedcom/gedcom_lex_common.c, gedcom/multilex.c: Fix for line numbering
107         bug (bug 613480).
108
109 2002-10-28  Peter Verthez  <Peter.Verthez@advalvas.be>
110
111         * release 0.17.2
112           This is another test release
113
114 2002-10-27  Peter Verthez  <Peter.Verthez@advalvas.be>
115
116         * gedcom/Makefile.am: Put generated lex and yacc files also in dist.
117
118         * doc/Makefile.am: Put generated file gomxref.html also in dist (so
119         perl isn't needed at make-time).
120
121         * utf8/utf8-locale.c (convert_utf8_to_locale): Set conv_fails on total
122         conversion failure too.
123
124         * all: Further small portability fixes.
125
126 2002-10-26  Peter Verthez  <Peter.Verthez@advalvas.be>
127
128         * t/output/*: Reference output for the tests; compare the actual test
129         output to these files.
130
131 2002-10-23  Peter Verthez  <Peter.Verthez@advalvas.be>
132
133         * Makefile.inc: Portability fix: 'if ! diff ...' isn't always supported
134         by sh.
135
136         * include/Makefile.am: Portability fix: grep isn't always understanding
137         full regex syntax.
138
139         * utf8/Makefile.am, configure.in: Only link in libcharset if libiconv
140         is not used.
141
142 2002-10-21  Peter Verthez  <Peter.Verthez@advalvas.be>
143
144         * all: Further portability fixes to Makefile.am and such.
145
146 2002-10-20  Peter Verthez  <Peter.Verthez@advalvas.be>
147
148         * */Makefile.am: Fixes for using included gettext.
149
150         * intl/Makefile.in: Hack for generating libtool convenience library
151         instead of shared library.
152
153         * README: Modify at dist instead of via configure.in (GNU make is used
154         anyway).
155
156         * intl/*: Upgraded to gettext 0.10.38 (to have extra functions, such
157         as bind_textdomain_codeset).
158
159 2002-10-14  Peter Verthez  <Peter.Verthez@advalvas.be>
160
161         * gedcom/encoding.c (to_internal): Add ICONV_CONST for portability.
162
163         * utf8/utf8-locale.c: Add forgotten header string.h
164
165 2002-10-13  Peter Verthez  <Peter.Verthez@advalvas.be>
166
167         * Makefile: Require GNU make to be used -> normal makefile is then
168         GNUmakefile in top directory.
169
170         * README, doc/index.html: Generate from *.in via configure (for
171         portability).
172
173         * utf8/utf8-locale.c, utf8/libcharset/: Use locale_charset instead of
174         nl_langinfo directly, for portability.
175
176 2002-10-05  Peter Verthez  <Peter.Verthez@advalvas.be>
177
178         * release 0.17.1
179           This is a test release
180
181 2002-10-04  Peter Verthez  <Peter.Verthez@advalvas.be>
182
183         * iconv/libiconv/*: libiconv changes for ANSEL encoding.
184
185 2002-10-01  Peter Verthez  <Peter.Verthez@advalvas.be>
186
187         * ansel/ANSI_Z39.47.c: Fixes to ansel decoding and (mostly) encoding.
188
189 2002-09-28  Peter Verthez  <Peter.Verthez@advalvas.be>
190
191         * all: Portability fixes and support for libiconv.
192
193 2002-09-22  Peter Verthez  <Peter.Verthez@advalvas.be>
194
195         * gedcom/xref.c, include/gedcom.h.in: Added functions to retrieve, add,
196         link/unlink and delete cross-references.
197
198         * gedcom/gedcom_1byte.lex, gedcom/gedcom_lex_common.c: Added a function
199         to check whether a (UTF-8) string is a valid token; bypass iconv
200         conversion for this.
201
202         * gedcom/*: Fixed memory leaks reported by valgrind.
203
204 2002-09-21  Peter Verthez  <Peter.Verthez@advalvas.be>
205
206         * t/standalone.c: Close outfile *after* the last output is done...
207
208         * gedcom/gedcom_*.lex, gedcom/gedcom_lex_common.c: Workaround for
209         memory leak in flex.
210
211         * gedcom/encoding.c: Clean up environment at exit.
212
213 2002-09-15  Peter Verthez  <Peter.Verthez@advalvas.be>
214
215         * gedcom.h.in, gedcom/*, gom/*: Take care of const correctness.
216
217 2002-09-13  Peter Verthez  <Peter.Verthez@advalvas.be>
218
219         * include/gom.h: Add include file to be able to recognize __BEGIN_DECLS
220
221         * doc/make_gom_xref: Corrected 'Generated from' string.
222
223 2002-09-12  Peter Verthez  <Peter.Verthez@advalvas.be>
224
225         * release 0.17
226
227         * gedcom/gedcom_lex_common.c, gedcom/interface.c, gedcom/message.c:
228         Fixes for internationalization.
229
230         * doc/make_gom_xref, doc/usage.html: Documentation for the gedcom
231         object model.
232
233 2002-09-09  Peter Verthez  <Peter.Verthez@advalvas.be>
234
235         * gom/*: First check-in of gedcom object model.
236
237 2002-09-08  Peter Verthez  <Peter.Verthez@advalvas.be>
238
239         * all: More thorough error checking on library calls.
240
241 2002-09-01  Peter Verthez  <Peter.Verthez@advalvas.be>
242
243         * gedcom/gedcom.y: Use XREF_ANY for an association instead of XREF_INDI
244
245         * include/gedcom.h.in, gedcom/xref.c: Added XREF_ANY for when type of
246         xref_value is not known yet.  Added function gedcom_get_by_xref.
247
248 2002-08-28  Peter Verthez  <Peter.Verthez@advalvas.be>
249
250         * gedcom/interface.c: A little more checking (for duplicate
251         registration).
252
253         * gedcom/age.c, gedcom/age.h, gedcom/gedcom.y, include/gedcom.h,
254         t/standalone.c:
255         Parsing age values.
256
257 2002-08-25  Peter Verthez  <Peter.Verthez@advalvas.be>
258
259         * gedcom/xref.c: Clean up xref table at exit (not after check), or when
260         new file is parsed.
261
262         * include/gedcom.h.in, gedcom/interface.c, t/standalone.c: Added
263         extra argument to callback functions: the record/element identifier.
264
265 2002-08-16  Peter Verthez  <Peter.Verthez@advalvas.be>
266
267         * gedcom/compat.*, gedcom/gedcom.y: Moved all compatibility handling
268         functions to compat.c; let default charset depend on the program.
269
270         * t/test_script: Check for a core file.
271
272         * release 0.16
273
274         * t/dates.test, t/encoding_error.test: New tests.
275
276         * t/utf8-locale.c: Remove conversion warning at compilation.
277
278         * t/test_script: Enhancements to use script outside 'make check'.
279
280         * t/standalone.c, t/bogus.test: Parse bogus file only if enabled
281         via option.
282
283         * t/Makefile.am: Added rule to be able to perform single tests.
284
285         * gedcom/encoding.c, gedcom/gedcom_lex_common.c: Handle illegal
286         characters in to_internal (to avoid crashes).
287
288         * Lots of files: Add compability for Lifelines.
289
290         * Makefile.inc, gedcom/Makefile.am, gedcom/gedcom_lex_common.c,
291         gedcom/gedcom_date.lex:
292         Added rule that can help to avoid unnecessary recompilation of lex
293         files.  It generates a new include file only when necessary: use this
294         one in lex files.
295
296 2002-04-08  Peter Verthez  <Peter.Verthez@advalvas.be>
297
298         * t/minimal.test: Added test on a minimal GEDCOM file.
299
300 2002-03-27  Peter Verthez  <Peter.Verthez@advalvas.be>
301
302         * release 0.15
303
304         * gedcom/multilex.c: Make the use of gedcom_init() mandatory.
305
306 2002-03-17  Peter Verthez  <Peter.Verthez@advalvas.be>
307
308         * gedcom/gedcom.y: Graceful error handling on bogus input.
309
310         * t/path1.test, t/path2.test, t/pathtest.c: New tests (for the
311         GCONV_PATH environment variable).
312
313         * Moved the test program to the t subdirectory.
314
315         * standalone.c, doc/usage.html: Use of the gedcom_init() function.
316
317         * gedcom/multilex.c, gedcom/encoding.*: Added gedcom_init() function
318         to avoid problem with GCONV_PATH environment variable (see note in
319         gedcom/encoding.c).
320
321 2002-01-22  Peter Verthez  <Peter.Verthez@advalvas.be>
322
323         * gedcom/gedcom.y, gedcom/compat.c, gedcom/compat.h: Added
324         compatibility handling for ftree.
325
326 2002-01-20  Peter Verthez  <Peter.Verthez@advalvas.be>
327
328         * release 0.14
329
330         * restructured the test setup
331
332 2002-01-19  Peter Verthez  <Peter.Verthez@advalvas.be>
333
334         * gedcom.h: Renamed to gedcom.h.in: at configure, the VERSION
335         variables are substituted and the file gedcom.h is written
336
337         * utf8-locale.c: Added parameter to conversion from UTF-8 to locale,
338         to return number of conversion failures.
339
340 2002-01-16  Peter Verthez  <Peter.Verthez@advalvas.be>
341
342         * gedcom/xref.c: Make sure that the 'string' member of an xref always
343         contains a valid string.
344
345         * gedcom/gedcom.y: in use of INVALID_TAG: tag is struct instead of
346         simple string.
347
348         * gedcom/multilex.c (gedcom_parse_file): setlocale returns a string
349         in static storage, so must use strdup and free afterwards.
350
351 2002-01-15  Peter Verthez  <Peter.Verthez@advalvas.be>
352
353         * gedcom/encoding.c: Separate the modification of GCONV_PATH from the
354         rest of the initialization, and let it be called before main (necessary
355         because iconv_open will only look at GCONV_PATH once, and e.g. GTK
356         calls iconv_open very early).
357
358         * gedcom/gedcom.y: Don't allow the parser to continue if the conversion
359         context couldn't be opened, even if IGNORE_ERRORS.
360
361         * gedcom/multilex.c (gedcom_parse_file): Save the old locale (in case
362         the application had set it).
363
364 2002-01-13  Peter Verthez  <Peter.Verthez@advalvas.be>
365
366         * utf8-locale.c: Example implementation for conversion UTF-8 to
367         locale.
368
369 2002-01-12  Peter Verthez  <Peter.Verthez@advalvas.be>
370
371         * more documentation...
372
373 2002-01-10  Peter Verthez  <Peter.Verthez@advalvas.be>
374
375         * doc/parser.html: Start of character set explanation.
376
377         * enhancements to Makefiles for documentation.
378
379         * gedcom/Makefile.am, gedcom/gedcom_lex_common.c: Some bugfixes for the
380         standalone lexers.
381
382 2002-01-05  Peter Verthez  <Peter.Verthez@advalvas.be>
383
384         * release 0.13
385
386         * xref.*, gedcom.y, gedcom.h: Parse and process cross-references.
387
388         * encoding.c: Bugfixes in using the hash implementation of kazlib.
389
390         * interface.h: Add a variable to the GEDCOM_MAKE_* macros, to be able
391         to have two of these macros in one statement.  Move GEDCOM_MAKE_DATE
392         to date.h.
393
394 2002-01-03  Peter Verthez  <Peter.Verthez@advalvas.be>
395
396         * gedcom.y: Bugfix for context handling of tags that are grouped in
397         the yacc file.
398
399         * gedcom.y, gedcom.h, standalone.c, interface.*: Record can also
400         have a value (e.g. the NOTE record), so extra value necessary on
401         start record callback.
402
403         * gedcom.y: Correct value of NOTE element (opt_line_item was missing
404         an action).
405
406 2002-01-02  Peter Verthez  <Peter.Verthez@advalvas.be>
407
408         * lots of files: Pass the parsed tag value (integer) together with
409         the string value in the callbacks.  For this, a separate header is
410         auto-generated, containing the #defines from bison.
411
412         * t/test_script: Return exit code from testgedcom.
413
414         * gedcom/hash.*, gedcom/encoding.*: Use hash implementation from
415         kazlib (see AUTHORS for pointer).
416
417 2001-12-31  Peter Verthez  <Peter.Verthez@advalvas.be>
418
419         * release 0.12
420
421 2001-12-30  Peter Verthez  <Peter.Verthez@advalvas.be>
422
423         * all: Added some initial documentation.
424
425         * gedcom/gedcom.y: Completed the calling of callbacks.
426
427 2001-12-29  Peter Verthez  <Peter.Verthez@advalvas.be>
428
429         * gedcom/gedcom_date.y: Added graceful fallback for date parse errors:
430         put everything as a 'date phrase'.
431
432 2001-12-28  Peter Verthez  <Peter.Verthez@advalvas.be>
433
434         * gedcom_date.*, date.*: Parsing dates via a separate yacc parser.
435
436         * gedcom/calendar/*: Calendar routines by Scott E. Lee
437
438         * gedcom.y: Added some more callbacks (not complete yet)
439
440 2001-12-23  Peter Verthez  <Peter.Verthez@advalvas.be>
441
442         * include/gedcom.h: Add some declarations so that the external header
443         can be used in C++ programs.
444
445 2001-12-22  Peter Verthez  <Peter.Verthez@advalvas.be>
446
447         * Makefile.am, gedcom/Makefile.am: Don't link libgedcom with libintl:
448         leave that to the applications.
449
450 2001-12-15  Peter Verthez  <Peter.Verthez@advalvas.be>
451
452         * release 0.11
453         Moved CVS repository to sourceforge.net (project gedcom-parse)
454
455 2001-12-10  Peter Verthez  <Peter.Verthez@advalvas.be>
456
457         * all: Use of gettext.
458
459         * gedcom/Makefile.am: Support for the lexer test programs.
460
461         * all: Moved to LGPL license.
462
463 2001-12-09  Peter Verthez  <Peter.Verthez@advalvas.be>
464
465         * gedcom/encoding.c (init_encodings): Put data directory of libgedcom
466         in the GCONV_PATH environment variable (for the ANSEL encoding).
467
468         * release 0.10
469
470         * all: Full move to autoconf/automake.
471
472 2001-12-08  Peter Verthez  <Peter.Verthez@advalvas.be>
473
474         * all: Further specification of interface: message handler.
475         Start of specification of callbacks.
476
477 2001-12-03  Peter Verthez  <Peter.Verthez@advalvas.be>
478
479         * Uploaded release 0.9 to genes at SourceForge.
480
481 2001-12-02  Peter Verthez  <Peter.Verthez@advalvas.be>
482
483         * release 0.9
484
485         * gedcom.h, Makefile: Add dmalloc testability.
486
487         * all: Reset the state properly for parsing new files.
488
489         * release 0.8
490
491         * encoding.c: Specify explicitly the output buffer for to_internal:
492         used to put pointers and tags in different output buffer.
493
494         * gedcom_lex_common.c: New file containing all lex actions (is common
495           for all lexers).  Better checks for maximum lengths.
496
497 2001-12-01  Peter Verthez  <Peter.Verthez@advalvas.be>
498
499         * gedcom_*.lex: Return level number together with OPEN token.
500
501 2001-11-27  Peter Verthez  <Peter.Verthez@advalvas.be>
502
503         * gedcom.enc: Adapt default iconv encoding names (to also support
504         glibc-2.1.x).
505
506 2001-11-25  Peter Verthez  <Peter.Verthez@advalvas.be>
507
508         * all: added proper copyright notice (copyright to the Genes
509         Development Team)
510
511         * release 0.7
512           Uploaded to genes at SourceForge.
513
514         * all: general cleanup, making sure everything is in CVS
515
516 2001-11-24  Peter Verthez  <Peter.Verthez@advalvas.be>
517
518         * release 0.6
519
520         * ANSEL decoding added.
521
522 2001-11-23  Peter Verthez  <Peter.Verthez@advalvas.be>
523
524         * release 0.5
525
526         * Now with encoding mapping via configuration file.
527
528 2001-11-16  Peter Verthez  <Peter.Verthez@advalvas.be>
529
530         * release 0.4
531
532         * Now with full unicode support.
533
534 2001-11-04  Peter Verthez  <Peter.Verthez@advalvas.be>
535
536         * release 0.3
537
538         * Compatibility mode implemented.
539
540 2001-11-01  Peter Verthez  <Peter.Verthez@advalvas.be>
541
542         * release 0.2
543
544         * Now with full error handling of tags and subtags.
545
546         * release 0.1
547
548         * Now covering the entire GEDCOM spec, without error handling.
549