{"id":378107,"url":"https://github.com/tapjs/signal-exit","last_synced_at":"2026-08-13T01:31:35.037Z","repository":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"tapjs","name":"TAP in JavaScript","uuid":"16528145","kind":"organization","description":"An organization to house node-tap and friends","email":"isaacs@node-tap.org","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/16528145?v=4","repositories_count":39,"last_synced_at":"2024-05-01T09:31:32.612Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["isaacs","tapjs"]}},"html_url":"https://github.com/tapjs","funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"total_stars":3417,"followers":35,"following":0,"created_at":"2022-11-02T16:20:08.922Z","updated_at":"2024-05-01T09:31:46.108Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs/repositories"},"packages":[{"id":2360714,"name":"signal-exit","ecosystem":"npm","description":"when you want to fire an event no matter how a process exits.","homepage":"https://github.com/tapjs/signal-exit#readme","licenses":"ISC","normalized_licenses":["ISC"],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["signal","exit"],"namespace":null,"versions_count":24,"first_release_published_at":"2015-05-16T06:45:54.221Z","latest_release_published_at":"2023-07-29T05:44:56.721Z","latest_release_number":"4.1.0","last_synced_at":"2026-08-12T00:47:54.358Z","created_at":"2022-04-10T00:41:59.079Z","updated_at":"2026-08-12T00:47:54.358Z","registry_url":"https://www.npmjs.com/package/signal-exit","install_command":"npm install signal-exit","documentation_url":null,"metadata":{"funding":{"url":"https://github.com/sponsors/isaacs"},"dist-tags":{"latest":"4.1.0","next":"3.0.1"},"contentPolicy":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"tapjs","name":"TAP in JavaScript","uuid":"16528145","kind":"organization","description":"An organization to house node-tap and friends","email":"isaacs@node-tap.org","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/16528145?v=4","repositories_count":39,"last_synced_at":"2024-05-01T09:31:32.612Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["isaacs","tapjs"]}},"html_url":"https://github.com/tapjs","funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"total_stars":3417,"followers":35,"following":0,"created_at":"2022-11-02T16:20:08.922Z","updated_at":"2024-05-01T09:31:46.108Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs/repositories"},"tags":[{"name":"v4.1.0","sha":"458776d9cf8be89712aa1f7b45bb2163ce15ef4a","kind":"tag","published_at":"2023-07-29T05:44:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0/manifests"},{"name":"v4.0.3","sha":"bae4850282e36eba85291b0bbb30db92ad87413f","kind":"tag","published_at":"2023-07-29T00:27:18.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"8fa7fc9a9c63f559af43d292b7eb727901775507","kind":"tag","published_at":"2023-05-10T20:16:23.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"9600c5532ac69846c5eb84592b23ad33aba87c87","kind":"tag","published_at":"2023-04-16T06:14:36.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"c791d0367e1f1fa46e808cde1138f256aa488b7c","kind":"tag","published_at":"2023-04-16T00:32:17.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0/manifests"},{"name":"v3.0.7","sha":"03dd77a96caa309c6a02c59274d58c812a2dce45","kind":"tag","published_at":"2022-02-03T21:05:29.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.7","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7/manifests"},{"name":"v3.0.6","sha":"2d6a8a29bd8d4265ad769b772415bb85c6b5be8b","kind":"tag","published_at":"2021-11-18T16:55:30.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.6","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"7b4436f0070df3c50187177cb690445b1aac6f59","kind":"tag","published_at":"2021-09-29T20:44:31.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.5","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"e98985e48852f258d9b39ed5a08204a012b0a999","kind":"tag","published_at":"2021-09-15T23:29:39.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.4","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"bb32fe5e3126e9bb55acf83168628839d3a81ea6","kind":"tag","published_at":"2020-03-26T19:30:04.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"9c5ad9809fe6135ef22e2623989deaffe2a4fa8a","kind":"tag","published_at":"2016-12-04T03:20:51.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"afbbdbfb16df1e0db553838d17501bca0fd53ce2","kind":"tag","published_at":"2016-09-08T15:32:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"2bbec4e5d9f9cf1f7529b1c923d1b058e69ccf7f","kind":"tag","published_at":"2016-06-13T22:34:49.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0/manifests"},{"name":"v2.1.2","sha":"8d50231bda6d0d1c4d39de20fc09d11487eb9951","kind":"tag","published_at":"2015-05-25T10:06:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"6a35feb2fca13587de78b8580c397f0e320b40f5","kind":"tag","published_at":"2015-05-25T06:00:22.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"b2003f133816d4e1fa5dc8f6ddd55854f6de24ec","kind":"tag","published_at":"2015-05-25T02:44:15.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"5f2c6daff156d982ba180363d57488c8ed1aa0c4","kind":"tag","published_at":"2015-05-23T06:47:33.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0/manifests"},{"name":"v1.3.1","sha":"cb1fbb71eb4bdc99346be59e840e1709d404efca","kind":"tag","published_at":"2015-05-20T15:46:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"709cad913cf8a033ed2f6ef0c942a44e21f00d5c","kind":"tag","published_at":"2015-05-19T04:49:03.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"a75ae7fb47cb0c85c4727837a7d92f950be2df6a","kind":"tag","published_at":"2015-05-18T01:44:45.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.2.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"2b1715cb2c125745f563acf4ade61e400c83517c","kind":"tag","published_at":"2015-05-16T19:19:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"fa46d6f1a87d46e5c35a5665d407d95db25ebae8","kind":"tag","published_at":"2015-05-16T07:06:28.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1/manifests"}]},"repo_metadata_updated_at":"2026-08-08T23:33:21.905Z","dependent_packages_count":2277,"downloads":1104996944,"downloads_period":"last-month","dependent_repos_count":1770605,"rankings":{"downloads":0.002299905484836504,"dependent_repos_count":0.019056359731502465,"dependent_packages_count":0.035018798989355816,"stargazers_count":4.159818285513083,"forks_count":4.872624902014416,"docker_downloads_count":0.00016427896320260742,"average":1.5148304217827329},"purl":"pkg:npm/signal-exit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/signal-exit","docker_dependents_count":72941,"docker_downloads_count":21425431438,"usage_url":"https://repos.ecosyste.ms/usage/npm/signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":true,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/signal-exit/codemeta","maintainers":[{"uuid":"bcoe","login":"bcoe","name":null,"email":"bencoe@gmail.com","url":null,"packages_count":558,"html_url":"https://www.npmjs.com/~bcoe","role":null,"created_at":"2022-11-14T10:48:27.699Z","updated_at":"2022-11-14T10:48:27.699Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/bcoe/packages"},{"uuid":"isaacs","login":"isaacs","name":null,"email":"i@izs.me","url":null,"packages_count":431,"html_url":"https://www.npmjs.com/~isaacs","role":null,"created_at":"2022-11-14T10:48:27.659Z","updated_at":"2022-11-14T10:48:27.659Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/isaacs/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5726751,"maintainers_count":1223887,"namespaces_count":412299,"keywords_count":867340,"github":"npm","metadata":{"funded_packages_count":182970,"rate_limit":1},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2026-08-12T11:14:47.046Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/namespaces"}},{"id":10414672,"name":"github.com/tapjs/signal-exit","ecosystem":"go","description":null,"homepage":null,"licenses":"blueoak-1.0.0","normalized_licenses":["BlueOak-1.0.0"],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":[],"namespace":null,"versions_count":22,"first_release_published_at":"2015-05-16T07:06:28.000Z","latest_release_published_at":"2023-07-29T05:44:40.000Z","latest_release_number":"v4.1.0+incompatible","last_synced_at":"2026-08-12T00:47:54.538Z","created_at":"2024-06-21T05:06:33.821Z","updated_at":"2026-08-12T00:47:54.538Z","registry_url":"https://pkg.go.dev/github.com/tapjs/signal-exit","install_command":"go get github.com/tapjs/signal-exit","documentation_url":"https://pkg.go.dev/github.com/tapjs/signal-exit#section-documentation","metadata":{},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"tapjs","name":"TAP in JavaScript","uuid":"16528145","kind":"organization","description":"An organization to house node-tap and friends","email":"isaacs@node-tap.org","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/16528145?v=4","repositories_count":39,"last_synced_at":"2024-05-01T09:31:32.612Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["isaacs","tapjs"]}},"html_url":"https://github.com/tapjs","funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"total_stars":3417,"followers":35,"following":0,"created_at":"2022-11-02T16:20:08.922Z","updated_at":"2024-05-01T09:31:46.108Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs/repositories"},"tags":[{"name":"v4.1.0","sha":"458776d9cf8be89712aa1f7b45bb2163ce15ef4a","kind":"tag","published_at":"2023-07-29T05:44:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0/manifests"},{"name":"v4.0.3","sha":"bae4850282e36eba85291b0bbb30db92ad87413f","kind":"tag","published_at":"2023-07-29T00:27:18.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"8fa7fc9a9c63f559af43d292b7eb727901775507","kind":"tag","published_at":"2023-05-10T20:16:23.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"9600c5532ac69846c5eb84592b23ad33aba87c87","kind":"tag","published_at":"2023-04-16T06:14:36.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"c791d0367e1f1fa46e808cde1138f256aa488b7c","kind":"tag","published_at":"2023-04-16T00:32:17.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0/manifests"},{"name":"v3.0.7","sha":"03dd77a96caa309c6a02c59274d58c812a2dce45","kind":"tag","published_at":"2022-02-03T21:05:29.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.7","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7/manifests"},{"name":"v3.0.6","sha":"2d6a8a29bd8d4265ad769b772415bb85c6b5be8b","kind":"tag","published_at":"2021-11-18T16:55:30.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.6","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"7b4436f0070df3c50187177cb690445b1aac6f59","kind":"tag","published_at":"2021-09-29T20:44:31.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.5","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"e98985e48852f258d9b39ed5a08204a012b0a999","kind":"tag","published_at":"2021-09-15T23:29:39.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.4","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"bb32fe5e3126e9bb55acf83168628839d3a81ea6","kind":"tag","published_at":"2020-03-26T19:30:04.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"9c5ad9809fe6135ef22e2623989deaffe2a4fa8a","kind":"tag","published_at":"2016-12-04T03:20:51.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"afbbdbfb16df1e0db553838d17501bca0fd53ce2","kind":"tag","published_at":"2016-09-08T15:32:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"2bbec4e5d9f9cf1f7529b1c923d1b058e69ccf7f","kind":"tag","published_at":"2016-06-13T22:34:49.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0/manifests"},{"name":"v2.1.2","sha":"8d50231bda6d0d1c4d39de20fc09d11487eb9951","kind":"tag","published_at":"2015-05-25T10:06:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"6a35feb2fca13587de78b8580c397f0e320b40f5","kind":"tag","published_at":"2015-05-25T06:00:22.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"b2003f133816d4e1fa5dc8f6ddd55854f6de24ec","kind":"tag","published_at":"2015-05-25T02:44:15.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"5f2c6daff156d982ba180363d57488c8ed1aa0c4","kind":"tag","published_at":"2015-05-23T06:47:33.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0/manifests"},{"name":"v1.3.1","sha":"cb1fbb71eb4bdc99346be59e840e1709d404efca","kind":"tag","published_at":"2015-05-20T15:46:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"709cad913cf8a033ed2f6ef0c942a44e21f00d5c","kind":"tag","published_at":"2015-05-19T04:49:03.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"a75ae7fb47cb0c85c4727837a7d92f950be2df6a","kind":"tag","published_at":"2015-05-18T01:44:45.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.2.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"2b1715cb2c125745f563acf4ade61e400c83517c","kind":"tag","published_at":"2015-05-16T19:19:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"fa46d6f1a87d46e5c35a5665d407d95db25ebae8","kind":"tag","published_at":"2015-05-16T07:06:28.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1/manifests"}]},"repo_metadata_updated_at":"2026-08-06T04:18:27.221Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":6.9084630874839235,"dependent_packages_count":6.471761518307064,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":6.690112302895494},"purl":"pkg:golang/github.com/tapjs/signal-exit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/tapjs/signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/tapjs/signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/tapjs/signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Ftapjs%2Fsignal-exit/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2263069,"maintainers_count":0,"namespaces_count":837425,"keywords_count":122443,"github":"golang","metadata":{"funded_packages_count":65362,"sync_missing_packages_cursor":{"timestamp":"2026-08-12T00:18:10.975284Z","path":"github.com/fhunleth/muontrap","version":"v0.2.1"},"rate_limit":1},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-08-12T12:33:12.528Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":13794850,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T16:13:00.282Z","latest_release_published_at":"2026-02-13T16:13:00.282Z","latest_release_number":"4.1.0-5","last_synced_at":"2026-03-13T22:20:09.485Z","created_at":"2026-02-13T16:12:59.860Z","updated_at":"2026-08-06T04:18:26.851Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs, node-typescript, node-tap \u003c!nocheck\u003e, node-ts-node \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.850Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":2213,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":891},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-08-10T05:07:58.402Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":13523457,"name":"node-signal-exit","ecosystem":"debian","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["javascript"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-10T22:09:42.554Z","latest_release_published_at":"2026-02-10T22:09:42.554Z","latest_release_number":"3.0.3-1","last_synced_at":"2026-03-13T10:24:45.796Z","created_at":"2026-02-10T22:09:42.177Z","updated_at":"2026-08-06T04:18:26.849Z","registry_url":"https://tracker.debian.org/pkg/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":"https://packages.debian.org/bullseye/node-signal-exit","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.5.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 12), pkg-js-tools (\u003e= 0.9.20~)","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.849Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-signal-exit?arch=source\u0026distro=debian-11\u0026repository_url=https://packages.debian.org/bullseye","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"debian-11","url":"https://packages.debian.org/bullseye","ecosystem":"debian","default":false,"packages_count":31268,"maintainers_count":0,"namespaces_count":3,"keywords_count":759,"github":"debian","metadata":{"codename":"bullseye","funded_packages_count":456},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.702Z","updated_at":"2026-08-10T05:08:02.664Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/namespaces"}},{"id":13702452,"name":"node-signal-exit","ecosystem":"debian","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["javascript"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T21:24:52.979Z","latest_release_published_at":"2026-02-12T21:24:52.979Z","latest_release_number":"3.0.7+~3.0.1-1","last_synced_at":"2026-03-13T21:50:37.093Z","created_at":"2026-02-12T21:24:52.810Z","updated_at":"2026-08-06T04:18:26.858Z","registry_url":"https://tracker.debian.org/pkg/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":"https://packages.debian.org/bookworm/node-signal-exit","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.857Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-signal-exit?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"debian-12","url":"https://packages.debian.org/bookworm","ecosystem":"debian","default":true,"packages_count":34734,"maintainers_count":0,"namespaces_count":4,"keywords_count":2652,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":809},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-08-10T05:08:01.819Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/namespaces"}},{"id":13429069,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-07T16:19:09.438Z","latest_release_published_at":"2026-02-07T16:19:09.438Z","latest_release_number":"3.0.6+~3.0.1-1","last_synced_at":"2026-03-07T16:32:36.771Z","created_at":"2026-02-07T16:19:08.330Z","updated_at":"2026-08-06T04:18:26.945Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.945Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-22.04","url":"https://launchpad.net/ubuntu/jammy","ecosystem":"ubuntu","default":false,"packages_count":34289,"maintainers_count":0,"namespaces_count":4,"keywords_count":1498,"github":"ubuntu","metadata":{"codename":"jammy","funded_packages_count":559},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-08-10T05:07:56.140Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/namespaces"}},{"id":13660207,"name":"node-signal-exit","ecosystem":"debian","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["javascript"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T08:34:06.002Z","latest_release_published_at":"2026-02-12T08:34:06.002Z","latest_release_number":"4.1.0-7","last_synced_at":"2026-03-13T12:09:32.764Z","created_at":"2026-02-12T08:34:05.704Z","updated_at":"2026-08-06T04:18:26.860Z","registry_url":"https://tracker.debian.org/pkg/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":"https://packages.debian.org/trixie/node-signal-exit","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs, node-typescript, node-tap \u003c!nocheck\u003e, node-ts-node \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.860Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-signal-exit?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"debian-13","url":"https://packages.debian.org/trixie","ecosystem":"debian","default":false,"packages_count":38024,"maintainers_count":0,"namespaces_count":4,"keywords_count":1985,"github":"debian","metadata":{"codename":"trixie","funded_packages_count":1208},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-08-12T05:05:15.557Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/namespaces"}},{"id":13744541,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T05:47:14.415Z","latest_release_published_at":"2026-02-13T05:47:14.415Z","latest_release_number":"3.0.2-1","last_synced_at":"2026-03-13T09:25:32.474Z","created_at":"2026-02-13T05:47:14.226Z","updated_at":"2026-08-06T04:18:26.914Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.1.1","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 9), dh-buildinfo, nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.914Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-20.04\u0026repository_url=https://launchpad.net/ubuntu/focal","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-20.04","url":"https://launchpad.net/ubuntu/focal","ecosystem":"ubuntu","default":false,"packages_count":30789,"maintainers_count":0,"namespaces_count":4,"keywords_count":1429,"github":"ubuntu","metadata":{"codename":"focal","funded_packages_count":464},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:47.233Z","updated_at":"2026-08-10T05:08:00.495Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/namespaces"}},{"id":13597258,"name":"node-signal-exit","ecosystem":"debian","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["javascript"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-11T10:31:10.720Z","latest_release_published_at":"2026-02-11T10:31:10.720Z","latest_release_number":"3.0.2-1","last_synced_at":"2026-07-28T07:03:43.008Z","created_at":"2026-02-11T10:31:10.529Z","updated_at":"2026-08-06T04:18:26.946Z","registry_url":"https://tracker.debian.org/pkg/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":"https://packages.debian.org/buster/node-signal-exit","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.1.1","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 9), dh-buildinfo, nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.946Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/node-signal-exit?arch=source\u0026distro=debian-10\u0026repository_url=https://packages.debian.org/buster","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"debian-10","url":"https://packages.debian.org/buster","ecosystem":"debian","default":false,"packages_count":28836,"maintainers_count":0,"namespaces_count":3,"keywords_count":915,"github":"debian","metadata":{"codename":"buster","mirror":"http://archive.debian.org/debian","funded_packages_count":416},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.156Z","updated_at":"2026-08-12T05:03:11.241Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/namespaces"}},{"id":13558948,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T04:53:46.490Z","latest_release_published_at":"2026-02-11T04:53:46.490Z","latest_release_number":"3.0.7+~3.0.1-1","last_synced_at":"2026-03-11T11:04:02.513Z","created_at":"2026-02-11T04:53:46.324Z","updated_at":"2026-08-06T04:18:26.950Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.0","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.950Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.04","url":"https://launchpad.net/ubuntu/lunar","ecosystem":"ubuntu","default":false,"packages_count":36116,"maintainers_count":0,"namespaces_count":4,"keywords_count":1000,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":613},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-08-10T05:07:59.632Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/namespaces"}},{"id":13459990,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T07:11:07.810Z","latest_release_published_at":"2026-02-09T07:11:07.810Z","latest_release_number":"4.1.0-7","last_synced_at":"2026-03-09T07:28:17.118Z","created_at":"2026-02-09T07:11:03.414Z","updated_at":"2026-08-06T04:18:26.951Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs, node-typescript, node-tap \u003c!nocheck\u003e, node-ts-node \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:26.951Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":1440,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":890},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-08-12T05:05:16.435Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":13399987,"name":"node-signal-exit","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/tapjs/signal-exit","licenses":"blueoak-1.0.0","normalized_licenses":[],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T06:27:56.437Z","latest_release_published_at":"2026-02-06T06:27:56.437Z","latest_release_number":"4.1.0-6","last_synced_at":"2026-03-06T07:02:47.729Z","created_at":"2026-02-06T06:27:56.023Z","updated_at":"2026-08-06T04:18:27.029Z","registry_url":"https://launchpad.net/ubuntu/+source/node-signal-exit","install_command":"apt-get install node-signal-exit","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"node-signal-exit","standards_version":"4.6.2","maintainer":"Debian Javascript Maintainers \u003cpkg-javascript-devel@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-nodejs, node-typescript, node-tap \u003c!nocheck\u003e, node-ts-node \u003c!nocheck\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-06T04:18:27.029Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/node-signal-exit?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.04","url":"https://launchpad.net/ubuntu/noble","ecosystem":"ubuntu","default":true,"packages_count":37306,"maintainers_count":0,"namespaces_count":4,"keywords_count":1697,"github":"ubuntu","metadata":{"codename":"noble","funded_packages_count":723},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-08-10T05:07:57.238Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}},{"id":13954860,"name":"node-signal-exit","ecosystem":"guix","description":"Fire an event when a process exits","homepage":"https://github.com/tapjs/signal-exit","licenses":"isc","normalized_licenses":["ISC"],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2026-03-02T20:22:49.414Z","latest_release_published_at":"2026-03-02T20:22:49.414Z","latest_release_number":"3.0.7","last_synced_at":"2026-04-27T16:55:24.266Z","created_at":"2026-03-02T20:22:49.229Z","updated_at":"2026-08-06T04:18:27.308Z","registry_url":"https://packages.guix.gnu.org/packages/node-signal-exit/3.0.7/","install_command":"guix install node-signal-exit","documentation_url":"https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/node-xyz.scm#n3160","metadata":{"location":"gnu/packages/node-xyz.scm:3160","variable_name":"node-signal-exit"},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"tapjs","name":"TAP in JavaScript","uuid":"16528145","kind":"organization","description":"An organization to house node-tap and friends","email":"isaacs@node-tap.org","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/16528145?v=4","repositories_count":39,"last_synced_at":"2024-05-01T09:31:32.612Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["isaacs","tapjs"]}},"html_url":"https://github.com/tapjs","funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"total_stars":3417,"followers":35,"following":0,"created_at":"2022-11-02T16:20:08.922Z","updated_at":"2024-05-01T09:31:46.108Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs/repositories"},"tags":[{"name":"v4.1.0","sha":"458776d9cf8be89712aa1f7b45bb2163ce15ef4a","kind":"tag","published_at":"2023-07-29T05:44:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0/manifests"},{"name":"v4.0.3","sha":"bae4850282e36eba85291b0bbb30db92ad87413f","kind":"tag","published_at":"2023-07-29T00:27:18.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"8fa7fc9a9c63f559af43d292b7eb727901775507","kind":"tag","published_at":"2023-05-10T20:16:23.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"9600c5532ac69846c5eb84592b23ad33aba87c87","kind":"tag","published_at":"2023-04-16T06:14:36.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"c791d0367e1f1fa46e808cde1138f256aa488b7c","kind":"tag","published_at":"2023-04-16T00:32:17.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0/manifests"},{"name":"v3.0.7","sha":"03dd77a96caa309c6a02c59274d58c812a2dce45","kind":"tag","published_at":"2022-02-03T21:05:29.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.7","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7/manifests"},{"name":"v3.0.6","sha":"2d6a8a29bd8d4265ad769b772415bb85c6b5be8b","kind":"tag","published_at":"2021-11-18T16:55:30.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.6","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"7b4436f0070df3c50187177cb690445b1aac6f59","kind":"tag","published_at":"2021-09-29T20:44:31.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.5","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"e98985e48852f258d9b39ed5a08204a012b0a999","kind":"tag","published_at":"2021-09-15T23:29:39.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.4","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"bb32fe5e3126e9bb55acf83168628839d3a81ea6","kind":"tag","published_at":"2020-03-26T19:30:04.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"9c5ad9809fe6135ef22e2623989deaffe2a4fa8a","kind":"tag","published_at":"2016-12-04T03:20:51.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"afbbdbfb16df1e0db553838d17501bca0fd53ce2","kind":"tag","published_at":"2016-09-08T15:32:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"2bbec4e5d9f9cf1f7529b1c923d1b058e69ccf7f","kind":"tag","published_at":"2016-06-13T22:34:49.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0/manifests"},{"name":"v2.1.2","sha":"8d50231bda6d0d1c4d39de20fc09d11487eb9951","kind":"tag","published_at":"2015-05-25T10:06:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"6a35feb2fca13587de78b8580c397f0e320b40f5","kind":"tag","published_at":"2015-05-25T06:00:22.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"b2003f133816d4e1fa5dc8f6ddd55854f6de24ec","kind":"tag","published_at":"2015-05-25T02:44:15.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"5f2c6daff156d982ba180363d57488c8ed1aa0c4","kind":"tag","published_at":"2015-05-23T06:47:33.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0/manifests"},{"name":"v1.3.1","sha":"cb1fbb71eb4bdc99346be59e840e1709d404efca","kind":"tag","published_at":"2015-05-20T15:46:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"709cad913cf8a033ed2f6ef0c942a44e21f00d5c","kind":"tag","published_at":"2015-05-19T04:49:03.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"a75ae7fb47cb0c85c4727837a7d92f950be2df6a","kind":"tag","published_at":"2015-05-18T01:44:45.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.2.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"2b1715cb2c125745f563acf4ade61e400c83517c","kind":"tag","published_at":"2015-05-16T19:19:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"fa46d6f1a87d46e5c35a5665d407d95db25ebae8","kind":"tag","published_at":"2015-05-16T07:06:28.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1/manifests"}]},"repo_metadata_updated_at":"2026-08-06T04:18:27.308Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:guix/node-signal-exit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/guix/node-signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/guix/node-signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/guix/node-signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/node-signal-exit/codemeta","maintainers":[],"registry":{"name":"guix","url":"https://guix.gnu.org","ecosystem":"guix","default":true,"packages_count":32256,"maintainers_count":0,"namespaces_count":0,"keywords_count":1649,"github":"guix-mirror","metadata":{"funded_packages_count":882},"icon_url":"https://github.com/guix-mirror.png","created_at":"2026-03-02T16:23:46.981Z","updated_at":"2026-08-12T05:05:19.604Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/guix/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/guix/namespaces"}},{"id":5005369,"name":"org.webjars.npm:signal-exit","ecosystem":"maven","description":"WebJar for signal-exit","homepage":"https://www.webjars.org","licenses":"ISC","normalized_licenses":["ISC"],"repository_url":"https://github.com/tapjs/signal-exit","keywords_array":[],"namespace":"org.webjars.npm","versions_count":8,"first_release_published_at":"2016-11-22T14:14:01.000Z","latest_release_published_at":"2023-11-08T14:59:59.000Z","latest_release_number":"4.1.0","last_synced_at":"2026-08-12T00:48:01.226Z","created_at":"2022-07-27T11:09:11.727Z","updated_at":"2026-08-12T00:48:01.226Z","registry_url":"https://central.sonatype.com/artifact/org.webjars.npm/signal-exit/","install_command":null,"documentation_url":"https://appdoc.app/artifact/org.webjars.npm/signal-exit/","metadata":{"repositories":["https://repo.maven.apache.org/maven2"]},"repo_metadata":{"id":32138326,"uuid":"35711072","full_name":"tapjs/signal-exit","owner":"tapjs","description":"when you want to fire an event no matter how a process exits.","archived":false,"fork":false,"pushed_at":"2025-10-25T19:21:39.000Z","size":515,"stargazers_count":201,"open_issues_count":11,"forks_count":26,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-07-28T17:05:28.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"blueoak-1.0.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tapjs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["isaacs","tapjs"]}},"created_at":"2015-05-16T05:21:30.000Z","updated_at":"2026-04-27T03:03:52.000Z","dependencies_parsed_at":"2024-01-28T23:43:37.465Z","dependency_job_id":null,"html_url":"https://github.com/tapjs/signal-exit","commit_stats":{"total_commits":88,"total_committers":13,"mean_commits":6.769230769230769,"dds":0.5227272727272727,"last_synced_commit":"d4adbebea89cee95da197e9e94f32b3d685b4c80"},"previous_names":["bcoe/signal-exit"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/tapjs/signal-exit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/sbom","scorecard":{"id":868564,"data":{"date":"2025-08-11","repo":{"name":"github.com/tapjs/signal-exit","commit":"d8621bc82431d9a6c4b9c4f17dc08b2b137fbb48"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.7,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/isaacs-makework.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/isaacs-makework.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/typedoc.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/tapjs/signal-exit/typedoc.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/typedoc.yml:39","Info:   0 out of   9 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Warn: no topLevel permission defined: .github/workflows/isaacs-makework.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/typedoc.yml:14","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 1 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-rxrc-rgv4-jpvx","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-24T03:27:52.574Z","repository_id":32138326,"created_at":"2025-08-24T03:27:52.574Z","updated_at":"2025-08-24T03:27:52.574Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36079604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-30T02:00:05.956Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"tapjs","name":"TAP in JavaScript","uuid":"16528145","kind":"organization","description":"An organization to house node-tap and friends","email":"isaacs@node-tap.org","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/16528145?v=4","repositories_count":39,"last_synced_at":"2024-05-01T09:31:32.612Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["isaacs","tapjs"]}},"html_url":"https://github.com/tapjs","funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"total_stars":3417,"followers":35,"following":0,"created_at":"2022-11-02T16:20:08.922Z","updated_at":"2024-05-01T09:31:46.108Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tapjs/repositories"},"tags":[{"name":"v4.1.0","sha":"458776d9cf8be89712aa1f7b45bb2163ce15ef4a","kind":"tag","published_at":"2023-07-29T05:44:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.1.0/manifests"},{"name":"v4.0.3","sha":"bae4850282e36eba85291b0bbb30db92ad87413f","kind":"tag","published_at":"2023-07-29T00:27:18.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"8fa7fc9a9c63f559af43d292b7eb727901775507","kind":"tag","published_at":"2023-05-10T20:16:23.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"9600c5532ac69846c5eb84592b23ad33aba87c87","kind":"tag","published_at":"2023-04-16T06:14:36.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"c791d0367e1f1fa46e808cde1138f256aa488b7c","kind":"tag","published_at":"2023-04-16T00:32:17.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v4.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v4.0.0/manifests"},{"name":"v3.0.7","sha":"03dd77a96caa309c6a02c59274d58c812a2dce45","kind":"tag","published_at":"2022-02-03T21:05:29.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.7","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.7/manifests"},{"name":"v3.0.6","sha":"2d6a8a29bd8d4265ad769b772415bb85c6b5be8b","kind":"tag","published_at":"2021-11-18T16:55:30.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.6","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"7b4436f0070df3c50187177cb690445b1aac6f59","kind":"tag","published_at":"2021-09-29T20:44:31.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.5","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"e98985e48852f258d9b39ed5a08204a012b0a999","kind":"tag","published_at":"2021-09-15T23:29:39.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.4","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"bb32fe5e3126e9bb55acf83168628839d3a81ea6","kind":"tag","published_at":"2020-03-26T19:30:04.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.3","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"9c5ad9809fe6135ef22e2623989deaffe2a4fa8a","kind":"tag","published_at":"2016-12-04T03:20:51.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"afbbdbfb16df1e0db553838d17501bca0fd53ce2","kind":"tag","published_at":"2016-09-08T15:32:41.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"2bbec4e5d9f9cf1f7529b1c923d1b058e69ccf7f","kind":"tag","published_at":"2016-06-13T22:34:49.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v3.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v3.0.0/manifests"},{"name":"v2.1.2","sha":"8d50231bda6d0d1c4d39de20fc09d11487eb9951","kind":"tag","published_at":"2015-05-25T10:06:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.2","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"6a35feb2fca13587de78b8580c397f0e320b40f5","kind":"tag","published_at":"2015-05-25T06:00:22.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"b2003f133816d4e1fa5dc8f6ddd55854f6de24ec","kind":"tag","published_at":"2015-05-25T02:44:15.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"5f2c6daff156d982ba180363d57488c8ed1aa0c4","kind":"tag","published_at":"2015-05-23T06:47:33.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v2.0.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v2.0.0/manifests"},{"name":"v1.3.1","sha":"cb1fbb71eb4bdc99346be59e840e1709d404efca","kind":"tag","published_at":"2015-05-20T15:46:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"709cad913cf8a033ed2f6ef0c942a44e21f00d5c","kind":"tag","published_at":"2015-05-19T04:49:03.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.3.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"a75ae7fb47cb0c85c4727837a7d92f950be2df6a","kind":"tag","published_at":"2015-05-18T01:44:45.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.2.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"2b1715cb2c125745f563acf4ade61e400c83517c","kind":"tag","published_at":"2015-05-16T19:19:58.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.1.0","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"fa46d6f1a87d46e5c35a5665d407d95db25ebae8","kind":"tag","published_at":"2015-05-16T07:06:28.000Z","download_url":"https://codeload.github.com/tapjs/signal-exit/tar.gz/v1.0.1","html_url":"https://github.com/tapjs/signal-exit/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/tapjs/signal-exit@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/tags/v1.0.1/manifests"}]},"repo_metadata_updated_at":"2026-08-06T04:18:27.375Z","dependent_packages_count":15,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":31.979943940947386,"dependent_packages_count":4.268032094509865,"stargazers_count":null,"forks_count":null,"average":18.123988017728625},"purl":"pkg:maven/org.webjars.npm/signal-exit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/maven/org.webjars.npm:signal-exit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/maven/org.webjars.npm:signal-exit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/maven/org.webjars.npm:signal-exit/dependencies","status":null,"funding_links":["https://github.com/sponsors/isaacs","https://github.com/sponsors/tapjs"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-24T13:21:28.173Z","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","maintainers":[{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"},{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"},{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:signal-exit/codemeta","maintainers":[],"registry":{"name":"repo1.maven.org","url":"https://maven-central.storage-download.googleapis.com/maven2","ecosystem":"maven","default":true,"packages_count":614311,"maintainers_count":0,"namespaces_count":81639,"keywords_count":35201,"github":"maven-central","metadata":{"funded_packages_count":44250,"rate_limit":2},"icon_url":"https://github.com/maven-central.png","created_at":"2022-07-21T16:40:13.074Z","updated_at":"2026-08-12T15:20:50.627Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/namespaces"}}],"commits":{"id":341478,"full_name":"tapjs/signal-exit","default_branch":"main","total_commits":107,"total_committers":13,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":8.23076923076923,"dds":0.5700934579439252,"past_year_total_commits":1,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":1.0,"past_year_dds":0.0,"last_synced_at":"2026-08-12T00:47:42.693Z","last_synced_commit":"f0c30f36828d91b2bf373c4c474b88ead8cbca6d","created_at":"2023-03-08T18:26:29.896Z","updated_at":"2026-08-12T00:47:42.671Z","committers":[{"name":"isaacs","email":"i@izs.me","login":"isaacs","count":46},{"name":"Benjamin Coe","email":"ben@npmjs.com","login":null,"count":42},{"name":"Greenkeeper","email":"support@greenkeeper.io","login":"greenkeeperio-bot","count":6},{"name":"Benjamin E. Coe","email":"bencoe@gmail.com","login":"bcoe","count":3},{"name":"Nathan Rajlich","email":"n@n8.io","login":"TooTallNate","count":2},{"name":"elrrrrrrr","email":"elrrrrrrr@gmail.com","login":"elrrrrrrr","count":1},{"name":"Waldir Pimenta","email":"waldyrious@gmail.com","login":"waldyrious","count":1},{"name":"Parsha Pourkhomami","email":"parshap+git@gmail.com","login":"parshap","count":1},{"name":"Jordan Harband","email":"ljharb@gmail.com","login":"ljharb","count":1},{"name":"Herbert Treis Neto","email":"htnetooo@gmail.com","login":"herberttn","count":1},{"name":"Edward Betts","email":"edward@4angle.com","login":"EdwardBetts","count":1},{"name":"Charles Samborski","email":"demurgos@demurgos.net","login":"demurgos","count":1},{"name":"Anna Henningsen","email":"github@addaleax.net","login":"addaleax","count":1}],"past_year_committers":[{"name":"isaacs","email":"i@izs.me","login":"isaacs","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-13T00:00:06.963Z","repositories_count":6642103,"commits_count":925343681,"contributors_count":39383979,"owners_count":1334420,"committers_count":3299431,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"tapjs/signal-exit","html_url":"https://github.com/tapjs/signal-exit","last_synced_at":"2026-06-24T13:21:28.173Z","status":"error","issues_count":22,"pull_requests_count":65,"avg_time_to_close_issue":53257836.875,"avg_time_to_close_pull_request":7573418.65,"issues_closed_count":16,"pull_requests_closed_count":60,"pull_request_authors_count":17,"issue_authors_count":20,"avg_comments_per_issue":2.2727272727272725,"avg_comments_per_pull_request":1.4461538461538461,"merged_pull_requests_count":29,"bot_issues_count":0,"bot_pull_requests_count":11,"past_year_issues_count":2,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-16T15:43:14.516Z","updated_at":"2026-06-24T13:21:28.173Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/tapjs%2Fsignal-exit/issues","issue_labels_count":{"table":{"help wanted":1}},"pull_request_labels_count":{"table":{"greenkeeper":16,"dependencies":11}},"issue_author_associations_count":{"table":{"NONE":14,"MEMBER":4,"CONTRIBUTOR":4}},"pull_request_author_associations_count":{"table":{"CONTRIBUTOR":27,"MEMBER":22,"NONE":16}},"issue_authors":{"table":{"erictheswift":2,"isaacs":2,"inukshuk":1,"kapouer":1,"ZAHID8298":1,"parshap":1,"ehmicky":1,"thisconnect":1,"TooTallNate":1,"GO-DIE":1,"astoilkov":1,"bcoe":1,"chrisdickinson":1,"elrrrrrrr":1,"rgranger":1,"iarna":1,"paulirish":1,"wataash":1,"ljharb":1,"herberttn":1}},"pull_request_authors":{"table":{"greenkeeperio-bot":16,"bcoe":14,"dependabot[bot]":11,"isaacs":7,"demurgos":3,"SBoudrias":2,"TooTallNate":2,"parshap":1,"waldyrious":1,"addaleax":1,"smtheard":1,"ljharb":1,"EdwardBetts":1,"ehmicky":1,"elrrrrrrr":1,"theanarkh":1,"herberttn":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-01T00:00:20.326Z","repositories_count":14838425,"issues_count":30907265,"pull_requests_count":101809877,"authors_count":11378893,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{}},"past_year_issue_author_associations_count":{"table":{"NONE":2}},"past_year_pull_request_author_associations_count":{"table":{"NONE":2}},"past_year_issue_authors":{"table":{"ehmicky":1,"ZAHID8298":1}},"past_year_pull_request_authors":{"table":{"ehmicky":1,"theanarkh":1}},"maintainers":[{"table":{"login":"bcoe","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bcoe"}},{"table":{"login":"isaacs","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/isaacs"}},{"table":{"login":"ljharb","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljharb"}}],"active_maintainers":[]}},"events":{"total":{"PullRequestEvent":1,"ForkEvent":8,"IssuesEvent":1,"WatchEvent":7,"IssueCommentEvent":1,"PushEvent":1},"last_year":{"ForkEvent":5,"IssuesEvent":1,"WatchEvent":2,"IssueCommentEvent":1,"PushEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-09-06T22:22:03.740Z","updated_at":"2022-09-06T22:22:03.740Z","repository_link":"https://github.com/tapjs/signal-exit/blob/main/package.json","dependencies":[{"id":4046144827,"package_name":"chai","ecosystem":"npm","requirements":"^3.5.0","direct":true,"kind":"development","optional":false},{"id":4046144828,"package_name":"coveralls","ecosystem":"npm","requirements":"^3.1.1","direct":true,"kind":"development","optional":false},{"id":4046144829,"package_name":"nyc","ecosystem":"npm","requirements":"^15.1.0","direct":true,"kind":"development","optional":false},{"id":4046144830,"package_name":"standard-version","ecosystem":"npm","requirements":"^9.3.1","direct":true,"kind":"development","optional":false},{"id":4046144831,"package_name":"tap","ecosystem":"npm","requirements":"^15.1.1","direct":true,"kind":"development","optional":false}]},{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2022-09-06T22:22:03.538Z","updated_at":"2022-09-06T22:22:03.538Z","repository_link":"https://github.com/tapjs/signal-exit/blob/main/package-lock.json","dependencies":[{"id":4046144110,"package_name":"@babel/code-frame","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":4046144113,"package_name":"@babel/compat-data","ecosystem":"npm","requirements":"7.15.0","direct":false,"kind":"development","optional":false},{"id":4046144115,"package_name":"@babel/core","ecosystem":"npm","requirements":"7.15.5","direct":false,"kind":"development","optional":false},{"id":4046144117,"package_name":"semver","ecosystem":"npm","requirements":"6.3.0","direct":false,"kind":"development","optional":false},{"id":4046144118,"package_name":"source-map","ecosystem":"npm","requirements":"0.5.7","direct":false,"kind":"development","optional":false},{"id":4046144120,"package_name":"@babel/generator","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144121,"package_name":"@babel/helper-compilation-targets","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144123,"package_name":"@babel/helper-function-name","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144125,"package_name":"@babel/helper-get-function-arity","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144127,"package_name":"@babel/helper-hoist-variables","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144129,"package_name":"@babel/helper-member-expression-to-functions","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144131,"package_name":"@babel/helper-module-imports","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144133,"package_name":"@babel/helper-module-transforms","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144134,"package_name":"@babel/helper-optimise-call-expression","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144136,"package_name":"@babel/helper-replace-supers","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144138,"package_name":"@babel/helper-simple-access","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144140,"package_name":"@babel/helper-split-export-declaration","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144142,"package_name":"@babel/helper-validator-identifier","ecosystem":"npm","requirements":"7.14.9","direct":false,"kind":"development","optional":false},{"id":4046144144,"package_name":"@babel/helper-validator-option","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":4046144146,"package_name":"@babel/helpers","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144148,"package_name":"@babel/highlight","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":4046144150,"package_name":"ansi-styles","ecosystem":"npm","requirements":"3.2.1","direct":false,"kind":"development","optional":false},{"id":4046144153,"package_name":"chalk","ecosystem":"npm","requirements":"2.4.2","direct":false,"kind":"development","optional":false},{"id":4046144154,"package_name":"js-tokens","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144155,"package_name":"supports-color","ecosystem":"npm","requirements":"5.5.0","direct":false,"kind":"development","optional":false},{"id":4046144156,"package_name":"@babel/parser","ecosystem":"npm","requirements":"7.15.6","direct":false,"kind":"development","optional":false},{"id":4046144157,"package_name":"@babel/template","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144158,"package_name":"@babel/traverse","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":4046144159,"package_name":"globals","ecosystem":"npm","requirements":"11.12.0","direct":false,"kind":"development","optional":false},{"id":4046144160,"package_name":"@babel/types","ecosystem":"npm","requirements":"7.15.6","direct":false,"kind":"development","optional":false},{"id":4046144161,"package_name":"@hutson/parse-repository-url","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4046144162,"package_name":"@istanbuljs/load-nyc-config","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4046144163,"package_name":"resolve-from","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4046144164,"package_name":"@istanbuljs/schema","ecosystem":"npm","requirements":"0.1.3","direct":false,"kind":"development","optional":false},{"id":4046144165,"package_name":"@types/minimist","ecosystem":"npm","requirements":"1.2.2","direct":false,"kind":"development","optional":false},{"id":4046144166,"package_name":"@types/normalize-package-data","ecosystem":"npm","requirements":"2.4.1","direct":false,"kind":"development","optional":false},{"id":4046144167,"package_name":"add-stream","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144168,"package_name":"aggregate-error","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144169,"package_name":"ajv","ecosystem":"npm","requirements":"6.12.6","direct":false,"kind":"development","optional":false},{"id":4046144170,"package_name":"ansi-regex","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144171,"package_name":"ansi-styles","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":4046144172,"package_name":"color-convert","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4046144173,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":4046144174,"package_name":"anymatch","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":4046144175,"package_name":"append-transform","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144176,"package_name":"archy","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144177,"package_name":"argparse","ecosystem":"npm","requirements":"1.0.10","direct":false,"kind":"development","optional":false},{"id":4046144178,"package_name":"array-ify","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144179,"package_name":"arrify","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144180,"package_name":"asn1","ecosystem":"npm","requirements":"0.2.4","direct":false,"kind":"development","optional":false},{"id":4046144181,"package_name":"assert-plus","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144182,"package_name":"assertion-error","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4046144183,"package_name":"async-hook-domain","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":4046144184,"package_name":"asynckit","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":4046144185,"package_name":"aws-sign2","ecosystem":"npm","requirements":"0.7.0","direct":false,"kind":"development","optional":false},{"id":4046144186,"package_name":"aws4","ecosystem":"npm","requirements":"1.11.0","direct":false,"kind":"development","optional":false},{"id":4046144187,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144188,"package_name":"bcrypt-pbkdf","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144189,"package_name":"binary-extensions","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4046144190,"package_name":"bind-obj-methods","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144191,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"development","optional":false},{"id":4046144192,"package_name":"braces","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4046144193,"package_name":"browserslist","ecosystem":"npm","requirements":"4.17.0","direct":false,"kind":"development","optional":false},{"id":4046144194,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4046144195,"package_name":"caching-transform","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144196,"package_name":"camelcase","ecosystem":"npm","requirements":"5.3.1","direct":false,"kind":"development","optional":false},{"id":4046144197,"package_name":"camelcase-keys","ecosystem":"npm","requirements":"6.2.2","direct":false,"kind":"development","optional":false},{"id":4046144198,"package_name":"caniuse-lite","ecosystem":"npm","requirements":"1.0.30001257","direct":false,"kind":"development","optional":false},{"id":4046144199,"package_name":"caseless","ecosystem":"npm","requirements":"0.12.0","direct":false,"kind":"development","optional":false},{"id":4046144200,"package_name":"chai","ecosystem":"npm","requirements":"3.5.0","direct":false,"kind":"development","optional":false},{"id":4046144201,"package_name":"chokidar","ecosystem":"npm","requirements":"3.5.2","direct":false,"kind":"development","optional":false},{"id":4046144202,"package_name":"clean-stack","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4046144203,"package_name":"cliui","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4046144204,"package_name":"ansi-regex","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4046144205,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4046144206,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"6.2.0","direct":false,"kind":"development","optional":false},{"id":4046144207,"package_name":"color-convert","ecosystem":"npm","requirements":"1.9.3","direct":false,"kind":"development","optional":false},{"id":4046144208,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4046144209,"package_name":"color-support","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4046144210,"package_name":"colorette","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4046144211,"package_name":"combined-stream","ecosystem":"npm","requirements":"1.0.8","direct":false,"kind":"development","optional":false},{"id":4046144212,"package_name":"commondir","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144213,"package_name":"compare-func","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144214,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4046144215,"package_name":"conventional-changelog","ecosystem":"npm","requirements":"3.1.24","direct":false,"kind":"development","optional":false},{"id":4046144216,"package_name":"conventional-changelog-angular","ecosystem":"npm","requirements":"5.0.13","direct":false,"kind":"development","optional":false},{"id":4046144217,"package_name":"conventional-changelog-atom","ecosystem":"npm","requirements":"2.0.8","direct":false,"kind":"development","optional":false},{"id":4046144218,"package_name":"conventional-changelog-codemirror","ecosystem":"npm","requirements":"2.0.8","direct":false,"kind":"development","optional":false},{"id":4046144219,"package_name":"conventional-changelog-config-spec","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144220,"package_name":"conventional-changelog-conventionalcommits","ecosystem":"npm","requirements":"4.5.0","direct":false,"kind":"development","optional":false},{"id":4046144221,"package_name":"conventional-changelog-core","ecosystem":"npm","requirements":"4.2.4","direct":false,"kind":"development","optional":false},{"id":4046144222,"package_name":"conventional-changelog-ember","ecosystem":"npm","requirements":"2.0.9","direct":false,"kind":"development","optional":false},{"id":4046144223,"package_name":"conventional-changelog-eslint","ecosystem":"npm","requirements":"3.0.9","direct":false,"kind":"development","optional":false},{"id":4046144224,"package_name":"conventional-changelog-express","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":4046144225,"package_name":"conventional-changelog-jquery","ecosystem":"npm","requirements":"3.0.11","direct":false,"kind":"development","optional":false},{"id":4046144226,"package_name":"conventional-changelog-jshint","ecosystem":"npm","requirements":"2.0.9","direct":false,"kind":"development","optional":false},{"id":4046144227,"package_name":"conventional-changelog-preset-loader","ecosystem":"npm","requirements":"2.3.4","direct":false,"kind":"development","optional":false},{"id":4046144228,"package_name":"conventional-changelog-writer","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4046144229,"package_name":"conventional-commits-filter","ecosystem":"npm","requirements":"2.0.7","direct":false,"kind":"development","optional":false},{"id":4046144230,"package_name":"conventional-commits-parser","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":4046144231,"package_name":"conventional-recommended-bump","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":4046144232,"package_name":"concat-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144233,"package_name":"readable-stream","ecosystem":"npm","requirements":"3.6.0","direct":false,"kind":"development","optional":false},{"id":4046144234,"package_name":"convert-source-map","ecosystem":"npm","requirements":"1.8.0","direct":false,"kind":"development","optional":false},{"id":4046144235,"package_name":"core-util-is","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144236,"package_name":"coveralls","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4046144237,"package_name":"cross-spawn","ecosystem":"npm","requirements":"7.0.3","direct":false,"kind":"development","optional":false},{"id":4046144238,"package_name":"dargs","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":4046144239,"package_name":"dashdash","ecosystem":"npm","requirements":"1.14.1","direct":false,"kind":"development","optional":false},{"id":4046144240,"package_name":"dateformat","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4046144241,"package_name":"debug","ecosystem":"npm","requirements":"4.3.2","direct":false,"kind":"development","optional":false},{"id":4046144242,"package_name":"decamelize","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4046144243,"package_name":"decamelize-keys","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4046144244,"package_name":"map-obj","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144245,"package_name":"deep-eql","ecosystem":"npm","requirements":"0.1.3","direct":false,"kind":"development","optional":false},{"id":4046144246,"package_name":"type-detect","ecosystem":"npm","requirements":"0.1.1","direct":false,"kind":"development","optional":false},{"id":4046144247,"package_name":"default-require-extensions","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144248,"package_name":"strip-bom","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144249,"package_name":"delayed-stream","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144250,"package_name":"detect-indent","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":4046144251,"package_name":"detect-newline","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144252,"package_name":"diff","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4046144253,"package_name":"dot-prop","ecosystem":"npm","requirements":"5.3.0","direct":false,"kind":"development","optional":false},{"id":4046144254,"package_name":"dotgitignore","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144255,"package_name":"find-up","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144256,"package_name":"locate-path","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144257,"package_name":"p-locate","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144258,"package_name":"path-exists","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144259,"package_name":"ecc-jsbn","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":4046144260,"package_name":"electron-to-chromium","ecosystem":"npm","requirements":"1.3.839","direct":false,"kind":"development","optional":false},{"id":4046144261,"package_name":"emoji-regex","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":4046144262,"package_name":"error-ex","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":4046144263,"package_name":"es6-error","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"development","optional":false},{"id":4046144264,"package_name":"escalade","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4046144265,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":4046144266,"package_name":"esprima","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4046144267,"package_name":"events-to-array","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4046144268,"package_name":"extend","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4046144269,"package_name":"extsprintf","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4046144270,"package_name":"fast-deep-equal","ecosystem":"npm","requirements":"3.1.3","direct":false,"kind":"development","optional":false},{"id":4046144271,"package_name":"fast-json-stable-stringify","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144272,"package_name":"fill-range","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4046144273,"package_name":"find-cache-dir","ecosystem":"npm","requirements":"3.3.2","direct":false,"kind":"development","optional":false},{"id":4046144274,"package_name":"find-up","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4046144275,"package_name":"findit","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144276,"package_name":"foreground-child","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144277,"package_name":"forever-agent","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":4046144278,"package_name":"form-data","ecosystem":"npm","requirements":"2.3.3","direct":false,"kind":"development","optional":false},{"id":4046144279,"package_name":"fromentries","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":4046144280,"package_name":"fs-access","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144281,"package_name":"fs-exists-cached","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144282,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144283,"package_name":"fsevents","ecosystem":"npm","requirements":"2.3.2","direct":false,"kind":"development","optional":false},{"id":4046144284,"package_name":"function-bind","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4046144285,"package_name":"function-loop","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4046144286,"package_name":"gensync","ecosystem":"npm","requirements":"1.0.0-beta.2","direct":false,"kind":"development","optional":false},{"id":4046144287,"package_name":"get-caller-file","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4046144288,"package_name":"get-package-type","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false},{"id":4046144289,"package_name":"get-pkg-repo","ecosystem":"npm","requirements":"4.2.1","direct":false,"kind":"development","optional":false},{"id":4046144290,"package_name":"cliui","ecosystem":"npm","requirements":"7.0.4","direct":false,"kind":"development","optional":false},{"id":4046144291,"package_name":"through2","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4046144292,"package_name":"y18n","ecosystem":"npm","requirements":"5.0.8","direct":false,"kind":"development","optional":false},{"id":4046144293,"package_name":"yargs","ecosystem":"npm","requirements":"16.2.0","direct":false,"kind":"development","optional":false},{"id":4046144294,"package_name":"getpass","ecosystem":"npm","requirements":"0.1.7","direct":false,"kind":"development","optional":false},{"id":4046144295,"package_name":"git-raw-commits","ecosystem":"npm","requirements":"2.0.10","direct":false,"kind":"development","optional":false},{"id":4046144296,"package_name":"git-remote-origin-url","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144297,"package_name":"git-semver-tags","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"development","optional":false},{"id":4046144298,"package_name":"gitconfiglocal","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144299,"package_name":"glob","ecosystem":"npm","requirements":"7.1.6","direct":false,"kind":"development","optional":false},{"id":4046144300,"package_name":"glob-parent","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4046144301,"package_name":"graceful-fs","ecosystem":"npm","requirements":"4.2.3","direct":false,"kind":"development","optional":false},{"id":4046144302,"package_name":"handlebars","ecosystem":"npm","requirements":"4.7.7","direct":false,"kind":"development","optional":false},{"id":4046144303,"package_name":"har-schema","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144304,"package_name":"har-validator","ecosystem":"npm","requirements":"5.1.5","direct":false,"kind":"development","optional":false},{"id":4046144305,"package_name":"hard-rejection","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144306,"package_name":"has","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4046144307,"package_name":"has-flag","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144308,"package_name":"hasha","ecosystem":"npm","requirements":"5.2.2","direct":false,"kind":"development","optional":false},{"id":4046144309,"package_name":"hosted-git-info","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4046144310,"package_name":"html-escaper","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4046144311,"package_name":"http-signature","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4046144312,"package_name":"imurmurhash","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":4046144313,"package_name":"indent-string","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144314,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":4046144315,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":4046144316,"package_name":"ini","ecosystem":"npm","requirements":"1.3.8","direct":false,"kind":"development","optional":false},{"id":4046144317,"package_name":"is-arrayish","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":4046144318,"package_name":"is-binary-path","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144319,"package_name":"is-core-module","ecosystem":"npm","requirements":"2.6.0","direct":false,"kind":"development","optional":false},{"id":4046144320,"package_name":"is-extglob","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144321,"package_name":"is-fullwidth-code-point","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144322,"package_name":"is-glob","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4046144323,"package_name":"is-number","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":4046144324,"package_name":"is-obj","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144325,"package_name":"is-plain-obj","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4046144326,"package_name":"is-stream","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4046144327,"package_name":"is-text-path","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144328,"package_name":"is-typedarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144329,"package_name":"is-windows","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144330,"package_name":"isarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144331,"package_name":"isexe","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144332,"package_name":"isstream","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":4046144333,"package_name":"istanbul-lib-coverage","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144334,"package_name":"istanbul-lib-hook","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144335,"package_name":"istanbul-lib-instrument","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4046144336,"package_name":"istanbul-lib-processinfo","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4046144337,"package_name":"rimraf","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4046144338,"package_name":"istanbul-lib-report","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144339,"package_name":"istanbul-lib-source-maps","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144340,"package_name":"istanbul-reports","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4046144341,"package_name":"jackspeak","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":4046144342,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":4046144343,"package_name":"js-yaml","ecosystem":"npm","requirements":"3.14.1","direct":false,"kind":"development","optional":false},{"id":4046144344,"package_name":"jsbn","ecosystem":"npm","requirements":"0.1.1","direct":false,"kind":"development","optional":false},{"id":4046144345,"package_name":"jsesc","ecosystem":"npm","requirements":"2.5.2","direct":false,"kind":"development","optional":false},{"id":4046144346,"package_name":"json-parse-better-errors","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144347,"package_name":"json-parse-even-better-errors","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":4046144348,"package_name":"json-schema","ecosystem":"npm","requirements":"0.2.3","direct":false,"kind":"development","optional":false},{"id":4046144349,"package_name":"json-schema-traverse","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"development","optional":false},{"id":4046144350,"package_name":"json-stringify-safe","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4046144351,"package_name":"json5","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4046144352,"package_name":"jsonparse","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":4046144353,"package_name":"JSONStream","ecosystem":"npm","requirements":"1.3.5","direct":false,"kind":"development","optional":false},{"id":4046144354,"package_name":"jsprim","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":4046144355,"package_name":"kind-of","ecosystem":"npm","requirements":"6.0.3","direct":false,"kind":"development","optional":false},{"id":4046144356,"package_name":"lcov-parse","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144357,"package_name":"libtap","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4046144358,"package_name":"lines-and-columns","ecosystem":"npm","requirements":"1.1.6","direct":false,"kind":"development","optional":false},{"id":4046144359,"package_name":"load-json-file","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144360,"package_name":"pify","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144361,"package_name":"locate-path","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4046144362,"package_name":"lodash","ecosystem":"npm","requirements":"4.17.21","direct":false,"kind":"development","optional":false},{"id":4046144363,"package_name":"lodash.flattendeep","ecosystem":"npm","requirements":"4.4.0","direct":false,"kind":"development","optional":false},{"id":4046144364,"package_name":"lodash.ismatch","ecosystem":"npm","requirements":"4.4.0","direct":false,"kind":"development","optional":false},{"id":4046144365,"package_name":"log-driver","ecosystem":"npm","requirements":"1.2.7","direct":false,"kind":"development","optional":false},{"id":4046144366,"package_name":"lru-cache","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4046144367,"package_name":"make-dir","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144368,"package_name":"map-obj","ecosystem":"npm","requirements":"4.2.1","direct":false,"kind":"development","optional":false},{"id":4046144369,"package_name":"meow","ecosystem":"npm","requirements":"8.1.2","direct":false,"kind":"development","optional":false},{"id":4046144370,"package_name":"hosted-git-info","ecosystem":"npm","requirements":"2.8.9","direct":false,"kind":"development","optional":false},{"id":4046144371,"package_name":"parse-json","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4046144372,"package_name":"read-pkg","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4046144373,"package_name":"normalize-package-data","ecosystem":"npm","requirements":"2.5.0","direct":false,"kind":"development","optional":false},{"id":4046144374,"package_name":"type-fest","ecosystem":"npm","requirements":"0.6.0","direct":false,"kind":"development","optional":false},{"id":4046144375,"package_name":"read-pkg-up","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4046144376,"package_name":"type-fest","ecosystem":"npm","requirements":"0.8.1","direct":false,"kind":"development","optional":false},{"id":4046144377,"package_name":"semver","ecosystem":"npm","requirements":"5.7.1","direct":false,"kind":"development","optional":false},{"id":4046144378,"package_name":"type-fest","ecosystem":"npm","requirements":"0.18.1","direct":false,"kind":"development","optional":false},{"id":4046144379,"package_name":"mime-db","ecosystem":"npm","requirements":"1.49.0","direct":false,"kind":"development","optional":false},{"id":4046144380,"package_name":"mime-types","ecosystem":"npm","requirements":"2.1.32","direct":false,"kind":"development","optional":false},{"id":4046144381,"package_name":"min-indent","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144382,"package_name":"minimatch","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4046144383,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.5","direct":false,"kind":"development","optional":false},{"id":4046144384,"package_name":"minimist-options","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4046144385,"package_name":"minipass","ecosystem":"npm","requirements":"3.1.5","direct":false,"kind":"development","optional":false},{"id":4046144386,"package_name":"modify-values","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144387,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4046144388,"package_name":"neo-async","ecosystem":"npm","requirements":"2.6.2","direct":false,"kind":"development","optional":false},{"id":4046144389,"package_name":"node-preload","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":4046144390,"package_name":"node-releases","ecosystem":"npm","requirements":"1.1.75","direct":false,"kind":"development","optional":false},{"id":4046144391,"package_name":"normalize-package-data","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4046144392,"package_name":"normalize-path","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144393,"package_name":"null-check","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144394,"package_name":"nyc","ecosystem":"npm","requirements":"15.1.0","direct":false,"kind":"development","optional":false},{"id":4046144395,"package_name":"oauth-sign","ecosystem":"npm","requirements":"0.9.0","direct":false,"kind":"development","optional":false},{"id":4046144396,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4046144397,"package_name":"opener","ecosystem":"npm","requirements":"1.5.1","direct":false,"kind":"development","optional":false},{"id":4046144398,"package_name":"own-or","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144399,"package_name":"own-or-env","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144400,"package_name":"p-limit","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4046144401,"package_name":"p-locate","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4046144402,"package_name":"p-map","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144403,"package_name":"p-try","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4046144404,"package_name":"package-hash","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144405,"package_name":"parse-json","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144406,"package_name":"path-exists","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144407,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144408,"package_name":"path-key","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4046144409,"package_name":"path-parse","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":4046144410,"package_name":"path-type","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144411,"package_name":"performance-now","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144412,"package_name":"picomatch","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4046144413,"package_name":"pify","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4046144414,"package_name":"pkg-dir","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":4046144415,"package_name":"process-nextick-args","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4046144416,"package_name":"process-on-spawn","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144417,"package_name":"psl","ecosystem":"npm","requirements":"1.8.0","direct":false,"kind":"development","optional":false},{"id":4046144418,"package_name":"punycode","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144419,"package_name":"q","ecosystem":"npm","requirements":"1.5.1","direct":false,"kind":"development","optional":false},{"id":4046144420,"package_name":"qs","ecosystem":"npm","requirements":"6.5.2","direct":false,"kind":"development","optional":false},{"id":4046144421,"package_name":"quick-lru","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4046144422,"package_name":"read-pkg","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144423,"package_name":"read-pkg-up","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144424,"package_name":"find-up","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144425,"package_name":"locate-path","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144426,"package_name":"p-limit","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4046144427,"package_name":"p-locate","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144428,"package_name":"p-try","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144429,"package_name":"readable-stream","ecosystem":"npm","requirements":"2.3.7","direct":false,"kind":"development","optional":false},{"id":4046144430,"package_name":"readdirp","ecosystem":"npm","requirements":"3.6.0","direct":false,"kind":"development","optional":false},{"id":4046144431,"package_name":"redent","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144432,"package_name":"release-zalgo","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144433,"package_name":"request","ecosystem":"npm","requirements":"2.88.2","direct":false,"kind":"development","optional":false},{"id":4046144434,"package_name":"require-directory","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144435,"package_name":"require-main-filename","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144436,"package_name":"resolve","ecosystem":"npm","requirements":"1.20.0","direct":false,"kind":"development","optional":false},{"id":4046144437,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4046144438,"package_name":"safer-buffer","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4046144439,"package_name":"semver","ecosystem":"npm","requirements":"7.3.5","direct":false,"kind":"development","optional":false},{"id":4046144440,"package_name":"set-blocking","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144441,"package_name":"shebang-command","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144442,"package_name":"shebang-regex","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144443,"package_name":"signal-exit","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4046144444,"package_name":"source-map","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":4046144445,"package_name":"source-map-support","ecosystem":"npm","requirements":"0.5.20","direct":false,"kind":"development","optional":false},{"id":4046144446,"package_name":"spawn-wrap","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144447,"package_name":"spdx-correct","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4046144448,"package_name":"spdx-exceptions","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4046144449,"package_name":"spdx-expression-parse","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4046144450,"package_name":"spdx-license-ids","ecosystem":"npm","requirements":"3.0.10","direct":false,"kind":"development","optional":false},{"id":4046144451,"package_name":"split","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144452,"package_name":"split2","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":4046144453,"package_name":"sprintf-js","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4046144454,"package_name":"sshpk","ecosystem":"npm","requirements":"1.16.1","direct":false,"kind":"development","optional":false},{"id":4046144455,"package_name":"stack-utils","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4046144456,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144457,"package_name":"standard-version","ecosystem":"npm","requirements":"9.3.1","direct":false,"kind":"development","optional":false},{"id":4046144458,"package_name":"figures","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":4046144459,"package_name":"find-up","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4046144460,"package_name":"locate-path","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4046144461,"package_name":"p-limit","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144462,"package_name":"p-locate","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4046144463,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4046144464,"package_name":"string-width","ecosystem":"npm","requirements":"4.2.3","direct":false,"kind":"development","optional":false},{"id":4046144465,"package_name":"stringify-package","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144466,"package_name":"strip-ansi","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4046144467,"package_name":"strip-bom","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144468,"package_name":"strip-indent","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144469,"package_name":"supports-color","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":4046144470,"package_name":"has-flag","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144471,"package_name":"tap","ecosystem":"npm","requirements":"15.1.1","direct":false,"kind":"development","optional":false},{"id":4046144472,"package_name":"@babel/code-frame","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144473,"package_name":"@babel/compat-data","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144474,"package_name":"@babel/core","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144475,"package_name":"@babel/generator","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144476,"package_name":"@babel/helper-annotate-as-pure","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144477,"package_name":"@babel/helper-compilation-targets","ecosystem":"npm","requirements":"7.16.3","direct":false,"kind":"development","optional":false},{"id":4046144478,"package_name":"@babel/helper-function-name","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144479,"package_name":"@babel/helper-get-function-arity","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144480,"package_name":"@babel/helper-hoist-variables","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144481,"package_name":"@babel/helper-member-expression-to-functions","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144482,"package_name":"@babel/helper-module-imports","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144483,"package_name":"@babel/helper-module-transforms","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144484,"package_name":"@babel/helper-optimise-call-expression","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144485,"package_name":"@babel/helper-plugin-utils","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":4046144486,"package_name":"@babel/helper-replace-supers","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144487,"package_name":"@babel/helper-simple-access","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144488,"package_name":"@babel/helper-split-export-declaration","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144489,"package_name":"@babel/helper-validator-identifier","ecosystem":"npm","requirements":"7.15.7","direct":false,"kind":"development","optional":false},{"id":4046144490,"package_name":"@babel/helpers","ecosystem":"npm","requirements":"7.16.3","direct":false,"kind":"development","optional":false},{"id":4046144491,"package_name":"@babel/highlight","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144492,"package_name":"@babel/parser","ecosystem":"npm","requirements":"7.16.3","direct":false,"kind":"development","optional":false},{"id":4046144493,"package_name":"@babel/plugin-proposal-object-rest-spread","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144494,"package_name":"@babel/plugin-syntax-jsx","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144495,"package_name":"@babel/plugin-syntax-object-rest-spread","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":4046144496,"package_name":"@babel/plugin-transform-destructuring","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144497,"package_name":"@babel/plugin-transform-parameters","ecosystem":"npm","requirements":"7.16.3","direct":false,"kind":"development","optional":false},{"id":4046144498,"package_name":"@babel/plugin-transform-react-jsx","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144499,"package_name":"@babel/template","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144500,"package_name":"@babel/traverse","ecosystem":"npm","requirements":"7.16.3","direct":false,"kind":"development","optional":false},{"id":4046144501,"package_name":"@babel/types","ecosystem":"npm","requirements":"7.16.0","direct":false,"kind":"development","optional":false},{"id":4046144502,"package_name":"@types/prop-types","ecosystem":"npm","requirements":"15.7.4","direct":false,"kind":"development","optional":false},{"id":4046144503,"package_name":"@types/react","ecosystem":"npm","requirements":"17.0.34","direct":false,"kind":"development","optional":false},{"id":4046144504,"package_name":"@types/scheduler","ecosystem":"npm","requirements":"0.16.2","direct":false,"kind":"development","optional":false},{"id":4046144505,"package_name":"@types/yoga-layout","ecosystem":"npm","requirements":"1.9.2","direct":false,"kind":"development","optional":false},{"id":4046144506,"package_name":"ansi-escapes","ecosystem":"npm","requirements":"4.3.2","direct":false,"kind":"development","optional":false},{"id":4046144507,"package_name":"type-fest","ecosystem":"npm","requirements":"0.21.3","direct":false,"kind":"development","optional":false},{"id":4046144508,"package_name":"ansicolors","ecosystem":"npm","requirements":"0.3.2","direct":false,"kind":"development","optional":false},{"id":4046144509,"package_name":"astral-regex","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144510,"package_name":"auto-bind","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144511,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144512,"package_name":"browserslist","ecosystem":"npm","requirements":"4.17.6","direct":false,"kind":"development","optional":false},{"id":4046144513,"package_name":"caller-callsite","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144514,"package_name":"caller-path","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144515,"package_name":"callsites","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144516,"package_name":"caniuse-lite","ecosystem":"npm","requirements":"1.0.30001279","direct":false,"kind":"development","optional":false},{"id":4046144517,"package_name":"cardinal","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144518,"package_name":"ci-info","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144519,"package_name":"cli-boxes","ecosystem":"npm","requirements":"2.2.1","direct":false,"kind":"development","optional":false},{"id":4046144520,"package_name":"cli-cursor","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144521,"package_name":"cli-truncate","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144522,"package_name":"code-excerpt","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144523,"package_name":"convert-to-spaces","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144524,"package_name":"csstype","ecosystem":"npm","requirements":"3.0.9","direct":false,"kind":"development","optional":false},{"id":4046144525,"package_name":"electron-to-chromium","ecosystem":"npm","requirements":"1.3.893","direct":false,"kind":"development","optional":false},{"id":4046144526,"package_name":"glob","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":4046144527,"package_name":"import-jsx","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144528,"package_name":"ink","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":4046144529,"package_name":"chalk","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":4046144530,"package_name":"is-ci","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144531,"package_name":"loose-envify","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4046144532,"package_name":"mimic-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4046144533,"package_name":"mkdirp","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4046144534,"package_name":"node-releases","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4046144535,"package_name":"object-assign","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"development","optional":false},{"id":4046144536,"package_name":"onetime","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4046144537,"package_name":"patch-console","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144538,"package_name":"picocolors","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144539,"package_name":"react","ecosystem":"npm","requirements":"17.0.2","direct":false,"kind":"development","optional":false},{"id":4046144540,"package_name":"react-devtools-core","ecosystem":"npm","requirements":"4.21.0","direct":false,"kind":"development","optional":false},{"id":4046144541,"package_name":"react-reconciler","ecosystem":"npm","requirements":"0.26.2","direct":false,"kind":"development","optional":false},{"id":4046144542,"package_name":"redeyed","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4046144543,"package_name":"resolve-from","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144544,"package_name":"restore-cursor","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144545,"package_name":"scheduler","ecosystem":"npm","requirements":"0.20.2","direct":false,"kind":"development","optional":false},{"id":4046144546,"package_name":"shell-quote","ecosystem":"npm","requirements":"1.7.3","direct":false,"kind":"development","optional":false},{"id":4046144547,"package_name":"signal-exit","ecosystem":"npm","requirements":"3.0.5","direct":false,"kind":"development","optional":false},{"id":4046144548,"package_name":"slice-ansi","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144549,"package_name":"tap-parser","ecosystem":"npm","requirements":"10.1.0","direct":false,"kind":"development","optional":false},{"id":4046144550,"package_name":"tap-yaml","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144551,"package_name":"to-fast-properties","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144552,"package_name":"treport","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144553,"package_name":"chalk","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4046144554,"package_name":"type-fest","ecosystem":"npm","requirements":"0.12.0","direct":false,"kind":"development","optional":false},{"id":4046144555,"package_name":"unicode-length","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4046144556,"package_name":"widest-line","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4046144557,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144558,"package_name":"ws","ecosystem":"npm","requirements":"7.5.5","direct":false,"kind":"development","optional":false},{"id":4046144559,"package_name":"yallist","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4046144560,"package_name":"yaml","ecosystem":"npm","requirements":"1.10.2","direct":false,"kind":"development","optional":false},{"id":4046144561,"package_name":"yoga-layout-prebuilt","ecosystem":"npm","requirements":"1.10.0","direct":false,"kind":"development","optional":false},{"id":4046144562,"package_name":"tap-mocha-reporter","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4046144563,"package_name":"tcompare","ecosystem":"npm","requirements":"5.0.6","direct":false,"kind":"development","optional":false},{"id":4046144564,"package_name":"test-exclude","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4046144565,"package_name":"text-extensions","ecosystem":"npm","requirements":"1.9.0","direct":false,"kind":"development","optional":false},{"id":4046144566,"package_name":"through","ecosystem":"npm","requirements":"2.3.8","direct":false,"kind":"development","optional":false},{"id":4046144567,"package_name":"through2","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4046144568,"package_name":"to-regex-range","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4046144569,"package_name":"tough-cookie","ecosystem":"npm","requirements":"2.5.0","direct":false,"kind":"development","optional":false},{"id":4046144570,"package_name":"trim-newlines","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4046144571,"package_name":"trivial-deferred","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4046144572,"package_name":"tunnel-agent","ecosystem":"npm","requirements":"0.6.0","direct":false,"kind":"development","optional":false},{"id":4046144573,"package_name":"tweetnacl","ecosystem":"npm","requirements":"0.14.5","direct":false,"kind":"development","optional":false},{"id":4046144574,"package_name":"type-detect","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144575,"package_name":"typedarray","ecosystem":"npm","requirements":"0.0.6","direct":false,"kind":"development","optional":false},{"id":4046144576,"package_name":"typedarray-to-buffer","ecosystem":"npm","requirements":"3.1.5","direct":false,"kind":"development","optional":false},{"id":4046144577,"package_name":"uglify-js","ecosystem":"npm","requirements":"3.14.2","direct":false,"kind":"development","optional":false},{"id":4046144578,"package_name":"uri-js","ecosystem":"npm","requirements":"4.4.1","direct":false,"kind":"development","optional":false},{"id":4046144579,"package_name":"util-deprecate","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4046144580,"package_name":"uuid","ecosystem":"npm","requirements":"3.4.0","direct":false,"kind":"development","optional":false},{"id":4046144581,"package_name":"validate-npm-package-license","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4046144582,"package_name":"verror","ecosystem":"npm","requirements":"1.10.0","direct":false,"kind":"development","optional":false},{"id":4046144583,"package_name":"which","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4046144584,"package_name":"which-module","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4046144585,"package_name":"wordwrap","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144586,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":4046144587,"package_name":"write-file-atomic","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4046144588,"package_name":"xtend","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4046144589,"package_name":"y18n","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4046144590,"package_name":"yapool","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4046144591,"package_name":"yargs","ecosystem":"npm","requirements":"15.4.1","direct":false,"kind":"development","optional":false},{"id":4046144592,"package_name":"yargs-parser","ecosystem":"npm","requirements":"18.1.3","direct":false,"kind":"development","optional":false},{"id":4046144593,"package_name":"yargs-parser","ecosystem":"npm","requirements":"20.2.9","direct":false,"kind":"development","optional":false},{"id":4046144594,"package_name":"yocto-queue","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-14T20:36:24.538Z","updated_at":"2023-01-14T20:36:24.538Z","repository_link":"https://github.com/tapjs/signal-exit/blob/main/.github/workflows/ci.yml","dependencies":[{"id":6905916387,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v1.1.0","direct":true,"kind":"composite","optional":false},{"id":6905916388,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/isaacs-makework.yml","sha":null,"kind":"manifest","created_at":"2023-01-14T20:36:24.565Z","updated_at":"2023-01-14T20:36:24.565Z","repository_link":"https://github.com/tapjs/signal-exit/blob/main/.github/workflows/isaacs-makework.yml","dependencies":[{"id":6905916389,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6905916390,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v2.1.4","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/typedoc.yml","sha":null,"kind":"manifest","created_at":"2024-01-28T23:43:37.452Z","updated_at":"2024-01-28T23:43:37.452Z","repository_link":"https://github.com/tapjs/signal-exit/blob/main/.github/workflows/typedoc.yml","dependencies":[{"id":15889446656,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":15889446657,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":15889446658,"package_name":"actions/configure-pages","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":15889446659,"package_name":"actions/upload-pages-artifact","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":15889446660,"package_name":"actions/deploy-pages","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]}],"score":31.75975016037389,"created_at":"2026-07-08T06:54:31.565Z","updated_at":"2026-08-13T01:31:35.037Z","avatar_url":"https://github.com/tapjs.png","language":"TypeScript","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/378107","html_url":"https://summary.ecosyste.ms/projects/378107"}