{"id":80996,"name":null,"description":"Collection of eclectic utils for python.","url":"https://github.com/google/etils","last_synced_at":"2025-09-08T21:56:46.716Z","repository":{"id":37796813,"uuid":"413873228","full_name":"google/etils","owner":"google","description":"Collection of eclectic utils for python.","archived":false,"fork":false,"pushed_at":"2025-09-02T10:29:29.000Z","size":1748,"stargazers_count":236,"open_issues_count":26,"forks_count":25,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-09-03T07:59:20.171Z","etag":null,"topics":["jax","numpy","python","tensorflow","utils"],"latest_commit_sha":null,"homepage":"https://etils.readthedocs.io","language":"Python","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/google.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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-10-05T15:23:22.000Z","updated_at":"2025-09-02T10:28:59.000Z","dependencies_parsed_at":"2024-02-08T23:45:33.575Z","dependency_job_id":"1023a4b8-9629-4002-8193-9ce24179afd4","html_url":"https://github.com/google/etils","commit_stats":{"total_commits":487,"total_committers":33,"mean_commits":"14.757575757575758","dds":0.2073921971252567,"last_synced_commit":"e52da2057557f6a7416a4ff340f9a87ad23fe9a7"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/google/etils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","download_url":"https://codeload.github.com/google/etils/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/sbom","scorecard":{"id":436866,"data":{"date":"2025-08-11","repo":{"name":"github.com/google/etils","commit":"76d7b6e6450b044e51c964548bc814fe1f1bf1f0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/pytest_and_autopublish.yml:49","Warn: no topLevel permission defined: .github/workflows/pytest_and_autopublish.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":1,"reason":"Found 4/30 approved changesets -- score normalized to 1","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":"Maintained","score":10,"reason":"18 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/pytest_and_autopublish.yml:32","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 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":"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"}},{"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 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/google/.github/SECURITY.md:1","Info: Found linked content: github.com/google/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/google/.github/SECURITY.md:1","Info: Found text in security policy: github.com/google/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (26) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T04:53:59.690Z","repository_id":37796813,"created_at":"2025-08-19T04:53:59.690Z","updated_at":"2025-08-19T04:53:59.690Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274188645,"owners_count":25237852,"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-08T02:00:09.813Z","response_time":121,"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":"google","name":"Google","uuid":"1342004","kind":"organization","description":"Google ❤️ Open Source","email":"opensource@google.com","website":"https://opensource.google/","location":"United States of America","twitter":"GoogleOSS","company":null,"icon_url":"https://avatars.githubusercontent.com/u/1342004?v=4","repositories_count":2773,"last_synced_at":"2025-08-12T15:55:14.931Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/google","funding_links":[],"total_stars":1967885,"followers":58475,"following":0,"created_at":"2022-11-02T16:20:58.973Z","updated_at":"2025-08-12T15:55:14.931Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google/repositories"},"packages":[{"id":2725775,"name":"etils","ecosystem":"pypi","description":"Collection of common python utils","homepage":null,"licenses":"Apache Software License","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/google/etils","keywords_array":["utils","jax","tensorflow","tf","machine learning","deep learning"],"namespace":null,"versions_count":38,"first_release_published_at":"2021-12-07T18:49:37.000Z","latest_release_published_at":"2025-07-15T10:29:09.000Z","latest_release_number":"1.13.0","last_synced_at":"2025-09-08T13:05:07.400Z","created_at":"2022-04-10T10:54:57.719Z","updated_at":"2025-09-08T13:05:07.401Z","registry_url":"https://pypi.org/project/etils/","install_command":"pip install etils --index-url https://pypi.org/simple","documentation_url":"https://etils.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Intended Audience :: Developers","Intended Audience :: Science/Research","License :: OSI Approved :: Apache Software License","Programming Language :: Python :: 3","Programming Language :: Python :: 3 :: Only","Topic :: Software Development :: Libraries :: Python Modules"],"normalized_name":"etils","project_status":null},"repo_metadata":{"id":37796813,"uuid":"413873228","full_name":"google/etils","owner":"google","description":"Collection of eclectic utils for python.","archived":false,"fork":false,"pushed_at":"2024-09-05T09:19:41.000Z","size":1539,"stargazers_count":181,"open_issues_count":17,"forks_count":19,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-09-06T04:47:16.048Z","etag":null,"topics":["jax","numpy","python","tensorflow","utils"],"latest_commit_sha":null,"homepage":"https://etils.readthedocs.io","language":"Python","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/google.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-05T15:23:22.000Z","updated_at":"2024-09-05T09:19:43.000Z","dependencies_parsed_at":"2024-02-08T23:45:33.575Z","dependency_job_id":"1023a4b8-9629-4002-8193-9ce24179afd4","html_url":"https://github.com/google/etils","commit_stats":{"total_commits":247,"total_committers":12,"mean_commits":"20.583333333333332","dds":0.08906882591093113,"last_synced_commit":"6a953823877243da8c48dcec14d8f698c602b12f"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","download_url":"https://codeload.github.com/google/etils/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":217724272,"owners_count":16220815,"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","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":"google","name":"Google","uuid":"1342004","kind":"organization","description":"Google ❤️ Open Source","email":"opensource@google.com","website":"https://opensource.google/","location":null,"twitter":"GoogleOSS","company":null,"icon_url":"https://avatars.githubusercontent.com/u/1342004?v=4","repositories_count":2445,"last_synced_at":"2023-04-09T05:37:45.829Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/google","funding_links":[],"total_stars":1826805,"followers":null,"following":null,"created_at":"2022-11-02T16:20:58.973Z","updated_at":"2023-04-09T05:37:58.691Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google/repositories"},"tags":[{"name":"v1.9.4","sha":"b7f74ac2e1571fb4e1658620f83319f286aa78bb","kind":"commit","published_at":"2024-09-03T08:00:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.4","html_url":"https://github.com/google/etils/releases/tag/v1.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4/manifests"},{"name":"v1.9.3","sha":"89a7f15825ccf3dfb185048776d65f9dbf20673d","kind":"commit","published_at":"2024-08-30T14:21:17.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.3","html_url":"https://github.com/google/etils/releases/tag/v1.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3/manifests"},{"name":"v1.9.2","sha":"cd3dc8eb822b49780970f33ee144c820b8410dfd","kind":"commit","published_at":"2024-06-12T10:18:16.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.2","html_url":"https://github.com/google/etils/releases/tag/v1.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2/manifests"},{"name":"v1.9.1","sha":"d51bd372d43c5a21e0f144dfacbf27bfd465473c","kind":"commit","published_at":"2024-06-04T14:38:44.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.1","html_url":"https://github.com/google/etils/releases/tag/v1.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1/manifests"},{"name":"v1.9.0","sha":"a4b4c809f6f6da834747692b2bf9d0aade051ff9","kind":"commit","published_at":"2024-05-31T14:27:07.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.0","html_url":"https://github.com/google/etils/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0/manifests"},{"name":"v1.8.0","sha":"cb9152e9ae6fc4f48feec6783876b090bc27b3e2","kind":"commit","published_at":"2024-03-19T15:32:36.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.8.0","html_url":"https://github.com/google/etils/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0/manifests"},{"name":"v1.7.0","sha":"160ed68779a841488ec5cc43b59d0152e37acd13","kind":"commit","published_at":"2024-02-15T22:20:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.7.0","html_url":"https://github.com/google/etils/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0/manifests"},{"name":"v1.6.0","sha":"c4014c3463510889e56856bb71837d19d9ac6002","kind":"commit","published_at":"2023-12-11T10:30:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.6.0","html_url":"https://github.com/google/etils/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"b777dbfde4feceba7a5accff3eebc3d425d9b06c","kind":"commit","published_at":"2023-10-24T12:17:29.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.2","html_url":"https://github.com/google/etils/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"a98dfdff8447348a46a9e9a0308a7dc55e28c457","kind":"commit","published_at":"2023-10-11T15:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.1","html_url":"https://github.com/google/etils/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"3961e5bbfcb81e89ea141868dfb82e77f36ca3bf","kind":"commit","published_at":"2023-09-19T16:53:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.0","html_url":"https://github.com/google/etils/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0/manifests"},{"name":"v1.4.1","sha":"b2e4cbc8b8778bfe58e1e4d602b0799248d15fd1","kind":"commit","published_at":"2023-07-31T13:33:40.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.1","html_url":"https://github.com/google/etils/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"27a190079333ca41c730d412f6961ecd8a1cb9d4","kind":"commit","published_at":"2023-07-25T14:26:10.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.0","html_url":"https://github.com/google/etils/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"9f61596d4a755e37d7cd362dcc15ec6b48cf1984","kind":"commit","published_at":"2023-05-12T12:44:58.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.3.0","html_url":"https://github.com/google/etils/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"eac10cdd3a3e617874ca08c5cb405f458c7dbb49","kind":"commit","published_at":"2023-04-04T10:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.2.0","html_url":"https://github.com/google/etils/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0/manifests"},{"name":"v1.1.1","sha":"5b2c675f3e707e9372fafb8ab9f2e4bd4b132807","kind":"commit","published_at":"2023-03-20T15:05:42.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.1","html_url":"https://github.com/google/etils/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"180d9dd191b3c3317dcddf131d1166c0e602377f","kind":"commit","published_at":"2023-03-13T16:19:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.0","html_url":"https://github.com/google/etils/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"f77d64b653bf7f939369c70e67663dc9a3b17f74","kind":"commit","published_at":"2023-01-09T16:10:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.0.0","html_url":"https://github.com/google/etils/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0/manifests"},{"name":"v0.9.0","sha":"a92f44c287e3e5c42566363694e926a28bff550d","kind":"commit","published_at":"2022-10-28T17:59:54.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.9.0","html_url":"https://github.com/google/etils/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0/manifests"},{"name":"v0.8.0","sha":"10b35c4005c222a4569477c49a8c4d28c9f2cca5","kind":"commit","published_at":"2022-09-12T15:56:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.8.0","html_url":"https://github.com/google/etils/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0/manifests"},{"name":"v0.7.1","sha":"555e487e6529ffa85c907f2ea2aba9e3feef94be","kind":"commit","published_at":"2022-08-09T12:11:21.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.1","html_url":"https://github.com/google/etils/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"e69e84d8de5b3da7bfc7b11ed09e4ef402d78987","kind":"commit","published_at":"2022-08-08T15:51:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.0","html_url":"https://github.com/google/etils/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0/manifests"},{"name":"v0.6.0","sha":"183f82ee07100377174888acd0d13e99f6f04ef5","kind":"commit","published_at":"2022-05-31T11:56:00.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.6.0","html_url":"https://github.com/google/etils/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0/manifests"}]},"repo_metadata_updated_at":"2024-09-07T08:14:10.313Z","dependent_packages_count":22,"downloads":2517866,"downloads_period":"last-month","dependent_repos_count":567,"rankings":{"downloads":0.2325783250415248,"dependent_repos_count":0.5984007134246554,"dependent_packages_count":0.6423982869379015,"stargazers_count":null,"forks_count":null,"docker_downloads_count":0.6875673456821797,"average":0.5402361677715654},"purl":"pkg:pypi/etils","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/etils","docker_dependents_count":139,"docker_downloads_count":25399443,"usage_url":"https://repos.ecosyste.ms/usage/pypi/etils","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/etils/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-09-06T04:54:10.042Z","issues_count":18,"pull_requests_count":351,"avg_time_to_close_issue":1352079.3076923077,"avg_time_to_close_pull_request":518034.3916913947,"issues_closed_count":13,"pull_requests_closed_count":337,"pull_request_authors_count":10,"issue_authors_count":15,"avg_comments_per_issue":2.3333333333333335,"avg_comments_per_pull_request":0.12535612535612536,"merged_pull_requests_count":93,"bot_issues_count":0,"bot_pull_requests_count":342,"past_year_issues_count":13,"past_year_pull_requests_count":197,"past_year_avg_time_to_close_issue":1601002.0,"past_year_avg_time_to_close_pull_request":281020.67724867724,"past_year_issues_closed_count":10,"past_year_pull_requests_closed_count":189,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":11,"past_year_avg_comments_per_issue":2.6153846153846154,"past_year_avg_comments_per_pull_request":0.17766497461928935,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":190,"past_year_merged_pull_requests_count":72,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/issues","maintainers":[{"login":"ayaka14732","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ayaka14732"}],"active_maintainers":[{"login":"ayaka14732","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ayaka14732"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/etils/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/etils/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/etils/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/etils/related_packages","maintainers":[{"uuid":"conchylicultor","login":"conchylicultor","name":null,"email":null,"url":null,"packages_count":19,"html_url":"https://pypi.org/user/conchylicultor/","role":null,"created_at":"2023-02-21T08:19:02.783Z","updated_at":"2023-02-21T08:19:02.783Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/conchylicultor/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726290,"maintainers_count":308824,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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"}},{"id":11856270,"name":"etils","ecosystem":"conda","description":"etils (eclectic utils) is an open-source collection of utils for python.","homepage":"https://etils.readthedocs.io","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/google/etils","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2025-06-30T19:18:43.000Z","latest_release_published_at":"2025-06-30T19:18:43.000Z","latest_release_number":"1.12.2","last_synced_at":"2025-09-08T13:05:09.317Z","created_at":"2025-06-30T19:48:41.169Z","updated_at":"2025-09-08T13:05:09.317Z","registry_url":"https://anaconda.org/anaconda/etils","install_command":"conda install -c anaconda etils","documentation_url":null,"metadata":{},"repo_metadata":{"id":37796813,"uuid":"413873228","full_name":"google/etils","owner":"google","description":"Collection of eclectic utils for python.","archived":false,"fork":false,"pushed_at":"2025-09-02T10:29:29.000Z","size":1748,"stargazers_count":236,"open_issues_count":26,"forks_count":25,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-09-03T07:59:20.171Z","etag":null,"topics":["jax","numpy","python","tensorflow","utils"],"latest_commit_sha":null,"homepage":"https://etils.readthedocs.io","language":"Python","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/google.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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-10-05T15:23:22.000Z","updated_at":"2025-09-02T10:28:59.000Z","dependencies_parsed_at":"2024-02-08T23:45:33.575Z","dependency_job_id":"1023a4b8-9629-4002-8193-9ce24179afd4","html_url":"https://github.com/google/etils","commit_stats":{"total_commits":487,"total_committers":33,"mean_commits":"14.757575757575758","dds":0.2073921971252567,"last_synced_commit":"e52da2057557f6a7416a4ff340f9a87ad23fe9a7"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/google/etils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","download_url":"https://codeload.github.com/google/etils/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/sbom","scorecard":{"id":436866,"data":{"date":"2025-08-11","repo":{"name":"github.com/google/etils","commit":"76d7b6e6450b044e51c964548bc814fe1f1bf1f0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/pytest_and_autopublish.yml:49","Warn: no topLevel permission defined: .github/workflows/pytest_and_autopublish.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":1,"reason":"Found 4/30 approved changesets -- score normalized to 1","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":"Maintained","score":10,"reason":"18 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/pytest_and_autopublish.yml:32","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 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":"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"}},{"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 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/google/.github/SECURITY.md:1","Info: Found linked content: github.com/google/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/google/.github/SECURITY.md:1","Info: Found text in security policy: github.com/google/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (26) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T04:53:59.690Z","repository_id":37796813,"created_at":"2025-08-19T04:53:59.690Z","updated_at":"2025-08-19T04:53:59.690Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273476856,"owners_count":25112598,"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-03T02:00:09.631Z","response_time":76,"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":"google","name":"Google","uuid":"1342004","kind":"organization","description":"Google ❤️ Open Source","email":"opensource@google.com","website":"https://opensource.google/","location":"United States of America","twitter":"GoogleOSS","company":null,"icon_url":"https://avatars.githubusercontent.com/u/1342004?v=4","repositories_count":2773,"last_synced_at":"2025-08-12T15:55:14.931Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/google","funding_links":[],"total_stars":1967885,"followers":58475,"following":0,"created_at":"2022-11-02T16:20:58.973Z","updated_at":"2025-08-12T15:55:14.931Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google/repositories"},"tags":[{"name":"v1.13.0","sha":"3d0eeb643ce1440f718251dbfd173908df07707e","kind":"commit","published_at":"2025-07-15T10:24:12.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.13.0","html_url":"https://github.com/google/etils/releases/tag/v1.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.13.0/manifests"},{"name":"v1.12.2","sha":"d052212c91ddadd8d1d47116e3e578dea64b8fc3","kind":"commit","published_at":"2025-03-10T15:09:24.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.2","html_url":"https://github.com/google/etils/releases/tag/v1.12.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.2/manifests"},{"name":"v1.12.1","sha":"99e988e268d81ec1e76c2dd184ac93bf9d466ba1","kind":"commit","published_at":"2025-03-06T23:49:48.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.1","html_url":"https://github.com/google/etils/releases/tag/v1.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.1/manifests"},{"name":"v1.12.0","sha":"cf4300439f7ca5ca699ca2c118e093e0db772a2e","kind":"commit","published_at":"2025-02-08T22:39:47.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.0","html_url":"https://github.com/google/etils/releases/tag/v1.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.0/manifests"},{"name":"v1.11.0","sha":"4770c381d54a44ea28c03a0b5b00528ee0f01021","kind":"commit","published_at":"2024-11-27T15:57:41.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.11.0","html_url":"https://github.com/google/etils/releases/tag/v1.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.11.0/manifests"},{"name":"v1.10.0","sha":"08f2c4767761240550d7040c7a9f11a7d1d83e75","kind":"commit","published_at":"2024-10-17T08:30:25.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.10.0","html_url":"https://github.com/google/etils/releases/tag/v1.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.10.0/manifests"},{"name":"v1.9.4","sha":"b7f74ac2e1571fb4e1658620f83319f286aa78bb","kind":"commit","published_at":"2024-09-03T08:00:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.4","html_url":"https://github.com/google/etils/releases/tag/v1.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4/manifests"},{"name":"v1.9.3","sha":"89a7f15825ccf3dfb185048776d65f9dbf20673d","kind":"commit","published_at":"2024-08-30T14:21:17.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.3","html_url":"https://github.com/google/etils/releases/tag/v1.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3/manifests"},{"name":"v1.9.2","sha":"cd3dc8eb822b49780970f33ee144c820b8410dfd","kind":"commit","published_at":"2024-06-12T10:18:16.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.2","html_url":"https://github.com/google/etils/releases/tag/v1.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2/manifests"},{"name":"v1.9.1","sha":"d51bd372d43c5a21e0f144dfacbf27bfd465473c","kind":"commit","published_at":"2024-06-04T14:38:44.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.1","html_url":"https://github.com/google/etils/releases/tag/v1.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1/manifests"},{"name":"v1.9.0","sha":"a4b4c809f6f6da834747692b2bf9d0aade051ff9","kind":"commit","published_at":"2024-05-31T14:27:07.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.0","html_url":"https://github.com/google/etils/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0/manifests"},{"name":"v1.8.0","sha":"cb9152e9ae6fc4f48feec6783876b090bc27b3e2","kind":"commit","published_at":"2024-03-19T15:32:36.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.8.0","html_url":"https://github.com/google/etils/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0/manifests"},{"name":"v1.7.0","sha":"160ed68779a841488ec5cc43b59d0152e37acd13","kind":"commit","published_at":"2024-02-15T22:20:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.7.0","html_url":"https://github.com/google/etils/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0/manifests"},{"name":"v1.6.0","sha":"c4014c3463510889e56856bb71837d19d9ac6002","kind":"commit","published_at":"2023-12-11T10:30:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.6.0","html_url":"https://github.com/google/etils/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"b777dbfde4feceba7a5accff3eebc3d425d9b06c","kind":"commit","published_at":"2023-10-24T12:17:29.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.2","html_url":"https://github.com/google/etils/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"a98dfdff8447348a46a9e9a0308a7dc55e28c457","kind":"commit","published_at":"2023-10-11T15:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.1","html_url":"https://github.com/google/etils/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"3961e5bbfcb81e89ea141868dfb82e77f36ca3bf","kind":"commit","published_at":"2023-09-19T16:53:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.0","html_url":"https://github.com/google/etils/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0/manifests"},{"name":"v1.4.1","sha":"b2e4cbc8b8778bfe58e1e4d602b0799248d15fd1","kind":"commit","published_at":"2023-07-31T13:33:40.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.1","html_url":"https://github.com/google/etils/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"27a190079333ca41c730d412f6961ecd8a1cb9d4","kind":"commit","published_at":"2023-07-25T14:26:10.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.0","html_url":"https://github.com/google/etils/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"9f61596d4a755e37d7cd362dcc15ec6b48cf1984","kind":"commit","published_at":"2023-05-12T12:44:58.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.3.0","html_url":"https://github.com/google/etils/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"eac10cdd3a3e617874ca08c5cb405f458c7dbb49","kind":"commit","published_at":"2023-04-04T10:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.2.0","html_url":"https://github.com/google/etils/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0/manifests"},{"name":"v1.1.1","sha":"5b2c675f3e707e9372fafb8ab9f2e4bd4b132807","kind":"commit","published_at":"2023-03-20T15:05:42.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.1","html_url":"https://github.com/google/etils/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"180d9dd191b3c3317dcddf131d1166c0e602377f","kind":"commit","published_at":"2023-03-13T16:19:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.0","html_url":"https://github.com/google/etils/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"f77d64b653bf7f939369c70e67663dc9a3b17f74","kind":"commit","published_at":"2023-01-09T16:10:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.0.0","html_url":"https://github.com/google/etils/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0/manifests"},{"name":"v0.9.0","sha":"a92f44c287e3e5c42566363694e926a28bff550d","kind":"commit","published_at":"2022-10-28T17:59:54.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.9.0","html_url":"https://github.com/google/etils/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0/manifests"},{"name":"v0.8.0","sha":"10b35c4005c222a4569477c49a8c4d28c9f2cca5","kind":"commit","published_at":"2022-09-12T15:56:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.8.0","html_url":"https://github.com/google/etils/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0/manifests"},{"name":"v0.7.1","sha":"555e487e6529ffa85c907f2ea2aba9e3feef94be","kind":"commit","published_at":"2022-08-09T12:11:21.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.1","html_url":"https://github.com/google/etils/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.7.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"e69e84d8de5b3da7bfc7b11ed09e4ef402d78987","kind":"commit","published_at":"2022-08-08T15:51:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.0","html_url":"https://github.com/google/etils/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0/manifests"},{"name":"v0.6.0","sha":"183f82ee07100377174888acd0d13e99f6f04ef5","kind":"commit","published_at":"2022-05-31T11:56:00.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.6.0","html_url":"https://github.com/google/etils/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-03T16:53:15.207Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":47.883597883597886,"dependent_packages_count":43.55459355459356,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":45.71909571909572},"purl":"pkg:conda/etils","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/etils","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/etils","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/etils/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-02T14:01:02.557Z","issues_count":21,"pull_requests_count":575,"avg_time_to_close_issue":1332232.2727272727,"avg_time_to_close_pull_request":495902.1167315175,"issues_closed_count":11,"pull_requests_closed_count":514,"pull_request_authors_count":13,"issue_authors_count":17,"avg_comments_per_issue":1.7619047619047619,"avg_comments_per_pull_request":0.14956521739130435,"merged_pull_requests_count":188,"bot_issues_count":2,"bot_pull_requests_count":556,"past_year_issues_count":5,"past_year_pull_requests_count":132,"past_year_avg_time_to_close_issue":6627.0,"past_year_avg_time_to_close_pull_request":250051.21296296295,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":108,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.8,"past_year_avg_comments_per_pull_request":0.16666666666666666,"past_year_bot_issues_count":2,"past_year_bot_pull_requests_count":126,"past_year_merged_pull_requests_count":68,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/issues","maintainers":[{"login":"ayaka14732","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ayaka14732"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/etils/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/etils/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/etils/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/etils/related_packages","maintainers":[],"registry":{"name":"anaconda.org","url":"https://anaconda.org","ecosystem":"conda","default":true,"packages_count":4329,"maintainers_count":0,"namespaces_count":0,"keywords_count":2929,"github":"Anaconda","metadata":{"kind":"anaconda","key":"Main","api":"https://repo.ananconda.com","funded_packages_count":613},"icon_url":"https://github.com/Anaconda.png","created_at":"2022-10-03T15:37:08.736Z","updated_at":"2025-09-08T06:52:46.830Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/namespaces"}},{"id":5615084,"name":"py-etils","ecosystem":"spack","description":"etils (eclectic utils) is an open-source collection of utils for python.\n","homepage":"https://github.com/google/etils","licenses":"[]","normalized_licenses":["Other"],"repository_url":"https://github.com/google/etils","keywords_array":[],"namespace":null,"versions_count":2,"first_release_published_at":"2022-12-04T00:11:58.153Z","latest_release_published_at":"2024-03-12T23:34:39.620Z","latest_release_number":"1.7.0","last_synced_at":"2025-09-08T13:05:07.495Z","created_at":"2022-12-04T00:11:58.114Z","updated_at":"2025-09-08T13:05:07.496Z","registry_url":"https://packages.spack.io/package.html?name=py-etils","install_command":"spack install py-etils","documentation_url":null,"metadata":{},"repo_metadata":{"id":37796813,"uuid":"413873228","full_name":"google/etils","owner":"google","description":"Collection of eclectic utils for python.","archived":false,"fork":false,"pushed_at":"2025-09-02T10:29:29.000Z","size":1748,"stargazers_count":236,"open_issues_count":26,"forks_count":25,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-09-03T07:59:20.171Z","etag":null,"topics":["jax","numpy","python","tensorflow","utils"],"latest_commit_sha":null,"homepage":"https://etils.readthedocs.io","language":"Python","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/google.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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-10-05T15:23:22.000Z","updated_at":"2025-09-02T10:28:59.000Z","dependencies_parsed_at":"2024-02-08T23:45:33.575Z","dependency_job_id":"1023a4b8-9629-4002-8193-9ce24179afd4","html_url":"https://github.com/google/etils","commit_stats":{"total_commits":487,"total_committers":33,"mean_commits":"14.757575757575758","dds":0.2073921971252567,"last_synced_commit":"e52da2057557f6a7416a4ff340f9a87ad23fe9a7"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/google/etils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","download_url":"https://codeload.github.com/google/etils/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/sbom","scorecard":{"id":436866,"data":{"date":"2025-08-11","repo":{"name":"github.com/google/etils","commit":"76d7b6e6450b044e51c964548bc814fe1f1bf1f0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/pytest_and_autopublish.yml:49","Warn: no topLevel permission defined: .github/workflows/pytest_and_autopublish.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":1,"reason":"Found 4/30 approved changesets -- score normalized to 1","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":"Maintained","score":10,"reason":"18 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pytest_and_autopublish.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/google/etils/pytest_and_autopublish.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/pytest_and_autopublish.yml:32","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 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":"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"}},{"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 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/google/.github/SECURITY.md:1","Info: Found linked content: github.com/google/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/google/.github/SECURITY.md:1","Info: Found text in security policy: github.com/google/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (26) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T04:53:59.690Z","repository_id":37796813,"created_at":"2025-08-19T04:53:59.690Z","updated_at":"2025-08-19T04:53:59.690Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273476856,"owners_count":25112598,"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-03T02:00:09.631Z","response_time":76,"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":"google","name":"Google","uuid":"1342004","kind":"organization","description":"Google ❤️ Open Source","email":"opensource@google.com","website":"https://opensource.google/","location":"United States of America","twitter":"GoogleOSS","company":null,"icon_url":"https://avatars.githubusercontent.com/u/1342004?v=4","repositories_count":2773,"last_synced_at":"2025-08-12T15:55:14.931Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/google","funding_links":[],"total_stars":1967885,"followers":58475,"following":0,"created_at":"2022-11-02T16:20:58.973Z","updated_at":"2025-08-12T15:55:14.931Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google/repositories"},"tags":[{"name":"v1.13.0","sha":"3d0eeb643ce1440f718251dbfd173908df07707e","kind":"commit","published_at":"2025-07-15T10:24:12.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.13.0","html_url":"https://github.com/google/etils/releases/tag/v1.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.13.0/manifests"},{"name":"v1.12.2","sha":"d052212c91ddadd8d1d47116e3e578dea64b8fc3","kind":"commit","published_at":"2025-03-10T15:09:24.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.2","html_url":"https://github.com/google/etils/releases/tag/v1.12.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.2/manifests"},{"name":"v1.12.1","sha":"99e988e268d81ec1e76c2dd184ac93bf9d466ba1","kind":"commit","published_at":"2025-03-06T23:49:48.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.1","html_url":"https://github.com/google/etils/releases/tag/v1.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.1/manifests"},{"name":"v1.12.0","sha":"cf4300439f7ca5ca699ca2c118e093e0db772a2e","kind":"commit","published_at":"2025-02-08T22:39:47.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.12.0","html_url":"https://github.com/google/etils/releases/tag/v1.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.12.0/manifests"},{"name":"v1.11.0","sha":"4770c381d54a44ea28c03a0b5b00528ee0f01021","kind":"commit","published_at":"2024-11-27T15:57:41.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.11.0","html_url":"https://github.com/google/etils/releases/tag/v1.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.11.0/manifests"},{"name":"v1.10.0","sha":"08f2c4767761240550d7040c7a9f11a7d1d83e75","kind":"commit","published_at":"2024-10-17T08:30:25.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.10.0","html_url":"https://github.com/google/etils/releases/tag/v1.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.10.0/manifests"},{"name":"v1.9.4","sha":"b7f74ac2e1571fb4e1658620f83319f286aa78bb","kind":"commit","published_at":"2024-09-03T08:00:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.4","html_url":"https://github.com/google/etils/releases/tag/v1.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.4/manifests"},{"name":"v1.9.3","sha":"89a7f15825ccf3dfb185048776d65f9dbf20673d","kind":"commit","published_at":"2024-08-30T14:21:17.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.3","html_url":"https://github.com/google/etils/releases/tag/v1.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.3/manifests"},{"name":"v1.9.2","sha":"cd3dc8eb822b49780970f33ee144c820b8410dfd","kind":"commit","published_at":"2024-06-12T10:18:16.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.2","html_url":"https://github.com/google/etils/releases/tag/v1.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.2/manifests"},{"name":"v1.9.1","sha":"d51bd372d43c5a21e0f144dfacbf27bfd465473c","kind":"commit","published_at":"2024-06-04T14:38:44.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.1","html_url":"https://github.com/google/etils/releases/tag/v1.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.1/manifests"},{"name":"v1.9.0","sha":"a4b4c809f6f6da834747692b2bf9d0aade051ff9","kind":"commit","published_at":"2024-05-31T14:27:07.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.9.0","html_url":"https://github.com/google/etils/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.9.0/manifests"},{"name":"v1.8.0","sha":"cb9152e9ae6fc4f48feec6783876b090bc27b3e2","kind":"commit","published_at":"2024-03-19T15:32:36.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.8.0","html_url":"https://github.com/google/etils/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.8.0/manifests"},{"name":"v1.7.0","sha":"160ed68779a841488ec5cc43b59d0152e37acd13","kind":"commit","published_at":"2024-02-15T22:20:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.7.0","html_url":"https://github.com/google/etils/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.7.0/manifests"},{"name":"v1.6.0","sha":"c4014c3463510889e56856bb71837d19d9ac6002","kind":"commit","published_at":"2023-12-11T10:30:22.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.6.0","html_url":"https://github.com/google/etils/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"b777dbfde4feceba7a5accff3eebc3d425d9b06c","kind":"commit","published_at":"2023-10-24T12:17:29.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.2","html_url":"https://github.com/google/etils/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"a98dfdff8447348a46a9e9a0308a7dc55e28c457","kind":"commit","published_at":"2023-10-11T15:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.1","html_url":"https://github.com/google/etils/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"3961e5bbfcb81e89ea141868dfb82e77f36ca3bf","kind":"commit","published_at":"2023-09-19T16:53:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.5.0","html_url":"https://github.com/google/etils/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.5.0/manifests"},{"name":"v1.4.1","sha":"b2e4cbc8b8778bfe58e1e4d602b0799248d15fd1","kind":"commit","published_at":"2023-07-31T13:33:40.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.1","html_url":"https://github.com/google/etils/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"27a190079333ca41c730d412f6961ecd8a1cb9d4","kind":"commit","published_at":"2023-07-25T14:26:10.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.4.0","html_url":"https://github.com/google/etils/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"9f61596d4a755e37d7cd362dcc15ec6b48cf1984","kind":"commit","published_at":"2023-05-12T12:44:58.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.3.0","html_url":"https://github.com/google/etils/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"eac10cdd3a3e617874ca08c5cb405f458c7dbb49","kind":"commit","published_at":"2023-04-04T10:20:37.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.2.0","html_url":"https://github.com/google/etils/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.2.0/manifests"},{"name":"v1.1.1","sha":"5b2c675f3e707e9372fafb8ab9f2e4bd4b132807","kind":"commit","published_at":"2023-03-20T15:05:42.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.1","html_url":"https://github.com/google/etils/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"180d9dd191b3c3317dcddf131d1166c0e602377f","kind":"commit","published_at":"2023-03-13T16:19:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.1.0","html_url":"https://github.com/google/etils/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"f77d64b653bf7f939369c70e67663dc9a3b17f74","kind":"commit","published_at":"2023-01-09T16:10:23.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v1.0.0","html_url":"https://github.com/google/etils/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v1.0.0/manifests"},{"name":"v0.9.0","sha":"a92f44c287e3e5c42566363694e926a28bff550d","kind":"commit","published_at":"2022-10-28T17:59:54.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.9.0","html_url":"https://github.com/google/etils/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.9.0/manifests"},{"name":"v0.8.0","sha":"10b35c4005c222a4569477c49a8c4d28c9f2cca5","kind":"commit","published_at":"2022-09-12T15:56:46.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.8.0","html_url":"https://github.com/google/etils/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.8.0/manifests"},{"name":"v0.7.1","sha":"555e487e6529ffa85c907f2ea2aba9e3feef94be","kind":"commit","published_at":"2022-08-09T12:11:21.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.1","html_url":"https://github.com/google/etils/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.7.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"e69e84d8de5b3da7bfc7b11ed09e4ef402d78987","kind":"commit","published_at":"2022-08-08T15:51:45.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.7.0","html_url":"https://github.com/google/etils/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.7.0/manifests"},{"name":"v0.6.0","sha":"183f82ee07100377174888acd0d13e99f6f04ef5","kind":"commit","published_at":"2022-05-31T11:56:00.000Z","download_url":"https://codeload.github.com/google/etils/tar.gz/v0.6.0","html_url":"https://github.com/google/etils/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/google/etils@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/tags/v0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-03T16:53:15.206Z","dependent_packages_count":2,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":28.06725024315687,"stargazers_count":19.41086563846047,"forks_count":25.885785744060026,"average":18.340975406419343},"purl":"pkg:spack/py-etils","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/spack/py-etils","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/spack/py-etils","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/spack/py-etils/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-02T14:01:02.557Z","issues_count":21,"pull_requests_count":575,"avg_time_to_close_issue":1332232.2727272727,"avg_time_to_close_pull_request":495902.1167315175,"issues_closed_count":11,"pull_requests_closed_count":514,"pull_request_authors_count":13,"issue_authors_count":17,"avg_comments_per_issue":1.7619047619047619,"avg_comments_per_pull_request":0.14956521739130435,"merged_pull_requests_count":188,"bot_issues_count":2,"bot_pull_requests_count":556,"past_year_issues_count":5,"past_year_pull_requests_count":132,"past_year_avg_time_to_close_issue":6627.0,"past_year_avg_time_to_close_pull_request":250051.21296296295,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":108,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.8,"past_year_avg_comments_per_pull_request":0.16666666666666666,"past_year_bot_issues_count":2,"past_year_bot_pull_requests_count":126,"past_year_merged_pull_requests_count":68,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/issues","maintainers":[{"login":"ayaka14732","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ayaka14732"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-etils/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-etils/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-etils/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-etils/related_packages","maintainers":[{"uuid":"adamjstewart","login":"adamjstewart","name":null,"email":null,"url":"https://github.com/adamjstewart","packages_count":2170,"html_url":null,"role":null,"created_at":"2022-12-04T00:21:27.528Z","updated_at":"2022-12-04T00:21:27.528Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/maintainers/adamjstewart/packages"}],"registry":{"name":"spack.io","url":"https://packages.spack.io","ecosystem":"spack","default":true,"packages_count":8772,"maintainers_count":926,"namespaces_count":0,"keywords_count":3681,"github":"spack","metadata":{"funded_packages_count":405},"icon_url":"https://github.com/spack.png","created_at":"2022-04-04T15:19:23.514Z","updated_at":"2025-09-08T06:56:36.288Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/namespaces"}}],"commits":{"id":466084,"full_name":"google/etils","default_branch":"main","committers":[{"name":"Etienne Pot","email":"epot@google.com","login":null,"count":430},{"name":"The etils Authors","email":"no-reply@google.com","login":null,"count":34},{"name":"Hicham Randrianarivo","email":"hicham+github@randrianarivo.net","login":null,"count":12},{"name":"Pierre Marcenac","email":"pierremarcenac@google.com","login":null,"count":8},{"name":"Klaus Greff","email":"klausg@google.com","login":null,"count":4},{"name":"Tim Semenov","email":"timsemenov@google.com","login":null,"count":4},{"name":"Tom van der Weide","email":"weide@google.com","login":null,"count":4},{"name":"daniel-character","email":"daniel@character.ai","login":null,"count":4},{"name":"Ayush Joshi","email":"ayush854032@gmail.com","login":null,"count":3},{"name":"Conchylicultor","email":"etiennefg.pot@gmail.com","login":null,"count":3},{"name":"Joshua Bambrick","email":"jbambrick@google.com","login":null,"count":3},{"name":"Peter Hawkins","email":"phawkins@google.com","login":null,"count":3},{"name":"Rebecca Chen","email":"rechen@google.com","login":null,"count":3},{"name":"Yaning Liang","email":"yaning@google.com","login":null,"count":3},{"name":"Andreas Steiner","email":"andstein@google.com","login":null,"count":2},{"name":"Francois Bleibel","email":"fbleibel@google.com","login":null,"count":2},{"name":"Jake VanderPlas","email":"vanderplas@google.com","login":null,"count":2},{"name":"Peter Zhizhin","email":"pzhizhin@google.com","login":null,"count":2},{"name":"Quentin Lhoest","email":"42851186+lhoestq@users.noreply.github.com","login":null,"count":2},{"name":"Aditya","email":"157234+truncs@users.noreply.github.com","login":null,"count":1},{"name":"Ayaka","email":"ayx@google.com","login":null,"count":1},{"name":"Clément Sicard","email":"csicard@google.com","login":null,"count":1},{"name":"Elliot Marsden","email":"emarsden@google.com","login":null,"count":1},{"name":"Eugene Brevdo","email":"ebrevdo@google.com","login":null,"count":1},{"name":"Henning Meyer","email":"henning@inceptive.team","login":null,"count":1},{"name":"Iurii Kemaev","email":"iukemaev@google.com","login":null,"count":1},{"name":"Jan Hosang","email":"hosang@google.com","login":null,"count":1},{"name":"Jean-Baptiste Lespiau","email":"jblespiau@google.com","login":null,"count":1},{"name":"John Aslanides","email":"jaslanides@google.com","login":null,"count":1},{"name":"Jonas Kemp","email":"jonasbkemp@google.com","login":null,"count":1},{"name":"Marvin Ritter","email":"marvinritter@google.com","login":null,"count":1},{"name":"Michael Boratko","email":"mboratko@google.com","login":null,"count":1},{"name":"Nikitas Rontsis","email":"nikitasr@google.com","login":null,"count":1},{"name":"Oleh Prypin","email":"oprypin@google.com","login":null,"count":1},{"name":"Oskar Bunyan","email":"oskarbun@google.com","login":null,"count":1},{"name":"Patrick Blesi","email":"pblesi@google.com","login":null,"count":1},{"name":"Renat Sibgatulin","email":"renat.sibgatulin@gmail.com","login":null,"count":1},{"name":"Yilei Yang","email":"yileiyang@google.com","login":null,"count":1},{"name":"Yuxin Wu","email":"yuxinw@google.com","login":null,"count":1}],"total_commits":548,"total_committers":39,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":14.051282051282051,"dds":0.21532846715328469,"past_year_committers":[{"name":"Etienne Pot","email":"epot@google.com","login":null,"count":49},{"name":"The etils Authors","email":"no-reply@google.com","login":null,"count":5},{"name":"Joshua Bambrick","email":"jbambrick@google.com","login":null,"count":2},{"name":"Quentin Lhoest","email":"42851186+lhoestq@users.noreply.github.com","login":null,"count":2},{"name":"Andreas Steiner","email":"andstein@google.com","login":null,"count":1},{"name":"Clément Sicard","email":"csicard@google.com","login":null,"count":1},{"name":"Jan Hosang","email":"hosang@google.com","login":null,"count":1},{"name":"John Aslanides","email":"jaslanides@google.com","login":null,"count":1},{"name":"Klaus Greff","email":"klausg@google.com","login":null,"count":1},{"name":"Marvin Ritter","email":"marvinritter@google.com","login":null,"count":1},{"name":"Oleh Prypin","email":"oprypin@google.com","login":null,"count":1},{"name":"Oskar Bunyan","email":"oskarbun@google.com","login":null,"count":1},{"name":"Peter Zhizhin","email":"pzhizhin@google.com","login":null,"count":1},{"name":"Tom van der Weide","email":"weide@google.com","login":null,"count":1}],"past_year_total_commits":68,"past_year_total_committers":14,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":4.857142857142857,"past_year_dds":0.27941176470588236,"last_synced_at":"2025-09-08T14:08:14.212Z","last_synced_commit":"43ac070c44cbb20b1f598eba3a23a9cfa9fb329a","created_at":"2023-03-09T00:36:55.352Z","updated_at":"2025-09-08T14:08:11.247Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:16.827Z","repositories_count":5492973,"commits_count":855737544,"contributors_count":31255717,"owners_count":912147,"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":"google/etils","html_url":"https://github.com/google/etils","last_synced_at":"2025-09-02T14:01:02.557Z","status":null,"issues_count":21,"pull_requests_count":575,"avg_time_to_close_issue":1332232.2727272727,"avg_time_to_close_pull_request":495902.1167315175,"issues_closed_count":11,"pull_requests_closed_count":514,"pull_request_authors_count":13,"issue_authors_count":17,"avg_comments_per_issue":1.7619047619047619,"avg_comments_per_pull_request":0.14956521739130435,"merged_pull_requests_count":188,"bot_issues_count":2,"bot_pull_requests_count":556,"past_year_issues_count":5,"past_year_pull_requests_count":132,"past_year_avg_time_to_close_issue":6627.0,"past_year_avg_time_to_close_pull_request":250051.21296296295,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":108,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.8,"past_year_avg_comments_per_pull_request":0.16666666666666666,"past_year_bot_issues_count":2,"past_year_bot_pull_requests_count":126,"past_year_merged_pull_requests_count":68,"created_at":"2023-05-10T14:50:11.159Z","updated_at":"2025-09-03T04:27:39.662Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2Fetils/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":14,"CONTRIBUTOR":4,"MEMBER":3},"pull_request_author_associations_count":{"NONE":575,"CONTRIBUTOR":7,"MEMBER":2},"issue_authors":{"ayaka14732":3,"SobhanMP":2,"copybara-service[bot]":2,"Sibgatulin":1,"jurgisp":1,"simdasch":1,"XuehaiPan":1,"wrsturgeon":1,"Brunwo":1,"daniel-character":1,"Winjoy":1,"adjerbetian":1,"gcr":1,"hmeyer":1,"murphyk":1,"chicham":1,"bwohlberg":1},"pull_request_authors":{"copybara-service[bot]":565,"chicham":2,"lhoestq":2,"ClementSicard":2,"ayaka14732":2,"abaelhe":2,"Sibgatulin":2,"waterflamev8":2,"thesayfulla":1,"hmeyer":1,"truncs":1,"ghost":1,"daniel-character":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10054011,"issues_count":30898665,"pull_requests_count":92703059,"authors_count":10588296,"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":{"NONE":4,"CONTRIBUTOR":1},"past_year_pull_request_author_associations_count":{"NONE":143,"CONTRIBUTOR":1},"past_year_issue_authors":{"copybara-service[bot]":2,"chicham":1,"jurgisp":1,"Winjoy":1},"past_year_pull_request_authors":{"copybara-service[bot]":138,"lhoestq":2,"ClementSicard":2,"waterflamev8":2},"maintainers":[{"login":"ayaka14732","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ayaka14732"}],"active_maintainers":[]},"events":{"total":{"CreateEvent":57,"IssuesEvent":3,"ReleaseEvent":5,"WatchEvent":39,"DeleteEvent":56,"IssueCommentEvent":21,"PushEvent":172,"PullRequestReviewEvent":1,"PullRequestEvent":115,"ForkEvent":5},"last_year":{"CreateEvent":57,"IssuesEvent":3,"ReleaseEvent":5,"WatchEvent":39,"DeleteEvent":56,"IssueCommentEvent":21,"PushEvent":172,"PullRequestReviewEvent":1,"PullRequestEvent":115,"ForkEvent":5}},"keywords":["jax","numpy","python","tensorflow","utils"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/pytest_and_autopublish.yml","sha":null,"kind":"manifest","created_at":"2023-02-17T18:16:04.029Z","updated_at":"2023-02-17T18:16:04.029Z","repository_link":"https://github.com/google/etils/blob/main/.github/workflows/pytest_and_autopublish.yml","dependencies":[{"id":7744061431,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7744061432,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7744061433,"package_name":"etils-actions/pypi-auto-publish","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-10-10T18:50:53.273Z","updated_at":"2023-10-10T18:50:53.273Z","repository_link":"https://github.com/google/etils/blob/main/pyproject.toml","dependencies":[]}],"score":26.37668981853108,"created_at":"2025-09-08T21:01:10.855Z","updated_at":"2025-10-07T08:28:30.667Z","avatar_url":"https://github.com/google.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":2517866,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["research","distributed","deep-neural-networks","reinforcement-learning","transformer","deep-reinforcement-learning","tpu","pypi","interpretability","gradient-boosting"],"project_url":"https://science.ecosyste.ms/api/v1/projects/80996","html_url":"https://science.ecosyste.ms/projects/80996"}