NEWS 9.04 KB
Newer Older
1
Libidn2 NEWS -- History of user-visible changes.                -*- outline -*-
Simon Josefsson's avatar
Simon Josefsson committed
2
Copyright (C) 2011-2017 Simon Josefsson
Simon Josefsson's avatar
Simon Josefsson committed
3 4
See the end for copying conditions.

5 6
* Version 2.0.5 (unreleased)

7 8 9 10 11 12 13
** Switched the default library behavior to IDNA2008 as amended
   by TR#46 (non-transitional). That default behavior is enabled when
   no flags are specified to function calls. Applications can utilize the
   %IDN2_NO_TR46 flag to switch to the unamended IDNA2008. This is done in
   the interest of interoperability based on the fact that this is what application
   writers care about rather than strict compliance with a particular protocol.

14 15 16 17 18 19 20 21 22 23
** Fixed memleak in idn2_to_unicode_8zlz()

** Return error (IDN2_ICOV_FAIL) on charset conversion errors

** Fixed issue with STD3 rules applying in non-transitional
   TR46 mode.

** idn2: added option --usestd3asciirules


Tim Rühsen's avatar
Tim Rühsen committed
24 25 26 27 28 29 30 31 32 33 34 35 36
* Version 2.0.4 (released 2017-08-30)

** Fix integer overflow in bidi.c/_isBidi()

** Fix integer overflow in puny_decode.c/decode_digit()

** Improve docs

** Fix idna_free() to idn_free()

** Update fuzzer corpora


Tim Rühsen's avatar
Tim Rühsen committed
37
* Version 2.0.3 (released 2017-07-24) [beta]
Simon Josefsson's avatar
Simon Josefsson committed
38

39 40 41 42 43 44
** %IDN2_USE_STD3_ASCII_RULES disabled by default.
 Previously we were eliminating non-STD3 characters from domain strings
 such as _443._tcp.example.com, or IPs 1.2.3.4/24 provided to libidn2
 functions. That was an unexpected regression for applications switching
 from libidn and thus it is no longer applied by default.
 Use %IDN2_USE_STD3_ASCII_RULES to enable that behavior again.
45

Tim Rühsen's avatar
Tim Rühsen committed
46 47 48 49
** Fix several documentation issues

** Fix build issues

Simon Josefsson's avatar
Simon Josefsson committed
50 51
** Modernize gtk-doc build infrastructure.

Tim Rühsen's avatar
Tim Rühsen committed
52

Simon Josefsson's avatar
Simon Josefsson committed
53
* Version 2.0.2 (released 2017-04-27) [beta]
Tim Rühsen's avatar
Tim Rühsen committed
54 55 56 57 58 59 60

** Fix TR46 transitional mode

** Fix build issue on OSX

** Fix several documentation issues

Simon Josefsson's avatar
Simon Josefsson committed
61
* Version 2.0.1 (released 2017-04-22) [beta]
Tim Rühsen's avatar
Tim Rühsen committed
62 63 64 65 66

** idn2 utility now using IDNA2008 + TR46 by default

** Several doc fixes

Simon Josefsson's avatar
Simon Josefsson committed
67
* Version 2.0.0 (released 2017-03-29) [beta]
Tim Rühsen's avatar
Tim Rühsen committed
68 69

** Version numbering scheme changed
Simon Josefsson's avatar
Simon Josefsson committed
70

71
** Added to ASCII conversion functions corresponding to libidn1 functions:
Simon Josefsson's avatar
Simon Josefsson committed
72 73 74 75
- idn2_to_ascii_4i
- idn2_to_ascii_4z
- idn2_to_ascii_8z
- idn2_to_ascii_lz
Nikos Mavrogiannopoulos's avatar
Nikos Mavrogiannopoulos committed
76

77
** Added to unicode conversion functions corresponding to libidn1 functions:
Simon Josefsson's avatar
Simon Josefsson committed
78 79 80 81 82 83
- idn2_to_unicode_8z4z
- idn2_to_unicode_4z4z
- idn2_to_unicode_44i
- idn2_to_unicode_8z8z
- idn2_to_unicode_8zlz
- idn2_to_unicode_lzlz
Nikos Mavrogiannopoulos's avatar
Nikos Mavrogiannopoulos committed
84 85

** The idn2 manual page is generated from markdown text instead of utilizing
Simon Josefsson's avatar
Simon Josefsson committed
86
** help2man on the generated tool.
Nikos Mavrogiannopoulos's avatar
Nikos Mavrogiannopoulos committed
87 88

** Including idn2.h will provide libidn1 compatibility functions
Simon Josefsson's avatar
Simon Josefsson committed
89 90 91 92
** unless IDN2_SKIP_LIBIDN_COMPAT is defined. That allows converting
** applications from libidn1 (which offers IDNA2003) to libidn2 (which
** offers IDNA2008) by replacing idna.h to idn2.h in the applications'
** source.
93

Simon Josefsson's avatar
Simon Josefsson committed
94 95
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
96
* Version 0.16 (released 2017-01-16) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
97

Simon Josefsson's avatar
Simon Josefsson committed
98 99
** build: Fix idn2_cmd.h build rule.

Simon Josefsson's avatar
Simon Josefsson committed
100 101
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
102
* Version 0.15 (released 2017-01-14) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
103

Simon Josefsson's avatar
Simon Josefsson committed
104 105 106 107 108 109
** Fix out-of-bounds read.

** Fix NFC input conversion (regression).

** Shrink TR46 static mapping data.

Simon Josefsson's avatar
Simon Josefsson committed
110 111
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
112
* Version 0.14 (released 2016-12-30) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
113 114 115

** build: Fix gentr46map build.

Simon Josefsson's avatar
Simon Josefsson committed
116 117
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
118
* Version 0.13 (released 2016-12-29) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
119

Simon Josefsson's avatar
Simon Josefsson committed
120 121 122 123 124 125 126 127
** build: Doesn't download external files during build.

** doc: Clarify license.

** build: Generate ChangeLog file properly.

** doc: API documentation related to TR46 flags.

Simon Josefsson's avatar
Simon Josefsson committed
128 129
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
130
* Version 0.12 (released 2016-12-26) [alpha]
Tim Rühsen's avatar
Tim Rühsen committed
131

Simon Josefsson's avatar
Simon Josefsson committed
132
** All changes by Tim Rühsen <tim.ruehsen@gmx.de> except stated otherwise.
Tim Rühsen's avatar
Tim Rühsen committed
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

** Builds/links with libunistring.

** Fix two possible crashes with unchecked NULL pointers.

** Memleak fix.
Reported by Hanno Böck <hanno@hboeck.de>.

** Binary search for codepoints in tables.

** Do not taint output variable on error in idn2_register_u8().

** Do not taint output variable on error in idn2_lookup_u8().

** Update to Unicode 6.3.0 IDNA tables.

** Add TR46 / UTS#46 support to API and idn2 utility.

** Add NFC quick check.

** Add make target 'check-coverage' for test coverage report.

** Add tests to increase test code coverage.

** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
159
* Version 0.11 (released 2016-11-03) [alpha]
160 161 162 163 164 165

** Fix stack underflow in 'idn2' command line tool.
Reported by Hanno Böck <hanno@hboeck.de>.

** Fix gdoc script to fix texinfo syntax error.

166 167 168
** Fix build failure of self-tests on platforms without version scripts.
Reported by Dagobert Michelsen <dam@opencsw.org>.

169 170
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
171
* Version 0.10 (released 2014-06-25) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
172

Simon Josefsson's avatar
Simon Josefsson committed
173 174
** Update gnulib files.

175 176
** Dual-license the library.

Simon Josefsson's avatar
Simon Josefsson committed
177 178
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
179
* Version 0.9 (released 2013-07-23) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
180

Simon Josefsson's avatar
Simon Josefsson committed
181 182 183
** Fix broken IANA link.
Apparently IANA does not provide persistant URLs to their registries.

Simon Josefsson's avatar
Simon Josefsson committed
184 185
** Fix automake bootstrap issue.

Simon Josefsson's avatar
Simon Josefsson committed
186 187 188 189
** Update gnulib files.

** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
190
* Version 0.8 (released 2011-09-28) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
191 192 193

** idn2: Fix build warnings.
Reported by Didier Raboud <odyx@debian.org> in
194
<https://bugs.debian.org/643427>.
Simon Josefsson's avatar
Simon Josefsson committed
195 196 197 198 199

** Update gnulib files.

** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
200
* Version 0.7 (released 2011-08-11) [alpha]
201 202 203 204 205 206 207 208

** libidn2: Fix missing strchrnul and strverscmp uses.
Reported by Ray Satiro <raysatiro@yahoo.com>.

** Update gnulib files.

** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
209
* Version 0.6 (released 2011-05-25) [alpha]
210 211 212 213 214 215

** tests: Use -no-install instead of -static to fix --disable-static.
Reported by Robert Scheck <robert@fedoraproject.org>.

** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
216
* Version 0.5 (released 2011-05-18) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
217

218 219 220 221
** Fix NFC check to compare entire strings.
Some non-NFC strings were permitted when they should have been
rejected.  Reported by Robert Scheck <robert@fedoraproject.org>.

222 223 224 225 226 227 228
** Self tests are not run under valgrind by default anymore.
Use --enable-valgrind-tests if you want to run self tests under
valgrind.  The reason was that there were too many false positives on
some platforms with valgrind issues in system libraries.  Self tests
are still run under valgrind by default when building from version
controlled sources.

Simon Josefsson's avatar
Simon Josefsson committed
229 230
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
231
* Version 0.4 (released 2011-05-06) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
232

233 234 235 236 237 238 239 240 241
** libidn2: Fix domain name maximum size issue.
Domain names in string representation can be 254 characters long if
they end with a period, or 253 characters long if they don't end with
a period.  The code got this wrong and used 255 characters all the
time.  The documentation for the IDN2_DOMAIN_MAX_LENGTH constant is
improved.  We now pass two more of the IdnaTest.txt test vectors.
Reported by "Abdulrahman I. ALGhadir" <aghadir@citc.gov.sa> and
explanation from Markus Scherer <mscherer@google.com>.

242 243 244
** tests: Added several new Arabic test vectors.
From "Abdulrahman I. ALGhadir" <aghadir@citc.gov.sa>.

Simon Josefsson's avatar
Simon Josefsson committed
245 246
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
247
* Version 0.3 (released 2011-04-20) [alpha]
248 249 250 251

** doc: Added Texinfo manual.

** doc: Added man pages for all API functions.
Simon Josefsson's avatar
Simon Josefsson committed
252 253

** examples: Added examples/lookup and examples/register as demo.
Simon Josefsson's avatar
Simon Josefsson committed
254

Simon Josefsson's avatar
Simon Josefsson committed
255 256
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
257
* Version 0.2 (released 2011-03-30) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
258

Simon Josefsson's avatar
Simon Josefsson committed
259 260 261 262
** Added command line tool "idn2".

** Added more test vectors from Unicode.

Simon Josefsson's avatar
Simon Josefsson committed
263 264
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
265
* Version 0.1 (released 2011-03-29) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
266

Simon Josefsson's avatar
Simon Josefsson committed
267
** IDNA2008 Lookup+Register functions are now operational.
Simon Josefsson's avatar
Simon Josefsson committed
268 269 270 271 272
The implementation is still subject to changes, and thus no API/ABI
stability guarantees are made.  We are now inviting comments both on
the API (as before) but also on the actual behaviour.  Any unexpected
outputs are from here on considered as real bugs.

Simon Josefsson's avatar
Simon Josefsson committed
273 274
** API and ABI is backwards compatible with the previous version.

Simon Josefsson's avatar
Simon Josefsson committed
275
* Version 0.0 (released 2011-03-09) [alpha]
Simon Josefsson's avatar
Simon Josefsson committed
276

Simon Josefsson's avatar
Simon Josefsson committed
277 278 279
** Initial draft release for public review of the API.
IDNA2008-Lookup is fully implemented except for 1) the optional
round-trip conversion part, and 2) the context rules are not
Simon Josefsson's avatar
Simon Josefsson committed
280 281 282 283
implemented.  IDNA2008-Register is not yet implemented.  The
implementation is known to be sub-optimal and ugly, please review the
interface and ignore the code!  Several changes are planned in the
internal implementation.
Simon Josefsson's avatar
Simon Josefsson committed
284 285

----------------------------------------------------------------------
286 287 288 289 290 291 292 293 294 295 296 297
This file is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

This file is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with this file.  If not, see <http://www.gnu.org/licenses/>.