module documentation

Shared interface to IDNA encoding and decoding, using the idna PyPI package if available, otherwise the stdlib implementation.

Function _idnaBytes Convert some text typed by a human into some ASCII bytes.
Function _idnaText Convert some IDNA-encoded octets into some human-readable text.
def _idnaBytes(text: str) -> bytes: (source)

Convert some text typed by a human into some ASCII bytes.

This is provided to allow us to use the partially-broken IDNA implementation in the standard library if the more-correct idna package is not available; service_identity is somewhat stricter about this.

Parameters
text:unicodeA domain name, hopefully.
Returns
bytesThe domain name's IDNA representation, encoded as bytes.
def _idnaText(octets: bytes) -> str: (source)

Convert some IDNA-encoded octets into some human-readable text.

Currently only used by the tests.

Parameters
octets:bytesSome bytes representing a hostname.
Returns
unicodeA human-readable domain name.