{"id":377654,"url":"https://github.com/southpolesteve/node-abort-controller","last_synced_at":"2026-07-22T12:30:26.157Z","repository":{"id":40749136,"uuid":"178486642","full_name":"southpolesteve/node-abort-controller","owner":"southpolesteve","description":"AbortController Polyfill for Node.JS based on EventEmitter","archived":false,"fork":false,"pushed_at":"2026-02-11T20:56:28.000Z","size":295,"stargazers_count":58,"open_issues_count":3,"forks_count":15,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-06-19T02:26:30.218Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/southpolesteve.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2019-03-29T23:13:06.000Z","updated_at":"2026-05-10T08:41:13.000Z","dependencies_parsed_at":"2024-06-18T13:19:14.197Z","dependency_job_id":"737b0014-4af1-41be-96a7-6ca9171b6c27","html_url":"https://github.com/southpolesteve/node-abort-controller","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/southpolesteve/node-abort-controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","download_url":"https://codeload.github.com/southpolesteve/node-abort-controller/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/sbom","scorecard":{"id":839556,"data":{"date":"2025-08-11","repo":{"name":"github.com/southpolesteve/node-abort-controller","commit":"10e0cea66a069d9319f948d055621e1d37aea5db"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","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":"Code-Review","score":3,"reason":"Found 7/20 approved changesets -- score normalized to 3","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":"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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 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":"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":"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":"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:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 18 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":0,"reason":"15 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-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-r683-j2x4-v87g","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-j8xg-fqg3-53r7","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-23T20:07:36.965Z","repository_id":40749136,"created_at":"2025-08-23T20:07:36.965Z","updated_at":"2025-08-23T20:07:36.965Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35142820,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"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":"southpolesteve","name":"Steve Faulkner","uuid":"471400","kind":"user","description":"Infrastructure Engineering @vercel ","email":"","website":"www.southpolesteve.com","location":"Chicago","twitter":"southpolesteve","company":"@vercel","icon_url":"https://avatars.githubusercontent.com/u/471400?u=bb57c3e0faccd5c0a7f955b7edf1975beb9b16d2\u0026v=4","repositories_count":180,"last_synced_at":"2023-04-10T02:47:52.582Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/southpolesteve","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:37:59.654Z","updated_at":"2023-04-10T02:47:52.865Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve/repositories"},"packages":[{"id":1224489,"name":"node-abort-controller","ecosystem":"npm","description":"AbortController for Node based on EventEmitter","homepage":"https://github.com/southpolesteve/node-abort-controller#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/southpolesteve/node-abort-controller","keywords_array":["AbortController","AbortSignal","fetch","polyfill"],"namespace":null,"versions_count":13,"first_release_published_at":"2019-03-31T23:34:16.703Z","latest_release_published_at":"2023-01-26T15:10:43.536Z","latest_release_number":"3.1.1","last_synced_at":"2026-07-15T13:41:47.232Z","created_at":"2022-04-08T14:09:10.449Z","updated_at":"2026-07-15T13:41:47.232Z","registry_url":"https://www.npmjs.com/package/node-abort-controller","install_command":"npm install node-abort-controller","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"3.1.1"}},"repo_metadata":{"id":40749136,"uuid":"178486642","full_name":"southpolesteve/node-abort-controller","owner":"southpolesteve","description":"AbortController Polyfill for Node.JS based on EventEmitter","archived":false,"fork":false,"pushed_at":"2026-02-11T20:56:28.000Z","size":295,"stargazers_count":58,"open_issues_count":3,"forks_count":15,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-06-19T02:26:30.218Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/southpolesteve.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2019-03-29T23:13:06.000Z","updated_at":"2026-05-10T08:41:13.000Z","dependencies_parsed_at":"2024-06-18T13:19:14.197Z","dependency_job_id":"737b0014-4af1-41be-96a7-6ca9171b6c27","html_url":"https://github.com/southpolesteve/node-abort-controller","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/southpolesteve/node-abort-controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","download_url":"https://codeload.github.com/southpolesteve/node-abort-controller/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/sbom","scorecard":{"id":839556,"data":{"date":"2025-08-11","repo":{"name":"github.com/southpolesteve/node-abort-controller","commit":"10e0cea66a069d9319f948d055621e1d37aea5db"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","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":"Code-Review","score":3,"reason":"Found 7/20 approved changesets -- score normalized to 3","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":"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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 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":"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":"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":"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:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 18 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":0,"reason":"15 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-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-r683-j2x4-v87g","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-j8xg-fqg3-53r7","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-23T20:07:36.965Z","repository_id":40749136,"created_at":"2025-08-23T20:07:36.965Z","updated_at":"2025-08-23T20:07:36.965Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35142820,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"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":"southpolesteve","name":"Steve Faulkner","uuid":"471400","kind":"user","description":"Infrastructure Engineering @vercel ","email":"","website":"www.southpolesteve.com","location":"Chicago","twitter":"southpolesteve","company":"@vercel","icon_url":"https://avatars.githubusercontent.com/u/471400?u=bb57c3e0faccd5c0a7f955b7edf1975beb9b16d2\u0026v=4","repositories_count":180,"last_synced_at":"2023-04-10T02:47:52.582Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/southpolesteve","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:37:59.654Z","updated_at":"2023-04-10T02:47:52.865Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve/repositories"},"tags":[]},"repo_metadata_updated_at":"2026-07-09T06:03:30.724Z","dependent_packages_count":406,"downloads":87183818,"downloads_period":"last-month","dependent_repos_count":105993,"rankings":{"downloads":0.04208280592926748,"dependent_repos_count":0.09747221152127016,"dependent_packages_count":0.13676227431144508,"stargazers_count":5.94635249949142,"forks_count":5.721016459935225,"docker_downloads_count":0.11288705845567328,"average":2.0094288849407165},"purl":"pkg:npm/node-abort-controller","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/node-abort-controller","docker_dependents_count":3333,"docker_downloads_count":695120956,"usage_url":"https://repos.ecosyste.ms/usage/npm/node-abort-controller","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/node-abort-controller/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2026-02-19T21:24:15.490Z","issues_count":8,"pull_requests_count":34,"avg_time_to_close_issue":22015751.166666668,"avg_time_to_close_pull_request":4961378.181818182,"issues_closed_count":6,"pull_requests_closed_count":33,"pull_request_authors_count":12,"issue_authors_count":7,"avg_comments_per_issue":2.0,"avg_comments_per_pull_request":1.5882352941176472,"merged_pull_requests_count":17,"bot_issues_count":0,"bot_pull_requests_count":19,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":221494.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"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":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/issues","maintainers":[{"login":"Ethan-Arrowood","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Ethan-Arrowood"},{"login":"southpolesteve","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/southpolesteve"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/node-abort-controller/codemeta","maintainers":[{"uuid":"ethan_arrowood","login":"ethan_arrowood","name":null,"email":"ethan@arrowood.dev","url":null,"packages_count":77,"html_url":"https://www.npmjs.com/~ethan_arrowood","role":null,"created_at":"2023-01-25T17:44:39.911Z","updated_at":"2023-01-25T17:44:39.911Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/ethan_arrowood/packages"},{"uuid":"southpolesteve","login":"southpolesteve","name":null,"email":"southpolesteve@gmail.com","url":null,"packages_count":21,"html_url":"https://www.npmjs.com/~southpolesteve","role":null,"created_at":"2022-11-10T18:52:02.179Z","updated_at":"2022-11-10T18:52:02.179Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/southpolesteve/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5672462,"maintainers_count":1209625,"namespaces_count":399623,"keywords_count":847874,"github":"npm","metadata":{"funded_packages_count":171745},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2026-06-10T05:11:46.456Z","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":4449153,"name":"@beegru/node-abort-controller","ecosystem":"npm","description":"AbortController for Node based on EventEmitter","homepage":"https://github.com/southpolesteve/node-abort-controller#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/southpolesteve/node-abort-controller","keywords_array":["AbortController","AbortSignal","fetch","polyfill"],"namespace":"beegru","versions_count":1,"first_release_published_at":"2022-05-25T17:09:25.900Z","latest_release_published_at":"2022-05-25T17:09:25.900Z","latest_release_number":"3.0.2","last_synced_at":"2026-07-15T13:42:31.521Z","created_at":"2022-05-25T17:11:33.389Z","updated_at":"2026-07-15T13:42:31.521Z","registry_url":"https://www.npmjs.com/package/@beegru/node-abort-controller","install_command":"npm install @beegru/node-abort-controller","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"3.0.2"}},"repo_metadata":{"id":40749136,"uuid":"178486642","full_name":"southpolesteve/node-abort-controller","owner":"southpolesteve","description":"AbortController Polyfill for Node.JS based on EventEmitter","archived":false,"fork":false,"pushed_at":"2026-02-11T20:56:28.000Z","size":295,"stargazers_count":58,"open_issues_count":3,"forks_count":15,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-06-19T02:26:30.218Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/southpolesteve.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2019-03-29T23:13:06.000Z","updated_at":"2026-05-10T08:41:13.000Z","dependencies_parsed_at":"2024-06-18T13:19:14.197Z","dependency_job_id":"737b0014-4af1-41be-96a7-6ca9171b6c27","html_url":"https://github.com/southpolesteve/node-abort-controller","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/southpolesteve/node-abort-controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","download_url":"https://codeload.github.com/southpolesteve/node-abort-controller/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/sbom","scorecard":{"id":839556,"data":{"date":"2025-08-11","repo":{"name":"github.com/southpolesteve/node-abort-controller","commit":"10e0cea66a069d9319f948d055621e1d37aea5db"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/test.yml:1","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":"Code-Review","score":3,"reason":"Found 7/20 approved changesets -- score normalized to 3","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":"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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/southpolesteve/node-abort-controller/test.yml/master?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 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":"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":"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":"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:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 18 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":0,"reason":"15 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-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-r683-j2x4-v87g","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-j8xg-fqg3-53r7","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-23T20:07:36.965Z","repository_id":40749136,"created_at":"2025-08-23T20:07:36.965Z","updated_at":"2025-08-23T20:07:36.965Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35142820,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"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"},"tags":[]},"repo_metadata_updated_at":"2026-07-05T03:21:39.317Z","dependent_packages_count":1,"downloads":28,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":29.656145275930335,"dependent_repos_count":25.30552159382132,"dependent_packages_count":16.219766897652278,"stargazers_count":8.893104935578606,"forks_count":7.335503107659484,"average":17.482008362128404},"purl":"pkg:npm/%40beegru/node-abort-controller","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@beegru/node-abort-controller","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/npm/@beegru/node-abort-controller","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@beegru/node-abort-controller/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-12T00:43:31.640Z","issues_count":8,"pull_requests_count":33,"avg_time_to_close_issue":4280771.2,"avg_time_to_close_pull_request":5109499.5625,"issues_closed_count":5,"pull_requests_closed_count":32,"pull_request_authors_count":11,"issue_authors_count":7,"avg_comments_per_issue":1.875,"avg_comments_per_pull_request":1.6363636363636365,"merged_pull_requests_count":16,"bot_issues_count":0,"bot_pull_requests_count":19,"past_year_issues_count":0,"past_year_pull_requests_count":0,"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":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"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/southpolesteve%2Fnode-abort-controller/issues","maintainers":[{"login":"Ethan-Arrowood","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Ethan-Arrowood"},{"login":"southpolesteve","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/southpolesteve"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@beegru%2Fnode-abort-controller/codemeta","maintainers":[{"uuid":"nidal0","login":"nidal0","name":null,"email":"nidalabrar@hotmail.com","url":null,"packages_count":7,"html_url":"https://www.npmjs.com/~nidal0","role":null,"created_at":"2022-11-15T22:11:30.955Z","updated_at":"2022-11-15T22:11:30.955Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/nidal0/packages"},{"uuid":"aditya98","login":"aditya98","name":null,"email":"aditya@beegru.com","url":null,"packages_count":7,"html_url":"https://www.npmjs.com/~aditya98","role":null,"created_at":"2025-02-06T20:10:31.526Z","updated_at":"2025-02-06T20:10:31.526Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/aditya98/packages"},{"uuid":"subrathkumar","login":"subrathkumar","name":null,"email":"subrathkumarpatra@gmail.com","url":null,"packages_count":6,"html_url":"https://www.npmjs.com/~subrathkumar","role":null,"created_at":"2025-02-07T20:10:27.597Z","updated_at":"2025-02-07T20:10:27.597Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/subrathkumar/packages"},{"uuid":"beegru-tech","login":"beegru-tech","name":null,"email":"tech@beegru.com","url":null,"packages_count":6,"html_url":"https://www.npmjs.com/~beegru-tech","role":null,"created_at":"2026-03-20T20:33:56.094Z","updated_at":"2026-03-20T20:33:56.094Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/beegru-tech/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5672462,"maintainers_count":1209625,"namespaces_count":399623,"keywords_count":847874,"github":"npm","metadata":{"funded_packages_count":171745},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2026-06-10T05:11:46.456Z","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":5990203,"name":"org.webjars.npm:node-abort-controller","ecosystem":"maven","description":"WebJar for node-abort-controller","homepage":"https://www.webjars.org","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/southpolesteve/node-abort-controller","keywords_array":[],"namespace":"org.webjars.npm","versions_count":2,"first_release_published_at":"2022-10-13T14:18:56.000Z","latest_release_published_at":"2023-11-23T22:41:25.000Z","latest_release_number":"3.1.1","last_synced_at":"2026-07-15T13:42:20.459Z","created_at":"2023-01-26T17:24:20.711Z","updated_at":"2026-07-15T13:42:20.459Z","registry_url":"https://central.sonatype.com/artifact/org.webjars.npm/node-abort-controller/","install_command":null,"documentation_url":"https://appdoc.app/artifact/org.webjars.npm/node-abort-controller/","metadata":{"repositories":["https://repo.maven.apache.org/maven2"]},"repo_metadata":{"id":40749136,"uuid":"178486642","full_name":"southpolesteve/node-abort-controller","owner":"southpolesteve","description":"AbortController Polyfill for Node.JS based on EventEmitter","archived":false,"fork":false,"pushed_at":"2023-03-04T03:30:10.000Z","size":293,"stargazers_count":54,"open_issues_count":4,"forks_count":14,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-08T14:01:56.324Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/southpolesteve.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2019-03-29T23:13:06.000Z","updated_at":"2024-11-06T15:08:08.000Z","dependencies_parsed_at":"2024-06-18T13:19:14.197Z","dependency_job_id":"faa2d586-61be-4aa7-ba02-f0406305493f","html_url":"https://github.com/southpolesteve/node-abort-controller","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/southpolesteve/node-abort-controller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","download_url":"https://codeload.github.com/southpolesteve/node-abort-controller/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270796207,"owners_count":24647316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"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":"southpolesteve","name":"Steve Faulkner","uuid":"471400","kind":"user","description":"Infrastructure Engineering @vercel ","email":"","website":"www.southpolesteve.com","location":"Chicago","twitter":"southpolesteve","company":"@vercel","icon_url":"https://avatars.githubusercontent.com/u/471400?u=bb57c3e0faccd5c0a7f955b7edf1975beb9b16d2\u0026v=4","repositories_count":180,"last_synced_at":"2023-04-10T02:47:52.582Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/southpolesteve","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:37:59.654Z","updated_at":"2023-04-10T02:47:52.865Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpolesteve/repositories"},"tags":[]},"repo_metadata_updated_at":"2025-08-17T01:24:48.654Z","dependent_packages_count":2,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":31.979943940947386,"dependent_packages_count":31.998402898858956,"stargazers_count":22.6505458434239,"forks_count":23.73842051512531,"average":27.591828299588887},"purl":"pkg:maven/org.webjars.npm/node-abort-controller","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/maven/org.webjars.npm:node-abort-controller","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/maven/org.webjars.npm:node-abort-controller","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/maven/org.webjars.npm:node-abort-controller/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-12T00:43:31.640Z","issues_count":8,"pull_requests_count":33,"avg_time_to_close_issue":4280771.2,"avg_time_to_close_pull_request":5109499.5625,"issues_closed_count":5,"pull_requests_closed_count":32,"pull_request_authors_count":11,"issue_authors_count":7,"avg_comments_per_issue":1.875,"avg_comments_per_pull_request":1.6363636363636365,"merged_pull_requests_count":16,"bot_issues_count":0,"bot_pull_requests_count":19,"past_year_issues_count":0,"past_year_pull_requests_count":0,"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":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"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/southpolesteve%2Fnode-abort-controller/issues","maintainers":[{"login":"Ethan-Arrowood","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Ethan-Arrowood"},{"login":"southpolesteve","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/southpolesteve"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:node-abort-controller/codemeta","maintainers":[],"registry":{"name":"repo1.maven.org","url":"https://repo.maven.apache.org/maven2","ecosystem":"maven","default":true,"packages_count":612190,"maintainers_count":0,"namespaces_count":80807,"keywords_count":34879,"github":"maven-central","metadata":{"funded_packages_count":37828},"icon_url":"https://github.com/maven-central.png","created_at":"2022-07-21T16:40:13.074Z","updated_at":"2026-06-10T05:05:55.821Z","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":1741635,"full_name":"southpolesteve/node-abort-controller","default_branch":"master","total_commits":64,"total_committers":12,"total_bot_commits":5,"total_bot_committers":1,"mean_commits":5.333333333333333,"dds":0.40625,"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-07-21T09:41:14.554Z","last_synced_commit":"a0e10df97c446fdacc4d2911c42a8c403afff1fc","created_at":"2024-09-13T17:28:28.088Z","updated_at":"2026-07-21T09:40:43.952Z","committers":[{"name":"Steve Faulkner","email":"southpolesteve@gmail.com","login":"southpolesteve","count":38},{"name":"bisubus","email":"subus.gh@gmail.com","login":"bisubus","count":6},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":5},{"name":"Ethan Arrowood","email":"ethan.arrowood@vercel.com","login":null,"count":4},{"name":"Stoian Ivanov","email":"st.iv.sdr@gmail.com","login":"sdrsdr","count":2},{"name":"IvanAdmaers","email":"66776981+IvanAdmaers","login":"IvanAdmaers","count":2},{"name":"Stephen Lee","email":"steple@microsoft.com","login":null,"count":2},{"name":"atassis","email":"atassikay38@gmail.com","login":"atassis","count":1},{"name":"Yann Braga","email":"yannbf@gmail.com","login":"yannbf","count":1},{"name":"Kyle Bloom","email":"kylejbloom@gmail.com","login":"aquacash5","count":1},{"name":"Jean-Philippe Sirois","email":"jp@veksen.net","login":"veksen","count":1},{"name":"Arthur Schreiber","email":"schreiber.arthur@googlemail.com","login":"arthurschreiber","count":1}],"past_year_committers":[{"name":"Jean-Philippe Sirois","email":"jp@veksen.net","login":"veksen","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-07-21T00:00:11.329Z","repositories_count":6386312,"commits_count":868016605,"contributors_count":35902424,"owners_count":1227896,"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":"southpolesteve/node-abort-controller","html_url":"https://github.com/southpolesteve/node-abort-controller","last_synced_at":"2026-02-19T21:24:15.490Z","status":"active","issues_count":8,"pull_requests_count":34,"avg_time_to_close_issue":22015751.166666668,"avg_time_to_close_pull_request":4961378.181818182,"issues_closed_count":6,"pull_requests_closed_count":33,"pull_request_authors_count":12,"issue_authors_count":7,"avg_comments_per_issue":2.0,"avg_comments_per_pull_request":1.5882352941176472,"merged_pull_requests_count":17,"bot_issues_count":0,"bot_pull_requests_count":19,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":221494.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"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":1,"created_at":"2023-05-17T00:06:28.164Z","updated_at":"2026-02-19T21:24:15.490Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpolesteve%2Fnode-abort-controller/issues","issue_labels_count":{"table":{}},"pull_request_labels_count":{"table":{"dependencies":19}},"issue_author_associations_count":{"table":{"NONE":4,"OWNER":2,"CONTRIBUTOR":2}},"pull_request_author_associations_count":{"table":{"CONTRIBUTOR":31,"COLLABORATOR":2,"NONE":1}},"issue_authors":{"table":{"southpolesteve":2,"trevor-scheer":1,"jimmywarting":1,"glasser":1,"kristijantomic":1,"bisubus":1,"atassis":1}},"pull_request_authors":{"table":{"dependabot[bot]":19,"Ethan-Arrowood":2,"atassis":2,"Cadienvan":2,"sdrsdr":2,"IvanAdmaers":1,"bisubus":1,"arthurschreiber":1,"step-lee":1,"yannbf":1,"veksen":1,"aquacash5":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-07-10T00:00:21.713Z","repositories_count":14863352,"issues_count":32280074,"pull_requests_count":106142985,"authors_count":11340965,"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":{}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":1}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{"veksen":1}},"maintainers":[{"table":{"login":"Ethan-Arrowood","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Ethan-Arrowood"}},{"table":{"login":"southpolesteve","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/southpolesteve"}}],"active_maintainers":[]}},"events":{"total":{"PullRequestEvent":1,"WatchEvent":5,"PushEvent":1},"last_year":{"PullRequestEvent":1,"WatchEvent":4,"PushEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2022-08-19T21:51:32.404Z","updated_at":"2022-08-19T21:51:32.404Z","repository_link":"https://github.com/southpolesteve/node-abort-controller/blob/master/package-lock.json","dependencies":[{"id":2090393655,"package_name":"@babel/code-frame","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393656,"package_name":"@babel/compat-data","ecosystem":"npm","requirements":"7.15.0","direct":false,"kind":"development","optional":false},{"id":2090393657,"package_name":"@babel/core","ecosystem":"npm","requirements":"7.15.5","direct":false,"kind":"development","optional":false},{"id":2090393658,"package_name":"source-map","ecosystem":"npm","requirements":"0.5.7","direct":false,"kind":"development","optional":false},{"id":2090393659,"package_name":"@babel/generator","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393660,"package_name":"@babel/helper-compilation-targets","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393661,"package_name":"@babel/helper-function-name","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393662,"package_name":"@babel/helper-get-function-arity","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393663,"package_name":"@babel/helper-hoist-variables","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393664,"package_name":"@babel/helper-member-expression-to-functions","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393665,"package_name":"@babel/helper-module-imports","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393666,"package_name":"@babel/helper-module-transforms","ecosystem":"npm","requirements":"7.15.7","direct":false,"kind":"development","optional":false},{"id":2090393667,"package_name":"@babel/helper-optimise-call-expression","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393668,"package_name":"@babel/helper-plugin-utils","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393669,"package_name":"@babel/helper-replace-supers","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393670,"package_name":"@babel/helper-simple-access","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393671,"package_name":"@babel/helper-split-export-declaration","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393672,"package_name":"@babel/helper-validator-identifier","ecosystem":"npm","requirements":"7.15.7","direct":false,"kind":"development","optional":false},{"id":2090393673,"package_name":"@babel/helper-validator-option","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393674,"package_name":"@babel/helpers","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393675,"package_name":"@babel/highlight","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393676,"package_name":"ansi-styles","ecosystem":"npm","requirements":"3.2.1","direct":false,"kind":"development","optional":false},{"id":2090393677,"package_name":"chalk","ecosystem":"npm","requirements":"2.4.2","direct":false,"kind":"development","optional":false},{"id":2090393678,"package_name":"color-convert","ecosystem":"npm","requirements":"1.9.3","direct":false,"kind":"development","optional":false},{"id":2090393679,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":2090393680,"package_name":"has-flag","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393681,"package_name":"supports-color","ecosystem":"npm","requirements":"5.5.0","direct":false,"kind":"development","optional":false},{"id":2090393682,"package_name":"@babel/parser","ecosystem":"npm","requirements":"7.15.7","direct":false,"kind":"development","optional":false},{"id":2090393683,"package_name":"@babel/plugin-syntax-async-generators","ecosystem":"npm","requirements":"7.8.4","direct":false,"kind":"development","optional":false},{"id":2090393684,"package_name":"@babel/plugin-syntax-bigint","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393685,"package_name":"@babel/plugin-syntax-class-properties","ecosystem":"npm","requirements":"7.12.13","direct":false,"kind":"development","optional":false},{"id":2090393686,"package_name":"@babel/plugin-syntax-import-meta","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":2090393687,"package_name":"@babel/plugin-syntax-json-strings","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393688,"package_name":"@babel/plugin-syntax-logical-assignment-operators","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":2090393689,"package_name":"@babel/plugin-syntax-nullish-coalescing-operator","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393690,"package_name":"@babel/plugin-syntax-numeric-separator","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":2090393691,"package_name":"@babel/plugin-syntax-object-rest-spread","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393692,"package_name":"@babel/plugin-syntax-optional-catch-binding","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393693,"package_name":"@babel/plugin-syntax-optional-chaining","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":2090393694,"package_name":"@babel/plugin-syntax-top-level-await","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393695,"package_name":"@babel/plugin-syntax-typescript","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":2090393696,"package_name":"@babel/template","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393697,"package_name":"@babel/traverse","ecosystem":"npm","requirements":"7.15.4","direct":false,"kind":"development","optional":false},{"id":2090393698,"package_name":"@babel/types","ecosystem":"npm","requirements":"7.15.6","direct":false,"kind":"development","optional":false},{"id":2090393699,"package_name":"@bcoe/v8-coverage","ecosystem":"npm","requirements":"0.2.3","direct":false,"kind":"development","optional":false},{"id":2090393700,"package_name":"@istanbuljs/load-nyc-config","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":2090393701,"package_name":"@istanbuljs/schema","ecosystem":"npm","requirements":"0.1.3","direct":false,"kind":"development","optional":false},{"id":2090393702,"package_name":"@jest/console","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393703,"package_name":"@jest/core","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393704,"package_name":"@jest/environment","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393705,"package_name":"@jest/fake-timers","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393706,"package_name":"@jest/globals","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393707,"package_name":"@jest/reporters","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393708,"package_name":"@jest/source-map","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393709,"package_name":"@jest/test-result","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393710,"package_name":"@jest/test-sequencer","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393711,"package_name":"@jest/transform","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393712,"package_name":"@jest/types","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393713,"package_name":"@sinonjs/commons","ecosystem":"npm","requirements":"1.8.3","direct":false,"kind":"development","optional":false},{"id":2090393714,"package_name":"@sinonjs/fake-timers","ecosystem":"npm","requirements":"8.0.1","direct":false,"kind":"development","optional":false},{"id":2090393715,"package_name":"@tootallnate/once","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":2090393716,"package_name":"@types/babel__core","ecosystem":"npm","requirements":"7.1.16","direct":false,"kind":"development","optional":false},{"id":2090393717,"package_name":"@types/babel__generator","ecosystem":"npm","requirements":"7.6.3","direct":false,"kind":"development","optional":false},{"id":2090393718,"package_name":"@types/babel__template","ecosystem":"npm","requirements":"7.4.1","direct":false,"kind":"development","optional":false},{"id":2090393719,"package_name":"@types/babel__traverse","ecosystem":"npm","requirements":"7.14.2","direct":false,"kind":"development","optional":false},{"id":2090393720,"package_name":"@types/graceful-fs","ecosystem":"npm","requirements":"4.1.5","direct":false,"kind":"development","optional":false},{"id":2090393721,"package_name":"@types/istanbul-lib-coverage","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":2090393722,"package_name":"@types/istanbul-lib-report","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393723,"package_name":"@types/istanbul-reports","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":2090393724,"package_name":"@types/node","ecosystem":"npm","requirements":"16.10.2","direct":false,"kind":"development","optional":false},{"id":2090393725,"package_name":"@types/prettier","ecosystem":"npm","requirements":"2.4.1","direct":false,"kind":"development","optional":false},{"id":2090393726,"package_name":"@types/stack-utils","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393727,"package_name":"@types/yargs","ecosystem":"npm","requirements":"16.0.4","direct":false,"kind":"development","optional":false},{"id":2090393728,"package_name":"@types/yargs-parser","ecosystem":"npm","requirements":"20.2.1","direct":false,"kind":"development","optional":false},{"id":2090393729,"package_name":"abab","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":2090393730,"package_name":"acorn","ecosystem":"npm","requirements":"8.5.0","direct":false,"kind":"development","optional":false},{"id":2090393731,"package_name":"acorn-globals","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":2090393732,"package_name":"acorn","ecosystem":"npm","requirements":"7.4.1","direct":false,"kind":"development","optional":false},{"id":2090393733,"package_name":"acorn-walk","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":2090393734,"package_name":"agent-base","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":2090393735,"package_name":"ansi-escapes","ecosystem":"npm","requirements":"4.3.2","direct":false,"kind":"development","optional":false},{"id":2090393736,"package_name":"ansi-regex","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":2090393737,"package_name":"ansi-styles","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":2090393738,"package_name":"anymatch","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":2090393739,"package_name":"argparse","ecosystem":"npm","requirements":"1.0.10","direct":false,"kind":"development","optional":false},{"id":2090393740,"package_name":"asynckit","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":2090393741,"package_name":"babel-jest","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393742,"package_name":"babel-plugin-istanbul","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":2090393743,"package_name":"babel-plugin-jest-hoist","ecosystem":"npm","requirements":"27.2.0","direct":false,"kind":"development","optional":false},{"id":2090393744,"package_name":"babel-preset-current-node-syntax","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":2090393745,"package_name":"babel-preset-jest","ecosystem":"npm","requirements":"27.2.0","direct":false,"kind":"development","optional":false},{"id":2090393746,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":2090393747,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"development","optional":false},{"id":2090393748,"package_name":"braces","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":2090393749,"package_name":"browser-process-hrtime","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":2090393750,"package_name":"browserslist","ecosystem":"npm","requirements":"4.17.2","direct":false,"kind":"development","optional":false},{"id":2090393751,"package_name":"bser","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":2090393752,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":2090393753,"package_name":"callsites","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":2090393754,"package_name":"camelcase","ecosystem":"npm","requirements":"5.3.1","direct":false,"kind":"development","optional":false},{"id":2090393755,"package_name":"caniuse-lite","ecosystem":"npm","requirements":"1.0.30001264","direct":false,"kind":"development","optional":false},{"id":2090393756,"package_name":"chalk","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":2090393757,"package_name":"char-regex","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":2090393758,"package_name":"ci-info","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":2090393759,"package_name":"cjs-module-lexer","ecosystem":"npm","requirements":"1.2.2","direct":false,"kind":"development","optional":false},{"id":2090393760,"package_name":"cliui","ecosystem":"npm","requirements":"7.0.4","direct":false,"kind":"development","optional":false},{"id":2090393761,"package_name":"co","ecosystem":"npm","requirements":"4.6.0","direct":false,"kind":"development","optional":false},{"id":2090393762,"package_name":"collect-v8-coverage","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":2090393763,"package_name":"color-convert","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393764,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":2090393765,"package_name":"combined-stream","ecosystem":"npm","requirements":"1.0.8","direct":false,"kind":"development","optional":false},{"id":2090393766,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":2090393767,"package_name":"convert-source-map","ecosystem":"npm","requirements":"1.8.0","direct":false,"kind":"development","optional":false},{"id":2090393768,"package_name":"cross-spawn","ecosystem":"npm","requirements":"7.0.3","direct":false,"kind":"development","optional":false},{"id":2090393769,"package_name":"cssom","ecosystem":"npm","requirements":"0.4.4","direct":false,"kind":"development","optional":false},{"id":2090393770,"package_name":"cssstyle","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":2090393771,"package_name":"cssom","ecosystem":"npm","requirements":"0.3.8","direct":false,"kind":"development","optional":false},{"id":2090393772,"package_name":"data-urls","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393773,"package_name":"debug","ecosystem":"npm","requirements":"4.3.2","direct":false,"kind":"development","optional":false},{"id":2090393774,"package_name":"decimal.js","ecosystem":"npm","requirements":"10.3.1","direct":false,"kind":"development","optional":false},{"id":2090393775,"package_name":"dedent","ecosystem":"npm","requirements":"0.7.0","direct":false,"kind":"development","optional":false},{"id":2090393776,"package_name":"deep-is","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":2090393777,"package_name":"deepmerge","ecosystem":"npm","requirements":"4.2.2","direct":false,"kind":"development","optional":false},{"id":2090393778,"package_name":"delayed-stream","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":2090393779,"package_name":"detect-newline","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":2090393780,"package_name":"diff-sequences","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393781,"package_name":"domexception","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393782,"package_name":"webidl-conversions","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":2090393783,"package_name":"electron-to-chromium","ecosystem":"npm","requirements":"1.3.857","direct":false,"kind":"development","optional":false},{"id":2090393784,"package_name":"emittery","ecosystem":"npm","requirements":"0.8.1","direct":false,"kind":"development","optional":false},{"id":2090393785,"package_name":"emoji-regex","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":2090393786,"package_name":"escalade","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":2090393787,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":2090393788,"package_name":"escodegen","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393789,"package_name":"esprima","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":2090393790,"package_name":"estraverse","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":2090393791,"package_name":"esutils","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":2090393792,"package_name":"execa","ecosystem":"npm","requirements":"5.1.1","direct":false,"kind":"development","optional":false},{"id":2090393793,"package_name":"exit","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":2090393794,"package_name":"expect","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393795,"package_name":"ansi-styles","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":2090393796,"package_name":"fast-json-stable-stringify","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":2090393797,"package_name":"fast-levenshtein","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":2090393798,"package_name":"fb-watchman","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393799,"package_name":"fill-range","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":2090393800,"package_name":"find-up","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":2090393801,"package_name":"form-data","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":2090393802,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":2090393803,"package_name":"fsevents","ecosystem":"npm","requirements":"2.3.2","direct":false,"kind":"development","optional":false},{"id":2090393804,"package_name":"function-bind","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":2090393805,"package_name":"gensync","ecosystem":"npm","requirements":"1.0.0-beta.2","direct":false,"kind":"development","optional":false},{"id":2090393806,"package_name":"get-caller-file","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":2090393807,"package_name":"get-package-type","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false},{"id":2090393808,"package_name":"get-stream","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":2090393809,"package_name":"glob","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":2090393810,"package_name":"globals","ecosystem":"npm","requirements":"11.12.0","direct":false,"kind":"development","optional":false},{"id":2090393811,"package_name":"graceful-fs","ecosystem":"npm","requirements":"4.2.8","direct":false,"kind":"development","optional":false},{"id":2090393812,"package_name":"has","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":2090393813,"package_name":"has-flag","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393814,"package_name":"html-encoding-sniffer","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393815,"package_name":"html-escaper","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":2090393816,"package_name":"http-proxy-agent","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":2090393817,"package_name":"https-proxy-agent","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":2090393818,"package_name":"human-signals","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":2090393819,"package_name":"iconv-lite","ecosystem":"npm","requirements":"0.4.24","direct":false,"kind":"development","optional":false},{"id":2090393820,"package_name":"import-local","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":2090393821,"package_name":"imurmurhash","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":2090393822,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":2090393823,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":2090393824,"package_name":"is-ci","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393825,"package_name":"is-core-module","ecosystem":"npm","requirements":"2.7.0","direct":false,"kind":"development","optional":false},{"id":2090393826,"package_name":"is-fullwidth-code-point","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393827,"package_name":"is-generator-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":2090393828,"package_name":"is-number","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":2090393829,"package_name":"is-potential-custom-element-name","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":2090393830,"package_name":"is-stream","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":2090393831,"package_name":"is-typedarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":2090393832,"package_name":"isexe","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393833,"package_name":"istanbul-lib-coverage","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":2090393834,"package_name":"istanbul-lib-instrument","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":2090393835,"package_name":"istanbul-lib-report","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393836,"package_name":"istanbul-lib-source-maps","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393837,"package_name":"istanbul-reports","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":2090393838,"package_name":"jest","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393839,"package_name":"jest-cli","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393840,"package_name":"jest-changed-files","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393841,"package_name":"jest-circus","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393842,"package_name":"jest-config","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393843,"package_name":"jest-diff","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393844,"package_name":"jest-docblock","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393845,"package_name":"jest-each","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393846,"package_name":"jest-environment-jsdom","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393847,"package_name":"jest-environment-node","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393848,"package_name":"jest-get-type","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393849,"package_name":"jest-haste-map","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393850,"package_name":"jest-jasmine2","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393851,"package_name":"jest-leak-detector","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393852,"package_name":"jest-matcher-utils","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393853,"package_name":"jest-message-util","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393854,"package_name":"jest-mock","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393855,"package_name":"jest-pnp-resolver","ecosystem":"npm","requirements":"1.2.2","direct":false,"kind":"development","optional":false},{"id":2090393856,"package_name":"jest-regex-util","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393857,"package_name":"jest-resolve","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393858,"package_name":"jest-resolve-dependencies","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393859,"package_name":"jest-runner","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393860,"package_name":"jest-runtime","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393861,"package_name":"jest-serializer","ecosystem":"npm","requirements":"27.0.6","direct":false,"kind":"development","optional":false},{"id":2090393862,"package_name":"jest-snapshot","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393863,"package_name":"semver","ecosystem":"npm","requirements":"7.3.5","direct":false,"kind":"development","optional":false},{"id":2090393864,"package_name":"jest-util","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393865,"package_name":"jest-validate","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393866,"package_name":"camelcase","ecosystem":"npm","requirements":"6.2.0","direct":false,"kind":"development","optional":false},{"id":2090393867,"package_name":"jest-watcher","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393868,"package_name":"jest-worker","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393869,"package_name":"supports-color","ecosystem":"npm","requirements":"8.1.1","direct":false,"kind":"development","optional":false},{"id":2090393870,"package_name":"js-tokens","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393871,"package_name":"js-yaml","ecosystem":"npm","requirements":"3.14.1","direct":false,"kind":"development","optional":false},{"id":2090393872,"package_name":"jsdom","ecosystem":"npm","requirements":"16.7.0","direct":false,"kind":"development","optional":false},{"id":2090393873,"package_name":"jsesc","ecosystem":"npm","requirements":"2.5.2","direct":false,"kind":"development","optional":false},{"id":2090393874,"package_name":"json5","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":2090393875,"package_name":"kleur","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":2090393876,"package_name":"leven","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":2090393877,"package_name":"levn","ecosystem":"npm","requirements":"0.3.0","direct":false,"kind":"development","optional":false},{"id":2090393878,"package_name":"locate-path","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":2090393879,"package_name":"lodash","ecosystem":"npm","requirements":"4.17.21","direct":false,"kind":"development","optional":false},{"id":2090393880,"package_name":"lru-cache","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":2090393881,"package_name":"make-dir","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":2090393882,"package_name":"makeerror","ecosystem":"npm","requirements":"1.0.11","direct":false,"kind":"development","optional":false},{"id":2090393883,"package_name":"merge-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393884,"package_name":"micromatch","ecosystem":"npm","requirements":"4.0.4","direct":false,"kind":"development","optional":false},{"id":2090393885,"package_name":"mime-db","ecosystem":"npm","requirements":"1.50.0","direct":false,"kind":"development","optional":false},{"id":2090393886,"package_name":"mime-types","ecosystem":"npm","requirements":"2.1.33","direct":false,"kind":"development","optional":false},{"id":2090393887,"package_name":"mimic-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":2090393888,"package_name":"minimatch","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":2090393889,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.5","direct":false,"kind":"development","optional":false},{"id":2090393890,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":2090393891,"package_name":"nanocolors","ecosystem":"npm","requirements":"0.2.12","direct":false,"kind":"development","optional":false},{"id":2090393892,"package_name":"natural-compare","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":2090393893,"package_name":"node-fetch","ecosystem":"npm","requirements":"2.6.5","direct":false,"kind":"development","optional":false},{"id":2090393894,"package_name":"tr46","ecosystem":"npm","requirements":"0.0.3","direct":false,"kind":"development","optional":false},{"id":2090393895,"package_name":"webidl-conversions","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":2090393896,"package_name":"whatwg-url","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":2090393897,"package_name":"node-int64","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":2090393898,"package_name":"node-modules-regexp","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":2090393899,"package_name":"node-releases","ecosystem":"npm","requirements":"1.1.77","direct":false,"kind":"development","optional":false},{"id":2090393900,"package_name":"normalize-path","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393901,"package_name":"npm-run-path","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":2090393902,"package_name":"nwsapi","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":2090393903,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":2090393904,"package_name":"onetime","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":2090393905,"package_name":"optionator","ecosystem":"npm","requirements":"0.8.3","direct":false,"kind":"development","optional":false},{"id":2090393906,"package_name":"p-limit","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":2090393907,"package_name":"p-locate","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":2090393908,"package_name":"p-try","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":2090393909,"package_name":"parse5","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":2090393910,"package_name":"path-exists","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393911,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":2090393912,"package_name":"path-key","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":2090393913,"package_name":"path-parse","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":2090393914,"package_name":"picomatch","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":2090393915,"package_name":"pirates","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":2090393916,"package_name":"pkg-dir","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":2090393917,"package_name":"prelude-ls","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":2090393918,"package_name":"pretty-format","ecosystem":"npm","requirements":"27.2.4","direct":false,"kind":"development","optional":false},{"id":2090393919,"package_name":"prompts","ecosystem":"npm","requirements":"2.4.1","direct":false,"kind":"development","optional":false},{"id":2090393920,"package_name":"psl","ecosystem":"npm","requirements":"1.8.0","direct":false,"kind":"development","optional":false},{"id":2090393921,"package_name":"punycode","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":2090393922,"package_name":"react-is","ecosystem":"npm","requirements":"17.0.2","direct":false,"kind":"development","optional":false},{"id":2090393923,"package_name":"require-directory","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":2090393924,"package_name":"resolve","ecosystem":"npm","requirements":"1.20.0","direct":false,"kind":"development","optional":false},{"id":2090393925,"package_name":"resolve-cwd","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393926,"package_name":"resolve-from","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":2090393927,"package_name":"rimraf","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":2090393928,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":2090393929,"package_name":"safer-buffer","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":2090393930,"package_name":"saxes","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":2090393931,"package_name":"semver","ecosystem":"npm","requirements":"6.3.0","direct":false,"kind":"development","optional":false},{"id":2090393932,"package_name":"shebang-command","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393933,"package_name":"shebang-regex","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393934,"package_name":"signal-exit","ecosystem":"npm","requirements":"3.0.5","direct":false,"kind":"development","optional":false},{"id":2090393935,"package_name":"sisteransi","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":2090393936,"package_name":"slash","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393937,"package_name":"source-map","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":2090393938,"package_name":"source-map-support","ecosystem":"npm","requirements":"0.5.20","direct":false,"kind":"development","optional":false},{"id":2090393939,"package_name":"sprintf-js","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":2090393940,"package_name":"stack-utils","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":2090393941,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393942,"package_name":"string-length","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":2090393943,"package_name":"string-width","ecosystem":"npm","requirements":"4.2.3","direct":false,"kind":"development","optional":false},{"id":2090393944,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":2090393945,"package_name":"strip-bom","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393946,"package_name":"strip-final-newline","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393947,"package_name":"supports-color","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":2090393948,"package_name":"supports-hyperlinks","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":2090393949,"package_name":"symbol-tree","ecosystem":"npm","requirements":"3.2.4","direct":false,"kind":"development","optional":false},{"id":2090393950,"package_name":"terminal-link","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":2090393951,"package_name":"test-exclude","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":2090393952,"package_name":"throat","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":2090393953,"package_name":"tmpl","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":2090393954,"package_name":"to-fast-properties","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393955,"package_name":"to-regex-range","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":2090393956,"package_name":"tough-cookie","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393957,"package_name":"tr46","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":2090393958,"package_name":"type-check","ecosystem":"npm","requirements":"0.3.2","direct":false,"kind":"development","optional":false},{"id":2090393959,"package_name":"type-detect","ecosystem":"npm","requirements":"4.0.8","direct":false,"kind":"development","optional":false},{"id":2090393960,"package_name":"type-fest","ecosystem":"npm","requirements":"0.21.3","direct":false,"kind":"development","optional":false},{"id":2090393961,"package_name":"typedarray-to-buffer","ecosystem":"npm","requirements":"3.1.5","direct":false,"kind":"development","optional":false},{"id":2090393962,"package_name":"universalify","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":2090393963,"package_name":"v8-to-istanbul","ecosystem":"npm","requirements":"8.1.0","direct":false,"kind":"development","optional":false},{"id":2090393964,"package_name":"source-map","ecosystem":"npm","requirements":"0.7.3","direct":false,"kind":"development","optional":false},{"id":2090393965,"package_name":"w3c-hr-time","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":2090393966,"package_name":"w3c-xmlserializer","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":2090393967,"package_name":"walker","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":2090393968,"package_name":"webidl-conversions","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":2090393969,"package_name":"whatwg-encoding","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":2090393970,"package_name":"whatwg-fetch","ecosystem":"npm","requirements":"3.6.2","direct":false,"kind":"development","optional":false},{"id":2090393971,"package_name":"whatwg-mimetype","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":2090393972,"package_name":"whatwg-url","ecosystem":"npm","requirements":"8.7.0","direct":false,"kind":"development","optional":false},{"id":2090393973,"package_name":"which","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":2090393974,"package_name":"word-wrap","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":2090393975,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":2090393976,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":2090393977,"package_name":"write-file-atomic","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":2090393978,"package_name":"ws","ecosystem":"npm","requirements":"7.5.5","direct":false,"kind":"development","optional":false},{"id":2090393979,"package_name":"xml-name-validator","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":2090393980,"package_name":"xmlchars","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":2090393981,"package_name":"y18n","ecosystem":"npm","requirements":"5.0.8","direct":false,"kind":"development","optional":false},{"id":2090393982,"package_name":"yallist","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":2090393983,"package_name":"yargs","ecosystem":"npm","requirements":"16.2.0","direct":false,"kind":"development","optional":false},{"id":2090393984,"package_name":"yargs-parser","ecosystem":"npm","requirements":"20.2.9","direct":false,"kind":"development","optional":false}]},{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-08-19T21:51:32.663Z","updated_at":"2022-08-19T21:51:32.663Z","repository_link":"https://github.com/southpolesteve/node-abort-controller/blob/master/package.json","dependencies":[{"id":2090396745,"package_name":"jest","ecosystem":"npm","requirements":"^27.2.4","direct":true,"kind":"development","optional":false},{"id":2090396746,"package_name":"node-fetch","ecosystem":"npm","requirements":"^2.6.5","direct":true,"kind":"development","optional":false},{"id":2090396747,"package_name":"whatwg-fetch","ecosystem":"npm","requirements":"^3.6.2","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test.yml","sha":null,"kind":"manifest","created_at":"2023-02-14T18:31:58.428Z","updated_at":"2023-02-14T18:31:58.428Z","repository_link":"https://github.com/southpolesteve/node-abort-controller/blob/master/.github/workflows/test.yml","dependencies":[{"id":7665974260,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7665974261,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]}],"score":27.07367577815238,"created_at":"2026-07-08T05:06:21.376Z","updated_at":"2026-07-22T12:30:26.157Z","avatar_url":"https://github.com/southpolesteve.png","language":"JavaScript","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/377654","html_url":"https://summary.ecosyste.ms/projects/377654"}