1Major changes in idnkit version 2.3:
2
3* Support Unicode 6.3.
4
5* Fix some minor bugs.
6
7Major changes in idnkit version 2.2:
8
9* Support RFC6452, "The Unicode Code Points and Internationalized Domain
10  Names for Applications (IDNA) - Unicode 6.0".
11* Modify the license.  See 'LICENSE.txt'.
12
13* Fix some minor bugs.
14
15Major changes in idnkit version 2.1:
16
17* Release Java, Python and Perl APIs for idnkit.
18  Note that the idnkit source distribution itself doesn't contain those
19  APIs.  They are distributed individually.
20
21* Release Windows installer of libidnkitlite.
22  Also the installer is distributed separately from the idnkit source
23  distribution.
24
25* Fix some minor bugs.
26
27Major changes in idnkit version 2.0.1:
28
29* Add mapping procedure 'rfc5895'.
30  In a 'map' entry of the configuration file, idnkit recognizes new map
31  procedure named 'rfc5895', which is formerly known as 'resman-idna2008-
32  mappings-01'.  idnkit still accepts 'resman-idna2008-mappings-01'.
33
34Major changes in idnkit version 2.0:
35
36* Support IDNA2008.
37  Since IDNA2008 has a lot of changes from IDNA2003, also idnkit has
38  various changes.  Option names of idnconv command, configuration file
39  syntax and action macros for idn_encodename() and idn_decodename()
40  functions are revised.
41
42* No longer support IDNA2003.
43  For IDNA2003, use idnkit version 1.0 instead.
44
45* Support Unicode Technical Standard #46 (UTS #46).
46  Support for UTS #46 "Unicode IDNA Compatibility Processing" is added,
47  but it is experimental and partial.
48
49* Rename the default configuration files.
50  The system default configuration file is renamed from 'idn.conf' to
51  'idn2.conf', and the user default configuration file is renamed from
52   '.idnrc' to '.idn2rc' respectively.
53
54* Add idn_comparenames() and idn_comparenames2() functions.
55  Those functions compare two domain names. They check whether the domain
56  names given as arguments are equivalent or not.
57
58* Add idn_checkname() function.
59  The function validates an internationalized domain name, and reports
60  the result.
61
62* Add idncmp and idncheck commands.
63  idncmp and idncheck are command editions of idn_comparenames() and
64  idn_checkname().  You can call those functions from a command line
65  easily.
66
67* Rename idnconv command to 'idnconv2'.
68  For uses who want install idnkit version 1.0 and 2.0 on the same system,
69  the command in idnkit version 2.0 has been renamed from 'idnconv' to
70  'idnconv2'.
71
72* Add language specific local map.
73  In addition with TLD specific local map, language specific local map
74  is available.  idnkit performs a preprocessing conversion according
75  with the "current language" setting.
76
77* Add "local check".
78  IDN registries define their own code point tables allowed for domain
79  name registration.  Using the local check feature, you can check whether
80  a domain name consists of code points allowed by a particular registry.
81  idnconv2, idncmp and idncheck command have '-localcheck' options and '-e'
82  for short.  For library APIs, idn_setlocalcheckfile() function and
83  IDN_LOCALCHECK action are added.
84
85* Fix a bug in normalization.
86  A historical bug in idnkit version 1.0 is fixed.  Suppose that a label
87  consists of three code points A, B and C in that order, and ccc(A) = 0,
88  ccc(B) = 220, ccc(C) = 0.  If the composition rule A + C -> D exists,
89  idnkit version 1.0 does the composition in spite of B in the middle.
90  A patch to idnkit 1.0 (see below) also fixes the bug.
91
92* Delete BIND patches.
93
94* Add a patch to idnkit version 1.0.
95
96* Delete runidn command.
97
98Major changes in idnkit version 1.0:
99
100* Change ACE prefix of Punycode from 'zq--' to 'xn--'. And delete
101  configure's --with-punycode-prefix option.
102
103* Add NAMEPREP version RFC3491. Other versions of NAMEPREP are
104  removed.
105
106* Enable idnconv to handle a input line as long as memory permitted
107  when encoding/decoding.
108
109* unicode-form-c and unicode-form-c/3.2.0 are not supported.
110
111* Unicode 3.0.1 and Unicode 3.1.0 are not supported.
112
113* Delete BIND8, Squid and GNU libiconv patches.
114
115Major changes in idnkit version 1.0-pr2:
116
117* The license of idnkit is changed to a less restrictive one. See
118  LICENSE.txt for the new license.
119
120* The local codeset name used in the test suite, which is hard-coded
121  in the previous version, can be specified by a separate header file.
122
123* IDN encoding and decoding now always check the validity of the
124  result by performing roundtrip conversion check.
125
126Major changes in idnkit version 1.0-pr1:
127
128* Some test cases are added to the testsuite.
129
130* The testsuite can run on OpenBSD.
131
132Major changes in idnkit version 020829:
133
134* Testsuit is added for the library behavior check.
135  Testsuit and testcases are in lib/tests.  Read INSTALL (INSTALL.ja)
136  for details.  Tests aim at api, checker, converter, delimitermap,
137  mapper, mapselecter, normalizer, res, resconf, and ucs4 at the
138  moment.
139
140* "amcacez" module is renamed to "punycode".
141
142* AMC-ACE-Z and RACE are now treated as extra ACE.
143
144* Add "--with-utf8=NAME" option to configure script.
145
146Major changes in idnkit version 020730:
147
148* Complete bidi check support for NAMEPREP draft -11.
149
150* Type definitions of action flags for conversion APIs are changed
151  from int to idn_action_t.
152
153* Add -nobidicheck option to idnconv command.
154
155Major changes in idnkit version 020711:
156
157* Default delimiters are added according to IDNA-10.
158
159* ``delimiter-map'' entry in config file is removed.
160
161* Add Unicode version 3.2 support.
162
163* Add preliminary support of NAMEPREP draft -11.
164  This version supports NAMEPREP draft -11 without bidirectional label
165  check.
166
167* Supported NAMEPREP versions are changed.
168  idnkit supports NAMEPREP draft version -03, -10, and -11.  Others
169  are removed.
170
171* IDN encoding DUDE is removed.
172
173* New action flags are available for conversion APIs.
174  IDN_ENCODE_QUERY, IDN_DECODE_QUERY, IDN_ENCODE_STORED, and
175  IDN_DECODE_STORED are newly created according to IDNA specification.
176  See include/idn/res.h for precise description.
177
178* Action flags IDN_ENCODE_APP, IDN_DECODE_APP and IDN_NAMEPREP change
179  those behavior.
180  See include/idn/res.h for precise description.
181
182* New decode APIs are created.
183  idn_decodename2() and idn_res_decodename2() are defined to add
184  conversion process from "IDN string encoded in local encoding" to
185  UTF-8 before actual decode process of IDN.
186
187* idnconv with -reverse option treats input as IDN string(s) encoded
188  in local encoding specified by -out option.
189
190* idnconv recognizes `-A' option which is synonym for `-noasciicheck'.
191
192* (Windows) idn Wrapper can run on Windows XP.
193
194* BIND-8 patch for BIND-8.3.3 is available and other patches of BIND-8
195  are removed.
196
197Major changes in idnkit version 1.0-rc1:
198
199* NAMEPREP draft -09 is supported.
200
201* idnconv now accepts any encodings specified as argument for `-in'
202  or `-out' option.  `-out' accepts non-ACE, and `-in' accepts ACE.
203
204* In configuration file, `encoding-alias-file' entry is not supported
205  any longer.  It is simply ignored.
206
207Major changes in idnkit version 1.0-beta2:
208
209* Supported nameprep version is changed.
210  Now idnkit supports nameprep-03, nameprep-06, and nameprep-08.
211  Nameprep-05 and nameprep-07 are not supported any more.
212
213* Compatibility with mDNkit is added.
214  This feature provides applications formerly written using mDNkit
215  library with some source level compatibilities.  If you want to use
216  this feature, set `--enable-mdnkit-compat' option at execution time
217  of configure script.
218
219* Now idnkit can set up easily without configuration file.
220  As this feature is added, initialization function and some behavior
221  of top level API are changed.
222
223* BIND-8 patch supports IDN conversion in itself.
224
225* (Windows) idnkit library looks for configuration files with registry
226  information.
227
228* (Windows) idnkit library returns "CP<code page number>" as local
229  encoding name when the environment variable "IDN_LOCAL_CODESET" is
230  not set.
231
232* (Windows) libidnkit/libidnkitlite are now installed as DLL.
233
234* (Windows) idnconv can be executed as a console application.
235
236Major changes in idnkit version 1.0-beta1:
237
238* mDNkit has been renamed idnkit.
239  This means all symbols with "mdn" are renamed with "idn".  For
240  example, a function `mdn_encodename()' is now `idn_encodename()', an
241  environment variable "MDN_DISABLE" is "IDN_DISABLE", system
242  configuretion file is "idn.conf", `runmdn' command is `runidn', and
243  so forth.
244
245* Also, library name has been changed to "libidnkit(lite)".
246
247* `mdnsproxy' command has been removed.
248
249* `runidn' (formerly known as `runmdn') command is not installed by
250  default.
251  If you want to install it, set "yes" to `--enable-runidn' option
252  when you run configure script.
253
254* idnkitlite library only instalation is supported.
255  Set "yes" to `--enable-liteonly' option at execution of configure
256  script to use this feature.
257
258* BIND-9.1.3 patch has been removed.
259
260* User configuration file is supported.
261  idnkit now uses ".idnrc" in user's home directory for configuration
262  of whole scheme.  If there is no user configuration file, then it
263  tries to load the system configuration file "idn.conf".
264
265* idnkit is now able to run without configuration file.
266  If there are no configuration files (both of user's and system's),
267  it sets normal configurations (the latest nameprep scheme it
268  supports and the IDN encoding "Punycode") automatically at runtime.
269
270* Encoding alias information file is supported. (by generic libidnkit)
271  Its name is "idnalias.conf" by default and it should be located in
272  same directory where the system configuration file is.  Example
273  alias information file "idnalias.conf.sample" is installed
274  automatically.
275
276* APIs are renewed.  See manpage.
277
278* Now idnkit has full support of IDNA-07.
279
280* Internal representation of domain name is changed to UCS4 in place
281  of UTF-8.
282