Skip to content

Releases: elixir-unicode/unicode_idna

Unicode IDNA version 0.1.0

03 May 20:39

Choose a tag to compare

Unicode IDNA [v0.1.0] 2026-05-04

Initial release.

Public API

  • Unicode.IDNA.to_ascii/2 and Unicode.IDNA.to_unicode/2 — per-label UTS #46 ToASCII and ToUnicode.

  • Unicode.IDNA.domain_to_ascii/2 and Unicode.IDNA.domain_to_unicode/2 — full-domain wrappers that split on the IDNA label separators (., U+3002, U+FF0E, U+FF61), apply mapping/normalization, validate per §4.1, and re-join.

  • Unicode.IDNA.valid_label?/2 — predicate equivalent to a successful to_ascii/2.

  • RFC 3492 Punycode primitives in Unicode.IDNA.Punycode: encode/1 and decode/1.

  • Unicode.IDNA.Bidi.validate/1 and validate_in_bidi_domain/1 for callers that want to apply the RFC 5893 bidi rule directly.

  • Unicode.IDNA.Context.validate/1 for the RFC 5892 Appendix A CONTEXTJ rules (ZWJ / ZWNJ).