Hi,
libpsl goes TR46 non-transitional (IDNA 2008 + preprocessing).
When building with libicu we formerly used TR46 transitional, now switched to
TR46 non-transitional.
When building with libidn2 we formerly used IDNA2008 without preprocessing.
Now we switched to TR46 non-transitional when building with libidn2>=0.14.
FYI, libidn2>=0.16 is recommended due to two bugs fixed.
When building with libidn, you are at IDNA2003 and need to do the
preprocessing by yourself (lowercasing, NFC).
While writing this I realize that I missed to amend the API docs... sigh 8^)
Summary from the Unicode docs (
https://unicode.org/reports/tr46):
" Client software, such as browsers and emailers, faces a difficult transition
from the version of international domain names approved in 2003 (IDNA2003), to
the revision approved in 2010 (IDNA2008). The specification in this document
provides a mechanism that minimizes the impact of this transition for client
software, allowing client software to access domains that are valid under
either system.
The specification provides two main features: One is a comprehensive mapping to
support current user expectations for casing and other variants of domain
names. Such a mapping is allowed by IDNA2008. The second is a compatibility
mechanism that supports the existing domain names that were allowed under
IDNA2003. This second feature is intended to improve client behavior during
the transitional period."
16.01.2017 Release V0.17.0
* Use TR46 non-transitional for IDNA (libicu, libidn2 >= 0.14)
* Fix coverage upload from TravisCI to Coveralls
* New tests to cover psl_latest() and psl_dist_filename()
Project Website
https://github.com/rockdaboot/libpsl
Online Documentation
https://rockdaboot.github.io/libpsl/
Getting the Source Code
git clone
https://github.com/rockdaboot/libpsl
Source Code Test Coverage
https://coveralls.io/github/rockdaboot/libpsl?branch=master
The git 'master' branch will reflect the latest release.
The 'develop' branch will be used for future development.
The 'debian' branch will be used for unofficial Debian packaging.