Software that uses DNS hostnames, including in web URLs, must handle all valid hostnames. Names often mishandled include:
- Names in new top-level domains. Some software assumes that TLD names will be short, which affects names like .TRAVELERSINSURANCE and .CANCERRESEARCH. Some software validate names with static lists of TLDs, which quickly become obsolete.
- Internationalized domain names (IDNs) written with UTF-8 characters, such as .みんな. Some software only handles ASCII hostnames.
IDN names can be written in two forms, UTF-8 U-labels intended for humans, and ASCII A-labels intended for DNS software.
Web applications can be general purpose like wiki or blogging packages, or specialized widgets or libraries. To the extent possible, patches should drop in without changing the API or user interface.
Applications that use domain names or URIs must support all valid hostnames including IDNs (written using U-labels) and new TLDs.
We will consider any updates to applications or libraries that provides support for all valid hostnames. Software must handle both A-labels and U-labels, and preferentially display U-labels to users. Software that handles user input, either directly or via libraries, must apply standard transformations to normalize UTF-8 input to U-labels as described in the IDNA2008 standards.
Libraries and toolkits
A library or toolkit should be widely used. We recognize that wide use is often hidden from view, as e.g. thousands of e-commerce servers may rely on the library but not be mentionable. We will accept anything that is used in three known programs, provided they are not (otherwise) related to the project maintainers.