public inbox for cygwin-announce@cygwin.com
 help / color / mirror / Atom feed
* Updated: libidn2/-doc/-devel/_0 mingw64-x86_64-libidn2 2.3.7
@ 2024-01-28  2:15 Cygwin libidn2 Maintainer
  0 siblings, 0 replies; only message in thread
From: Cygwin libidn2 Maintainer @ 2024-01-28  2:15 UTC (permalink / raw)
  To: Cygwin Announcements

The following packages have been upgraded in the Cygwin distribution:

* libidn2			2.3.7
* libidn2-doc			2.3.7
* libidn2-devel			2.3.7
* libidn2_0			2.3.7
* mingw64-x86_64-libidn2	2.3.7

International Domain Name library encodes and decodes Internationalized
Domain Names implementing IETF IDN WG Stringprep, Punycode, IDNA2008,
and Unicode TR46 specifications.

Mingw packages provide MS VC RT-linked binaries, NOT Cygwin binaries,
for use with the mingw64-{x86_64,i686}-gcc cross compiler, installed in
/usr/{x86_64,i686}-w64-mingw32/sys-root/mingw/{bin,lib,include}/.

For more information see the project home page:

	https://www.gnu.org/software/libidn/#libidn2

or the repo README:

	https://gitlab.com/libidn/libidn2

See below or read /usr/share/doc/libidn2/NEWS after installation for
details of changes:

	https://gitlab.com/libidn/libidn2/-/blob/master/NEWS


2.3.7	2024-01-27

- Really include tests/standalone.sh in tarball.

2.3.6	2024-01-27

- Bump libtool version numbers to reflect API/ABI addition.

- Include tests/standalone.sh in tarball.

2.3.5	2024-01-27

- Declaration of future API/ABI backwards compatibility stability.
  GNU libc dlopen libidn2 and use the name libidn2.so.0 for this.
  We believe that it will be too challenging to ever do hard ABI break
  that for normal libraries is justified to remove deprecated APIs.
  Thus we decided that we will support the current ABI for a long time.
  Of course, if really convincing arguments for doing a ABI break
  appears in the future we may re-consider, but take this as a
  declaration of intent of will and that future ABI breaks should be
  discussed and co-ordinated with the glibc team first.

- Add public APIs for raw Punycode encoding/decoding.
  Normal applications rarely need this, but it cleans up the code and
  allow for external testing of the APIs, and resolve
  <https://gitlab.com/libidn/libidn2/-/issues/80> due to earlier use of
  weak symbols for internal symbols _idn2_punycode_encode and
  _idn2_punycode_decode.
  We will support these internal symbols for backwards compatibility.
  This allows a clean migration path for code that is still using the
  internal names.

- Bump required gettext version to 0.19.8 for musl-libc.

- Un-deprecate idn2_to_ascii_4i and make it NUL terminate output.
  The API idn2_to_ascii_4i was deprecated in version 2.1.1 released in
  2019-02-08.
  In that release, the API was also modified to not NUL-terminate the
  output.
  That is contrary to the old libidn2 behaviour, the behaviour of
  libidn's API idna_to_ascii_4i, and the API documentation for the
  function.
  Since we are not likely to ever break backwards API/ABI compatibility
  in libidn2, and the deprecated gaurds leads to some trouble (see
  report in <https://gitlab.com/libidn/libidn2/-/merge_requests/93>) we
  decided to un-deprecate this function, as supporting it is not costly
  and the majority of code that cares about conformance has likely been
  modified.
  This will fix the error code and NUL termination report by Yegor
  Bychin in <https://gitlab.com/libidn/libidn2/-/issues/100>.
  We still encourage you to use the replacement API/ABI
  idn2_to_ascii_4i2 instead, when appropriate.

- Compiler warning improvements.
  As before, compiler warnings are enabled by default.
  You may disable them using ./configure --disable-gcc-warnings or turn
  them into fatal errors using ./configure --enable-gcc-warnings=error
  to add -Werror and sensible -Wno-error='s.
  Based on gnulib's manywarnings, see
  <https://www.gnu.org/software/gnulib//manual/html_node/manywarnings.html>.

- tests: Added script tests/standalone.sh suitable for integrators.
  The main purpose is to test a system-installed libidn2 library and
  idn2 tool, suitable for distributor checking (a'la Debian's
  autopkgtest/debci).
  It may also be used to test a newly built libidn2 outside the usual
  'make check' infrastructure.
  To check that your system libidn2 library and idn2 tool is working,
  invoke the script with `srcdir` as an environment variable indicating
  where it can be find the source code for libidn2's tests/ directory
  (it will use the directory name where the script is by default):

	tests/standalone.sh

  If your system libidn2 is too old to pass certain tests, disable them
  using STANDALONE_DISABLE like this:

	STANDALONE_DISABLE='*punycode*' tests/standalone.sh

  See the script for more parameters.
  If the libidn2 under testing is too old and has known bugs, that
  should cause tests to fail, which is intentional.

- Various minor build fixes and translation updates.

- API and ABI is backwards compatible with the previous version.
	idn2_punycode_decode: ADD.
	idn2_punycode_encode: ADD.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-01-28  2:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-28  2:15 Updated: libidn2/-doc/-devel/_0 mingw64-x86_64-libidn2 2.3.7 Cygwin libidn2 Maintainer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).