Generated.
[libidn.git] / NEWS
blob2d24f1d3d64bb19b54c7588656ed62451cfbdafa
1 Libidn NEWS -- History of user-visible changes.                 -*- outline -*-
2 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Simon Josefsson
3 See the end for copying conditions.
5 * Version 1.1 (released 2007-09-01)
7 ** Fix compilation error in idn-int.h.
8 The error would typically be 'error: no include path in which to
9 search for stdint.h'.  Reported by Remko van der Vossen
10 <wich@stack.nl>, see
11 <http://thread.gmane.org/gmane.comp.gnu.libidn.general/65> and
12 <http://bugs.sourcemage.org/show_bug.cgi?id=13857>.
14 ** Declare external variables with __declspec(import) for Windows.
15 Apparently this is required for variables in DLL's on Windows.  This
16 is enabled if __DECLSPEC_SUPPORTED is defined (MinGW), or if _MSC_VER
17 and_DLL is defined (MSVC).
19 ** Update gnulib files.
21 ** Update translations.
23 ** API and ABI is backwards compatible with the previous version.
25 * Version 1.0 (released 2007-07-31)
27 ** Command-line tools, examples, etc are now licensed under GPL version 3.
28 The library is still licensed under LGPL v2.1 for compatibility
29 reasons (it is included in glibc).
31 ** Updated documentation as per license change.
33 ** Update gnulib files.
35 ** Update translations.
37 ** API and ABI is backwards compatible with the previous version.
39 * Version 0.6.14 (released 2007-05-31)
41 ** Libidn is now developed using Git instead of CVS.
42 A public git mirror is available from
43 <http://repo.or.cz/w/libidn.git>.  If you have pulled from this
44 repository before this release, you need to erase your clone because
45 it has been re-generated from scratch.
47 ** API and ABI is backwards compatible with the previous version.
49 * Version 0.6.13 (released 2007-05-31)
51 ** Documentation fixes.
52 Clarify that the C# and Java libraries are licensed under the LGPL.
53 Earlier, some places incorrectly said that these were licensed under
54 the GPL.  If you encounter other places that still suggest that GPL
55 applies to the C# and Java library, please let me know.
57 ** Updated Polish and Vietnamese translations.
58 Thanks to Jakub Bogusz <qboosh@pld-linux.org> and Clytie Siddall
59 <clytie@riverland.net.au>.
61 ** Install images for the manual in $infodir.
62 This fixes the broken image in the info manual.  Image files will be
63 called libidn-*.png to avoid namespace collisions with images from
64 other info manuals.
66 ** Update gnulib files.
68 ** API and ABI is backwards compatible with the previous version.
70 * Version 0.6.12 (released 2007-04-25)
72 ** Use AM_JAVACFLAGS instead of JAVACFLAGS in java/misc/Makefile.am.
73 Reported by Petteri Räty <betelgeuse@gentoo.org>.
75 ** Update gnulib files.
77 ** API and ABI is backwards compatible with the previous version.
79 * Version 0.6.11 (released 2007-03-13)
81 ** Update of the C# Libidn port, by Alexander Gnauck.
82 The code has been refactored and the namespace has been modified to
83 comply with .NET naming conventions.  An IDNA bug was fixed.
85 ** Update gnulib files.
86 We now use the "striconv" module instead of the "iconvme", which
87 causes a slight increase of code size (from 303kb to 319kb with
88 debugging symbols on i386).  The reason is the use of a new locale
89 independent strcasecmp, which may cause faster operation in some
90 locales where, e.g., "ASCII" and "ascii" are not treated as the same.
92 ** API and ABI is backwards compatible with the previous version.
94 * Version 0.6.10 (released 2007-01-04)
96 ** Corrected year in copyright notices.
98 ** Update gnulib files.
99 Including the code to convert strings between different encodings
100 (noted in case this introduces problems).
102 ** API and ABI is backwards compatible with the previous version.
104 * Version 0.6.9 (released 2006-11-30)
106 ** The Java code is fixed to properly translate any non-ASCII dot into '.'.
107 Reported and fixed by "Stephane Mikaty" <mikaty@ecircle-ag.com>.
109 ** Update gnulib files.
111 ** Bump tool versions to autoconf 2.61, automake 1.10, and gettext 0.16.
113 ** Old versions of iconv.m4, codeset.m4 and lib-link.m4 removed from m4/.
114 Modern versions are part of gnulib.
116 ** API and ABI is backwards compatible with the previous version.
118 * Version 0.6.8 (released 2006-10-18)
120 ** The gnulib directory is separated into two directories.
121 One gnulib directory (lib/gl/) for the LGPL library in lib/, and one
122 gnulib directory (gl/) for the GPL tools in src/.  This allows the
123 GPL'd tools to use more gnulib modules than before, since earlier all
124 gnulib files had to be LGPL.
126 ** Update gnulib files.
128 ** Some minor cleanups, like assuming locale.h and setlocale().
130 ** API and ABI is backwards compatible with the previous version.
132 * Version 0.6.7 (released 2006-09-13)
134 ** Fix build failure of idn-int.h on C99 platforms.
135 Reported by Paul Howarth <paul@city-fan.org>.
137 ** The manual includes the GPL license, for the command-line tools.
139 ** The function, variable and concept index is moved to the end of the manual.
141 ** Update gnulib files.
143 ** API and ABI is backwards compatible with the previous version.
145 * Version 0.6.6 (released 2006-08-23)
147 ** Instead of AX_CREATE_STDINT_H, use the stdint gnulib module, for idn-int.h.
148 This solves building on some HPPA systems.  Note that the generated
149 idn-int.h is specific to the build environment that libidn was built
150 under, and is not generally usable by any other compiler (if any) on
151 the host.  This was true before too.
153 ** Update gnulib files.
155 ** API and ABI is backwards compatible with the previous version.
157 * Version 0.6.5 (released 2006-06-07)
159 ** Link the library with external libintl, for gettext.
160 This fixes building on FreeBSD, reported by Kirill Ponomarew
161 <krion@voodoo.bawue.com>.
163 ** Update doxygen config file to version 1.4.7.
165 ** API and ABI is backwards compatible with the previous version.
167 * Version 0.6.4 (released 2006-06-07)
169 ** Fix translation of error messages.
170 Thanks to Joe Orton <jorton@redhat.com>.
172 ** Fix warnings on 64-bit platforms.
173 Thanks to Joe Orton <jorton@redhat.com>.
175 ** The tests are run under valgrind, if it is installed.
176 Use --disable-valgrind-tests to unconditionally disable this.  It is
177 disabled by default for cross compiles.
179 ** API and ABI is backwards compatible with the previous version.
181 * Version 0.6.3 (released 2006-03-08)
183 ** Fixes for the build environment.
185 ** API and ABI is backwards compatible with the previous version.
187 * Version 0.6.2 (released 2006-02-07)
189 ** Fix objdir != srcdir builds for the Java documentation.
190 Thanks to Bernard Leak <bernard@brenda-arkle.demon.co.uk>.
192 ** Update of gnulib files.
194 ** API and ABI is backwards compatible with the previous version.
196 * Version 0.6.1 (released 2006-01-20)
198 ** Make it possible to cross-compile to mingw32.
199 You can build Libidn for Windows by invoking `./configure
200 --host=i586-mingw32msvc' (or similar).
202 ** Minor changes in how the C# code is built.
204 ** Update of gnulib files.
206 ** API and ABI is backwards compatible with the previous version.
208 * Version 0.6.0 (released 2005-12-03)
210 ** A C# port of Libidn has been contributed by Alexander Gnauck.
211 The port resides in the csharp/ directory.  Configure will build it if
212 a working C# compiler can be found.  Mono's "mcs" compiler is known to
213 work (available in Debian in the "mono-mcs" package), but PNET's
214 "cscc" compiler should also work (available in Debian in the "pnet"
215 package).  The port is licensed under the GPL.  Some Microsoft Visual
216 Studio project files are also present in the csharp/ directory, which
217 may be useful when building the port under Windows.  The C# API is
218 currently not documented, improvements are gratefully accepted.
220 ** Support shared libraries on Cygwin and Mingw32, thanks to Yaakov S.
222 ** Fix memory leak.
224 ** API and ABI is backwards compatible with the previous version.
226 * Version 0.5.20 (released 2005-10-23)
228 ** The header file pr29.h is now installed by 'make install'.
230 ** Translation updates.
232 ** Update of gnulib files.
234 ** API and ABI is backwards compatible with the previous version.
236 * Version 0.5.19 (released 2005-09-19)
238 ** The test for setlocale and nl_langinfo has now been separated.
239 The autoconf script now test for locale.h, setlocale and
240 nl_langinfo(CODESET) independently.
242 ** Gnulib updates, fixes for getopt.
244 ** Java manuals in doc/java/ are now generated by Gjdoc from GNU Classpath.
246 ** Kaffe is used to link the pre-built libidn-*.jar file.
248 ** Translation updates.
250 ** API and ABI is backwards compatible with the previous version.
252 * Version 0.5.18 (released 2005-07-16)
254 ** The macro AX_CREATE_STDINT_H that is used to create idn-int.h
255 ** has been updated.
257 ** Fix use of 'head -1' in configure script (should be 'head -n -1'),
258 ** thanks to Carsten Lohrke.
260 ** Announce the help-libidn mailing list in documentation and README.
262 ** Translation updates.
264 ** API and ABI is backwards compatible with the previous version.
266 * Version 0.5.17 (released 2005-05-26)
268 ** The gnulib portability files were updated.
270 ** The license template in files were updated with the new address.
272 ** Translation updated.
274 ** API and ABI is backwards compatible with the previous version.
276 * Version 0.5.16 (released 2005-05-06)
278 ** Mark static PR29 data tables as 'const', thanks to Joe Orton.
280 ** Kinyarwanda translations added, thanks to Steve Murphy.
282 ** API and ABI is backwards compatible with the previous version.
284 * Version 0.5.15 (released 2005-03-19)
286 ** Improvements to code to convert data between character sets.
287 The license template was changed to the LGPL, from the GPL template
288 that was mistakenly used in the previous two releases.  Document here
289 that cleaning up this code has solved memory allocation and arithmetic
290 overflow problems.
292 ** API and ABI is backwards compatible with the previous version.
294 * Version 0.5.14 (released 2005-03-19)
296 ** Building for srcdir != objdir from CVS now work, thanks to Linus Nordberg.
298 ** Simplified Chinese translations added, thanks to Meng Jie.
300 ** Vietnamese translation added, thanks to Clytie Siddall.
302 ** API and ABI is backwards compatible with the previous version.
304 * Version 0.5.13 (released 2005-01-29)
306 ** The code to convert data between character encodings have been cleaned up.
307 The stringprep_convert function has been added to gnulib, under the
308 name iconv_string, and is now used by libidn.  This should not have
309 any user-visible consequences, though.
311 ** It is now possible to bootstrap with unmodified Automake installations.
313 ** Italian translation added, thanks to Marco Colombo.
315 ** Swedish translation updated.
317 ** API and ABI is backwards compatible with the previous version.
319 * Version 0.5.12 (released 2004-12-04)
321 ** Java code now support the XMPP NodePrep and ResourcePrep profiles.
323 ** Bug fixes and improvements to Java code.
324 The allowUnassigned flag is now respected properly.  The prohibited
325 code points check now works.  Arguments are now checked.  Convenience
326 method with allowUnassigned set to false was added.
328 ** Update getopt from gnulib.
330 ** API and ABI is backwards compatible with the previous version.
332 * Version 0.5.11 (released 2004-11-21)
334 ** Fix formatting of man pages, based on warnings from Doclifter.
336 ** Update of gnulib files to fix potential getopt problem on ELF systems.
338 ** API and ABI is backwards compatible with the previous version.
340 * Version 0.5.10 (released 2004-11-08)
342 ** Libtool's -export-symbols-regex is now used to only export official APIs.
343 Before, applications might accidentally access internal functions.
344 Note that this is not supported on all platforms, so you must still
345 make sure you are not using undocumented symbols in Libidn.
347 ** API and ABI is backwards compatible with the previous version.
349 * Version 0.5.9 (released 2004-11-07)
351 ** Align GTK-DOC build infrastructure with GTK-DOC official recommendations.
352 This mean that you can now browse the Libidn API manual using Devhelp.
354 ** Update of gnulib files to fix potential problem in getopt on BSD.
356 ** Documentation improvements.
358 ** API and ABI is backwards compatible with the previous version.
360 * Version 0.5.8 (released 2004-10-12)
362 ** BidiMirroring-3.2.0.txt is now included, not only the generated source code.
363 This allow builds to succeed after 'make realclean'.
365 ** Generated files now have consistent 'DO NOT EDIT!' comments.
367 ** API and ABI is backwards compatible with the previous version.
369 * Version 0.5.7 (released 2004-10-12)
371 ** Shared library version incremented, because new APIs were added.
372 This was forgotten in the last release.
374 ** French translation updated.
376 ** Minor bug fixes.
378 ** API and ABI is backwards compatible with the previous version.
380 * Version 0.5.6 (released 2004-10-02)
382 ** Added functions to convert return codes to human readable text.
384 ** Now using GNULib in command line front end (src/) for portability code.
385 See <http://www.gnu.org/software/gnulib/> for more information on
386 GNULib.  This should make the code easier to read and maintain.
388 ** API and ABI is backwards compatible with the previous version.
389 idna_strerror: ADD.
390 pr29_strerror: ADD.
391 punycode_strerror: ADD.
392 stringprep_strerror: ADD.
393 tld_strerror: ADD.
394 TLD_NO_TLD: ADD.  Replaces TLD_NOTLD.
395 TLD_NOTLD: DEPRECATED.  Use TLD_NO_TLD instead.
397 * Version 0.5.5 (released 2004-09-13)
399 ** Hide accidentally exported variable g_utf8_skip, by marking it as static.
401 ** Various fixes.
403 ** API and ABI is backwards compatible with the previous version.
404 g_utf8_skip: REMOVED.  (But never meant to be used.)
406 * Version 0.5.4 (released 2004-08-08)
408 ** Translation updates.
410 ** API and ABI is backwards compatible with the previous version.
412 * Version 0.5.3 (released 2004-08-05)
414 ** Fix crash in `idn --tld' command line tool.
416 ** API and ABI is backwards compatible with the previous version.
418 * Version 0.5.2 (released 2004-07-14)
420 ** Java "make install" rules are now DESTDIR compatible.
422 ** API and ABI is backwards compatible with the previous version.
424 * Version 0.5.1 (released 2004-07-09)
426 ** Cross compile builds should work.
427 It should work for any sane cross compile target, but the only tested
428 platform is uClibc/uClinux on Motorola Coldfire.
430 ** The example programs now correctly invoke `setlocale (LC_ALL, "")'.
432 ** API and ABI is backwards compatible with the previous version.
434 * Version 0.5.0 (released 2004-06-26)
436 ** Functions to detect "normalization problem sequences" as per PR-29 added.
437 See the new chapter "PR29 Functions" in the manual
438 (doc/libidn.{ps,pdf,html}) for more information and the background
439 story.  An external link that discuss the problem is
440 <http://www.unicode.org/review/pr-29.html>.
442 ** More translations.
443 Added Esperanto (by Edmund GRIMLEY EVANS).
445 ** API and ABI is backwards compatible with the previous version.
446 pr29.h: ADD.  Prototypes for PR29 types and functions.
447 pr29_4, pr29_4z, pr29_8z: ADD.  New API entry points for PR29 functions.
448 Pr29_rc: ADD.  New error code enum type for PR29 functions.
450 * Version 0.4.9 (released 2004-06-11)
452 ** The Java library (java/libidn-*.jar) is included in the distribution.
454 ** JavaDoc manuals (doc/javadoc/) are included.
456 ** API and ABI is backwards compatible with the previous version.
458 * Version 0.4.8 (released 2004-06-01)
460 ** The Java source code is actually included in the distribution.
462 ** API and ABI is backwards compatible with the previous version.
464 * Version 0.4.7 (released 2004-05-31)
466 ** The Java port should now be functional, contributed by Oliver Hitz.
467 See the new section "Java API" in the manual for more information.
469 ** API and ABI is backwards compatible with the previous version.
471 * Version 0.4.6 (released 2004-05-24)
473 ** The header file idn-free.h is actually installed by 'make install'.
475 ** API and ABI is backwards compatible with the previous version.
477 * Version 0.4.5 (released 2004-05-21)
479 ** In IDNA ToUnicode, a `free' on a stale pointer fixed by Ulrich Drepper.
481 ** Several memory leaks fixed by Ulrich Drepper.
483 ** Added more SASLPrep and NFKC test vectors.
485 ** Automake 1.8.4 is used.
487 ** API and ABI is backwards compatible with the previous version.
488 idn_free: ADD.  Wrapper around system `free'.
489 idn-free.h: ADD.  Prototype for `idn_free'.
490                 See idn-free.h for discussion.  The interface is
491                 currently not documented.  Comments and feedback is
492                 appreciated.
494 * Version 0.4.4 (released 2004-04-29)
496 ** Fixed two bugs in iSCSI definition, syncing with newly published RFC 3722.
497 The first bug was an omission of prohibiting the characters in C.1.1,
498 C.1.2 and C.7 (space characters and characters that are inappropriate
499 for canonical representation).  The second was a bug in the definition
500 of the table, causing the entire table to be skipped, of the special
501 prohibited output character table defined in RFC 3722 (see section 6,
502 the characters in the table are various ASCII characters and U+3002).
504 ** A few test vectors for iSCSI were added.
506 ** The self tests are linked with libtool -no-install to avoid wrapper script.
508 ** Separated self test utilities into a separate library, shared by all tests.
510 ** More translations.
511 Added Romanian (by Laurentiu Buzdugan).
513 ** API and ABI is backwards compatible with the previous version.
515 * Version 0.4.3 (released 2004-04-22)
517 ** Fixed a bug in table processing code to prohibit control characters.
518 The problem was that the code used a code point of 0 to indicate end
519 of table, but if (as for table C.2.1) a range starts with 0, this
520 logic would fail.  The end-of-table test is now that both the start
521 and end code points of the range is 0.  Table C.2.1 is responsible for
522 prohibiting non-ASCII control characters, i.e. ASCII 0-31 and 127.
523 Before, libidn silently accepted such strings without complaining.
525 ** A few test vectors for SASLprep were added.
527 ** The pkg-config script no longer include a -R parameter.
529 ** More translations.
530 Added Dutch (by Elros Cyriatan), and German (by Roland Illig).
532 ** API and ABI is backwards compatible with the previous version.
534 * Version 0.4.2 (released 2004-03-20)
536 ** A Punycode implementation in Java was added, by Oliver Hitz.
537 Eventually hopefully a StringPrep, Nameprep and IDNA implementation
538 will be added as well.  Currently you need to specify --enable-java to
539 enable the Java interface.  The Java sources (below java/) are
540 compiled into byte-code (not native code) into a JAR library.
542 ** More translations.
543 Added Danish (by Morten Bo Johansen), French (by Michel Robitaille),
544 Polish (by Jakub Bogusz), and Serbian (by Aleksandar Jelenak).
546 ** Norwegian TLD table added, by Thomas Jacob.
548 ** API and ABI is backwards compatible with the previous version.
550 * Version 0.4.1 (released 2004-03-08)
552 ** The user messages from the command line utility are now translated.
553 Currently English and Swedish is supported.
555 ** Logic of stringprep_locale_charset modified.
556 Future versions will use, in order, $CHARSET iff defined, nl_langinfo
557 (CODESET) iff working, or fall back to returning "ASCII".  Earlier it
558 attempted to guess the system locale, in contrast with the current
559 application's locale, via some setlocale save/set/reset magic.  This
560 change may require you to invoke setlocale() in your application,
561 which is (should be) required for non-ASCII to work anyway.  Based on
562 discussion with Ulrich Drepper.
564 ** The command-line utility now invoke setlocale (LC_ALL, "") at startup.
566 ** Fixed SASLprep tables to prohibit non-ASCII space in output.
567 Non-ASCII space has always been mapped to ASCII space, so it is not
568 clear this really have any effect, but the specification require it.
570 ** Building Libidn as part of GLIBC has been updated.
571 Refer to libc/README for more information.  Incidentally, GLIBC in CVS
572 now include a copy of Libidn.
574 ** API and ABI is backwards compatible with the previous version.
575 IDNA_DLOPEN_ERROR: ADD.  Only used internally by Libidn in libc.
577 * Version 0.4.0 (released 2004-02-28)
579 ** Support for TLD restrictions on IDN strings, contributed by Thomas Jacob.
580 Many TLDs restrict the set of characters that can be used, from the
581 full Unicode 3.2 range that is normally available.  This contribution
582 make it possible for you to test strings for TLD conformance locally.
583 The code can be disabled by --disable-tld.  If enabled (the default),
584 the new API "tld.h" is installed which can be used to check a string
585 for conformance to TLD specific rules.  This add a new self test, and
586 a new chapter in the manual.  People responsible for maintaining TLD
587 tables are hereby encouraged to contribute them (under reasonable
588 licensing terms) for inclusion in future versions of Libidn.  Be
589 warned that the API for TLD checking may change throughout the 0.4.x
590 series as we get feedback on it.
592 ** Kerberos 5 stringprep profile macro is no longer documented.
593 The macro itself will probably be removed in the future, if the
594 specification is dropped from the Kerberos WG agenda.
596 ** API and ABI is backwards compatible with the previous version.
597 stringprep_kerberos5: DEPRECATED.
598 Tld_table_element:
599 Tld_table:
600 Tld_rc: ADD.  New data types.
601 tld_get_4:
602 tld_get_4z:
603 tld_get_z: ADD.  New functions to extract TLD from string.
604 tld_get_table:
605 tld_default_table: ADD.  New functions to get TLD table from TLD name.
606 tld_check_4t:
607 tld_check_4tz: ADD.  New function to provide core TLD operations.
608 tld_check_4:
609 tld_check_4z:
610 tld_check_8z:
611 tld_check_lz: ADD.  New functions that combine all TLD operations in one call.
613 * Version 0.3.7 (released 2004-01-22)
615 ** The command line parameter '--' idiom is documented.
617 ** The iSCSI stringprep profile now recognized as "iSCSI".
618 The earlier name "ISCSIprep" is still recognized, for backwards
619 compatibility.
621 ** DocBook manuals no longer included (the tools are too unstable).
623 ** API and ABI is backwards compatible with the previous version.
625 * Version 0.3.6 (released 2004-01-06)
627 ** The manual now contain a troubleshooting section for the command line tool.
629 ** The PHP interface pass the string directly on the command line.
631 ** The macro that create 'idn-int.h' has been updated to latest version.
633 ** API and ABI is backwards compatible with the previous version.
635 * Version 0.3.5 (released 2003-12-15)
637 ** The program 'idn' accepts input strings directly on the command line.
639 ** The program 'idn' defaults to --idna-to-ascii if no parameter is given.
641 ** The program 'idn' now print user instructions before waiting for input.
643 ** DocBook HTML output not included any longer.
644 The reason is that the filenames generated by docbook2html appear to
645 be rather random, so it is difficult to maintain the Makefile.am rules
646 for them.
648 ** Autoconf 2.59, automake 1.8 and libtool from CVS is used.
650 ** API and ABI is backwards compatible with the previous version.
651 IDNA_CONTAINS_NON_LDH: ADD.  Same integer value as IDNA_CONTAINS_LDH.
652 IDNA_CONTAINS_LDH: DEPRECATED.  LDH (letter-digits-hyphens) characters
653                 are not an error, but non-LDH characters are, when
654                 IDNA_USE_STD3_ASCII_RULES is used.  The logic of the
655                 mnemonic name of this error constant was reversed.
657 * Version 0.3.4 (released 2003-11-09)
659 ** DocBook manuals in XML, PDF, PostScript, ASCII and HTML formats included.
661 * Version 0.3.3 (released 2003-10-18)
663 ** Fixed list of Stringprep profiles in 'idn --help' and 'idn.php'.
665 ** Fixed debug information in 'idn'.
667 ** Internal improvements.
668 Leads to reduced heap memory usage.  Simplified inter-dependency among
669 files in lib/* to make it easier to copy them into your project.
671 ** Debugging stringprep profile 'generic' removed.
673 ** Punycode implementation updated to rfc3492bis-00.
675 ** API and ABI is backwards compatible with the previous version.
676 stringprep_4i: NEW.
677 stringprep_4zi: NEW.
678 stringprep: CHANGED. 'profile' is marked as 'const'.
679 stringprep_profile: CHANGED. 'profile' is marked as 'const'.
680 stringprep_generic: REMOVED. Never meant for public use.
682 * Version 0.3.2 (released 2003-10-07)
684 ** SASL ANONYMOUS stringprep profile "trace" added.
685 It is equivalent to the already supported "plain" SASL ANONYMOUS
686 stringprep profile, except for the name.
688 ** API and ABI is backwards compatible with the previous version.
689 The 'in' parameter to stringprep_profile was changed from 'char*' to
690 'const char*'.
692 * Version 0.3.1 (released 2003-10-02)
694 ** Fixed handling of implicit and explicit zero-length root labels in ToASCII.
696 ** Fixed support for Hangul Syllables during Unicode NFKC normalization.
698 ** Fixed Unicode NFKC normalization of (some) BMP code points.
699 This was done by syncing the NFKC code with latest GLIB, and may have
700 fixed other bugs in the earlier versions of the updated functions.
702 ** Added more IDNA test vectors.
704 ** Emacs Lisp IDNA implementation now set the UseSTD3ASCIIRules flag.
705 This is the appropriate setting for mail-related uses of IDNA.
707 ** API and ABI is backwards compatible with the previous version.
709 * Version 0.3.0 (released 2003-09-23)
711 ** Ported to Mac OS X.
713 ** Gnulib code removed, we now assume a C89 compatible environment.
715 ** Building libidn as a libc add-on now works again.
717 ** Man pages for all public API functions are included.
719 ** Fixed bug in SASLprep profile.
721 ** API and ABI is NOT backwards compatible with the previous version.
722 All previously labeled (since 0.1.x) obsolete functions have been dropped.
723 The use of 'enum' types instead of 'int' added in 0.2.3 reverted, it
724 confused documentation generators and wasn't all that common practice.
726 * Version 0.2.3 (released 2003-08-26)
728 ** Example 4 was the same as example 3, now changed to demo ToUnicode.
730 ** Documentation improvements.
732 ** Prototype cleanups.
733 The proper enum types (Stringprep_rc, Idna_rc, etc) are now used in
734 several places where plain int where used before.  String lengths are
735 handled by (s)size_t instead of int.
737 ** API and ABI is backwards compatible with the previous version.
739 * Version 0.2.2 (released 2003-08-13)
741 ** Fixed problem with strings longer than 4GB in punycode functions.
742 The punycode code cannot handle strings longer than 4GB.  The code now
743 return PUNYCODE_BAD_INPUT on too long input, instead of failing in an
744 unknown way.
746 ** The "idn --idna-to-unicode" command now output locale encoded strings.
748 ** Build fixes, bug fixes.
750 ** API and ABI is backwards compatible with the previous version.
752 * Version 0.2.1 (released 2003-07-04)
754 ** Don't reject zero-length trailing labels as in, e.g., "www.example.org.".
755 The IDNA RFC is not clear on this topic, zero-length labels in general
756 are forbidden by the ToASCII algorithm in section 4.1 step 8, but the
757 terminology section define, inside a parenthesis, that the zero-length
758 root label is in fact not considered a label at all in IDNA.
760 ** Bug fixes.
762 ** API and ABI is backwards compatible with the previous version.
764 * Version 0.2.0 (released 2003-06-19)
766 ** Unicode code point data is now uint32_t, defined in "idn-int.h".
767 A header file "idn-int.h" is generated and installed to make sure the
768 "uint32_t" data type is available on all platforms.  The reason for
769 this change is that on 64-bit platforms, the application was required
770 to convert 32 bit integers (which is how Unicode code points are
771 typically represented) into 64 bit integers before calling libidn
772 functions.
774 ** New idna_*() functions have improved flags handling.
775 The allowunassigned and usestd3asciirules parameters were collapsed
776 into a flags parameter, that can take on the IDNA_ALLOW_UNASSIGNED and
777 IDNA_USE_STD3_ASCII_RULES values.  This allows for easier extensions
778 to support, e.g., Unicode 4.0 or RFC 952 ASCII rules checking.  Note
779 that the old entry points are unmodified (in this regard), and new
780 entry points with this modification were added.
782 ** The manual was moved into a separate directory doc/.
784 ** Bugfixes.
786 ** API and ABI is not backwards compatible.
787 In punycode.h and stringprep.h the "unsigned long" data type was
788 changed into "uint32_t", which cause a API and ABI missmatch.  For
789 idna.h, the old entry points that used "unsigned long" still exist,
790 and new entry points that uses "uint32_t" was added.  To update your
791 application, you probably only need to change "unsigned long" to
792 "uint32_t".  As a result of these changes, the shared object version
793 has been increased.
795 * Version 0.1.15 (released 2003-06-07)
797 ** Bugfixes.
799 ** API and ABI is backwards compatible with the previous version.
801 * Version 0.1.14 (released 2003-05-10)
803 ** Experimental documentation generation in contrib/doxygen/.
804 Simply invoke "doxygen" in that directory and it should build the
805 documentation.
807 ** Lisp API bug fixes.
809 ** API and ABI is backwards compatible with the previous version.
811 * Version 0.1.13 (released 2003-03-13)
813 ** Unfinished Java *.class files implementing the libidn API.
814 See the contrib/java/ directory.  It is implemented using the Java
815 Native Interface, and light initial testing indicate interoperability
816 between GCJ, IBM's JDK and Sun's JDK.
818 ** Building is now silent when gengetopt is not present.
820 ** Bug fixes.
822 ** API and ABI is backwards compatible with the previous version.
824 * Version 0.1.12 (released 2003-03-06)
826 ** Building libidn doesn't require gengetopt.
827 Warnings are still printed though.  Gengetopt will be replaced by argp
828 eventually.
830 ** Command line tool "idn" supports stringprep too.
832 ** New stringprep API entry point: stringprep_profile().
833 It takes a name of the stringprep profile as an argument instead of
834 the stringprep table structure.
836 ** stringprep_*.h are deprecated and will be removed in the future.
837 All symbols have been moved to stringprep.h.  The reasons are that (1)
838 the files typically only defined one CPP macro and exported one symbol
839 definition, which is wasteful as it generates too much work in the
840 manual, and (2) using one header file for all profiles allows easier
841 access to all stringprep profiles during runtime.  Note that the files
842 are still installed, but they only #include stringprep.h now, for
843 backwards compatibility.
845 ** GNU Libc add-on build instructions updated to GNU Libc 2.3.2.
847 ** SASLprep stringprep profile added.
849 ** An online interface to libidn written in PHP added to contrib/web/.
851 ** API and ABI is backwards compatible with the previous version.
853 * Version 0.1.11 (released 2003-02-26)
855 ** Command line application "idn" is included.
856 A simple wrapper around the library that allows you to invoke punycode
857 encoding/decoding and IDNA ToASCII/ToUnicode on the command line.
859 ** Emacs Lisp interface for punycode and IDNA included.
860 See punycode.el and idna.el.
862 ** API and ABI is backwards compatible with the previous version.
864 * Version 0.1.10 (released 2003-02-21)
866 ** idna_*_to_ace() and idna_*ace_to_*() are deprecated in favor of
867 ** idna_to_ascii_from_*() and idna_to_unicode_*_from_*() respectively.
868 The reason was that the old interfaces did not accept the
869 AllowUnassigned and UseSTD3ASCIIRules flags.  Note that the old
870 functions are not removed, but will be in the future.
872 ** IPS iSCSI stringprep profile added.
874 ** A new contrib/ directory added.
875 Currently it contains a Python interface to Libidn, contributed by
876 Stephane Bortzmeyer.
878 ** idna.h and punycode.h are now installed by "make install".
880 ** API and ABI is backwards compatible with the previous version.
882 * Version 0.1.9 (released 2003-02-20)
884 ** SASL ANONYMOUS "plain" stringprep profile added.
886 ** XMPP nodeprep profile fixed.
888 ** API and ABI is backwards compatible with the previous version.
889 For future releases, the NEWS entry will specifically mention whether
890 the C header API or library ABI backwards compatibility is affected.
892 * Version 0.1.8 (released 2003-02-14)
894 ** Portability fixes.
895 This includes not building the API Reference Manual with GTK-DOC by
896 default, if you want it use configure parameter --enable-gtk-doc after
897 making sure your gtkdoc-mkdb accept the --tmpl-dir parameter.
899 ** The type for string length variables is now (s)size_t.
900 Unfortunately this means binary shared library binary backwards
901 compatible is lost.
903 ** New nameprep test vectors.
905 * Version 0.1.7 (released 2003-02-12)
907 ** Uses official IDNA ACE prefix.
909 * Version 0.1.6 (released 2003-02-11)
911 ** Uses tentative IDNA ACE prefix.
913 ** Added XMPP Node/Resource Identifiers stringprep profiles.
915 ** Fixed prohibited character checks for bidi.
917 * Version 0.1.5 (released 2003-01-28)
919 ** The library can now be built as part of GNU Libc.
920 This is experimental and only tested against GNU Libc version 2.3.1.
921 See the libc/ directory, and libc/README in particular.
923 ** Bug fixes.
925 * Version 0.1.4 (released 2003-01-15)
927 ** Documentation fixes.
929 ** Portability fixes.
931 ** Bug fixes.
933 * Version 0.1.3 (released 2003-01-15)
935 ** Added texinfo manual.
937 * Version 0.1.2 (released 2003-01-08)
939 ** Added high-level IDNA API.
941 ** Added example3.c and example4.c demonstrating the high-level IDNA API.
943 * Version 0.1.1 (released 2003-01-08)
945 ** Added documentation using GTK-DOC.
947 ** The obsolete stringprep_utf8_to_ucs4_fast API entry point was removed.
948 By accident it was never removed in 0.1.0.
950 * Version 0.1.0 (released 2003-01-05)
952 ** Official GNU project.
954 ** Renamed from libstringprep to libidn.
956 ** Supports punycode and IDNA.  Caveat emptor: I don't use it myself.
958 ** Uses "unsigned long" for Unicode code points instead of "long".
959 Long is guaranteed to be at least 32 bits by C standards so it is
960 always sufficiently large, no need to use uint32_t and the like.
962 ** The obsolete stringprep_utf8_to_ucs4_fast API entry point was removed.
964 * Version 0.0.8 (released 2002-12-13)
966 ** Portability fixes (now works under Cygwin on Windows 2000).
968 ** Bug fixes.
970 * Version 0.0.7 (released 2002-12-09)
972 ** Apply all tables to entire strings, not just first hit.
974 ** Fix bidi infloop.
976 * Version 0.0.5 (released 2002-12-07)
978 ** Fix prohibited characters handling.
980 ** Fix bidi.
982 ** Renamed type (struct) stringprep_table_element to Stringprep_table_element.
984 ** Renamed type stringprep_profile to Stringprep_profile.
986 ** Renamed type (struct) stringprep_table to Stringprep_table.
988 ** Added more self-tests.
990 * Version 0.0.4 (released 2002-12-06)
992 ** Add unassigned code point handling, including self test cases.
994 ** Portability fixes.
996 * Version 0.0.3 (released 2002-11-30)
998 ** Exported utility function `stringprep_utf8_to_unichar', complementary
999 to existing `stringprep_unichar_to_utf8'.
1001 ** Renamed `stringprep_utf8_to_ucs4_fast' to `stringprep_utf8_to_ucs4' to
1002 clean up API. The old entry point is maintained for binary backwards
1003 compatibility though.
1005 ** The distribution is from now on signed using GnuPG.
1007 ** Bug fixes.
1009 * Version 0.0.2 (released 2002-11-07)
1011 ** NFKC self test.
1013 ** Bug fixes.
1015 * Version 0.0.1 (released 2002-11-06)
1017 ** Add utility functions stringprep_locale_charset(), stringprep_convert() 
1018 and stringprep_locale_to_utf8 () that can be used to convert text from
1019 system's locale into UTF-8, which should be done before invoking
1020 stringprep().  The functions requires iconv() in the operating system.
1022 ** An example program (example.c) that illustrates how libstringprep can be
1023 used is included.
1025 ** The pkg-config --libs output should now include necessary -R options.
1027 * Version 0.0.0 (released 2002-11-05)
1029 ** Initial release
1031 ----------------------------------------------------------------------
1032 Copying and distribution of this file, with or without modification,
1033 are permitted in any medium without royalty provided the copyright
1034 notice and this notice are preserved.