Update .gitignore.
[libiconv.git] / NEWS
blob532198147922e213da1048eb973060f07de16816
1 New in 1.18:
2 * Many more transliterations.
3 * GB18030 is now an alias for GB18030:2005. A new converter for GB18030:2022
4   is added. Since this encoding merely cleans up a few private-use-area
5   mappings, you can continue to use the GB18030 converter, for backward
6   compatibility.
7 * When converting from/to an EBCDIC encoding, a non-standard way of
8   converting newlines can be requested
9     - at the C level, by calling iconvctl with argument ICONV_SET_FROM_SURFACE
10       or ICONV_SET_TO_SURFACE, or
11     - from the iconv program, by setting the environment variable
12       ICONV_EBCDIC_ZOS_UNIX to a non-empty value.
13 * Special support for z/OS: The iconv program adds a charset metadata tag to
14   its output file. (Contributed by Mike Fulton.)
16 New in 1.17:
17 * The libiconv library is now licensed under the LGPL version 2.1, instead of
18   the LGPL version 2.0. The iconv program continues to be licensed under GPL
19   version 3.
20 * Added converters for many single-byte EBCDIC encodings:
21   IBM-{037,273,277,278,280,282,284,285,297,423,424,425,500,838,870,871,875},
22   IBM-{880,905,924,1025,1026,1047,1097,1112,1122,1123,1130,1132,1137,1140},
23   IBM-{1141,1142,1143,1144,1145,1146,1147,1148,1149,1153,1154,1155,1156,1157},
24   IBM-{1158,1160,1164,1165,1166,4971,12712,16804}.
25   They are available through the configure option '--enable-extra-encodings'.
27 New in 1.16:
28 * The preloadable library has been removed.
30 New in 1.15:
31 * The UTF-8 converter now rejects surrogates and out-of-range code points.
32 * Added ISO-2022-JP-MS converter.
33 * Updated the CP1255 converter to map one more character.
34 * The functions now support strings longer than 2 GB.
36 New in 1.14:
37 * The 'iconv' program now produces its output as soon as it can. It no longer
38   unnecessarily waits for more input.
39 * Updated the GB18030 converter to map 25 characters to code points that have
40   been to Unicode since 2000, rather than to code points in the Private Use
41   Area.
42 * Updated the BIG5-HKSCS converter. The old BIG5-HKSCS converter is renamed to
43   BIG5-HKSCS:2004. A new converter BIG5-HKSCS:2008 is added. BIG5-HKSCS is now
44   an alias for BIG5-HKSCS:2008.
45 * Fixed a bug in the conversion to wchar_t.
46 * Fixed a small bug in the CP1258 converter.
48 New in 1.13:
49 * The library and the iconv program now understand platform dependent aliases,
50   for better compatibility with the platform's own iconv_open function.
51   Examples: "646" on Solaris, "iso88591" on HP-UX, "IBM-1252" on AIX.
52 * For stateful encodings, when the input ends with a shift sequence followed
53   by invalid input, the iconv function now increments the input pointer past
54   the shift sequence before returning (size_t)(-1) with errno = EILSEQ. This
55   is also like GNU libc's iconv() behaves.
56 * The library exports a new function iconv_open_into() that stores the
57   conversion descriptor in pre-allocated memory, rather than allocating fresh
58   memory for it.
59 * Added CP1131 converter.
61 New in 1.12:
62 * The iconv program is now licensed under the GPL version 3, instead of the
63   GPL version 2. The libiconv library continues to be licensed under LGPL.
64 * Added RK1048 converter.
65 * On AIX, an existing system libiconv no longer causes setlocale() to fail.
66 * Upgraded EUC-KR, JOHAB to include the Korean postal code sign.
68 New in 1.11:
69 * The iconv program has new options --unicode-subst, --byte-subst,
70   --widechar-subst that allow to specify substitutions for characters that
71   cannot be converted.
72 * The iconv program now understands long options:
73     long option    equivalent to
74     --from-code    -f
75     --to-code      -t
76     --list         -l
77     --silent       -s
78 * The CP936 converter is now different from the GBK converter: it has changed
79   to include the Euro sign and private area characters. CP936 is no longer an
80   alias of GBK.
81 * Updated GB18030 converter to include all private area characters.
82 * Updated CP950 converter to include the Euro sign and private area characters.
83 * Updated CP949 converter to include private area characters.
84 * Updated the BIG5-HKSCS converter. The old BIG5-HKSCS converter is renamed to
85   BIG5-HKSCS:1999 and updated to Unicode 4. New converters BIG5-HKSCS:2001 and
86   BIG5-HKSCS:2004 are added. BIG5-HKSCS is now an alias for BIG5-HKSCS:2004.
87 * Added a few irreversible mappings to the CP932 converter.
88 * Tidy up the list of symbols exported from libiconv (assumes gcc >= 4.0).
90 New in 1.10:
91 * Added ISO-8859-11 converter.
92 * Updated the ISO-8859-7 converter.
93 * Added ATARIST converter, available through --enable-extra-encodings.
94 * Added BIG5-2003 converter (experimental), available through
95   --enable-extra-encodings.
96 * Updated EUC-TW converter to include the Euro sign.
97 * The preloadable library has been renamed from libiconv_plug.so to
98   preloadable_libiconv.so.
99 * Portability to mingw.
101 New in 1.9:
102 * Many more transliterations.
103 * New configuration option --enable-relocatable.  See the INSTALL.generic file
104   for details.
106 New in 1.8:
107 * The iconv program has new options -l, -c, -s.
108 * The iconv program is internationalized.
109 * Added C99 converter.
110 * Added KOI8-T converter.
111 * New configuration option --enable-extra-encodings that enables a bunch of
112   additional encodings; see the README for details.
113 * Updated the ISO-8859-16 converter.
114 * Upgraded BIG5-HKSCS, EUC-TW, ISO-2022-CN, ISO-2022-CN-EXT converters to
115   Unicode 3.2.
116 * Upgraded EUC-KR, CP949, JOHAB converters to include the Euro sign.
117 * Changed the ARMSCII-8 converter.
118 * Extended the EUC-JP encoder so that YEN SIGN characters don't cause failures
119   in Shift_JIS to EUC-JP conversion.
120 * The JAVA converter now handles characters outside the Unicode BMP correctly.
121 * Fixed a bug in the CP1255, CP1258, TCVN decoders: The base characters of
122   combining characters could be dropped at the end of the conversion buffer.
123 * Fixed a bug in the transliteration that could lead to excessive memory
124   allocations in libintl when transliteration was needed.
125 * Portability to BSD/OS and SCO 3.2.5.
127 New in 1.7:
128 * Added UTF-32, UTF-32BE, UTF-32LE converters.
129 * Changed CP1255, CP1258 and TCVN converters to handle combining characters.
130 * Changed EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP, ISO-2022-JP-2, ISO-2022-JP-1
131   converters to use fullwidth Yen sign instead of halfwidth Yen sign, and
132   fullwidth tilde instead of halfwidth tilde.
133 * Upgraded EUC-TW, ISO-2022-CN, ISO-2022-CN-EXT converters to Unicode 3.1.
134 * Changed the GB18030 converter to not reject unassigned and private-use
135   Unicode characters.
136 * Fixed a bug in the byte order mark treatment of the UCS-4 decoder.
137 * The manual pages are now distributed also in HTML format.
139 New in 1.6:
140 * The iconv program's -f and -t options are now optional.
141 * Many more transliterations.
142 * Added CP862 converter.
143 * Changed the GB18030 converter.
144 * Portability to DOS with DJGPP.
146 New in 1.5:
147 * Added an iconv(1) program.
148 * New locale dependent encodings "char", "wchar_t".
149 * Transliteration is now off by default. Use a //TRANSLIT suffix to enable it.
150 * The JOHAB encoding is documented again.
151 * Changed a few mappings in the CP950 converter.
153 New in 1.4:
154 * Added GB18030, BIG5HKSCS converters.
155 * Portability to OS/2 with emx+gcc.
157 New in 1.3:
158 * Added UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE converters.
159 * Fixed the definition of EILSEQ on SunOS4.
160 * Fixed a build problem on OSF/1.
161 * Support for building as a shared library on Woe32.
163 New in 1.2:
164 * Added UTF-16BE and UTF-16LE converters.
165 * Changed the UTF-16 encoder.
166 * Fixed the treatment of tab characters in the UTF-7 converter.
167 * Fixed an internal error when output buffer was not large enough.
169 New in 1.1:
170 * Added ISO-8859-16 converter.
171 * Added CP932 converter, a variant of SHIFT_JIS.
172 * Added CP949 converter, a variant of EUC-KR.
173 * Improved the ISO-2022-CN-EXT converter: It now covers the ISO-IR-165 range.
174 * Updated the ISO-8859-8 conversion table.
175 * The JOHAB encoding is deprecated and not documented any more.
176 * Fixed two build problems: 1. "make -n check" failed. 2. When libiconv was
177   already installed, "make" failed.
179 New in 1.0:
180 * Added transliteration facilities.
181 * Added a test suite.
182 * Fixed the iconv(3) manual page and function: the return value was not
183   described correctly.
184 * Fixed a bug in the CP1258 decoder: invalid bytes now yield EILSEQ instead of
185   U+FFFD.
186 * Fixed a bug in the Georgian-PS encoder: accept U+00E6.
187 * Fixed a bug in the EUC-JP encoder: reject 0x8E5C and 0x8E7E.
188 * Fixed a bug in the KSC5601 and JOHAB converters: they recognized some Hangul
189   characters at some invalid code positions.
190 * Fixed a bug in the EUC-TW decoder; it was severely broken.
191 * Fixed a bug in the CP950 converter: it recognized a dubious BIG5 range.
193 New in 0.3:
194 * Reduced the size of the tables needed for the JOHAB converter.
195 * Portability to Woe32.
197 New in 0.2:
198 * Added KOI8-RU, CP850, CP866, CP874, CP950, ISO-2022-CN-EXT, GBK and
199   ISO-2022-JP-1 converters.
200 * Added MACINTOSH as an alias for MAC-ROMAN.
201 * Added ASMO-708 as an alias for ISO-8859-6.
202 * Added ELOT_928 as an alias for ISO-8859-7.
203 * Improved the EUC-TW converter: Treat CNS 11643 plane 3.
204 * Improved the ISO-2022-KR and EUC-KR converters: Hangul characters are
205   decomposed into Jamo when needed.
206 * Improved the CP932 converter.
207 * Updated the CP1133, MULELAO-1 and ARMSCII-8 mappings.
208 * The EUC-JP and SHIFT_JIS converters now cover the user-defined range.
209 * Fixed a possible buffer overrun in the JOHAB converter.
210 * Fixed a bug in the UTF-7, ISO-2022-*, HZ decoders: a shift sequence a the
211   end of the input no longer gives an error.
212 * The HZ encoder now always terminates its output in the ASCII state.
213 * Use a perfect hash table for looking up the aliases.
215 New in 0.1:
216 * Portability to Linux/glibc-2.0.x, Linux/libc5, OSF/1, FreeBSD.
217 * Fixed a bug in the EUC-JP decoder. Extended the ISO-2022-JP-2 converter.
218 * Made TIS-620 mapping consistent with glibc-2.1.