--- id: idna-ssl version: "1.1.0" license: unclear license_treatment: permissive maintenance: abandoned --- # idna_ssl — Patch ssl.match_hostname for Unicode(idna) domains support License: permissive · Maintenance: abandoned · Downloads: 697.0K/mo ## What it is and what it does idna-ssl is a monkey-patch for Python's ssl.match_hostname function to handle Unicode (internationalized) domain names in HTTPS certificate validation. When applied, it allows SSL certificate matching to work correctly with domains containing non-ASCII characters, which would otherwise fail during hostname verification in HTTPS connections. The package was created to work around a Python bug where Unicode domains could not be validated. It patches the ssl module globally before any HTTP client imports. However, the package is no longer maintained; the last release was 2018-07-05 and the repository is archived. The description notes that the core issue was fixed in Python 3.7, though IDNA2008 standard compliance remained incomplete at that time. Use it for: - Making HTTPS requests to internationalized domain names with HTTP clients on Python 3.3–3.6. - Patching legacy Python environments that lack native Unicode domain support in ssl.match_hostname. - Testing applications that connect to non-ASCII domain names on older Python versions. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Patches Python's ssl.match_hostname to support Unicode (IDNA) domain names, enabling SSL certificate validation for internationalized domain names in HTTPS connections. No. The package is abandoned (last release 2018-07-05, repository archived) with high install friction. Modern Python versions have addressed the underlying issue. On older Python versions, the lack of maintenance makes this a poor choice; upgrading Python is the better path. ## Install pip install idna-ssl uv add idna-ssl poetry add idna-ssl ## Installing idna_ssl Before you install: High install friction due to source distribution; package is abandoned (last release 2018-07-05, repository archived), with no maintenance for nearly 6 years. License in practice: Licensed under MIT (permissive), imposing no restrictions on use or redistribution. Quickstart: pip install idna-ssl from idna_ssl import patch_match_hostname patch_match_hostname() import ssl # ssl.match_hostname now supports Unicode domains Requires patching before importing HTTP client libraries; the patch modifies global ssl.match_hostname behavior. Verify before relying: - Whether the underlying ssl.match_hostname issue has been resolved in Python 3.7+, making this patch unnecessary. - Current compatibility with Python versions beyond 3.7 (classifiers only list up to 3.7). - Whether IDNA2008 standard issues mentioned in the description have been addressed in Python's standard library. ## Package facts - License: not declared (permissive) - Python support: unspecified - Install friction: high - Maintenance: abandoned - Downloads: 697.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags unicode domain ssl certificate validation, idna ssl hostname matching, internationalized domain names https, ssl match_hostname unicode patch, cyrillic domain ssl support, internationalized-domains, ssl-patching, legacy-support [View on SkillFed](https://skillfed.io/packages/idna-ssl) · [View on PyPI](https://pypi.org/project/idna-ssl/)