{"id":287395,"name":null,"description":"Python, JavaScript and C utility library","url":"https://github.com/hat-open/hat-util","last_synced_at":"2025-10-16T12:15:56.128Z","repository":{"id":46821693,"uuid":"392851297","full_name":"hat-open/hat-util","owner":"hat-open","description":"Python, JavaScript and C utility library","archived":false,"fork":false,"pushed_at":"2025-08-06T21:23:21.000Z","size":800,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-28T04:13:07.752Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://hat-util.hat-open.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hat-open.png","metadata":{"files":{"readme":"README.rst","changelog":null,"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}},"created_at":"2021-08-04T23:45:21.000Z","updated_at":"2025-08-06T21:21:51.000Z","dependencies_parsed_at":"2024-06-21T14:28:08.375Z","dependency_job_id":"487335fe-97fd-4378-bed2-0ca28f202640","html_url":"https://github.com/hat-open/hat-util","commit_stats":{"total_commits":66,"total_committers":1,"mean_commits":66.0,"dds":0.0,"last_synced_commit":"7bd0d1853903b81ecc3ae3aa8cc385142e99644b"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/hat-open/hat-util","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/sbom","scorecard":{"id":457478,"data":{"date":"2025-08-11","repo":{"name":"github.com/hat-open/hat-util","commit":"e373d7995c6a2f160deb73ad78ff8b36cf763f89"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.5,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"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":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: npmCommand not pinned by hash: playground/js/patch.sh:10","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:24","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:25","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:21","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:22","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docs.yaml:1","Warn: no topLevel permission defined: .github/workflows/main.yaml: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":"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: Apache License 2.0: 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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"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-19T10:05:39.939Z","repository_id":46821693,"created_at":"2025-08-19T10:05:39.939Z","updated_at":"2025-08-19T10:05:39.939Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279073167,"owners_count":26097338,"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-10-15T02:00:07.814Z","response_time":56,"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":"hat-open","name":"Hat Open","uuid":"62620335","kind":"organization","description":"","email":null,"website":"https://hat-open.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/62620335?v=4","repositories_count":28,"last_synced_at":"2024-05-08T00:19:41.481Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/hat-open","funding_links":[],"total_stars":187,"followers":8,"following":0,"created_at":"2022-11-15T03:56:46.553Z","updated_at":"2024-05-08T00:19:51.371Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open/repositories"},"packages":[{"id":973076,"name":"@hat-open/util","ecosystem":"npm","description":"Hat utility library","homepage":"http://hat-open.com","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/hat-open/hat-util","keywords_array":[],"namespace":"hat-open","versions_count":18,"first_release_published_at":"2021-08-04T23:50:56.628Z","latest_release_published_at":"2024-05-06T20:32:44.813Z","latest_release_number":"0.6.16","last_synced_at":"2025-10-15T06:35:09.463Z","created_at":"2022-04-07T18:12:31.756Z","updated_at":"2025-10-15T10:27:23.350Z","registry_url":"https://www.npmjs.com/package/@hat-open/util","install_command":"npm install @hat-open/util","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"0.6.16"}},"repo_metadata":{"id":46821693,"uuid":"392851297","full_name":"hat-open/hat-util","owner":"hat-open","description":"Python, JavaScript and C utility library","archived":false,"fork":false,"pushed_at":"2025-08-06T21:23:21.000Z","size":800,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-28T04:13:07.752Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://hat-util.hat-open.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hat-open.png","metadata":{"files":{"readme":"README.rst","changelog":null,"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}},"created_at":"2021-08-04T23:45:21.000Z","updated_at":"2025-08-06T21:21:51.000Z","dependencies_parsed_at":"2024-06-21T14:28:08.375Z","dependency_job_id":"487335fe-97fd-4378-bed2-0ca28f202640","html_url":"https://github.com/hat-open/hat-util","commit_stats":{"total_commits":66,"total_committers":1,"mean_commits":66.0,"dds":0.0,"last_synced_commit":"7bd0d1853903b81ecc3ae3aa8cc385142e99644b"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/hat-open/hat-util","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/sbom","scorecard":{"id":457478,"data":{"date":"2025-08-11","repo":{"name":"github.com/hat-open/hat-util","commit":"e373d7995c6a2f160deb73ad78ff8b36cf763f89"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.5,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"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":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: npmCommand not pinned by hash: playground/js/patch.sh:10","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:24","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:25","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:21","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:22","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docs.yaml:1","Warn: no topLevel permission defined: .github/workflows/main.yaml: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":"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: Apache License 2.0: 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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"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-19T10:05:39.939Z","repository_id":46821693,"created_at":"2025-08-19T10:05:39.939Z","updated_at":"2025-08-19T10:05:39.939Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279073167,"owners_count":26097338,"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-10-15T02:00:07.814Z","response_time":56,"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":"hat-open","name":"Hat Open","uuid":"62620335","kind":"organization","description":"","email":null,"website":"https://hat-open.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/62620335?v=4","repositories_count":28,"last_synced_at":"2024-05-08T00:19:41.481Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/hat-open","funding_links":[],"total_stars":187,"followers":8,"following":0,"created_at":"2022-11-15T03:56:46.553Z","updated_at":"2024-05-08T00:19:51.371Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open/repositories"},"tags":[{"name":"v0.6.19","sha":"2cf75b622a0594d61d882193ac4676cf96a84656","kind":"commit","published_at":"2025-03-23T17:28:30.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.19","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.19","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.19","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.19/manifests"},{"name":"v0.6.18","sha":"e8cafe0888f6d194a620287614878d54f0375bd7","kind":"commit","published_at":"2025-02-03T09:07:42.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.18","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.18","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.18","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.18/manifests"},{"name":"v0.6.17","sha":"4faa641077ba6eb5fe27cd1fdcc74820e683566c","kind":"commit","published_at":"2025-01-14T20:33:31.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.17","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.17","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.17","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.17/manifests"},{"name":"v0.6.16","sha":"02785d80952ac78a1ced7d236bcfb349bf29d0b7","kind":"commit","published_at":"2024-05-06T20:32:19.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.16","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.16/manifests"},{"name":"v0.6.15","sha":"867e797b1df0e72997ca1a3157da6ff5b222465a","kind":"commit","published_at":"2024-05-06T16:38:34.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.15","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.15","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.15","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.15/manifests"},{"name":"v0.6.14","sha":"ac6157da2b7bf47bf33e3893bb1c4164a0bf9b22","kind":"commit","published_at":"2024-03-28T19:52:45.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.14","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.14","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.14","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.14/manifests"},{"name":"v0.6.13","sha":"c6d5c9d5fd63b429640f270d6b85410dc817fefb","kind":"commit","published_at":"2024-03-08T16:42:01.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.13","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.13","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.13","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.13/manifests"},{"name":"v0.6.12","sha":"59c98d14077a2ec4e9d9a2fbf3da8734be70cb67","kind":"commit","published_at":"2024-03-08T00:06:10.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.12","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.12","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.12","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.12/manifests"},{"name":"v0.6.11","sha":"992668ab2a47d51c00527ffcb36d140a48abbf83","kind":"commit","published_at":"2023-12-29T19:47:54.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.11","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.11","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.11","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.11/manifests"},{"name":"v0.6.10","sha":"402d46ca69e748b2c5ee69f0cd2f41e95778d48c","kind":"commit","published_at":"2023-06-22T22:38:55.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.10","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.10/manifests"},{"name":"v0.6.9","sha":"7444736079ad0b7ee038e0debdb001d55263f486","kind":"commit","published_at":"2023-04-04T15:48:47.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.9","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.9/manifests"},{"name":"v0.6.8","sha":"09c28f1e1ffc6d33ebe6ce86cd099c34cb0b8d3a","kind":"commit","published_at":"2023-02-27T13:14:53.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.8","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.8/manifests"},{"name":"v0.6.7","sha":"4d55b5371d526f2ebaa8792f7db995f7201dc722","kind":"commit","published_at":"2022-11-02T20:51:58.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.7","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.7/manifests"},{"name":"v0.6.6","sha":"47b8df80e1a3aeee4c5660defa59dac51fcabe07","kind":"commit","published_at":"2022-10-24T14:50:09.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.6","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.6/manifests"}]},"repo_metadata_updated_at":"2025-10-15T10:27:23.350Z","dependent_packages_count":4,"downloads":182,"downloads_period":"last-month","dependent_repos_count":9,"rankings":{"downloads":6.2218793467172775,"dependent_repos_count":3.873843702131151,"dependent_packages_count":4.511963911031793,"stargazers_count":16.726633258447677,"forks_count":15.40493323788128,"docker_downloads_count":null,"average":9.347850691241835},"purl":"pkg:npm/%40hat-open/util","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@hat-open/util","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/npm/@hat-open/util","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@hat-open/util/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-07-15T10:50:47.990Z","issues_count":1,"pull_requests_count":0,"avg_time_to_close_issue":53805.0,"avg_time_to_close_pull_request":null,"issues_closed_count":1,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"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/hat-open%2Fhat-util/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@hat-open%2Futil/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@hat-open%2Futil/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@hat-open%2Futil/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@hat-open%2Futil/related_packages","maintainers":[{"uuid":"bozo.kopic","login":"bozo.kopic","name":null,"email":"bozo@kopic.xyz","url":null,"packages_count":9,"html_url":"https://www.npmjs.com/~bozo.kopic","role":null,"created_at":"2022-11-21T00:31:14.782Z","updated_at":"2022-11-21T00:31:14.782Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/bozo.kopic/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5181428,"maintainers_count":1066142,"namespaces_count":320947,"keywords_count":740683,"github":"npm","metadata":{"funded_packages_count":158760},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-10-16T06:20:36.912Z","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":2756600,"name":"hat-util","ecosystem":"pypi","description":"Hat utility library","homepage":"http://hat-open.com","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/hat-open/hat-util","keywords_array":[],"namespace":null,"versions_count":46,"first_release_published_at":"2020-03-31T13:27:25.000Z","latest_release_published_at":"2025-07-15T09:20:52.000Z","latest_release_number":"0.6.20","last_synced_at":"2025-10-15T20:36:43.122Z","created_at":"2022-04-10T11:13:32.026Z","updated_at":"2025-10-15T20:36:43.122Z","registry_url":"https://pypi.org/project/hat-util/","install_command":"pip install hat-util --index-url https://pypi.org/simple","documentation_url":"http://hat-util.hat-open.com","metadata":{"funding":null,"documentation":"http://hat-util.hat-open.com","classifiers":["License :: OSI Approved :: Apache Software License","Programming Language :: Python :: 3"],"normalized_name":"hat-util","project_status":null},"repo_metadata":{"id":46821693,"uuid":"392851297","full_name":"hat-open/hat-util","owner":"hat-open","description":"Python, JavaScript and C utility library","archived":false,"fork":false,"pushed_at":"2025-08-06T21:23:21.000Z","size":800,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-11T06:03:39.943Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://hat-util.hat-open.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hat-open.png","metadata":{"files":{"readme":"README.rst","changelog":null,"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}},"created_at":"2021-08-04T23:45:21.000Z","updated_at":"2025-08-06T21:21:51.000Z","dependencies_parsed_at":"2024-06-21T14:28:08.375Z","dependency_job_id":"487335fe-97fd-4378-bed2-0ca28f202640","html_url":"https://github.com/hat-open/hat-util","commit_stats":{"total_commits":66,"total_committers":1,"mean_commits":66.0,"dds":0.0,"last_synced_commit":"7bd0d1853903b81ecc3ae3aa8cc385142e99644b"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/hat-open/hat-util","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/sbom","scorecard":{"id":457478,"data":{"date":"2025-08-11","repo":{"name":"github.com/hat-open/hat-util","commit":"e373d7995c6a2f160deb73ad78ff8b36cf763f89"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.5,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"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":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yaml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/docs.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/hat-open/hat-util/main.yaml/master?enable=pin","Warn: npmCommand not pinned by hash: playground/js/patch.sh:10","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:24","Warn: pipCommand not pinned by hash: .github/workflows/docs.yaml:25","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:21","Warn: pipCommand not pinned by hash: .github/workflows/main.yaml:22","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docs.yaml:1","Warn: no topLevel permission defined: .github/workflows/main.yaml: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":"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: Apache License 2.0: 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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"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-19T10:05:39.939Z","repository_id":46821693,"created_at":"2025-08-19T10:05:39.939Z","updated_at":"2025-08-19T10:05:39.939Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275132154,"owners_count":25411041,"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-09-14T02:00:10.474Z","response_time":75,"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":"hat-open","name":"Hat Open","uuid":"62620335","kind":"organization","description":"","email":null,"website":"https://hat-open.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/62620335?v=4","repositories_count":28,"last_synced_at":"2024-05-08T00:19:41.481Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/hat-open","funding_links":[],"total_stars":187,"followers":8,"following":0,"created_at":"2022-11-15T03:56:46.553Z","updated_at":"2024-05-08T00:19:51.371Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hat-open/repositories"},"tags":[{"name":"v0.6.19","sha":"2cf75b622a0594d61d882193ac4676cf96a84656","kind":"commit","published_at":"2025-03-23T17:28:30.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.19","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.19","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.19","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.19/manifests"},{"name":"v0.6.18","sha":"e8cafe0888f6d194a620287614878d54f0375bd7","kind":"commit","published_at":"2025-02-03T09:07:42.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.18","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.18","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.18","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.18/manifests"},{"name":"v0.6.17","sha":"4faa641077ba6eb5fe27cd1fdcc74820e683566c","kind":"commit","published_at":"2025-01-14T20:33:31.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.17","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.17","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.17","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.17/manifests"},{"name":"v0.6.16","sha":"02785d80952ac78a1ced7d236bcfb349bf29d0b7","kind":"commit","published_at":"2024-05-06T20:32:19.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.16","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.16/manifests"},{"name":"v0.6.15","sha":"867e797b1df0e72997ca1a3157da6ff5b222465a","kind":"commit","published_at":"2024-05-06T16:38:34.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.15","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.15","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.15","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.15/manifests"},{"name":"v0.6.14","sha":"ac6157da2b7bf47bf33e3893bb1c4164a0bf9b22","kind":"commit","published_at":"2024-03-28T19:52:45.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.14","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.14","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.14","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.14/manifests"},{"name":"v0.6.13","sha":"c6d5c9d5fd63b429640f270d6b85410dc817fefb","kind":"commit","published_at":"2024-03-08T16:42:01.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.13","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.13","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.13","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.13/manifests"},{"name":"v0.6.12","sha":"59c98d14077a2ec4e9d9a2fbf3da8734be70cb67","kind":"commit","published_at":"2024-03-08T00:06:10.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.12","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.12","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.12","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.12/manifests"},{"name":"v0.6.11","sha":"992668ab2a47d51c00527ffcb36d140a48abbf83","kind":"commit","published_at":"2023-12-29T19:47:54.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.11","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.11","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.11","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.11/manifests"},{"name":"v0.6.10","sha":"402d46ca69e748b2c5ee69f0cd2f41e95778d48c","kind":"commit","published_at":"2023-06-22T22:38:55.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.10","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.10/manifests"},{"name":"v0.6.9","sha":"7444736079ad0b7ee038e0debdb001d55263f486","kind":"commit","published_at":"2023-04-04T15:48:47.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.9","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.9/manifests"},{"name":"v0.6.8","sha":"09c28f1e1ffc6d33ebe6ce86cd099c34cb0b8d3a","kind":"commit","published_at":"2023-02-27T13:14:53.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.8","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.8/manifests"},{"name":"v0.6.7","sha":"4d55b5371d526f2ebaa8792f7db995f7201dc722","kind":"commit","published_at":"2022-11-02T20:51:58.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.7","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.7/manifests"},{"name":"v0.6.6","sha":"47b8df80e1a3aeee4c5660defa59dac51fcabe07","kind":"commit","published_at":"2022-10-24T14:50:09.000Z","download_url":"https://codeload.github.com/hat-open/hat-util/tar.gz/v0.6.6","html_url":"https://github.com/hat-open/hat-util/releases/tag/v0.6.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/hat-open/hat-util@v0.6.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/tags/v0.6.6/manifests"}]},"repo_metadata_updated_at":"2025-09-14T16:28:27.625Z","dependent_packages_count":19,"downloads":3517,"downloads_period":"last-month","dependent_repos_count":18,"rankings":{"downloads":14.95488890637505,"dependent_repos_count":3.4230274648292807,"dependent_packages_count":0.6095571498213169,"stargazers_count":31.908171902260385,"forks_count":29.80555336965972,"docker_downloads_count":null,"average":16.14023975858915},"purl":"pkg:pypi/hat-util","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/hat-util","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/hat-util","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/hat-util/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-07-15T10:50:47.990Z","issues_count":1,"pull_requests_count":0,"avg_time_to_close_issue":53805.0,"avg_time_to_close_pull_request":null,"issues_closed_count":1,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"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/hat-open%2Fhat-util/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hat-util/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hat-util/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hat-util/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hat-util/related_packages","maintainers":[{"uuid":"bozo.kopic","login":"bozo.kopic","name":null,"email":null,"url":null,"packages_count":33,"html_url":"https://pypi.org/user/bozo.kopic/","role":null,"created_at":"2023-02-24T09:30:17.386Z","updated_at":"2023-02-24T09:30:17.386Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/bozo.kopic/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":739839,"maintainers_count":314392,"namespaces_count":0,"keywords_count":244529,"github":"pypi","metadata":{"funded_packages_count":52250},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-10-16T06:45:18.828Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":65077,"full_name":"hat-open/hat-util","default_branch":"master","committers":[{"name":"bozo.kopic","email":"bozo@kopic.xyz","login":null,"count":108}],"total_commits":108,"total_committers":1,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":108.0,"dds":0.0,"past_year_committers":[{"name":"bozo.kopic","email":"bozo@kopic.xyz","login":null,"count":14}],"past_year_total_commits":14,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":14.0,"past_year_dds":0.0,"last_synced_at":"2025-09-14T17:52:44.105Z","last_synced_commit":"e373d7995c6a2f160deb73ad78ff8b36cf763f89","created_at":"2023-03-07T18:58:47.345Z","updated_at":"2025-09-14T17:52:35.340Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-10-16T00:09:37.962Z","repositories_count":6083693,"commits_count":925041024,"contributors_count":36101504,"owners_count":1107259,"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_stats":{"full_name":"hat-open/hat-util","html_url":"https://github.com/hat-open/hat-util","last_synced_at":"2025-07-15T10:50:47.990Z","status":null,"issues_count":1,"pull_requests_count":0,"avg_time_to_close_issue":53805.0,"avg_time_to_close_pull_request":null,"issues_closed_count":1,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":1,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"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,"created_at":"2023-05-14T15:20:39.970Z","updated_at":"2025-07-15T10:50:47.990Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/hat-open%2Fhat-util/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":1},"pull_request_author_associations_count":{},"issue_authors":{"canassa":1},"pull_request_authors":{},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-10-16T00:00:07.423Z","repositories_count":10988355,"issues_count":34017673,"pull_requests_count":109937336,"authors_count":11037867,"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":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[],"active_maintainers":[]},"events":{"total":{"PushEvent":21,"CreateEvent":3},"last_year":{"PushEvent":21,"CreateEvent":3}},"keywords":[],"dependencies":[{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-08-22T23:20:23.698Z","updated_at":"2022-08-22T23:20:23.698Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/package.json","dependencies":[{"id":2316453278,"package_name":"docdash","ecosystem":"npm","requirements":"1.2.0","direct":true,"kind":"development","optional":false},{"id":2316453279,"package_name":"eslint","ecosystem":"npm","requirements":"7.21.0","direct":true,"kind":"development","optional":false},{"id":2316453280,"package_name":"jsdoc","ecosystem":"npm","requirements":"3.6.6","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/docs.yaml","sha":null,"kind":"manifest","created_at":"2024-03-12T22:49:53.420Z","updated_at":"2024-03-12T22:49:53.420Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/.github/workflows/docs.yaml","dependencies":[{"id":16778377122,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":16778377123,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":16778377124,"package_name":"peaceiris/actions-gh-pages","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/main.yaml","sha":null,"kind":"manifest","created_at":"2024-03-12T22:49:53.969Z","updated_at":"2024-03-12T22:49:53.969Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/.github/workflows/main.yaml","dependencies":[{"id":16778377131,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":16778377132,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2024-03-12T22:49:54.299Z","updated_at":"2024-03-12T22:49:54.299Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/package-lock.json","dependencies":[{"id":16778377137,"package_name":"@aashutoshrathi/word-wrap","ecosystem":"npm","requirements":"1.2.6","direct":false,"kind":"development","optional":false},{"id":16778377138,"package_name":"@ampproject/remapping","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":16778377139,"package_name":"@babel/code-frame","ecosystem":"npm","requirements":"7.23.5","direct":false,"kind":"development","optional":false},{"id":16778377140,"package_name":"ansi-styles","ecosystem":"npm","requirements":"3.2.1","direct":false,"kind":"development","optional":false},{"id":16778377141,"package_name":"chalk","ecosystem":"npm","requirements":"2.4.2","direct":false,"kind":"development","optional":false},{"id":16778377142,"package_name":"color-convert","ecosystem":"npm","requirements":"1.9.3","direct":false,"kind":"development","optional":false},{"id":16778377143,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":16778377144,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":16778377145,"package_name":"has-flag","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377146,"package_name":"supports-color","ecosystem":"npm","requirements":"5.5.0","direct":false,"kind":"development","optional":false},{"id":16778377147,"package_name":"@babel/compat-data","ecosystem":"npm","requirements":"7.23.5","direct":false,"kind":"development","optional":false},{"id":16778377148,"package_name":"@babel/core","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377149,"package_name":"@babel/generator","ecosystem":"npm","requirements":"7.23.6","direct":false,"kind":"development","optional":false},{"id":16778377150,"package_name":"@babel/helper-compilation-targets","ecosystem":"npm","requirements":"7.23.6","direct":false,"kind":"development","optional":false},{"id":16778377151,"package_name":"@babel/helper-environment-visitor","ecosystem":"npm","requirements":"7.22.20","direct":false,"kind":"development","optional":false},{"id":16778377152,"package_name":"@babel/helper-function-name","ecosystem":"npm","requirements":"7.23.0","direct":false,"kind":"development","optional":false},{"id":16778377153,"package_name":"@babel/helper-hoist-variables","ecosystem":"npm","requirements":"7.22.5","direct":false,"kind":"development","optional":false},{"id":16778377154,"package_name":"@babel/helper-module-imports","ecosystem":"npm","requirements":"7.22.15","direct":false,"kind":"development","optional":false},{"id":16778377155,"package_name":"@babel/helper-module-transforms","ecosystem":"npm","requirements":"7.23.3","direct":false,"kind":"development","optional":false},{"id":16778377156,"package_name":"@babel/helper-plugin-utils","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377157,"package_name":"@babel/helper-simple-access","ecosystem":"npm","requirements":"7.22.5","direct":false,"kind":"development","optional":false},{"id":16778377158,"package_name":"@babel/helper-split-export-declaration","ecosystem":"npm","requirements":"7.22.6","direct":false,"kind":"development","optional":false},{"id":16778377159,"package_name":"@babel/helper-string-parser","ecosystem":"npm","requirements":"7.23.4","direct":false,"kind":"development","optional":false},{"id":16778377160,"package_name":"@babel/helper-validator-identifier","ecosystem":"npm","requirements":"7.22.20","direct":false,"kind":"development","optional":false},{"id":16778377161,"package_name":"@babel/helper-validator-option","ecosystem":"npm","requirements":"7.23.5","direct":false,"kind":"development","optional":false},{"id":16778377162,"package_name":"@babel/helpers","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377163,"package_name":"@babel/highlight","ecosystem":"npm","requirements":"7.23.4","direct":false,"kind":"development","optional":false},{"id":16778377164,"package_name":"@babel/parser","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377165,"package_name":"@babel/plugin-syntax-async-generators","ecosystem":"npm","requirements":"7.8.4","direct":false,"kind":"development","optional":false},{"id":16778377166,"package_name":"@babel/plugin-syntax-bigint","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377167,"package_name":"@babel/plugin-syntax-class-properties","ecosystem":"npm","requirements":"7.12.13","direct":false,"kind":"development","optional":false},{"id":16778377168,"package_name":"@babel/plugin-syntax-import-meta","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":16778377169,"package_name":"@babel/plugin-syntax-json-strings","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377170,"package_name":"@babel/plugin-syntax-jsx","ecosystem":"npm","requirements":"7.23.3","direct":false,"kind":"development","optional":false},{"id":16778377171,"package_name":"@babel/plugin-syntax-logical-assignment-operators","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":16778377172,"package_name":"@babel/plugin-syntax-nullish-coalescing-operator","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377173,"package_name":"@babel/plugin-syntax-numeric-separator","ecosystem":"npm","requirements":"7.10.4","direct":false,"kind":"development","optional":false},{"id":16778377174,"package_name":"@babel/plugin-syntax-object-rest-spread","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377175,"package_name":"@babel/plugin-syntax-optional-catch-binding","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377176,"package_name":"@babel/plugin-syntax-optional-chaining","ecosystem":"npm","requirements":"7.8.3","direct":false,"kind":"development","optional":false},{"id":16778377334,"package_name":"execa","ecosystem":"npm","requirements":"5.1.1","direct":false,"kind":"development","optional":false},{"id":16778377177,"package_name":"@babel/plugin-syntax-top-level-await","ecosystem":"npm","requirements":"7.14.5","direct":false,"kind":"development","optional":false},{"id":16778377178,"package_name":"@babel/plugin-syntax-typescript","ecosystem":"npm","requirements":"7.23.3","direct":false,"kind":"development","optional":false},{"id":16778377179,"package_name":"@babel/template","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377180,"package_name":"@babel/traverse","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377181,"package_name":"globals","ecosystem":"npm","requirements":"11.12.0","direct":false,"kind":"development","optional":false},{"id":16778377182,"package_name":"@babel/types","ecosystem":"npm","requirements":"7.24.0","direct":false,"kind":"development","optional":false},{"id":16778377183,"package_name":"@bcoe/v8-coverage","ecosystem":"npm","requirements":"0.2.3","direct":false,"kind":"development","optional":false},{"id":16778377184,"package_name":"@eslint-community/eslint-utils","ecosystem":"npm","requirements":"4.4.0","direct":false,"kind":"development","optional":false},{"id":16778377185,"package_name":"@eslint-community/regexpp","ecosystem":"npm","requirements":"4.10.0","direct":false,"kind":"development","optional":false},{"id":16778377186,"package_name":"@eslint/eslintrc","ecosystem":"npm","requirements":"2.1.4","direct":false,"kind":"development","optional":false},{"id":16778377187,"package_name":"@eslint/js","ecosystem":"npm","requirements":"8.57.0","direct":false,"kind":"development","optional":false},{"id":16778377188,"package_name":"@humanwhocodes/config-array","ecosystem":"npm","requirements":"0.11.14","direct":false,"kind":"development","optional":false},{"id":16778377189,"package_name":"@humanwhocodes/module-importer","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377190,"package_name":"@humanwhocodes/object-schema","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":16778377191,"package_name":"@istanbuljs/load-nyc-config","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":16778377192,"package_name":"argparse","ecosystem":"npm","requirements":"1.0.10","direct":false,"kind":"development","optional":false},{"id":16778377193,"package_name":"find-up","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":16778377194,"package_name":"js-yaml","ecosystem":"npm","requirements":"3.14.1","direct":false,"kind":"development","optional":false},{"id":16778377195,"package_name":"locate-path","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":16778377196,"package_name":"p-limit","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":16778377197,"package_name":"p-locate","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":16778377198,"package_name":"resolve-from","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":16778377199,"package_name":"@istanbuljs/schema","ecosystem":"npm","requirements":"0.1.3","direct":false,"kind":"development","optional":false},{"id":16778377200,"package_name":"@jest/console","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377201,"package_name":"@jest/core","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377202,"package_name":"@jest/environment","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377203,"package_name":"@jest/expect","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377204,"package_name":"@jest/expect-utils","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377205,"package_name":"@jest/fake-timers","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377206,"package_name":"@jest/globals","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377207,"package_name":"@jest/reporters","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377208,"package_name":"@jest/schemas","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377209,"package_name":"@jest/source-map","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377210,"package_name":"@jest/test-result","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377211,"package_name":"@jest/test-sequencer","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377212,"package_name":"@jest/transform","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377213,"package_name":"@jest/types","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377214,"package_name":"@jridgewell/gen-mapping","ecosystem":"npm","requirements":"0.3.5","direct":false,"kind":"development","optional":false},{"id":16778377215,"package_name":"@jridgewell/resolve-uri","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":16778377216,"package_name":"@jridgewell/set-array","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":16778377217,"package_name":"@jridgewell/sourcemap-codec","ecosystem":"npm","requirements":"1.4.15","direct":false,"kind":"development","optional":false},{"id":16778377218,"package_name":"@jridgewell/trace-mapping","ecosystem":"npm","requirements":"0.3.25","direct":false,"kind":"development","optional":false},{"id":16778377219,"package_name":"@nodelib/fs.scandir","ecosystem":"npm","requirements":"2.1.5","direct":false,"kind":"development","optional":false},{"id":16778377220,"package_name":"@nodelib/fs.stat","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":16778377221,"package_name":"@nodelib/fs.walk","ecosystem":"npm","requirements":"1.2.8","direct":false,"kind":"development","optional":false},{"id":16778377222,"package_name":"@sinclair/typebox","ecosystem":"npm","requirements":"0.27.8","direct":false,"kind":"development","optional":false},{"id":16778377223,"package_name":"@sinonjs/commons","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":16778377224,"package_name":"@sinonjs/fake-timers","ecosystem":"npm","requirements":"10.3.0","direct":false,"kind":"development","optional":false},{"id":16778377225,"package_name":"@tootallnate/once","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377226,"package_name":"@types/babel__core","ecosystem":"npm","requirements":"7.20.5","direct":false,"kind":"development","optional":false},{"id":16778377227,"package_name":"@types/babel__generator","ecosystem":"npm","requirements":"7.6.8","direct":false,"kind":"development","optional":false},{"id":16778377228,"package_name":"@types/babel__template","ecosystem":"npm","requirements":"7.4.4","direct":false,"kind":"development","optional":false},{"id":16778377229,"package_name":"@types/babel__traverse","ecosystem":"npm","requirements":"7.20.5","direct":false,"kind":"development","optional":false},{"id":16778377230,"package_name":"@types/graceful-fs","ecosystem":"npm","requirements":"4.1.9","direct":false,"kind":"development","optional":false},{"id":16778377231,"package_name":"@types/istanbul-lib-coverage","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":16778377232,"package_name":"@types/istanbul-lib-report","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":16778377233,"package_name":"@types/istanbul-reports","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":16778377234,"package_name":"@types/jsdom","ecosystem":"npm","requirements":"20.0.1","direct":false,"kind":"development","optional":false},{"id":16778377235,"package_name":"@types/json-schema","ecosystem":"npm","requirements":"7.0.15","direct":false,"kind":"development","optional":false},{"id":16778377236,"package_name":"@types/node","ecosystem":"npm","requirements":"20.11.25","direct":false,"kind":"development","optional":false},{"id":16778377237,"package_name":"@types/semver","ecosystem":"npm","requirements":"7.5.8","direct":false,"kind":"development","optional":false},{"id":16778377238,"package_name":"@types/stack-utils","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":16778377239,"package_name":"@types/tough-cookie","ecosystem":"npm","requirements":"4.0.5","direct":false,"kind":"development","optional":false},{"id":16778377240,"package_name":"@types/yargs","ecosystem":"npm","requirements":"17.0.32","direct":false,"kind":"development","optional":false},{"id":16778377241,"package_name":"@types/yargs-parser","ecosystem":"npm","requirements":"21.0.3","direct":false,"kind":"development","optional":false},{"id":16778377242,"package_name":"@typescript-eslint/eslint-plugin","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377243,"package_name":"lru-cache","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":16778377244,"package_name":"semver","ecosystem":"npm","requirements":"7.6.0","direct":false,"kind":"development","optional":false},{"id":16778377245,"package_name":"yallist","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377246,"package_name":"@typescript-eslint/parser","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377247,"package_name":"@typescript-eslint/scope-manager","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377248,"package_name":"@typescript-eslint/type-utils","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377249,"package_name":"@typescript-eslint/types","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377250,"package_name":"@typescript-eslint/typescript-estree","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377251,"package_name":"brace-expansion","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":16778377252,"package_name":"minimatch","ecosystem":"npm","requirements":"9.0.3","direct":false,"kind":"development","optional":false},{"id":16778377253,"package_name":"@typescript-eslint/utils","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377254,"package_name":"@typescript-eslint/visitor-keys","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":16778377255,"package_name":"@ungap/structured-clone","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":16778377256,"package_name":"abab","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":16778377257,"package_name":"acorn","ecosystem":"npm","requirements":"8.11.3","direct":false,"kind":"development","optional":false},{"id":16778377258,"package_name":"acorn-globals","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":16778377259,"package_name":"acorn-jsx","ecosystem":"npm","requirements":"5.3.2","direct":false,"kind":"development","optional":false},{"id":16778377260,"package_name":"acorn-walk","ecosystem":"npm","requirements":"8.3.2","direct":false,"kind":"development","optional":false},{"id":16778377261,"package_name":"agent-base","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":16778377262,"package_name":"ajv","ecosystem":"npm","requirements":"6.12.6","direct":false,"kind":"development","optional":false},{"id":16778377263,"package_name":"ansi-escapes","ecosystem":"npm","requirements":"4.3.2","direct":false,"kind":"development","optional":false},{"id":16778377264,"package_name":"type-fest","ecosystem":"npm","requirements":"0.21.3","direct":false,"kind":"development","optional":false},{"id":16778377265,"package_name":"ansi-regex","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":16778377266,"package_name":"ansi-sequence-parser","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":16778377267,"package_name":"ansi-styles","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":16778377268,"package_name":"anymatch","ecosystem":"npm","requirements":"3.1.3","direct":false,"kind":"development","optional":false},{"id":16778377269,"package_name":"argparse","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":16778377270,"package_name":"array-union","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377271,"package_name":"asynckit","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":16778377272,"package_name":"babel-jest","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377273,"package_name":"babel-plugin-istanbul","ecosystem":"npm","requirements":"6.1.1","direct":false,"kind":"development","optional":false},{"id":16778377274,"package_name":"istanbul-lib-instrument","ecosystem":"npm","requirements":"5.2.1","direct":false,"kind":"development","optional":false},{"id":16778377275,"package_name":"babel-plugin-jest-hoist","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377276,"package_name":"babel-preset-current-node-syntax","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377277,"package_name":"babel-preset-jest","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377278,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":16778377279,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"development","optional":false},{"id":16778377280,"package_name":"braces","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":16778377281,"package_name":"browserslist","ecosystem":"npm","requirements":"4.23.0","direct":false,"kind":"development","optional":false},{"id":16778377282,"package_name":"bs-logger","ecosystem":"npm","requirements":"0.2.6","direct":false,"kind":"development","optional":false},{"id":16778377283,"package_name":"bser","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":16778377284,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":16778377285,"package_name":"callsites","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":16778377286,"package_name":"camelcase","ecosystem":"npm","requirements":"5.3.1","direct":false,"kind":"development","optional":false},{"id":16778377287,"package_name":"caniuse-lite","ecosystem":"npm","requirements":"1.0.30001596","direct":false,"kind":"development","optional":false},{"id":16778377288,"package_name":"chalk","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":16778377289,"package_name":"char-regex","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":16778377290,"package_name":"ci-info","ecosystem":"npm","requirements":"3.9.0","direct":false,"kind":"development","optional":false},{"id":16778377291,"package_name":"cjs-module-lexer","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":16778377292,"package_name":"cliui","ecosystem":"npm","requirements":"8.0.1","direct":false,"kind":"development","optional":false},{"id":16778377293,"package_name":"co","ecosystem":"npm","requirements":"4.6.0","direct":false,"kind":"development","optional":false},{"id":16778377294,"package_name":"collect-v8-coverage","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":16778377295,"package_name":"color-convert","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":16778377296,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":16778377297,"package_name":"combined-stream","ecosystem":"npm","requirements":"1.0.8","direct":false,"kind":"development","optional":false},{"id":16778377298,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":16778377299,"package_name":"convert-source-map","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377300,"package_name":"create-jest","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377301,"package_name":"cross-spawn","ecosystem":"npm","requirements":"7.0.3","direct":false,"kind":"development","optional":false},{"id":16778377302,"package_name":"cssom","ecosystem":"npm","requirements":"0.5.0","direct":false,"kind":"development","optional":false},{"id":16778377303,"package_name":"cssstyle","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":16778377304,"package_name":"cssom","ecosystem":"npm","requirements":"0.3.8","direct":false,"kind":"development","optional":false},{"id":16778377305,"package_name":"data-urls","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":16778377306,"package_name":"debug","ecosystem":"npm","requirements":"4.3.4","direct":false,"kind":"development","optional":false},{"id":16778377307,"package_name":"decimal.js","ecosystem":"npm","requirements":"10.4.3","direct":false,"kind":"development","optional":false},{"id":16778377308,"package_name":"dedent","ecosystem":"npm","requirements":"1.5.1","direct":false,"kind":"development","optional":false},{"id":16778377309,"package_name":"deep-is","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":16778377310,"package_name":"deepmerge","ecosystem":"npm","requirements":"4.3.1","direct":false,"kind":"development","optional":false},{"id":16778377311,"package_name":"delayed-stream","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":16778377312,"package_name":"detect-newline","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":16778377313,"package_name":"diff-sequences","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377314,"package_name":"dir-glob","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":16778377315,"package_name":"doctrine","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377316,"package_name":"domexception","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377317,"package_name":"electron-to-chromium","ecosystem":"npm","requirements":"1.4.698","direct":false,"kind":"development","optional":false},{"id":16778377318,"package_name":"emittery","ecosystem":"npm","requirements":"0.13.1","direct":false,"kind":"development","optional":false},{"id":16778377319,"package_name":"emoji-regex","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":16778377320,"package_name":"entities","ecosystem":"npm","requirements":"4.5.0","direct":false,"kind":"development","optional":false},{"id":16778377321,"package_name":"error-ex","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":16778377322,"package_name":"escalade","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":16778377323,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377324,"package_name":"escodegen","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377325,"package_name":"eslint","ecosystem":"npm","requirements":"8.57.0","direct":false,"kind":"development","optional":false},{"id":16778377326,"package_name":"eslint-scope","ecosystem":"npm","requirements":"7.2.2","direct":false,"kind":"development","optional":false},{"id":16778377327,"package_name":"eslint-visitor-keys","ecosystem":"npm","requirements":"3.4.3","direct":false,"kind":"development","optional":false},{"id":16778377328,"package_name":"espree","ecosystem":"npm","requirements":"9.6.1","direct":false,"kind":"development","optional":false},{"id":16778377329,"package_name":"esprima","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":16778377330,"package_name":"esquery","ecosystem":"npm","requirements":"1.5.0","direct":false,"kind":"development","optional":false},{"id":16778377331,"package_name":"esrecurse","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":16778377332,"package_name":"estraverse","ecosystem":"npm","requirements":"5.3.0","direct":false,"kind":"development","optional":false},{"id":16778377333,"package_name":"esutils","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":16778377335,"package_name":"exit","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":16778377336,"package_name":"expect","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377337,"package_name":"fast-deep-equal","ecosystem":"npm","requirements":"3.1.3","direct":false,"kind":"development","optional":false},{"id":16778377338,"package_name":"fast-glob","ecosystem":"npm","requirements":"3.3.2","direct":false,"kind":"development","optional":false},{"id":16778377339,"package_name":"glob-parent","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":16778377340,"package_name":"fast-json-stable-stringify","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377341,"package_name":"fast-levenshtein","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":16778377342,"package_name":"fastq","ecosystem":"npm","requirements":"1.17.1","direct":false,"kind":"development","optional":false},{"id":16778377343,"package_name":"fb-watchman","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":16778377344,"package_name":"file-entry-cache","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":16778377345,"package_name":"fill-range","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":16778377346,"package_name":"find-up","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":16778377347,"package_name":"flat-cache","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":16778377348,"package_name":"flatted","ecosystem":"npm","requirements":"3.3.1","direct":false,"kind":"development","optional":false},{"id":16778377349,"package_name":"form-data","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377350,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":16778377351,"package_name":"fsevents","ecosystem":"npm","requirements":"2.3.3","direct":false,"kind":"development","optional":false},{"id":16778377352,"package_name":"function-bind","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":16778377353,"package_name":"gensync","ecosystem":"npm","requirements":"1.0.0-beta.2","direct":false,"kind":"development","optional":false},{"id":16778377354,"package_name":"get-caller-file","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":16778377355,"package_name":"get-package-type","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false},{"id":16778377356,"package_name":"get-stream","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":16778377357,"package_name":"glob","ecosystem":"npm","requirements":"7.2.3","direct":false,"kind":"development","optional":false},{"id":16778377358,"package_name":"glob-parent","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":16778377359,"package_name":"globals","ecosystem":"npm","requirements":"13.24.0","direct":false,"kind":"development","optional":false},{"id":16778377360,"package_name":"globby","ecosystem":"npm","requirements":"11.1.0","direct":false,"kind":"development","optional":false},{"id":16778377361,"package_name":"graceful-fs","ecosystem":"npm","requirements":"4.2.11","direct":false,"kind":"development","optional":false},{"id":16778377362,"package_name":"graphemer","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":16778377363,"package_name":"has-flag","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377364,"package_name":"hasown","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":16778377365,"package_name":"html-encoding-sniffer","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377366,"package_name":"html-escaper","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":16778377367,"package_name":"http-proxy-agent","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":16778377368,"package_name":"https-proxy-agent","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":16778377369,"package_name":"human-signals","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377370,"package_name":"iconv-lite","ecosystem":"npm","requirements":"0.6.3","direct":false,"kind":"development","optional":false},{"id":16778377371,"package_name":"ignore","ecosystem":"npm","requirements":"5.3.1","direct":false,"kind":"development","optional":false},{"id":16778377372,"package_name":"import-fresh","ecosystem":"npm","requirements":"3.3.0","direct":false,"kind":"development","optional":false},{"id":16778377373,"package_name":"import-local","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":16778377374,"package_name":"imurmurhash","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":16778377375,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":16778377376,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":16778377377,"package_name":"is-arrayish","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":16778377378,"package_name":"is-core-module","ecosystem":"npm","requirements":"2.13.1","direct":false,"kind":"development","optional":false},{"id":16778377379,"package_name":"is-extglob","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":16778377380,"package_name":"is-fullwidth-code-point","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377381,"package_name":"is-generator-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377382,"package_name":"is-glob","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":16778377383,"package_name":"is-number","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":16778377384,"package_name":"is-path-inside","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":16778377385,"package_name":"is-potential-custom-element-name","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377386,"package_name":"is-stream","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":16778377387,"package_name":"isexe","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377388,"package_name":"istanbul-lib-coverage","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":16778377389,"package_name":"istanbul-lib-instrument","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":16778377390,"package_name":"istanbul-lib-report","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":16778377391,"package_name":"istanbul-lib-source-maps","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":16778377392,"package_name":"istanbul-reports","ecosystem":"npm","requirements":"3.1.7","direct":false,"kind":"development","optional":false},{"id":16778377393,"package_name":"jest","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377394,"package_name":"jest-changed-files","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377395,"package_name":"jest-circus","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377396,"package_name":"jest-cli","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377397,"package_name":"jest-config","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377398,"package_name":"jest-diff","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377399,"package_name":"jest-docblock","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377400,"package_name":"jest-each","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377401,"package_name":"jest-environment-jsdom","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377402,"package_name":"jest-environment-node","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377403,"package_name":"jest-get-type","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377404,"package_name":"jest-haste-map","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377405,"package_name":"jest-leak-detector","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377406,"package_name":"jest-matcher-utils","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377407,"package_name":"jest-message-util","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377408,"package_name":"jest-mock","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377409,"package_name":"jest-pnp-resolver","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":16778377410,"package_name":"jest-regex-util","ecosystem":"npm","requirements":"29.6.3","direct":false,"kind":"development","optional":false},{"id":16778377411,"package_name":"jest-resolve","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377412,"package_name":"jest-resolve-dependencies","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377413,"package_name":"jest-runner","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377414,"package_name":"jest-runtime","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377415,"package_name":"jest-snapshot","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377416,"package_name":"jest-util","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377417,"package_name":"jest-validate","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377418,"package_name":"camelcase","ecosystem":"npm","requirements":"6.3.0","direct":false,"kind":"development","optional":false},{"id":16778377419,"package_name":"jest-watcher","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377420,"package_name":"jest-worker","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377421,"package_name":"supports-color","ecosystem":"npm","requirements":"8.1.1","direct":false,"kind":"development","optional":false},{"id":16778377422,"package_name":"js-tokens","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377423,"package_name":"js-yaml","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":16778377424,"package_name":"jsdom","ecosystem":"npm","requirements":"20.0.3","direct":false,"kind":"development","optional":false},{"id":16778377425,"package_name":"jsesc","ecosystem":"npm","requirements":"2.5.2","direct":false,"kind":"development","optional":false},{"id":16778377426,"package_name":"json-buffer","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":16778377427,"package_name":"json-parse-even-better-errors","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":16778377428,"package_name":"json-schema-traverse","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"development","optional":false},{"id":16778377429,"package_name":"json-stable-stringify-without-jsonify","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377430,"package_name":"json5","ecosystem":"npm","requirements":"2.2.3","direct":false,"kind":"development","optional":false},{"id":16778377431,"package_name":"jsonc-parser","ecosystem":"npm","requirements":"3.2.1","direct":false,"kind":"development","optional":false},{"id":16778377432,"package_name":"keyv","ecosystem":"npm","requirements":"4.5.4","direct":false,"kind":"development","optional":false},{"id":16778377433,"package_name":"kleur","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":16778377434,"package_name":"leven","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":16778377435,"package_name":"levn","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"development","optional":false},{"id":16778377436,"package_name":"lines-and-columns","ecosystem":"npm","requirements":"1.2.4","direct":false,"kind":"development","optional":false},{"id":16778377437,"package_name":"locate-path","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":16778377438,"package_name":"lodash.memoize","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":16778377439,"package_name":"lodash.merge","ecosystem":"npm","requirements":"4.6.2","direct":false,"kind":"development","optional":false},{"id":16778377440,"package_name":"lru-cache","ecosystem":"npm","requirements":"5.1.1","direct":false,"kind":"development","optional":false},{"id":16778377441,"package_name":"lunr","ecosystem":"npm","requirements":"2.3.9","direct":false,"kind":"development","optional":false},{"id":16778377442,"package_name":"make-dir","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377443,"package_name":"make-error","ecosystem":"npm","requirements":"1.3.6","direct":false,"kind":"development","optional":false},{"id":16778377444,"package_name":"makeerror","ecosystem":"npm","requirements":"1.0.12","direct":false,"kind":"development","optional":false},{"id":16778377445,"package_name":"marked","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":16778377446,"package_name":"merge-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377447,"package_name":"merge2","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":16778377448,"package_name":"micromatch","ecosystem":"npm","requirements":"4.0.5","direct":false,"kind":"development","optional":false},{"id":16778377449,"package_name":"mime-db","ecosystem":"npm","requirements":"1.52.0","direct":false,"kind":"development","optional":false},{"id":16778377450,"package_name":"mime-types","ecosystem":"npm","requirements":"2.1.35","direct":false,"kind":"development","optional":false},{"id":16778377451,"package_name":"mimic-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":16778377452,"package_name":"minimatch","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":16778377453,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":16778377454,"package_name":"natural-compare","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":16778377455,"package_name":"node-int64","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":16778377456,"package_name":"node-releases","ecosystem":"npm","requirements":"2.0.14","direct":false,"kind":"development","optional":false},{"id":16778377457,"package_name":"normalize-path","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377458,"package_name":"npm-run-path","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":16778377459,"package_name":"nwsapi","ecosystem":"npm","requirements":"2.2.7","direct":false,"kind":"development","optional":false},{"id":16778377460,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":16778377461,"package_name":"onetime","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":16778377462,"package_name":"optionator","ecosystem":"npm","requirements":"0.9.3","direct":false,"kind":"development","optional":false},{"id":16778377463,"package_name":"p-limit","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":16778377464,"package_name":"p-locate","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":16778377465,"package_name":"p-try","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":16778377466,"package_name":"parent-module","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377467,"package_name":"parse-json","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":16778377468,"package_name":"parse5","ecosystem":"npm","requirements":"7.1.2","direct":false,"kind":"development","optional":false},{"id":16778377469,"package_name":"path-exists","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377470,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":16778377471,"package_name":"path-key","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":16778377472,"package_name":"path-parse","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":16778377473,"package_name":"path-type","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377474,"package_name":"picocolors","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":16778377475,"package_name":"picomatch","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":16778377476,"package_name":"pirates","ecosystem":"npm","requirements":"4.0.6","direct":false,"kind":"development","optional":false},{"id":16778377477,"package_name":"pkg-dir","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":16778377478,"package_name":"prelude-ls","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":16778377479,"package_name":"pretty-format","ecosystem":"npm","requirements":"29.7.0","direct":false,"kind":"development","optional":false},{"id":16778377480,"package_name":"ansi-styles","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":16778377481,"package_name":"prompts","ecosystem":"npm","requirements":"2.4.2","direct":false,"kind":"development","optional":false},{"id":16778377482,"package_name":"psl","ecosystem":"npm","requirements":"1.9.0","direct":false,"kind":"development","optional":false},{"id":16778377483,"package_name":"punycode","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":16778377484,"package_name":"pure-rand","ecosystem":"npm","requirements":"6.0.4","direct":false,"kind":"development","optional":false},{"id":16778377485,"package_name":"querystringify","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":16778377486,"package_name":"queue-microtask","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":16778377487,"package_name":"react-is","ecosystem":"npm","requirements":"18.2.0","direct":false,"kind":"development","optional":false},{"id":16778377488,"package_name":"require-directory","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":16778377489,"package_name":"requires-port","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":16778377490,"package_name":"resolve","ecosystem":"npm","requirements":"1.22.8","direct":false,"kind":"development","optional":false},{"id":16778377491,"package_name":"resolve-cwd","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377492,"package_name":"resolve-from","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377493,"package_name":"resolve.exports","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":16778377494,"package_name":"reusify","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":16778377495,"package_name":"rimraf","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":16778377496,"package_name":"run-parallel","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":16778377497,"package_name":"safer-buffer","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":16778377498,"package_name":"saxes","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":16778377499,"package_name":"semver","ecosystem":"npm","requirements":"6.3.1","direct":false,"kind":"development","optional":false},{"id":16778377500,"package_name":"shebang-command","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377501,"package_name":"shebang-regex","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377502,"package_name":"shiki","ecosystem":"npm","requirements":"0.14.7","direct":false,"kind":"development","optional":false},{"id":16778377503,"package_name":"signal-exit","ecosystem":"npm","requirements":"3.0.7","direct":false,"kind":"development","optional":false},{"id":16778377504,"package_name":"sisteransi","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":16778377505,"package_name":"slash","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377506,"package_name":"source-map","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":16778377507,"package_name":"source-map-support","ecosystem":"npm","requirements":"0.5.13","direct":false,"kind":"development","optional":false},{"id":16778377508,"package_name":"sprintf-js","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":16778377509,"package_name":"stack-utils","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":16778377510,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377511,"package_name":"string-length","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":16778377512,"package_name":"string-width","ecosystem":"npm","requirements":"4.2.3","direct":false,"kind":"development","optional":false},{"id":16778377513,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":16778377514,"package_name":"strip-bom","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377515,"package_name":"strip-final-newline","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377516,"package_name":"strip-json-comments","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":16778377517,"package_name":"supports-color","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":16778377518,"package_name":"supports-preserve-symlinks-flag","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":16778377519,"package_name":"symbol-tree","ecosystem":"npm","requirements":"3.2.4","direct":false,"kind":"development","optional":false},{"id":16778377520,"package_name":"test-exclude","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":16778377521,"package_name":"text-table","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":16778377522,"package_name":"tmpl","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":16778377523,"package_name":"to-fast-properties","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377524,"package_name":"to-regex-range","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":16778377525,"package_name":"tough-cookie","ecosystem":"npm","requirements":"4.1.3","direct":false,"kind":"development","optional":false},{"id":16778377526,"package_name":"tr46","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377527,"package_name":"ts-api-utils","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":16778377528,"package_name":"ts-jest","ecosystem":"npm","requirements":"29.1.2","direct":false,"kind":"development","optional":false},{"id":16778377529,"package_name":"type-check","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":16778377530,"package_name":"type-detect","ecosystem":"npm","requirements":"4.0.8","direct":false,"kind":"development","optional":false},{"id":16778377531,"package_name":"type-fest","ecosystem":"npm","requirements":"0.20.2","direct":false,"kind":"development","optional":false},{"id":16778377532,"package_name":"typedoc","ecosystem":"npm","requirements":"0.23.28","direct":false,"kind":"development","optional":false},{"id":16778377533,"package_name":"minimatch","ecosystem":"npm","requirements":"7.4.6","direct":false,"kind":"development","optional":false},{"id":16778377534,"package_name":"typescript","ecosystem":"npm","requirements":"4.9.5","direct":false,"kind":"development","optional":false},{"id":16778377535,"package_name":"undici-types","ecosystem":"npm","requirements":"5.26.5","direct":false,"kind":"development","optional":false},{"id":16778377536,"package_name":"universalify","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":16778377537,"package_name":"update-browserslist-db","ecosystem":"npm","requirements":"1.0.13","direct":false,"kind":"development","optional":false},{"id":16778377538,"package_name":"uri-js","ecosystem":"npm","requirements":"4.4.1","direct":false,"kind":"development","optional":false},{"id":16778377539,"package_name":"url-parse","ecosystem":"npm","requirements":"1.5.10","direct":false,"kind":"development","optional":false},{"id":16778377540,"package_name":"v8-to-istanbul","ecosystem":"npm","requirements":"9.2.0","direct":false,"kind":"development","optional":false},{"id":16778377541,"package_name":"vscode-oniguruma","ecosystem":"npm","requirements":"1.7.0","direct":false,"kind":"development","optional":false},{"id":16778377542,"package_name":"vscode-textmate","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":16778377543,"package_name":"w3c-xmlserializer","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377544,"package_name":"walker","ecosystem":"npm","requirements":"1.0.8","direct":false,"kind":"development","optional":false},{"id":16778377545,"package_name":"webidl-conversions","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":16778377546,"package_name":"whatwg-encoding","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":16778377547,"package_name":"whatwg-mimetype","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":16778377548,"package_name":"whatwg-url","ecosystem":"npm","requirements":"11.0.0","direct":false,"kind":"development","optional":false},{"id":16778377549,"package_name":"which","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":16778377550,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":16778377551,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":16778377552,"package_name":"write-file-atomic","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":16778377553,"package_name":"ws","ecosystem":"npm","requirements":"8.16.0","direct":false,"kind":"development","optional":false},{"id":16778377554,"package_name":"xml-name-validator","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":16778377555,"package_name":"xmlchars","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":16778377556,"package_name":"y18n","ecosystem":"npm","requirements":"5.0.8","direct":false,"kind":"development","optional":false},{"id":16778377557,"package_name":"yallist","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":16778377558,"package_name":"yargs","ecosystem":"npm","requirements":"17.7.2","direct":false,"kind":"development","optional":false},{"id":16778377559,"package_name":"yargs-parser","ecosystem":"npm","requirements":"21.1.1","direct":false,"kind":"development","optional":false},{"id":16778377560,"package_name":"yocto-queue","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-03-12T22:49:54.879Z","updated_at":"2024-03-12T22:49:54.879Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/pyproject.toml","dependencies":[]},{"ecosystem":"pypi","filepath":"requirements.github.ubuntu.txt","sha":null,"kind":"manifest","created_at":"2024-03-12T22:49:55.301Z","updated_at":"2024-03-12T22:49:55.301Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/requirements.github.ubuntu.txt","dependencies":[{"id":16778377572,"package_name":"doxygen","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.pip.txt","sha":null,"kind":"manifest","created_at":"2024-03-12T22:49:56.086Z","updated_at":"2024-03-12T22:49:56.086Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/requirements.pip.txt","dependencies":[{"id":16778378271,"package_name":"hat-doit","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"npm","filepath":"playground/js/package.json","sha":null,"kind":"manifest","created_at":"2024-06-21T14:28:06.568Z","updated_at":"2024-06-21T14:28:06.568Z","repository_link":"https://github.com/hat-open/hat-util/blob/master/playground/js/package.json","dependencies":[{"id":18732531412,"package_name":"fast-json-patch","ecosystem":"npm","requirements":"^3.1.1","direct":true,"kind":"runtime","optional":false},{"id":18732531413,"package_name":"jiff","ecosystem":"npm","requirements":"^0.7.3","direct":true,"kind":"runtime","optional":false}]}],"score":8.229511118964457,"created_at":"2025-09-09T13:17:43.657Z","updated_at":"2025-10-16T12:15:56.180Z","avatar_url":"https://github.com/hat-open.png","language":"TypeScript","category":null,"sub_category":null,"monthly_downloads":3699,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/287395","html_url":"https://science.ecosyste.ms/projects/287395"}