Skip to content

Releases: pffang/libiconv-for-Windows

1.19

16 Apr 06:40

Choose a tag to compare

Upgrade libiconv to 1.19 and update VS project to VS 2026

  • Update libiconv source from 1.18 to 1.19
    • Fixed GB18030 converter bug
    • Added OS/2 special support
    • Fixed --enable-relocatable on native Windows
  • Upgrade Visual Studio project to VS 2026
    • Solution version: 17 -> 18
    • Platform toolset: v143 -> v144
  • Rename helper scripts from vc2022 to vc2026
    • mingw64_vc2026.cmd now auto-detects VS edition
  • Update GitHub Actions workflow

New in 1.19:

  • Fixed a bug in the GB18030 converter.
  • Special support for OS/2: Encoding names that are results of
    kLIBC nl_langinfo(CODESET) are recognized as aliases.
    (Contributed by KO Myung-Hun.)
  • Fixed --enable-relocatable on native Windows.

1.18

28 Dec 07:39

Choose a tag to compare

New in 1.18:

  • Many more transliterations, in particular also of Emoji characters.
  • The iconv_open function is now POSIX:2024 compliant: it recognizes a suffix //NON_IDENTICAL_DISCARD in the 'tocode' argument, with the effect that characters that cannot be represented in the target character set will be silently discarded. Whereas the suffix //IGNORE in the 'tocode' argument has the effect of discarding not only characters that cannot be represented in the target character set, but also invalid multibyte sequences in the input. Accordingly, the iconvctl function accepts requests ICONV_GET_DISCARD_INVALID, ICONV_SET_DISCARD_INVALID, ICONV_GET_DISCARD_NON_IDENTICAL, ICONV_SET_DISCARD_NON_IDENTICAL.
  • The iconv_open function and the iconv program now support multiple suffixes, such as //TRANSLIT//IGNORE, not only one.
  • GB18030 is now an alias for GB18030:2005. A new converter for GB18030:2022 is added. Since this encoding merely cleans up a few private-use-area mappings, you can continue to use the GB18030 converter, for backward compatibility. Its Unicode to GB18030 conversion direction has been enhanced, to help transitioning away from PUA code points.
  • When converting from/to an EBCDIC encoding, a non-standard way of converting newlines can be requested
    • at the C level, by calling iconvctl with argument ICONV_SET_FROM_SURFACE or ICONV_SET_TO_SURFACE, or
    • from the iconv program, by setting the environment variable ICONV_EBCDIC_ZOS_UNIX to a non-empty value.
  • Special support for z/OS: The iconv program adds a charset metadata tag to its output file. (Contributed by Mike Fulton.)
  • For conversions from UCS-2, UCS-4, UTF-16, UTF-32, invoking iconv(cd,NULL,NULL,...) now preserves the byte order state.

1.18-eed6782

06 Oct 10:59

Choose a tag to compare

New in 1.18:

  • Many more transliterations.
  • GB18030 is now an alias for GB18030:2005. A new converter for GB18030:2022
    is added. Since this encoding merely cleans up a few private-use-area
    mappings, you can continue to use the GB18030 converter, for backward
    compatibility. Its Unicode to GB18030 conversion direction has been
    enhanced, to help transitioning away from PUA code points.
  • When converting from/to an EBCDIC encoding, a non-standard way of
    converting newlines can be requested
    • at the C level, by calling iconvctl with argument ICONV_SET_FROM_SURFACE
      or ICONV_SET_TO_SURFACE, or
    • from the iconv program, by setting the environment variable
      ICONV_EBCDIC_ZOS_UNIX to a non-empty value.
  • Special support for z/OS: The iconv program adds a charset metadata tag to
    its output file. (Contributed by Mike Fulton.)