{"package":"signal-exit","ecosystem":"npm","latest_version":"4.1.0","description":"when you want to fire an event no matter how a process exits.","license":"ISC","license_risk":"permissive","commercial_use_notes":"Permissive: commercial closed-source use OK; preserve the copyright notice.","homepage":"https://github.com/tapjs/signal-exit#readme","repository":"https://github.com/tapjs/signal-exit","downloads_weekly":287320574,"health":{"score":75,"risk":"moderate","breakdown":{"maintenance":10,"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":"4.1.0","total_count":24,"recent":["1.3.0","1.3.1","2.1.0","2.1.1","2.0.0","2.1.2","3.0.0-candidate","3.0.0","3.0.1","3.0.2","3.0.3","3.0.4","3.0.5","3.0.6","3.0.7","4.0.0","4.0.1","4.0.2","4.0.3","4.1.0"]},"metadata":{"deprecated":false,"deprecated_message":null,"maintainers_count":2,"first_published":"2015-05-16T06:45:54.221Z","last_published":"2023-07-29T05:44:56.721Z","dependencies_count":0,"dependencies":[]},"github_stats":{"stars":200,"forks":26,"open_issues":11,"is_archived":false,"pushed_at":"2025-10-25T19:21:39Z","subscribers_count":10},"bundle":null,"typescript":{"score":10,"has_types":true,"types_source":"bundled","types_package":null},"known_issues":{"bugs_count":0,"bugs_severity":{},"status_breakdown":{},"link":null,"scope":"none"},"historical_compromise":null,"recommendation":{"action":"safe_to_use","issues":[],"use_version":"4.1.0","version_hint":null,"summary":"signal-exit@4.1.0 is safe to use (health: 75/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/npm/signal-exit","tokens_estimated":12,"use_when":"you only need to know if the package exists (hallucination guard)"},{"endpoint":"/api/health/npm/signal-exit","tokens_estimated":80,"use_when":"you only need a 0-100 score for go/no-go (>=70 = safe)"},{"endpoint":"/api/prompt/npm/signal-exit","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 15 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":1,"active_contributors_12m":1,"primary_author_ratio":1.0,"owner_account_age_days":3765,"is_archived":false,"stars":200,"alerts":["single_active_maintainer_3m","single_author_dominance"]},"malicious":{"is_malicious":false},"scorecard":{"available":true,"score":3.4,"tier":"weak"},"quality":{"available":true,"criticality_score":0.8,"criticality_tier":"critical","velocity_pct":14.7,"velocity_trend":"growing","publish_security":"signed"},"co_used_with":[{"package":"biopython","occurrences":8},{"package":"pyreadline","occurrences":8}],"version_history_summary":{"total_versions":20,"first_release_age_days":4124,"last_release_days_ago":1129,"avg_days_between_releases":217,"release_velocity":"stale"}}