aboutsummaryrefslogtreecommitdiff
path: root/lib/enca/ChangeLog.prelib
blob: 14bbb749d21a90bb83057264b57e332b6e10ee87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
 # This is ChangeLog for changes before enca became a library.
 # The new ChangeLog starts after that.
 # Unfortunately, there's no ChangeLog for the transition.

 # Note: EVERYTHING as changed file means global change, i.e. `every file where
 # this change was applicable was changed'.

2002-06-23 Yeti <yeti@physics.muni.cz>
    * src/texts.c, src/common.h, src/options.c: define e_isatty() as portable
      isatty in common.h, print help instead of wainting for input when stdin
      is a tty

v0.9.4
2002-03-04 Yeti <yeti@physics.muni.cz>
    * src/printresult.c: fixed print_detailed_report() not to truncate charset
      names in the table
    * src/convert.c: put a no-op file_seek() after file_write() to make
      subsequent file_read() work correctly (an ISO C ,feature`, not Enca's)

2002-03-03 Yeti <yeti@physics.muni.cz>
    * src/convert.c: fixed convert_builtin() to convert whole files, not just
      first 64kB

2001-08-16 Yeti <yeti@physics.muni.cz>
    * src/options.c: removed strange `:' from start of short_options

2001-08-01 Yeti <yeti@physics.muni.cz>
    * src/common.h: defined e_free(x) to set x to NULL after freeing it
    * src/EVERYTHING: formal changes

v0.9.3
2001-07-16 Yeti <yeti@physics.muni.cz>
    * configure.in, m4/librecode.m4, m4/iconv.m4, src/Makefile.am,
      src/epress.c: conversion libraries are put into CONVERTER_LIBS, so
      epress doesn't link with them (they are included in enca_LDADD), LIBS
      is not modified by librecode and iconv tests
    * iconvcap.c: added program_name definition for the case it would link
      with librecode (shouldn't happen)
    * configure.in: added AC_AIX
    * Makefile.am: added forgotten m4/crash-me to EXTRA_DIST
    * src/encnames.c: --list=encodings prints only `known' encodings
    * Makefile.am: added topline.sh (needed by update target) to dist
    * updated docs

2001-07-15 Yeti <yeti@physics.muni.cz>
    * src/lang.c: fixed giving random results due to usage of unitialized
      memory in get_charsets()
    * src/printresult.c: fixed using double instead of int for ambiguous and
      multibyte flags in T_EncDetails structure
    * src/guess.c, src/printresult.c, src/printresult.h: added
      GUESS_QP_RESOLVED flag to be able to print logically consistent -d output
      in case of quoted printables
    * src/fileio.c, configure.in: include sys/stat.h unconditionally, we
      cannot compile w/o it anyway, warning added to configure
    * src/common.h: include both string[s].h and memory.h. instead of just one
      of them
    * src/common.h: define PACKAGE, VERSION, DEFAULT_EXTERNAL_CONVERTER and
      DEFAULT_CONVERTER_LIST when don't have config.h to compile w/o it
    * src/options.c: fixed too many \n's in feature list
    * configure.in, src/texts.c: added isatty() and ttyname() test, defined
      stdout_isatty(), pager is run only when we are able to positively say
      stdout is a tty

2001-07-14 Yeti <yeti@physics.muni.cz>
    * src/options.c, src/common.h, src/texts.c: made USE_PAGER a feature +pager
    * m4/recode-bugs.m4: added TeX/..ISO-8859-2 recode crash test
    * m4/iconv.m4, src/convert_iconv.c: added ICONV_ARG2_CONST test
    * m4/typevar.m4, src/common.h, configure.in: removed the no longer needed
      long long int test, mere long int is used for mathint
    * configure.in: prepend "-Wall -pedantic" before CFLAGS when compiles is
      GCC
    * Makefile.am: add a new debian changelog entry when version or release
      changes, otherwise update time of the current entry

2001-07-13 Yeti <yeti@physics.muni.cz>
    * src/fileio.c, src/convert_recode.c: removed the no-buffering tricks
      making it slightly faster on modern GNU/Linux, but much slower everywhere
      else
    * src/EVERYTHING: put back the #ifdef HAVE_CONFIG_H stuff
    * src/texts.c: fixed typo expand_char() -> fputc() in poor man's compress
    * src/common.c: added const to stpcpy() *p declaration to keep qualifiers
    * m4/pager.m4, Makefile.am, configure.in, src/texts.c: test whether less
      accepts -F, possibility to disable pager at all

v0.9.2
2001-07-13 Yeti <yeti@physics.muni.cz>
    * src/guess.c: fixed reporting `7bit ASCII characters' after a successfull
      detection of a 7bit encoding (TeX, UTF-7)
    * src/convert_recode.c: fixed typo HAVE_RECODEEXT_H -> HAVE_RECODEXT_H

2001-07-12 Yeti <yeti@physics.muni.cz>
    * src/filters.c: fixed hdata->eid's comparsion before their initialization
      in lang_hook_2cs() (so the hook was never run)
    * src/convert_recode.c: more correct handling of the situation when we
      realise we cannot seek in temporary file during recode failure recovery
    * debian/Makefile.am, m4/Makefile.am, Makefile.am, configure.in: removed
      the first two, debian/ generated by toplevel Makefile, m4/ is just
      distributed
    * Makefile.am, src/Makefile.am: replaced $< with literal file names, some
      `make's don't always substitute first dependence name
    * src/epress.c: added program_name definition to placate librecode
    * src/common.h: stdlib.h and unistd.h are included unconditionally (we
      depend on them anyway)
    * src/texts.c: replaced the `is pager less?' test with a better one
    * configure.in, acconfig.h, m4/EVERYTHING: put descriptions directly to
      AC_DEFINE[_UNQUOTED]'s, almost get rid of acconfig.h
    * src/EVERYTHING: don't trust make passing `-DHAVE_CONFIG_H -I..' to
      compiler, #include "../config.h" unconditionally (we depend on it anyway)

2001-07-10 Yeti <yeti@physics.muni.cz>
    * debian/, Makefile.am: created debian/ and modified the Makefile.am to
      include it

2001-07-09 Yeti <yeti@physics.muni.cz>
    * configure.in, enca.spec.in: added MAINTAINER variable which can be used
      in rpm spec and debian/ files
    * src/texts.c: fixed wrong prototype putchar() -> expand_char() when
      no compressor is available
    * src/texts.c, acconfig.h, configure.in: compressed texts are displayed
      through a pager (if available)
    * autogen.sh, README.devel: added and make a note about it

v0.9.1
2001-06-25 Yeti <yeti@physics.muni.cz>
    * src/guess.c: fixed possible overflow in UCS-4 test (slightly changing
      what gets recognized as UCS-4)
    * src/guess.c: implemented unusual byteorders (3412 and 2143) tests using
      a single little-endian ucs-4 test what_if_it_was_ucs4() and shuffling
      bytes around shuffle_byte_order(), the same for UCS-4 EOL type tests
    * src/common.h: defined PVAR(f, v) [for debugging]
    * updated docs
    * packaged

2001-06-24 Yeti <yeti@physics.muni.cz>
    * src/encnames.h, src/encnames.c, src/guess.c: renamed SURF_PER_12[34] to
      more logical SURF_PER_[43]21

2001-06-02 Yeti <yeti@physics.muni.cz>
    * src/efilter.c, src/Makefile.am, src/texts.c, src/common.h: created
      efilter.c (filter making text files to compress better) and adding
      reverse filter to texts.c
    * m4/tolower.m4, configure.in, acconfig.h, src/common.h: define our own
      implementation of tolower and similar unconditionally
    * improved various docs
    * BUGS, Makefile.am: generated from manual page section of the same name
    * src/efilter.c, src/Makefile.am, src/texts.c, src/common.h: efilter was
      funny experiment but not much useful, removed again

2001-06-01 Yeti <yeti@physics.muni.cz>
    * src/getopt.c, src/getopt1.c, src/getopt_long.c, src/Makefile.am: removed
      the first two and made getopt_long.c non-generated, removed some unneeded
      stuff
    * src/common.c: put broken-{m,c,re}alloc fixes into conditionals (but no
      autoconf tests---I don't believe such a broken systems really do exist)

2001-05-28 Yeti <yeti@physics.muni.cz>
    * src/options.c: fixed prepend_env() segfault, improved diagnostics
    * revised temporary files usage, removed `/tmp bug' from docs
    * convert.c, convert_iconv.c, convert_recode.c: renamed tmpfile variable
      (synonymous to ISO function name) to tempfile, better not to tempt fate
    * script/b-map, script/b-cstocs, script/b-recode: added umask 077

2001-05-27 Yeti <yeti@physics.muni.cz>
    * src/encnames.c, src/encnames.h, man/enca.1: checks that all characters
      in charset/surface names are from some set of allowed characters
    * src/common.c: added hack for systems that fail on malloc(0) and similar

2001-05-20 Yeti <yeti@physics.muni.cz>
    * src/epress.c: forgotten [ISO C99] int16_t changed to int
    * src/filters.c, src/filters.h: added universal decide-between-2-cs hook
    * src/lang_cs.c, src/lang_sk.c: modified to use the universal hook,
      some formal changes
    * src/lang_ru.c: added maccyr/cp1251 hook (via the universal)
    * src/common.h, src/enca.c: sensible exit code (0, 1 or 2) returned
    * src/convert.c: convert() returns ERR_* error codes instead of just 0, 1
    * src/common.c, src/convert.c, src/convert_iconv.c, src/encnames.c,
      src/fileio.c, src/lang.c, src/locale_detect.c, src/options.c,
      src/texts.c: returned 2 on troubles
    * updated docs

2001-05-18 Yeti <yeti@physics.muni.cz>
    * src/license.c, src/license.h, src/texts.c, src/texts.h: renamed the
      former to the latter
    * src/epress.c, src/texts.c: implemented bzip2 and gz interface
    * m4/compress.m4, configure.in: added tests for libbz2 and libz, the best
      one found is used
    * configure.in, src/Makefile.am, src/options.c: COPYING.c and HELP.c are
      generated by epress and just linked with enca
    * src/Makefile.am: put getopt_long.c into BUILT_SOURCES
    * src/lang_ru.c, src/unicodemap.c, src/encnames.c: added maccyr charset
    * Makefile.am: added hook to delete BUILT_SOURCES before making dist

2001-05-17 Yeti <yeti@physics.muni.cz>
    * src/fileio.c: temporary files are created with umask 077

2001-05-06 Yeti <yeti@physics.muni.cz>
    * src/epress.c, src/COPYING.h, src/Makefile.am: created license compressor
    * src/license.c, src/options.c: license decompression and printing

2001-05-01 Yeti <yeti@physics.muni.cz>
    * m4/librecode.m4, m4/recode-bugs.m4, m4/long-text.l2: put test for bugs to
      recode-bugs.m4 (four bugs are checked, any will launch the warning)

2001-04-12 Yeti <yeti@physics.muni.cz>
    * m4/librecode.m4, configure.in: added a test for broken recode (no
      workaround [known], just prints a big warning message)

v0.9.0
2001-03-26 Yeti <yeti@physics.muni.cz>
    * just packaged

2001-03-25 Yeti <yeti@physics.muni.cz>
    * src/convert.c: fixed reading only first file block in copy_and_convert()
    * configure.in, src/EVERYTHING: memory.h test added, string/strings/memory
      header file inclusion put into common.h
    * src/fileio.c: fixed file_setvbuf() and file_open() (not enough magic)
    * src/convert_recode.c: fixed not opening original file
    * configure.in, src/convert_recode.c: added recodext.h test, is used when
      available for setting diacritics_only and ascii_graphics flags
    * src/convert_iconv.c: fixed not opening original file
    * src/convert_iconv.c: fixed writing no output in iconv_one_step()
    * src/convert.c: fixed intermixed child and parent process in
      convert_external()
    * src/fileio.c: added file_getline() requiring much less system calls
      than GNU libc's fgets()
    * src/locale_detect.c: fixed segfault when language detection failed
    * m4/tools.m4, configure.in, acconfig.h, src/options.c: consolidated
      autoconf macros regarding external converters
    * man/enca.1: minor corrections

2001-03-24 Yeti <yeti@physics.muni.cz>
    * src/encnames.c: added quoted printable surface
    * src/guess.c: integrated quoted printable into the guessing process
    * src/encnames.c, src/options.c: added print_public_surfaces() wrapper to
      allow printing --human-readable list of surfaces
    * src/lang_cs.c, src/lang_ru.c, src/lang_sk.c: replaced slovak and russian
      statistical data with some new (hope better), some hardcoded array sizes
      now computed from sizeof()
    * iconvcap.c: cosmetical changes

2001-03-20 Yeti <yeti@physics.muni.cz>
    * src/fileio.c, src/fileio.h, src/common.c, src/common.h: T_Buffer type
      moved from fileio to common
    * src/lang.c, src/lang.h, src/lang_cs.c, src/lang_ru.c, src/lang_sk.c:
      use the new T_Buffer type
    * configure.in: removed now-unused tests
    * src/EVERYTHING: removed redundant header inclusion, ensured satisfying
      header dependencies, try to use strings.h when string.h is not avaialble
    * src/guess.c: fixed not initializing memory buffer
    * src/options.c: exchagned -E and -C option letters (incompatibility!)
    * src/guess.c: implemented quoted printable recognition (unused now)

2001-03-19 Yeti <yeti@physics.muni.cz>
    * src/fileio.c, src/fileio.h: some more magic employed, only initiated
      can use them now
    * src/convert.c, src/convert_iconv.c, src/convert_recode.c, src/lang.c:
      changed to use the new file i/o interface
    * src/convert_iconv.c: fixed a memory leak

2001-03-18 Yeti <yeti@physics.muni.cz>
    * src/fileio.c, src/fileio.h: finished implementation
    * src/common.c, src/common.h: removed stuff belonging to fileio
    * src/locale_detect.c, src/guess.c, src.guess.h, src/lang.h, src/enca.c,
      src/convert.h: changed to use the new file i/o interface
    * src/guess.c: UCS tests check remainder of file length instead of buffer
      position (which is still used as a fallback in case of stdin)

2001-03-17 Yeti <yeti@physics.muni.cz>
    * configure.in, script/b-cstocs, script/b-cstocs.in, script/b-map,
      script/b-map.in, script/b-recode, script/b-recode.in, script/Makefile.am:
      (I'm stupid) reverted the last change
    * src/fileio.c, src/fileio.h: created (unique file i/o interface, at last)

2001-03-12 Yeti <yeti@physics.muni.cz>
    * m4/tools.m4: AC_MSG_WARN is used to print warnings
    * m4/iconv.m4: iconvenc.h is always created (the dark side is that iconv
      usability is no longer cached)
    * m4/tools.m4, configure.in, script/b-cstocs, script/b-cstocs.in,
      script/b-map, script/b-map.in, script/b-recode, script/b-recode.in,
      script/Makefile.am: external converters are located including path and
      it's then used for configure-time substitution in the scripts

v0.9.0pre5
2001-03-12 Yeti <yeti@physics.muni.cz>
    * src/common.h, src/common.c, src/encnames.h, src/guess.c, src/options.c,
      src/printresult.c, src/convert.c: eliminated rest of Settings, replaced
      by module methods, except read_limit which is still global
    * enca.spec.in: various improvements (see the spec file changelog)

2001-03-11 Yeti <yeti@physics.muni.cz>
    * src/EVERYTHING: Settings.ProgName and Settings.Verbose made globals:
      program_name and verbosity_level
    * src/common.h, src/options.c, src/convert.c: Settings.ExtConverter made
      convert.c module global extern_converter, set by set_external_converter()
    * src/common.h, src/options.c, src/printresult.c: Settings.PreFName made
      printresult.c module global extern_converter, set by
      print_set_prefix_filename()

2001-03-10 Yeti <yeti@physics.muni.cz>
    * enca.spec.in: use global cache file

2001-03-09 Yeti <yeti@physics.muni.cz>
    * Makefile.am: (generated!) enca.spec included to distribution (rpm -tb)

2001-03-02 Yeti <yeti@physics.muni.cz>
    * man/enca.1: spell-checked
    * src/options.c: corrected available lists in --list= help

2001-02-28 Yeti <yeti@physics.muni.cz>
    * src/lang.c: language is printed in lang_init() when verbose
    * src/guess.c: all Latin, Cyrillic and Greek letters have equal weight in
      UCS-2 and UCS-4 tests
    * src/guess.c: fixed bad default endianess and initial makes-sense-check in
      UCS-4 test
    * src/printresult.c: UCS-* rating is printed, too

v0.9.0pre4
2001-02-26 Yeti <yeti@physics.muni.cz>
    * just packaged

2001-02-25 Yeti <yeti@physics.muni.cz>
    * src/options.c, src/encnames.c, src/printresult.c: conversion from output
      type to what-name is done in encnames.c, introduced new output types
      and what-names ALIASES and NONE, --name=aliases prints list of aliases,
      removed --list=aliases, --list=encodings is sensitive to value of --name=
      instead, --list=names lists all valid --name= values, default output type
      is now NONE (initialized after option processing when needed)
    * updated rest of docs
    * configure.in, m4/libm.m4: fixed `make install' fail due to dependance on
      libtool: get rid of libtool dependance, created our own math library
      test

2001-02-24 Yeti <yeti@physics.muni.cz>
    * configure.in, acinclude.m4, m4/: removed acinclude.m4, created m4 dir and
      put the definitions there

v0.9.0pre3
2001-02-23 Yeti <yeti@physics.muni.cz>
    * src/options.c: added --list=lists listing
    * NEWS: updated
    * man/enca.1: partly updated

2001-02-22 Yeti <yeti@physics.muni.cz>
    * configure.in: added feature and failure lists
    * acinclude.m4: cleanup, defined some *_ok variables for feature list,
      fixed some `! test ... = ...' to `test ... != ...'
    * srcipt/b-cstocs, srcipt/b-map, srcipt/b-recode: `#!/bin/bash' changed
      to `#! /bin/sh' (even if I'm not sure whether the scripts are 100%
      sh-compatible)
    * iconvcap.c: initial ASCII test changed back to ISO-8859-1 since the
      former is not supported on some systems (SunOS, IRIX, ...) having
      otherwise-usable iconv
    * src/getopt_long.c: generated from getopt.c and getopt1.c, but distributed
      (mainly because automake is unable to understand something we have in
      LIBOBJS can be generated...)

v0.9.0pre2
2001-02-22 Yeti <yeti@physics.muni.cz>
    * configure.in, src/Makefile.am: merged src/getopt.c and src/getopt1.c to
      src/getopt_long.c to allow simple AC_REPLACE_FUNC() be used for
      getopt_long optional build
    * acinclude.m4: simplified iconv test and added check for libiconv

2001-02-21 Yeti <yeti@physics.muni.cz>
    * Makefile.am: corrected iconvconf.h to iconvenc.h
    * src/options.c: fixed undefined and misused ENCA_ENV_VAR when we don't
      have wordexp() to parse it
    * acinclude.m4: iconvenc.h is always created since I'm not able to explain
      automake we don't need it when we don't have iconv

v0.9.0pre1
2001-02-20 Yeti <yeti@physics.muni.cz>
    * src/convert.c: trivial conversions from ASCII are carried out in built-in
      converter
    * src/EVERYTHING: cleaned terminology encoding vs. charset; encoding means
      (charset,surface) pair
    * src/options.c: converter names are case sensitive again
    * config.h is included only when HAVE_CONFIG_H
    * iconvenc.nul.h, acinclude.c, src/encnames.c: iconvenc.nul.h merged into
      encnames.c (neede only there when !HAVE_ICONV)
    * configure.in, src/getopt.c, src/getopt.h, src/getopt1.c, src/options.c:
      added GNU getopt so long options can be used everywhere (needs testing)
    * src/options.c: -m as complement to -M resets affected options to defaults

2001-02-19 Yeti <yeti@physics.muni.cz>
    * src/common.h, src/options.c, src/printresult.c: added iconv name output
      type, `-i' (only when HAVE_ICONV)
    * src/options.c: `-n' changed to `-e'
    * src/options.c: output types (except `-x') can be specified as -n NAME
    * iconvcap.c: updated for the new encodings and changed ICONV_ prefix to
      ICONV_NAME_, also changed the suffixes to pure alphanumeric, ISO-8859-1
      test changed to ASCII
    * src/convert_iconv.c: updated to the new encoding/surface model
    * src/guess.c: try to detect swapped UCS-2 from the first byte pair, too
    * src/options.c: pointer woodoo to comply ISO C in print_some_list(): one
      more level of indirection in abbreviation table data
    * src/options.c, src/encnames.c: iconv name output type defined always, but
      when iconv names are not available error message is printed instead
    * iconvconf.h, iconvenc.h: the former renamed to the latter
    * iconvenc.h.nul: created. contains all iconv names defined to NULL
    * acinclude.m4, src/encnames.c, src/convert_iconv.c: iconvenc.h is either
      successfully generated by iconvcap or copied from iconvenc.h.nul so it
      always exists and is always #included
    * configure.in, src/options.c: getopt.h test (defines getopt_long(), etc.)
    * src/common.c: expand_abbreviation() returns pointer to whole abbreviation
      structure so it's possible to fetch the expanded name, too; all callers
      changed
    * script/bcstocs, script/brecode, script/b-cstocs, script/b-recode: the
      first two renamed to the second two
    * script/b-map: created. perl `map' wrapper

2001-02-18 Yeti <yeti@physics.muni.cz>
    * src/common.c: e_tmpfd() now returns empty string a file name when fails
    * src/options.c: max read limit increased to 16MB
    * src/options.c: default converter list changed, now is
      "built-in,librecode" for +librecode-interface, [+-]iconv-interface
      "built-in,iconv" for -librecode-interface, +iconv-interface
      "built-in" for -librecode-interface, -iconv-interface
    * src/convert_recode.c: cleaned-up to use the new encoding/surface model
    * src/convert.c, src/convert_common.h, src/convert_recode.c: request
      formatting (either for printing or for recode requests) function
      format_request_string()
    * src/convert_recode.c: temporary copy of original file is not deleted
      when rescue of damaged original fails (what a paranoia!)
    * src/common.c: e_fopen() and e_fclose(), fopen() and fclose() wrappers,
      unsed in various places
    * src/EVERYTHING: perror(NULL) changed to perror("") since some C libraries
      don't understand the former to print empty prefix string
    * src/encnames.c, src/options.c: added `surfaces' to --list option
    * src/convert.c: valid converter names are printed one per line
    * src/encnames.c: added iconv name to T_EncInfo, all defined to NULL when
      iconv interface is not build
    * src/common.c: implemented abbreviation searching expand_abbreviation()
    * src/options.c: print_some_list() uses the new abbreviation engine
    * src/convert.c: add_converter() uses the new abbreviation engine (needed
      some data types shake-up)
    * src/lang.c: got rid of `initialization discards qualifier...' warnings
      by shaking up with the consts (no functionality changed)

2001-02-17 Yeti <yeti@physics.muni.cz>
    * src/common.h: surface type formalized to surfint (instead of uint16)
    * src/encnames.c: implemented surface <-> name conversion
    * src/encnames.c, src/guess.c: changed UCS surfaces to recode style
    * src/options.c, src/enca.c: updated parse_x_arg(), removed
      dull-converter-like beahviour
    * src/locale_detect.c: get rid of str[c]spn() (they are ISO C, but autoscan
      tries to convince me I should check for them), flag-table approach is
      more efficient anyway
    * src/common.c: commented out strstrcount() (not needed)
    * src/encnames.c, src/encnames.h: empty surface SURF_REMOVE (to get only
      "/" as surface name) (dirty)

2001-02-14 Yeti <yeti@physics.muni.cz>
    * src/options.c: option letter space polluted by various listing options
      cleaned by introducing --list=WORD (incompatible with previous -l usage)
    * src/encnames.c: print_encoding_aliases() prints list of accepted encoding
      aliases (`recode -l' style)
    * src/encnames.c: encodings sorted alphabetically (by canonical name)
    * src/lang.c, src/lang_cs.c, src/lang_sk.c, src/lang_ru.c: ability to
      print what regular encodings belong to this particular language

2001-02-12 Yeti <yeti@physics.muni.cz>
    * src/lang.c: fixed not initializing language filter report for language
      `none'
    * src/encnames.h, src/encnames.c: introduced ENCF_MULTI flag marking
      multibyte encodings
    * src/printresults: heavily improved details (but still misses surfaces)
    * src/options.c: file name is printed with details except when user
      specifically asks not to print it
    * src/options.c: help texts updated
    * src/encnames.c, src/printresults.c: cstocs names of encodings not known
      to it changed to ???, but still printed the same in details
    * src/defaults.h: removed. all definitions moved to appropriate C files
      (or common.h)
    * src/encnames.c, src/options.c, src/prinresult.c: removed option `-g'
    * src/encnames.c: presqueezed aliases replaced by normal, we now squeeze
      names when needed (with hashing it's OK), also changes canonical names
    * config.h.top, configure.in: removed the former and add -D_GNU_SOURCE
      directly to CFLAGS
    * configure.in: removed warnings
    * configure.in: integer type sizes tested only when system doesn't provide
      stdint.h (and int's default changed to ISO C minimum)
    * configure.in, acinclude.h: moved my tests to the latter (newly created)
      to make the former more readable
    * guess.c: TEX_* and UTF_* defines moved to appropriate functions (as const)
    * guess.c: fixed missing print_flags_or() for language hooks (from ????)

2001-02-11 Yeti <yeti@physics.muni.cz>
    * src/encnames.c: hashing is used to find encoding names
    * src/options.c: fixed not recognizing output encoding (from 2000-02-02)
    * src/unicodemap.c: `-l' prints each group on separate line

2001-02-10 Yeti <yeti@physics.muni.cz>
    * src/guess.c: handle correctly case when a language has only one encoding
    * src/guess.c: multibyte tests use count table for fast rejecting
    * src/guess.c: surface detection, eol_surface()

2001-02-08 Yeti <yeti@physics.muni.cz>
    * src/lang_ru.c, src/encnames.c, src/unicodemap.c: added IBM 866 charset
    * src/filters.h: made ibm866 filter alias to keybcs2 filter (they're
      identical)
    * src/guess.c: saved stdin is not restored and `up' is not recomputed when
      nothing was filtered out

2001-02-06 Yeti <yeti@physics.muni.cz>
    * src/detect_lang.c, src/locale_detect.c: renamed the former to the latter
    * src/filters.c, src/filters.h, src/lang_cs.c: first two created (language
      filter repository) and all box-drawing filters moved there
    * src/filters.c: added bow-draing filters for more encodings
    * src/common.h, src/options.c, src/printresult.c: implemented -n output
      type (prints `canonical' encoding name used internally in enca)
    * src/lang_sk.c, src/lang_sk.h, src/lang_ru.c, src/lang_ru.h, src/lang.c,
      src/encnames.c, src/unicodemap.c: added Slovak and Russian languages and
      appropriate encodings
    * src/unicodemap.c: introduced the idea of compatible encodings; LATIN2
      and CYRILLIC groups defined
    * all headers: revised header file dependencies
    * src/lang.c, src/locale_detect.c: implemented the notion of no
      language---when user sets language to `none' no regular encodings are
      processed (so when you say `-UL none' only pure ascii gets recognized)
    * src/options.c: fixed broken `-P' (an old bug)

2001-02-05 Yeti <yeti@physics.muni.cz>
    * src/lang.c, src/lang.h, src/lang_cs.c, src/lang_cs.h: created the first
      two and moved all regular encoding routines to them
    * src/options.c: implemented language settings (added Language to Settings)

2001-02-04 Yeti <yeti@physics.muni.cz>
    * src/unicodemap.c: is_subset_consistent() now uses translation table for
      checking
    * src/guess.c: incorporated multibyte encodings into the guessing process
    * src/guess.c: implemented an absolute likehood test of the applied to the
      relative winner

2001-02-03 Yeti <yeti@physics.muni.cz>
    * src/common.c, src/common.h: introduced type flagint for tables of flags
      (defined as short int), all callers changed
    * src/options.c: fixed accepting invalid option values, ReadLimit must be
      a multiple of 4 (to make UCS tests more reliable)
    * src/guess.c, src/printresult.c: added number of 8bit's (up) to details
    * src/guess.c: finished is_valid_utf8(), is_valid_utf7(), looks_like_tex(),
      looks_like_ucs2() and looks_like_ucs4() tests (except surfaces)

2001-02-02 Yeti <yeti@physics.muni.cz>
    * src/unicodemap.c: added many missing characters to maps
    * src/unicodemap.c: shortened maps by starting them from first character
      that doesn't map to itself
    * src/options.c: finally removed old dull-conversion syntax
    * src/options.c, configure.in: long `GNU style' options---when
      getopt_long() function is available, configure test added
    * src/options.c, configure.in: program_invocation_short_name is used when
      offered by system, otherwise strip_path() is used to make it
    * src/options.c, configure.in: value of environment variable ENCAOPT is
      prepended before command line options---when wordexp() function is
      available, configure test added

2001-02-01 Yeti <yeti@physics.muni.cz>
    * src/EVERYTHING: encoding are no longer identified by name, but integer
      eid is used; T_Encoding contains---beside eid---surface, but it's not
      used for anything yet
    * implemented name squeezing and alias recognition---almost any sensible
      (and a whole bunch of stupid) encoding identifier is recognized
    * introduced new, less stupid, `canonical' names---passed to external
      converter and looked-up faster than the others
    * src/guess.c, src/enca.c, src/printresult.c: result is passed as
      T_Encoding type
    * src/guess.c, src/printresults.c, src/lang_cs.c: print implemented as
      `object', guess details are fed by different functions when needed
      (no globals and circular dependencies anymore)
    * src/printresults.c: mapping from output type to encoding name is used
      instead of ugly switch ()
    * src/unicodemap.c: character 0xa4 from koi8cs2 converted to tilde (0x7f)
    * src/options.c: refuse to serve as a dull converter when input encoding
      is not known to us
    * src/common.c, configure.in: implemented stpcpy() when not provided by
      system (configure test added)
    * src/guess.c, src/enca.c: 7bit ascii is no longer discriminated and no
      longer causes enca return nonzero error code

2001-01-30 Yeti <yeti@physics.muni.cz>
    * src/langdata_cs.c, src/langhook_cs.c, src/lang_cs.c: the first two merged
      to the third containing [almost?] all language specific stuff

2001-01-29 Yeti <yeti@physics.muni.cz>
    * src/encnames.c: created. (language independent encoding name handling)

2001-01-28 Yeti <yeti@physics.muni.cz>
    * src/common.h, configure.in: tests for stdint.h and integer type sizes
      used to define uint16 and uint32
    * src/unicodemap.c: changed map storage type to uint16 thus saving several
      kilobytes, removed need for an empty last table
    * src/guess.c: added looks_like_ucs2(), looks_like_ucs4() and partially
      looks_like_utf7()

2001-01-27 Yeti <yeti@physics.muni.cz>
    * src/guess:c reimplemented look_like_TeX() in a more efficient way
    * src/EVERYTHING: static file globals used only in one function moved into
      the appropriate function
    * man/enca.1: made more human readable, different macros are used

2001-01-26 Yeti <yeti@physics.muni.cz>
    * src/detect_lang.c, src/detect_lang.h: detect_lang() accepts string
      parameter now
    * src/guess.c: implemented utf-8 parse test is_valid_utf8() and
      (La)TeX-encoded accents test look_like_TeX()

2001-01-25 Yeti <yeti@physics.muni.cz>
    * src/detect_lang.c, src/detect_lang.h, src/Makefile.am, src/defaults.h:
      guessing user's preferred language from locale (not used yet)
    * configure.in, acconfig.h: implemented check for locale.alias

v0.7.7
2001-01-01 Yeti <yeti@physics.muni.cz>
    * e_read4() now consistently sets number of bytes in buffer to zero even
      when reading of zero bytes is requested (seems to break nothing, but...)
    * documentation synchronized

2000-12-31 Yeti <yeti@physics.muni.cz>
    * `none' is accepted as converter name and causes clearing the converter
      list
    * finished iconv interface
    * changed some messages, hope no one parses them
    * ssize_t availability checked by configure

2000-11-29 Yeti <yeti@physics.muni.cz>
    * long long int availability is now explicitely checked by configure
    * unsigned char -> byte
    * implemented e_write4() and e_read4() that allow to specify buffer address
      and size (e_read_with_limit replaced by e_read4())
    * fixed files closed twice in copy_and_convert()
    * fixed bad return value tests for e_read() and e_write() in
      copy_and_convert()
    * implemented iconv_one_step() and enc_trans() for iconv, so it is almost
      usable on iconv-transitive (GNU) systems now

2000-11-28 Yeti <yeti@physics.muni.cz>
    * iconv transitivity is now explicitely checked by iconvcap instead of
      checking for gconv

2000-11-26 Yeti <yeti@physics.muni.cz>
    * misspelled `Europian' corrected to `European' in macce long name

2000-11-21 Yeti <yeti@physics.muni.cz>
    * fixed some nonsubstantial stuff, redundant #includes, docs and comments
      forgotten in too hastily released v0.7.6
    * convert_iconv.c separated from convert.c

v0.7.6
2000-11-20 Yeti <yeti@physics.muni.cz>
    * unicode mapping data made NULL terminated instead of fixed-length
    * discovered bug in gcc :-(
    * all upper-half-of-ascii structures promoted to 256 characters (too many
      changes to record here)
    * support for cork encoding ceased
    * help text updated and divided to sections (thus fixing warning about
      too long, ISO C violating, string)
    * get_in_enc_list() and get_converters() changed to print_* printing the
      lists, called directly from process_opt()
    * convert_recode.c separated from convert.c to make the amount of #if's
      bearable
    * encoding list made NULL terminated instead of fixed-length
    * reversed order of generating recoding table so, character with lowest
      8bit code is always outputed for synonyms (instead of highest)
    * implemented converter flags CONV_EXTERN, we do not try to recover after
      external converter failure, since it's impossible by definition
    * xlat table cache bubble sorting on use
    * man page and other documentation synchronized

2000-11-19 Yeti <yeti@physics.muni.cz>
    * a simple test suite introduced in test/ (not distributed)
    * fixed stupid || -> && bug in e_close() causing failure in pipes
    * copy_and_convert() now processes what is saved in io_buffer always when
      called on stdin (not only when recoding is done too), this fixes bug in
      conversion to the same encoding in pipe
    * fixed comparing return value of e_tmpfd() with zero (instead of -1)
      causing not calling external converter in redirection
    * stdin is always copied to stdout when we are not able to perform
      conversion, irregardles of reason
    * some error messages improved

2000-11-18 Yeti <yeti@physics.muni.cz>
    * it's up to every converter to translate cstocs encoding names to its
      native names---implemented recode's enc_trans(), others use cstocs
    * rearranged converters to work in any order as expected, implemented ERR_*
      (internal) error codes in convert.c
    * implemented -c printing list of all valid converter names
      (get_converters())
    * implemented e_tolower that cannot fail (and appropriate autoconf test)
    * split process_opt() to make less monster from it
    * error messages begin with enca file name without path (strip_path())
    * some preliminary iconv support, the converter doesn't actually exist yet
    * errorneous values of most commandline parametres no longer cause enca to
      abort
    * request cache bubble sorting on use

2000-11-16 Yeti <yeti@physics.muni.cz>
    * fixed destroying outer and request after every use
    * implemented librecode request chache optimization
    * implemented e_unlink()
    * any converter combination/order can be specified on command line with
      -E option (meaning changed!)
    * external converter failure made non-fatal

2000-11-14 Yeti <yeti@physics.muni.cz>
    * bcstocs and brecode return exit status and message is printed when it
      fails

2000-11-05 Yeti <yeti@physics.muni.cz>
    * made iconv configure test, all configure results are cached

2000-10-31 Yeti <yeti@physics.muni.cz>
    * config.h is always included first (even before system headers)

2000-10-30 Yeti <yeti@physics.muni.cz>
    * fixed freeing not allocated request in convert_recode()
    * implemented some more verbosity in converter
    * strstr() alternative moved to common.c
    * implemented strstrcount() conting occurences of needle
    * '/' is added after both in_enc and out_enc when creating recode request
      string, partially helps with touchy librecode, but sometimes it fails
      anyway
    * monstrous convert_recode() split to several functions, nevertheless
      remains monstrous

2000-10-25 Yeti <yeti@physics.muni.cz>
    * more autoconf madness

v0.7.5
2000-10-25 Yeti <yeti@physics.muni.cz>
    * strstr() defined in options.c when not provided by system library

2000-10-22 Yeti <yeti@physics.muni.cz>
    * copying policy changed to GNU/GPL version 2, explicitely, instead of
      version 2 or any later version
    * librecode autoabort feature finally disabled
    * fixed request cache initialization bug
    * fixed O_RDONLY zero/nonzero portability problem
    * convert_recode() restores file from temporary copy when librecode
      converter fails
    * encoding names are not duplicated but assigned in get_encodings()
    * heavy use of const modifier (too many changes to record here)
    * solved cyclic dependancy between langdata and langhook headers by making
      hookdata plain pointer (i.e. void*) and moving T_HookData definition
      to .c file

2000-10-18 Yeti <yeti@physics.muni.cz>
    * removed ffname_[rw]() filename wrapper in cases we cannot get stdin/stdout
      (like e_lseek())
    * stdin/stdout is internally passed as NULL (instead of empty string) so
      one can no longer call enca '' '' to make it wait for several stdin's
    * return values of recode_new_outer() and recode_new_request() are checked
    * implemented librecode request caching, outer is now global and new
      request_cache too, neverhteless caching strategy is poor
    * implemented e_strdup() (strdup()) is not ISO/POSIX) and heavily used
      instead of strlen/malloc/strcpy sequences

2000-10-15 Yeti <yeti@physics.muni.cz>
    * fixed closing stderr in e_close() (though calling it with filedescriptor 2
      would be bug anyway)
    * cleaned types of variables library functions are called with
      (unsigned long int -> size_t, etc.)
    * unsigned long long int is used when available for weight/occurence
      computations, mathint type introduced
    * cleaned names possibly conflicting with POSIX reserved names and libc
      header reserved names
    * recode_scan_request() return value is now checked for success
    * fails back to external converter when librecode cannot convert due to
      errorneous request (as one would understand from man page)
    * prints error message when conversion is impossible
    * merged all file-copying code in convert.c to copy_and_convert(),
      convert_internal_stdin() optimized out of existence
    * return codes in convert.c changed, -1 is now returned as error code only
      by low level i/o from common.c
    * get/generate_xtable() are no longer able to generate identity (not needed)

2000-10-14 Yeti <yeti@physics.muni.cz>
    * cleaned some T_GResult.boxout residua
    * addresses of language filter/hook reports printing functions passed in
      T_GResult
    * some #include <...> corrected to "..." for local files
    * corrected filter reports in SMS mode

2000-10-13 Yeti <yeti@physics.muni.cz>
    * binary filter is more drastic, requires BIN_MIN_TEXT_CHAR letters
      (instead of non-binary characters) to switch back to text mode

v0.7.4
2000-10-11 Yeti <yeti@physics.muni.cz>
    * fixed behaviour in SMS mode (mismatched if([!]Settings.SMSMode); might
      even cause coredumps?)
    * implemented box-drawing character filter filter_boxdraw_out() and put it
      into langdata_cz.c, again with interface lang_filter(); not run in SMS
      mode (printresults.c updated accordingly)

v0.7.3
2000-10-08/09 Yeti <yeti@physics.muni.cz>
    * fixed reading only 4096 bytes from pipe (by a crude way, even if trying to
      lower number of system calls as much as possible) from 0.7.1
    * regenerated data (hope last time) and realized pair/... based guessing
      is nonsense
    * implemented filter that filters out blocks of probably binary data (stdin
      is saved when conversion is required), filter_binary_out() number of
      filtered characters is printed by -d
    * stdin is copied to stdout when its encoding is unknown (much more logical,
      but can break existing scripts)

v0.7.2
2000-10-05 Yeti <yeti@physics.muni.cz>
    * corrected F_EMPTY message (F_EMPTY now really means file is empty)
    * second best is marked in -d output by `-' (added p_esec to T_GResult)

2000-10-04 Yeti <yeti@physics.muni.cz>
    * *_cs filenames corrected to *_cz (Czechoslovakian -> Czech)
    * lang_hook() divided to interface lang_hook() and lang_hook_stz() doing
      the real work (preparation for more langhooks)
    * information about active language hooks saved in active_hooks (for
      printing)
    * perhaps solved language hook info printing dependency (when -d): new
      function print_lang_hook_data() is defined directly in langhook_cz and
      called in print_results

2000-10-02/03 Yeti <yeti@physics.muni.cz>
    * recoding chains made possible by starting -x parameter with `..'
    * BSD [s]random() changed to ISO [s]rand()
    * fixed all remaining warnings except 1.4 kB long string containing help
      text (compile tried with -Werror -Wall -pedantic -ansi
      -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
      -Wnested-externs)

v0.7.1
2000-10-01 Yeti <yeti@physics.muni.cz>
    * moved to low level i/o: e_fopen() changed to e_open(), etc., e_write(),
      etc. introduced, convert_die() abadoned
    * return codes slightly changed to distinguish between guessing failure
      and i/o failure
    * get_xtable() and generate_xtable() changed to be able to generate identity
      (that is then used in convert_internal_stdin())
    * not all i/o failures cause aborting
    * documentation improvements and corrections, as usual

2000-09-30 Yeti <yeti@physics.muni.cz>
    * temporary file creation is tried 3x and existing temporary files are not
      overwirtten

v0.7.0
2000-09-25/26 Yeti <yeti@physics.muni.cz>
    * removed option `disable external converter' (-e), empty -C parameter
      can be used instead
    * e_tmpf() divided to e_tmpf() creating the file and e_tmpfname() generating
      temporary file name
    * fixed memory leak (not freeing tmpfname) in convert_recode() and
      convert_external()
    * man page updated

2000-09-24/25 Yeti <yeti@physics.muni.cz>
    * fixed io_pos == 0 bug when enca converts stdin as dull converter
    * unicode.* renamed to unicodemap.*
    * -x encoding separator changed to .. to be compatible with recode and
      comply RFC 1345 (allowing comma in encoding names)
    * multiple .. allowed in -x argument to make possible specify recode chains
      (but only recode understand them)
    * ffname() divided to ffname_r() and ffname_w(), one returns stdin name one
      stdout name
    * implemented convert_recode() converting via recode library
    * conditionaly added program_name and other stuff requred by librecode
    * == changed to = in bcstocs and brecode to make them work in older bash
    * conversion to the same encoding no longer causes warnings
    * conversion to the same encoding works correctly even for stdin
    * ascii no longer considered unknown encoding
    * introduced verbose option (-V), converter now prints what is doing on
      -V not on -p
    * librecode interface _disabled_ by default in configure.in

2000-09-23/24 Yeti <yeti@physics.muni.cz>
    * two underscores removed from begin (and end) of #defines to comply ISO C
    * guess read buffer and convert read/write buffer merged (the same applies
      to BUFFER_SIZE and Settings.ReadLimit) and this io_buffer made persistent
      (created by new functions enca_init(), destroyed by enca_done()) so
      information from stdin does not get lost
    * user specified read limit is rounded up to nearest multiple of 16
    * convert_internal() splitted to convert_internal_file() and
      convert_internal_stdin(), that converts stdin to stdout
    * introduced e_tmpf() creating temporary files since none of glibc functions
      does The Right Thing (execept maybe non-POSIX tempnam())
    * convert_external() creates temporary file and put stdin there if stdin is
      to be converted and passes `-' as fourth parameter to converter
      instructing it to send output to stdout
    * bcstocs and brecode rewritten to recognize the fourth parameter and put
      under GNU GPL
    * a new output type OT_ALIAS (option -g) introduced that lists all known
      aliases and -f does approximately the same as in 0.6 serie again
    * resloved strange dependencies between langdata and langhook
    * fixed e_tmpf() passing-by-value bug
    * encoding names specified as -x parameters are converted to lowercase
    * fixed terrible typo || -> && in bcstocs and brecode

2000-09-22/23 Yeti <yeti@physics.muni.cz>
    * introduced recode wrapper script, brecode
    * introduced is_subset_consistent() checking if characters have the same
      meaning in two encodings (unfortunately makes guess.c dependent on
      unicode.h)
    * implemented -M (by function sms_hook())
    * activation and usefulness of sms_hook() reported by -d
    * added Cork encoding to unicode.c to make -M useful (but conversion from/to
      Cork is still quite bad, and should be done by cstocs/librecode only)
    * implemented e_malloc(), e_calloc() and e_realloc() aborting on failure,
      declared free() in common.h, defined NEW() allocator [this one is really
      braindead]

2000-09-21/22 Yeti <yeti@physics.muni.cz>
    * fixed not-initalizing-encoding-table coredump
    * added new output type OT_RFC1345 (option -r), some OT's renamed
    * added -r and -M options (-M accepted, but not implemented yet)
    * prefixing with filename is now on by default when run on more than one
      file
    * added RFC 1345 names and in consequence renamed name* memebers of
      S_EncRaw and S_EncStat to keep namespace consistent
    * much more (in fact all known) aliases listed in full names -- maybe too
      many
    * in detailed output is now file name printed on the top and cstocs and RFC
      1345 names are printed separately in (bottom) result part
    * hook name is not fixed, but part of langdata_cs.c (still not very clean,
      though)

2000-09-17/18 Yeti <yeti@physics.muni.cz>
    * moved to autoconf/automake (not respected by the C sources yet)
    * reorganized to deep package
    * fixed `cd . && pwd` bug in automake :-(
    * old config.h renamed to defaults.h
    * rawdata.c and rawuni.c merged with encdata.c and encuni.c mainly to avoid
      problems with automake
    * bcstocs now prints error message when it fails, to make things clear
    * encopt* renamed to options*, encuni* to unicode* and encdata* to
      langdata*
    * enca.c split to convert.c, guess.c, printresult.c and langhook.c,
      header files introduced, some functions renamed and their parameters
      changed (too many changes to list here)
      (greetings to Halef)
    * process_file() now only controls what actions should be taken and no
      longer does anything itself
    * print_results() no longer calls converter, this is done in process_file()
    * results of guessing passed encapsulated in struct S_GResult
    * language specific files (lang*) got _cs extension
    * HELP_TEXT and VERSION_TEXT defined as strings instead of macros
    * common stuff moved to common.c/common.h
      [enca now compiles but doesn't work yet]

v0.6.2
2000-08-17 Yeti <yeti@physics.muni.cz>
    * help texts (-h and -v) improved, thanx to Halef
    * some other minor changes in docs

v0.6.1
2000-08-15 Yeti <yeti@physics.muni.cz>
    * tarball repacked with files encuni.c, rawuni.c, rawuni.h missing in
      0.6.0 tarball
    * bcstocs magic line changed to #!/bin/bash
    * TODO updated to reflect current work on 0.7

v0.6.0
2000-07-20 Yeti <yeti@physics.muni.cz>
    * formal changes in rawdata.c
    * internal converter implemented (rawuni.c, encuni.c, enca.c)
    * -x can now take form -x in_enc,out_enc
    * introduced options -e and -E
    * introduced option -l
    * READLIMIT_MAX changed back to 1MB
    * man page improved(?)

v0.5.0
2000-07-17 Yeti<yeti@physics.muni.cz>
    * waits for converter to return (much slower conversion, but doesn't
      produce `cannot fork()'s)
    * -p makes -x print what is doing
    * fixed `Unrecognized encoding' when winner is 1250 (from 0.4.3)
    * _exit() in converter caller corrected to exit() since we don't use
      vfork()
    * use EXIT_SUCCESS and EXIT_FAILURE instead of 0 and 1
    * aborts when it cannot close open file (since it means something very
      bad is happening)
    * added forgotten z-with-check to il2/1250 hack
    * il2/1250 hack put to separate function
    * (minimalistic) config.h introduced
    * READLIMIT_MAX put to config.h and changed to 4MB
    * recomputed statistical data (probably not the last time)
    * also other defaults put to config.h
    * corrected -d table alignment
    * fixed not initializing significancy table
    * added -f to cp and rm in Makefile
    * some other code clean-ups

v0.4.3
2000-07-14 Yeti <yeti@physics.muni.cz>
    * corrected short encoding name t1 -> cork
    * corrected some dividing by zero resulting inf/nan rating
    * il2/1250 hack made more logical
    * -d prints encodings alphabetically sorted
    * significancy table is computed only once

v0.4.2
2000-07-13 Yeti <yeti@physics.muni.cz>
    * removed options -m/-M since it's nonsense to maintain something marked
      `do not use' in man page
    * -p now shows stdin as <STDIN>, instead of empty string
    * ascii and ??? made `encodings'
    * bcstocs doesn't depend on mktemp
    * some other code clean-ups

v0.4.1
2000-07-12 Yeti <yeti@physics.muni.cz>
    * silly default of 60 significant characters changed to 10
    * minor bugfixes and corrections

v0.4.0
2000-07-10 Yeti <yeti@physics.muni.cz>
    * rewritten from scratch in ISO C