{"package":"idna","ecosystem":"pypi","latest_version":"3.18","description":"Internationalized Domain Names in Applications (IDNA)","license":"BSD-3-Clause","license_risk":"permissive","commercial_use_notes":"Permissive: commercial closed-source use OK; preserve the copyright notice.","homepage":"https://pypi.org/project/idna/","repository":"https://github.com/kjd/idna","downloads_weekly":385026776,"health":{"score":85,"risk":"low","breakdown":{"maintenance":25,"popularity":20,"security":25,"maturity":12,"community":3,"popularity_floor":0},"deprecated":false,"max_score":100},"vulnerabilities":{"count":0,"critical":0,"high":0,"medium":0,"low":0,"details":[]},"versions":{"latest":"3.18","total_count":41,"recent":["2.10","3.0","3.1","3.2","3.3","3.4","3.5","3.6","3.7","3.8","3.9","3.10","3.11","3.12","3.13","3.14","3.15","3.16","3.17","3.18"]},"metadata":{"deprecated":false,"deprecated_message":null,"maintainers_count":0,"first_published":null,"last_published":"2026-06-02T14:34:06.319954Z","dependencies_count":3,"dependencies":["ruff>=0.6.2; extra == \"all\"","mypy>=1.11.2; extra == \"all\"","pytest>=8.3.2; extra == \"all\""]},"github_stats":{"stars":287,"forks":126,"open_issues":0,"is_archived":false,"pushed_at":"2026-07-16T18:33:19Z","subscribers_count":11},"bundle":null,"typescript":null,"known_issues":{"bugs_count":2,"bugs_severity":{"medium":2},"status_breakdown":{"fixed":2},"link":"/api/bugs/pypi/idna?version=3.18","scope":"version","details":[{"title":"PYSEC-2024-60: advisory","severity":"medium","status":"fixed","affected_version":null,"fixed_version":"1d365e17e10d72d0b7876316fc7b9ca0eebdd38d","url":"https://huntr.com/bounties/93d78d07-d791-4b39-a845-cbfabc44aadb"},{"title":"Internationalized Domain Names in Applications (IDNA) vulnerable to denial of service from specially crafted inputs to idna.encode","severity":"medium","status":"fixed","affected_version":null,"fixed_version":"3.7","url":"https://github.com/kjd/idna/security/advisories/GHSA-jjg7-2v4v-x38h"}]},"historical_compromise":null,"recommendation":{"action":"safe_to_use","issues":[],"use_version":"3.18","version_hint":null,"summary":"idna@3.18 is safe to use (health: 85/100)"},"version_scoped":null,"_meta":{"endpoint":"check","tier":"full","philosophy":"DepScope is free. Use the cheapest endpoint that answers your real question.","cheaper_alternatives":[{"endpoint":"/api/exists/pypi/idna","tokens_estimated":12,"use_when":"you only need to know if the package exists (hallucination guard)"},{"endpoint":"/api/health/pypi/idna","tokens_estimated":80,"use_when":"you only need a 0-100 score for go/no-go (>=70 = safe)"},{"endpoint":"/api/prompt/pypi/idna","tokens_estimated":280,"use_when":"you want a plain-text LLM-friendly brief instead of JSON"},{"endpoint":"POST /api/check_bulk","tokens_estimated":60,"use_when":"you have 5+ packages to check; sends one round-trip instead of N"}],"docs":"https://depscope.dev/integrate","hint_bulk":"You've called /api/check 88 times in 60s. Save bandwidth + tokens with POST /api/check_bulk (1 round-trip for N pkgs)."},"requested_version":null,"_cache":"hit","_response_ms":0,"_powered_by":"depscope.dev — free package intelligence for AI agents","typosquat":{"is_suspected":false},"maintainer_trust":{"available":true,"bus_factor_3m":3,"active_contributors_12m":7,"primary_author_ratio":0.9,"owner_account_age_days":6370,"is_archived":false,"stars":277,"alerts":["single_author_dominance"]},"malicious":{"is_malicious":false},"scorecard":{"available":false},"quality":{"available":true,"criticality_score":0.525,"criticality_tier":"high","velocity_pct":null,"velocity_trend":null,"publish_security":null},"version_history_summary":{"total_versions":20,"first_release_age_days":4748,"last_release_days_ago":44,"avg_days_between_releases":250,"release_velocity":"active"}}