{"package":"websockets","ecosystem":"pypi","latest_version":"17.1","description":"An implementation of the WebSocket Protocol (RFC 6455 & 7692)","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/websockets/","repository":"https://github.com/python-websockets/websockets","downloads_weekly":90398283,"health":{"score":90,"risk":"low","breakdown":{"maintenance":25,"popularity":20,"security":25,"maturity":15,"community":5,"popularity_floor":0},"deprecated":false,"max_score":100},"vulnerabilities":{"count":0,"critical":0,"high":0,"medium":0,"low":0,"details":[]},"versions":{"latest":"17.1","total_count":53,"recent":["10.4","11.0","11.0.1","11.0.2","11.0.3","12.0","13.0","13.0.1","13.1","14.0","14.1","14.2","15.0","15.0.1","16.0","16.1","16.1.1","17.0","17.0.1","17.1"]},"metadata":{"deprecated":false,"deprecated_message":null,"maintainers_count":0,"first_published":null,"last_published":"2026-08-26T14:55:20.747429Z","dependencies_count":0,"dependencies":[]},"github_stats":{"stars":5721,"forks":614,"open_issues":8,"is_archived":false,"pushed_at":"2026-09-20T13:11:48Z","subscribers_count":108},"bundle":null,"typescript":null,"known_issues":{"bugs_count":3,"bugs_severity":{"high":1,"medium":2},"status_breakdown":{"fixed":3},"link":"/api/bugs/pypi/websockets?version=17.1","scope":"version","details":[{"title":"Observable Timing Discrepancy in aaugustin websockets library","severity":"high","status":"fixed","affected_version":null,"fixed_version":"9.1","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-33880"},{"title":"PYSEC-2021-95: advisory","severity":"medium","status":"fixed","affected_version":null,"fixed_version":"547a26b685d08cac0aa64e5e65f7867ac0ea9bc0","url":"https://github.com/aaugustin/websockets/commit/547a26b685d08cac0aa64e5e65f7867ac0ea9bc0"},{"title":"PYSEC-2018-79: advisory","severity":"medium","status":"fixed","affected_version":null,"fixed_version":"5.0","url":"https://github.com/aaugustin/websockets/pull/407"}]},"historical_compromise":null,"recommendation":{"action":"safe_to_use","issues":[],"use_version":"17.1","version_hint":null,"summary":"websockets@17.1 is safe to use (health: 90/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/websockets","tokens_estimated":12,"use_when":"you only need to know if the package exists (hallucination guard)"},{"endpoint":"/api/health/pypi/websockets","tokens_estimated":80,"use_when":"you only need a 0-100 score for go/no-go (>=70 = safe)"},{"endpoint":"/api/prompt/pypi/websockets","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"},"_cache":"hit","_response_ms":0}