Version 1.01: 2017-07-25
* Fix a deprecation warning about toFOLD_utf8 in 5.26 (this should also
prevent trouble when the current version is removed in 5.30).
Problems found locating distfiles:
Package cabocha: missing distfile cabocha-0.68.tar.bz2
Package convertlit: missing distfile clit18src.zip
Package php-enchant: missing distfile php-enchant/enchant-1.1.0.tgz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
What is Case-Folding?
In non-Unicode contexts, a common idiom to compare two strings
case-insensitively is lc($this) eq lc($that). Before comparing two strings
we normalize them to an all-lowercase version. "Hello", "HELLO", and
"HeLlO" all have the same lowercase form ("hello"), so it doesn't matter
which one we start with; they are all equal to one another after lc.
In Unicode, things aren't so simple. A Unicode character might have
mappings for uppercase, lowercase, and titlecase, and the lowercase mapping
of the uppercase mapping of a given character might not be the character
that you started with! For example lc(uc("\N{LATIN SMALL LETTER SHARP S"))
is "ss", not the eszett we started off with! Case-folding is a part of the
Unicode standard that allows any two strings that differ from one another
only by case to map to the same "case-folded" form, even when those strings
include characters with complex case-mappings.