On this page:
4.1 Known Issues
4.1.1 Non-ASCII email addresses
4.2 Version History
4.2.1 Version 1.4
4.2.2 Version 1.3
4.2.3 Version 1.2
4.2.4 Version 1.1
4.3 Licensing
9.3

4 Package Notes (1.4)🔗

Splitflap can be considered stable. No backward-incompatible changes are planned.

4.1 Known Issues🔗

See Splitflap’s issues tracker on Github for any known problems with the library, or to report problems.

4.1.1 Non-ASCII email addresses🔗

Splitflap can convert internationalized domain names and URLs to their ASCII form (see Internationalized domain names), but it cannot include an email address whose local part (the part before the @) contains non-ASCII characters. Such addresses have no ASCII form (RFC 6530), and the Atom 1.0 spec requires email addresses to conform to RFC 2822, which allows only ASCII.

4.2 Version History🔗

4.2.1 Version 1.4🔗

  • dns-domain? now allows labels that start with a digit (per RFC 1123) and labels of up to 63 bytes; limits domains to 253 bytes; and no longer accepts the empty string. As a result, valid-url-string? no longer accepts URLs with an empty host.

  • email-address? now checks the entire local part (previously one allowed character was enough), and it now applies exactly the same rules as validate-email-address. Both accept uppercase letters and `, and both reject local parts that start or end with a period or contain two periods in a row.

  • Added tag-authority?. mint-tag-uri now requires a lowercase authority, and allows only a–z, 0–9, -, . and _ before the @ of an email authority, per RFC 4151. The W3C Feed Validator rejects Atom feeds whose tag URIs use other authorities.

  • Added domain->ascii, url-string->ascii and email-address->ascii, which convert internationalized domain names to ASCII according to IDNA2008 (see Internationalized domain names). url-string->ascii also percent-encodes any other non-ASCII characters, following RFC 3987. email-address->ascii converts only the domain, because a non-ASCII local part has no ASCII form.

  • dns-domain? now requires labels with -- in the third and fourth positions to be valid A-labels, and valid-url-string? now rejects URLs that contain non-ASCII characters.

  • The MIME type table (mime-types-by-ext) is now loaded the first time it is used, rather than whenever Splitflap is loaded.

4.2.2 Version 1.3🔗

  • Made mime-types-by-ext a plain hash table rather than a promise. You no longer need to use force to access the table (though that will still work).

4.2.3 Version 1.2🔗

  • Fix exception raised in express-xml when no entries are present (#9)

  • Added zero-arity form of infer-moment to get current moment

4.2.4 Version 1.1🔗

4.3 Licensing🔗

Splitflap is provided under the terms of the Blue Oak 1.0.0 license.

The split-flap animation in the HTML edition of this documentation comes from the ticker-board project by Robin James Kerrison, under the terms of the MIT license.