libpsl v0.17.0 released

7 views
Skip to first unread message

Tim Ruehsen

unread,
Jan 16, 2017, 10:39:26 AM1/16/17
to libps...@googlegroups.com
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.
signature.asc
Reply all
Reply to author
Forward
0 new messages