{"id":486,"name":null,"description":"Identify app models with a URI","url":"https://github.com/rails/globalid","last_synced_at":"2026-04-30T04:03:18.800Z","repository":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1264,"open_issues_count":9,"forks_count":132,"subscribers_count":23,"default_branch":"main","last_synced_at":"2026-04-18T00:03:53.952Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-04-13T22:49:18.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32010978,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"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":"rails","name":"Ruby on Rails","uuid":"4223","kind":"organization","description":"","email":null,"website":"https://rubyonrails.org/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/4223?v=4","repositories_count":116,"last_synced_at":"2023-04-09T03:40:20.529Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rails","funding_links":[],"total_stars":114333,"followers":null,"following":null,"created_at":"2022-11-02T16:17:13.297Z","updated_at":"2023-04-09T03:40:20.550Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails/repositories"},"packages":[{"id":216245,"name":"globalid","ecosystem":"rubygems","description":"URIs for your models makes it easy to pass references around.","homepage":"http://www.rubyonrails.org","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":[],"namespace":null,"versions_count":24,"first_release_published_at":"2014-08-18T00:01:34.551Z","latest_release_published_at":"2025-09-23T21:35:35.563Z","latest_release_number":"1.3.0","last_synced_at":"2026-04-22T14:15:21.961Z","created_at":"2022-04-05T23:45:22.782Z","updated_at":"2026-04-22T14:15:24.591Z","registry_url":"https://rubygems.org/gems/globalid","install_command":"gem install globalid -s https://rubygems.org","documentation_url":"http://www.rubydoc.info/gems/globalid/","metadata":{"funding":null},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1263,"open_issues_count":8,"forks_count":132,"subscribers_count":24,"default_branch":"main","last_synced_at":"2026-03-24T08:57:25.170Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-03-17T02:23:49.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30886129,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-24T08:58:18.477Z","status":"ssl_error","status_checked_at":"2026-03-24T08:57:59.595Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"rails","name":"Ruby on Rails","uuid":"4223","kind":"organization","description":"","email":null,"website":"https://rubyonrails.org/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/4223?v=4","repositories_count":116,"last_synced_at":"2023-04-09T03:40:20.529Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rails","funding_links":[],"total_stars":114333,"followers":null,"following":null,"created_at":"2022-11-02T16:17:13.297Z","updated_at":"2023-04-09T03:40:20.550Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails/repositories"},"tags":[]},"repo_metadata_updated_at":"2026-04-22T14:15:24.514Z","dependent_packages_count":37,"downloads":613178836,"downloads_period":"total","dependent_repos_count":514218,"rankings":{"downloads":0.039027218697382945,"dependent_repos_count":0.030106711566552556,"dependent_packages_count":0.6852064539869092,"stargazers_count":1.7913493382098773,"forks_count":2.3879082525841597,"docker_downloads_count":0.1477458993543783,"average":0.84689064573321},"purl":"pkg:gem/globalid","advisories":[{"uuid":"GSA_kwCzR0hTQS0yM2MyLWd3cDUtcHh3Oc4AAxDr","url":"https://github.com/advisories/GHSA-23c2-gwp5-pxw9","title":"ReDoS based DoS vulnerability in GlobalID","description":"There is a ReDoS based DoS vulnerability in the GlobalID gem. This vulnerability has been assigned the CVE identifier CVE-2023-22799.\n\nVersions Affected: \u003e= 0.2.1 Not affected: NOTAFFECTED Fixed Versions: 1.0.1\nImpact\n\nThere is a possible DoS vulnerability in the model name parsing section of the GlobalID gem. Carefully crafted input can cause the regular expression engine to take an unexpected amount of time. All users running an affected release should either upgrade or use one of the workarounds immediately.\nReleases\n\nThe FIXED releases are available at the normal locations.\nWorkarounds\n\nThere are no feasible workarounds for this issue.\nPatches\n\nTo aid users who aren’t able to upgrade immediately we have provided patches for the two supported release series. They are in git-am format and consist of a single changeset.\n\n    1-0-model-name-redos.patch - Patch for 1.0 series\n","origin":"UNSPECIFIED","severity":"LOW","published_at":"2023-01-18T18:13:19.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":0.0,"cvss_vector":null,"references":["https://github.com/rails/globalid/releases/tag/v1.0.1","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/globalid/CVE-2023-22799.yml","https://nvd.nist.gov/vuln/detail/CVE-2023-22799","https://discuss.rubyonrails.org/t/cve-2023-22799-possible-redos-based-dos-vulnerability-in-globalid/82127","https://github.com/rails/globalid/commit/4a75ecbfd73a8e92e32a1723b81a17e3136bd8fc","https://github.com/advisories/GHSA-23c2-gwp5-pxw9"],"source_kind":"github","identifiers":["GHSA-23c2-gwp5-pxw9","CVE-2023-22799"],"repository_url":"https://github.com/rails/globalid","blast_radius":0.0,"created_at":"2023-01-18T19:03:22.137Z","updated_at":"2026-04-22T11:07:13.127Z","epss_percentage":0.01398,"epss_percentile":0.80437,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yM2MyLWd3cDUtcHh3Oc4AAxDr","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yM2MyLWd3cDUtcHh3Oc4AAxDr","packages":[{"ecosystem":"rubygems","package_name":"globalid","versions":[{"first_patched_version":"1.0.1","vulnerable_version_range":"\u003e= 0.2.1, \u003c 1.0.1"}],"purl":"pkg:gem/globalid","statistics":{"dependent_packages_count":37,"dependent_repos_count":514218,"downloads":612780402,"downloads_period":"total"},"affected_versions":["0.2.1","0.2.2","0.2.3","0.3.0","0.3.1","0.3.2","0.3.3","0.3.4","0.3.5","0.3.6","0.3.7","0.4.0","0.4.1","0.4.2","0.5.1","0.5.2","0.6.0","1.0.0"],"unaffected_versions":["0.2.0","1.0.1","1.1.0","1.2.0","1.2.1","1.3.0"]}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yM2MyLWd3cDUtcHh3Oc4AAxDr/related_packages","related_advisories":[]}],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/globalid","docker_dependents_count":1240,"docker_downloads_count":815201144,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/globalid/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2026-04-13T21:21:26.534Z","issues_count":43,"pull_requests_count":114,"avg_time_to_close_issue":16282813.588235294,"avg_time_to_close_pull_request":6291030.533333333,"issues_closed_count":34,"pull_requests_closed_count":90,"pull_request_authors_count":61,"issue_authors_count":42,"avg_comments_per_issue":3.6511627906976742,"avg_comments_per_pull_request":1.6842105263157896,"merged_pull_requests_count":71,"bot_issues_count":0,"bot_pull_requests_count":14,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":2175758.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":5,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":2.5,"past_year_avg_comments_per_pull_request":0.8571428571428571,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/issues","maintainers":[{"login":"y-yagi","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/y-yagi"},{"login":"rafaelfranca","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rafaelfranca"},{"login":"eugeneius","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/eugeneius"},{"login":"vipulnsward","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vipulnsward"},{"login":"amatsuda","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/amatsuda"},{"login":"zzak","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zzak"},{"login":"ghiculescu","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ghiculescu"},{"login":"p8","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/p8"},{"login":"kamipo","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kamipo"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/globalid/codemeta","maintainers":[{"uuid":"43492","login":"jhawthorn","name":null,"email":null,"url":null,"packages_count":150,"html_url":"https://rubygems.org/profiles/jhawthorn","role":null,"created_at":"2022-11-09T09:33:43.101Z","updated_at":"2022-11-09T09:33:43.101Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/jhawthorn/packages"},{"uuid":"207","login":"tenderlove","name":null,"email":null,"url":null,"packages_count":189,"html_url":"https://rubygems.org/profiles/tenderlove","role":null,"created_at":"2022-11-09T09:33:43.150Z","updated_at":"2022-11-09T09:33:43.150Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/tenderlove/packages"},{"uuid":"54617","login":"kamipo","name":null,"email":null,"url":null,"packages_count":61,"html_url":"https://rubygems.org/profiles/kamipo","role":null,"created_at":"2022-11-09T09:33:43.093Z","updated_at":"2022-11-09T09:33:43.093Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/kamipo/packages"},{"uuid":"46413","login":"byroot","name":null,"email":null,"url":null,"packages_count":103,"html_url":"https://rubygems.org/profiles/byroot","role":null,"created_at":"2022-11-09T09:33:43.108Z","updated_at":"2022-11-09T09:33:43.108Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/byroot/packages"},{"uuid":"1550","login":"webster132","name":null,"email":null,"url":null,"packages_count":81,"html_url":"https://rubygems.org/profiles/webster132","role":null,"created_at":"2022-11-09T09:33:43.114Z","updated_at":"2022-11-09T09:33:43.114Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/webster132/packages"},{"uuid":"43998","login":"guilleiguaran","name":null,"email":null,"url":null,"packages_count":85,"html_url":"https://rubygems.org/profiles/guilleiguaran","role":null,"created_at":"2022-11-09T09:33:43.166Z","updated_at":"2022-11-09T09:33:43.166Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/guilleiguaran/packages"},{"uuid":"32977","login":"fxn","name":null,"email":null,"url":null,"packages_count":61,"html_url":"https://rubygems.org/profiles/fxn","role":null,"created_at":"2022-11-09T09:33:43.143Z","updated_at":"2022-11-09T09:33:43.143Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/fxn/packages"},{"uuid":"429","login":"cantoniodasilva","name":null,"email":null,"url":null,"packages_count":67,"html_url":"https://rubygems.org/profiles/cantoniodasilva","role":null,"created_at":"2022-11-09T09:33:43.159Z","updated_at":"2022-11-09T09:33:43.159Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/cantoniodasilva/packages"},{"uuid":"47349","login":"rafaelfranca","name":null,"email":null,"url":null,"packages_count":120,"html_url":"https://rubygems.org/profiles/rafaelfranca","role":null,"created_at":"2022-11-09T09:33:43.121Z","updated_at":"2022-11-09T09:33:43.121Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/rafaelfranca/packages"},{"uuid":"337","login":"jeremydaer","name":null,"email":null,"url":null,"packages_count":68,"html_url":"https://rubygems.org/profiles/jeremydaer","role":null,"created_at":"2022-11-09T09:33:43.132Z","updated_at":"2022-11-09T09:33:43.132Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/jeremydaer/packages"},{"uuid":"528","login":"matthewd","name":null,"email":null,"url":null,"packages_count":66,"html_url":"https://rubygems.org/profiles/matthewd","role":null,"created_at":"2022-11-09T09:33:43.174Z","updated_at":"2022-11-09T09:33:43.174Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/matthewd/packages"},{"uuid":"96878","login":"eileencodes","name":null,"email":null,"url":null,"packages_count":53,"html_url":"https://rubygems.org/profiles/eileencodes","role":null,"created_at":"2022-11-09T09:33:43.189Z","updated_at":"2022-11-09T09:33:43.189Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/eileencodes/packages"}],"registry":{"name":"rubygems.org","url":"https://rubygems.org","ecosystem":"rubygems","default":true,"packages_count":205339,"maintainers_count":68412,"namespaces_count":0,"keywords_count":0,"github":"rubygems","metadata":{"funded_packages_count":7260},"icon_url":"https://github.com/rubygems.png","created_at":"2022-04-04T15:19:23.446Z","updated_at":"2026-04-03T06:42:17.024Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/namespaces"}},{"id":12237658,"name":"globalid","ecosystem":"rubygems","description":"URIs for your models makes it easy to pass references around.","homepage":"http://www.rubyonrails.org","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":[],"namespace":null,"versions_count":24,"first_release_published_at":"2014-08-18T00:01:34.551Z","latest_release_published_at":"2025-09-23T21:35:35.563Z","latest_release_number":"1.3.0","last_synced_at":"2026-04-22T15:30:56.820Z","created_at":"2025-10-07T03:13:01.118Z","updated_at":"2026-04-22T15:33:48.795Z","registry_url":"https://gem.coop/gems/globalid","install_command":"gem install globalid -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/globalid/","metadata":{"funding":null},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1264,"open_issues_count":9,"forks_count":132,"subscribers_count":23,"default_branch":"main","last_synced_at":"2026-04-18T00:03:53.952Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-04-13T22:49:18.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32010978,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"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":"rails","name":"Ruby on Rails","uuid":"4223","kind":"organization","description":"","email":null,"website":"https://rubyonrails.org/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/4223?v=4","repositories_count":116,"last_synced_at":"2023-04-09T03:40:20.529Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rails","funding_links":[],"total_stars":114333,"followers":null,"following":null,"created_at":"2022-11-02T16:17:13.297Z","updated_at":"2023-04-09T03:40:20.550Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails/repositories"},"tags":[{"name":"v1.3.0","sha":"a10102196ceaa9ffec3744eda857ebe421a57134","kind":"tag","published_at":"2025-09-23T21:32:23.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.3.0","html_url":"https://github.com/rails/globalid/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.3.0/manifests"},{"name":"v1.2.1","sha":"488ab6c67d17219ba3b23fc5ade434a1faaa915f","kind":"tag","published_at":"2023-09-05T16:15:03.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.2.1","html_url":"https://github.com/rails/globalid/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"27dff728fc2e8a2f04234c911cedd631bd0fbc27","kind":"tag","published_at":"2023-09-02T00:13:23.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.2.0","html_url":"https://github.com/rails/globalid/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"10673ef83e23b4ad668c356419c7f70a66cb5c70","kind":"tag","published_at":"2023-01-25T18:47:02.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.1.0","html_url":"https://github.com/rails/globalid/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"574b99fb9a23a9c637e44c0970616dd32b68e93f","kind":"tag","published_at":"2023-01-17T21:41:10.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.0.1","html_url":"https://github.com/rails/globalid/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"42f5ea6b4c638024c8865c1e4a4dbeb991198557","kind":"tag","published_at":"2021-11-25T23:16:18.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v1.0.0","html_url":"https://github.com/rails/globalid/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v1.0.0/manifests"},{"name":"v0.6.0","sha":"beab3e4bc7d3fe1af27367de6c90b4d31618ed44","kind":"tag","published_at":"2021-11-24T22:29:27.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.6.0","html_url":"https://github.com/rails/globalid/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.6.0/manifests"},{"name":"v0.5.2","sha":"0ed21fb86ed2ad5fc6c78b10d799155558bf55b7","kind":"tag","published_at":"2021-08-02T13:04:40.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.5.2","html_url":"https://github.com/rails/globalid/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"20f6a4addb034ef5c46e7bca262fc3bebd7445df","kind":"tag","published_at":"2021-07-27T20:55:03.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.5.1","html_url":"https://github.com/rails/globalid/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"1366dc0e82ef3820ab19024c67d32d018f74efc9","kind":"tag","published_at":"2021-07-27T20:48:29.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.5.0","html_url":"https://github.com/rails/globalid/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.5.0/manifests"},{"name":"v0.4.2","sha":"c98b8091b4199510273ef3436819529dddf8b7d4","kind":"tag","published_at":"2019-01-11T13:58:27.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.4.2","html_url":"https://github.com/rails/globalid/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"b6abf002f677d9ca59811f1846c2ed261e011608","kind":"tag","published_at":"2017-10-24T15:47:59.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.4.1","html_url":"https://github.com/rails/globalid/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"e44679370c5b0d95e336cdfa798ef6e763845885","kind":"tag","published_at":"2017-04-16T15:35:16.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.4.0","html_url":"https://github.com/rails/globalid/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.4.0/manifests"},{"name":"v0.3.7","sha":"920ebcf980f421501ea9151291ca7cc52917fcdf","kind":"tag","published_at":"2016-07-26T20:35:46.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.7","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.7/manifests"},{"name":"v0.3.6","sha":"8178ff2dc898a8f49dd71f6eb46f2a09712462de","kind":"tag","published_at":"2015-08-04T21:30:09.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.6","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.6/manifests"},{"name":"v0.3.5","sha":"7a416483c30ec4d266213c75b87a333347ab6df6","kind":"tag","published_at":"2015-04-08T17:40:27.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.5","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.5/manifests"},{"name":"v0.3.4","sha":"f7fe7ec3a66926e961bb1fd3446217cc7379781c","kind":"commit","published_at":"2015-04-08T14:53:44.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.4","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.4/manifests"},{"name":"v0.3.3","sha":"62e3bb33cfc87a6f2073b6754d724d049fda3cd8","kind":"commit","published_at":"2015-02-12T17:59:15.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.3","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.3/manifests"},{"name":"v0.3.2","sha":"64fb44bf8c8ebef7c0c7dbd68b19d8607e0866e7","kind":"commit","published_at":"2015-02-05T23:17:44.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.2","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.2/manifests"},{"name":"v0.3.1","sha":"9c71bf85cbe3766bd7c1372863680ca8c160cacb","kind":"commit","published_at":"2015-02-05T19:19:20.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.1","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"e4cc3643b3dd1e46d8f8525140a81fc1edfb4595","kind":"tag","published_at":"2014-09-12T16:28:15.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.3.0","html_url":"https://github.com/rails/globalid/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.3.0/manifests"},{"name":"v0.2.3","sha":"5aaecafce51b9aa0bead930af57ad493db754268","kind":"tag","published_at":"2014-08-26T18:53:01.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.2.3","html_url":"https://github.com/rails/globalid/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.3/manifests"},{"name":"v0.2.2","sha":"033bd2bf2e86c00712a19a285667479f8a2ff7d2","kind":"commit","published_at":"2014-08-18T23:31:57.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.2.2","html_url":"https://github.com/rails/globalid/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"cec187e600af9ed5639f099ffb272bcb02e817fb","kind":"commit","published_at":"2014-08-18T22:58:22.000Z","download_url":"https://codeload.github.com/rails/globalid/tar.gz/v0.2.1","html_url":"https://github.com/rails/globalid/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rails/globalid@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags/v0.2.1/manifests"}]},"repo_metadata_updated_at":"2026-04-22T15:33:48.774Z","dependent_packages_count":0,"downloads":613207241,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":0.038387715930902115,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":0.012795905310300705},"purl":"pkg:gem/globalid?repository_url=https://gem.coop","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/globalid","docker_dependents_count":1240,"docker_downloads_count":815201144,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-13T21:21:26.534Z","issues_count":43,"pull_requests_count":114,"avg_time_to_close_issue":16282813.588235294,"avg_time_to_close_pull_request":6291030.533333333,"issues_closed_count":34,"pull_requests_closed_count":90,"pull_request_authors_count":61,"issue_authors_count":42,"avg_comments_per_issue":3.6511627906976742,"avg_comments_per_pull_request":1.6842105263157896,"merged_pull_requests_count":71,"bot_issues_count":0,"bot_pull_requests_count":14,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":2175758.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":5,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":2.5,"past_year_avg_comments_per_pull_request":0.8571428571428571,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/issues","maintainers":[{"login":"y-yagi","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/y-yagi"},{"login":"rafaelfranca","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rafaelfranca"},{"login":"eugeneius","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/eugeneius"},{"login":"vipulnsward","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vipulnsward"},{"login":"amatsuda","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/amatsuda"},{"login":"zzak","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zzak"},{"login":"ghiculescu","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ghiculescu"},{"login":"p8","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/p8"},{"login":"kamipo","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kamipo"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/globalid/codemeta","maintainers":[{"uuid":"207","login":"tenderlove","name":null,"email":null,"url":null,"packages_count":190,"html_url":"https://gem.coop/profiles/tenderlove","role":null,"created_at":"2025-10-07T18:55:42.603Z","updated_at":"2025-10-07T18:55:42.603Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/tenderlove/packages"},{"uuid":"1550","login":"webster132","name":null,"email":null,"url":null,"packages_count":82,"html_url":"https://gem.coop/profiles/webster132","role":null,"created_at":"2025-10-07T18:55:42.411Z","updated_at":"2025-10-07T18:55:42.411Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/webster132/packages"},{"uuid":"43998","login":"guilleiguaran","name":null,"email":null,"url":null,"packages_count":85,"html_url":"https://gem.coop/profiles/guilleiguaran","role":null,"created_at":"2025-10-07T18:55:42.701Z","updated_at":"2025-10-07T18:55:42.701Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/guilleiguaran/packages"},{"uuid":"32977","login":"fxn","name":null,"email":null,"url":null,"packages_count":62,"html_url":"https://gem.coop/profiles/fxn","role":null,"created_at":"2025-10-07T18:55:42.555Z","updated_at":"2025-10-07T18:55:42.555Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/fxn/packages"},{"uuid":"429","login":"cantoniodasilva","name":null,"email":null,"url":null,"packages_count":67,"html_url":"https://gem.coop/profiles/cantoniodasilva","role":null,"created_at":"2025-10-07T18:55:42.652Z","updated_at":"2025-10-07T18:55:42.652Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/cantoniodasilva/packages"},{"uuid":"47349","login":"rafaelfranca","name":null,"email":null,"url":null,"packages_count":107,"html_url":"https://gem.coop/profiles/rafaelfranca","role":null,"created_at":"2025-10-07T18:55:42.458Z","updated_at":"2025-10-07T18:55:42.458Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/rafaelfranca/packages"},{"uuid":"337","login":"jeremydaer","name":null,"email":null,"url":null,"packages_count":63,"html_url":"https://gem.coop/profiles/jeremydaer","role":null,"created_at":"2025-10-07T18:55:42.508Z","updated_at":"2025-10-07T18:55:42.508Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/jeremydaer/packages"},{"uuid":"528","login":"matthewd","name":null,"email":null,"url":null,"packages_count":66,"html_url":"https://gem.coop/profiles/matthewd","role":null,"created_at":"2025-10-07T18:55:42.763Z","updated_at":"2025-10-07T18:55:42.763Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/matthewd/packages"},{"uuid":"96878","login":"eileencodes","name":null,"email":null,"url":null,"packages_count":54,"html_url":"https://gem.coop/profiles/eileencodes","role":null,"created_at":"2025-10-07T18:55:42.808Z","updated_at":"2025-10-07T18:55:42.808Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/eileencodes/packages"},{"uuid":"46413","login":"byroot","name":null,"email":null,"url":null,"packages_count":105,"html_url":"https://gem.coop/profiles/byroot","role":null,"created_at":"2025-10-07T18:55:42.854Z","updated_at":"2025-10-07T18:55:42.854Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/byroot/packages"},{"uuid":"43492","login":"jhawthorn","name":null,"email":null,"url":null,"packages_count":150,"html_url":"https://gem.coop/profiles/jhawthorn","role":null,"created_at":"2025-10-07T18:55:42.899Z","updated_at":"2025-10-07T18:55:42.899Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/jhawthorn/packages"},{"uuid":"54617","login":"kamipo","name":null,"email":null,"url":null,"packages_count":61,"html_url":"https://gem.coop/profiles/kamipo","role":null,"created_at":"2025-10-07T18:55:42.944Z","updated_at":"2025-10-07T18:55:42.944Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/kamipo/packages"}],"registry":{"name":"gem.coop","url":"https://gem.coop","ecosystem":"rubygems","default":false,"packages_count":190189,"maintainers_count":67421,"namespaces_count":0,"keywords_count":0,"github":"gem-coop","metadata":{"funded_packages_count":6507},"icon_url":"https://github.com/gem-coop.png","created_at":"2025-10-06T17:24:20.932Z","updated_at":"2026-04-03T06:45:05.763Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/namespaces"}},{"id":13778924,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T13:17:37.149Z","latest_release_published_at":"2026-02-13T13:17:37.149Z","latest_release_number":"0.6.0-1","last_synced_at":"2026-03-13T13:36:31.608Z","created_at":"2026-02-13T13:17:36.984Z","updated_at":"2026-03-13T13:36:31.608Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport (\u003e= 2:5.0), ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T13:17:39.072Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-22.04","url":"https://launchpad.net/ubuntu/jammy","ecosystem":"ubuntu","default":false,"packages_count":34289,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"jammy","funded_packages_count":142},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-04-01T06:53:21.644Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/namespaces"}},{"id":13406665,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T15:13:20.007Z","latest_release_published_at":"2026-02-06T15:13:20.007Z","latest_release_number":"1.2.1-1","last_synced_at":"2026-03-06T15:59:08.401Z","created_at":"2026-02-06T15:13:19.614Z","updated_at":"2026-03-06T16:04:42.022Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport, ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.04","url":"https://launchpad.net/ubuntu/noble","ecosystem":"ubuntu","default":true,"packages_count":37306,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"noble","funded_packages_count":161},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-04-01T06:53:16.927Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}},{"id":13605527,"name":"ruby-globalid","ecosystem":"debian","description":null,"homepage":"https://github.com/rails/globalid","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-11T11:21:03.456Z","latest_release_published_at":"2026-02-11T11:21:03.456Z","latest_release_number":"0.4.2+REALLY.0.3.6-1","last_synced_at":"2026-03-13T19:03:51.483Z","created_at":"2026-02-11T11:21:03.242Z","updated_at":"2026-03-13T19:03:51.483Z","registry_url":"https://tracker.debian.org/pkg/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":"https://packages.debian.org/buster/ruby-globalid","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.2.1","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 9~), gem2deb, rails (\u003e= 2:4.1.0), rake, ruby-activesupport (\u003e= 2:4.1.0)","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1262,"open_issues_count":8,"forks_count":132,"subscribers_count":24,"default_branch":"main","last_synced_at":"2026-02-09T15:55:41.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-02-05T08:16:29.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29333905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T12:42:24.625Z","status":"ssl_error","status_checked_at":"2026-02-11T12:41:23.344Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-02-11T15:15:08.055Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-globalid?arch=source\u0026distro=debian-10\u0026repository_url=https://packages.debian.org/buster","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"debian-10","url":"https://packages.debian.org/buster","ecosystem":"debian","default":false,"packages_count":28836,"maintainers_count":0,"namespaces_count":3,"keywords_count":915,"github":"debian","metadata":{"codename":"buster","mirror":"http://archive.debian.org/debian","funded_packages_count":81},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.156Z","updated_at":"2026-04-20T05:04:47.397Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/namespaces"}},{"id":13751108,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T07:14:25.274Z","latest_release_published_at":"2026-02-13T07:14:25.274Z","latest_release_number":"0.4.2+REALLY.0.3.6-1","last_synced_at":"2026-03-13T20:20:46.530Z","created_at":"2026-02-13T07:14:25.111Z","updated_at":"2026-03-13T20:20:46.530Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.2.1","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 9~), gem2deb, rails (\u003e= 2:4.1.0), rake, ruby-activesupport (\u003e= 2:4.1.0)","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T07:14:25.828Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-20.04\u0026repository_url=https://launchpad.net/ubuntu/focal","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-20.04","url":"https://launchpad.net/ubuntu/focal","ecosystem":"ubuntu","default":false,"packages_count":30789,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"focal","funded_packages_count":142},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:47.233Z","updated_at":"2026-04-01T06:53:15.590Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/namespaces"}},{"id":13712460,"name":"ruby-globalid","ecosystem":"debian","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T23:30:16.148Z","latest_release_published_at":"2026-02-12T23:30:16.148Z","latest_release_number":"0.6.0-2","last_synced_at":"2026-03-13T23:43:28.243Z","created_at":"2026-02-12T23:30:15.964Z","updated_at":"2026-03-13T23:43:28.244Z","registry_url":"https://tracker.debian.org/pkg/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":"https://packages.debian.org/bookworm/ruby-globalid","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport, ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T23:30:17.560Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-globalid?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"debian-12","url":"https://packages.debian.org/bookworm","ecosystem":"debian","default":true,"packages_count":34734,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":364},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-04-01T06:53:23.701Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/namespaces"}},{"id":13804430,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T18:21:07.052Z","latest_release_published_at":"2026-02-13T18:21:07.052Z","latest_release_number":"0.6.0-2","last_synced_at":"2026-03-14T02:17:22.729Z","created_at":"2026-02-13T18:21:06.872Z","updated_at":"2026-03-14T02:17:22.729Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport, ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T18:21:07.125Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":412},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-04-01T06:53:18.736Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":13530342,"name":"ruby-globalid","ecosystem":"debian","description":null,"homepage":"https://github.com/rails/globalid","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-10T23:31:16.947Z","latest_release_published_at":"2026-02-10T23:31:16.947Z","latest_release_number":"0.4.2+REALLY.0.3.6-1","last_synced_at":"2026-03-14T06:22:59.597Z","created_at":"2026-02-10T23:31:16.715Z","updated_at":"2026-03-14T06:22:59.598Z","registry_url":"https://tracker.debian.org/pkg/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":"https://packages.debian.org/bullseye/ruby-globalid","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.2.1","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 9~), gem2deb, rails (\u003e= 2:4.1.0), rake, ruby-activesupport (\u003e= 2:4.1.0)","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1262,"open_issues_count":8,"forks_count":132,"subscribers_count":24,"default_branch":"main","last_synced_at":"2026-02-09T15:55:41.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-02-05T08:16:29.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29333905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T12:42:24.625Z","status":"ssl_error","status_checked_at":"2026-02-11T12:41:23.344Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-02-11T14:26:36.908Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-globalid?arch=source\u0026distro=debian-11\u0026repository_url=https://packages.debian.org/bullseye","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"debian-11","url":"https://packages.debian.org/bullseye","ecosystem":"debian","default":false,"packages_count":31268,"maintainers_count":0,"namespaces_count":3,"keywords_count":0,"github":"debian","metadata":{"codename":"bullseye","funded_packages_count":77},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.702Z","updated_at":"2026-04-01T06:53:20.333Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/namespaces"}},{"id":13566483,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T06:40:14.191Z","latest_release_published_at":"2026-02-11T06:40:14.191Z","latest_release_number":"0.6.0-1","last_synced_at":"2026-03-11T17:19:47.322Z","created_at":"2026-02-11T06:40:14.021Z","updated_at":"2026-03-11T17:19:47.683Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport (\u003e= 2:5.0), ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-10-22T19:48:40.000Z","size":334,"stargazers_count":1262,"open_issues_count":8,"forks_count":132,"subscribers_count":24,"default_branch":"main","last_synced_at":"2026-02-09T15:55:41.011Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2026-02-05T08:16:29.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29333905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T12:42:24.625Z","status":"ssl_error","status_checked_at":"2026-02-11T12:41:23.344Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-02-11T14:56:22.035Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.04","url":"https://launchpad.net/ubuntu/lunar","ecosystem":"ubuntu","default":false,"packages_count":36116,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":99},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-04-01T06:53:19.375Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/namespaces"}},{"id":13466721,"name":"ruby-globalid","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T16:36:45.813Z","latest_release_published_at":"2026-02-09T16:36:45.813Z","latest_release_number":"1.2.1-1","last_synced_at":"2026-03-09T17:05:48.954Z","created_at":"2026-02-09T16:36:45.541Z","updated_at":"2026-03-09T17:32:08.288Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport, ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-globalid?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":177},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-03-31T06:41:18.525Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":13668946,"name":"ruby-globalid","ecosystem":"debian","description":null,"homepage":"https://github.com/rails/globalid","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/rails/globalid","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T12:25:23.735Z","latest_release_published_at":"2026-02-12T12:25:23.735Z","latest_release_number":"1.2.1-2","last_synced_at":"2026-03-14T15:02:38.915Z","created_at":"2026-02-12T12:25:23.550Z","updated_at":"2026-03-14T15:02:38.915Z","registry_url":"https://tracker.debian.org/pkg/ruby-globalid","install_command":"apt-get install ruby-globalid","documentation_url":"https://packages.debian.org/trixie/ruby-globalid","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-globalid","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activesupport, ruby-rails","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T12:25:26.622Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-globalid?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-globalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-globalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-globalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-globalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-globalid/codemeta","maintainers":[],"registry":{"name":"debian-13","url":"https://packages.debian.org/trixie","ecosystem":"debian","default":false,"packages_count":38024,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"trixie","funded_packages_count":282},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-03-31T06:41:13.743Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/namespaces"}},{"id":8614656,"name":"github.com/rails/globalid","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/rails/globalid","keywords_array":[],"namespace":null,"versions_count":24,"first_release_published_at":"2023-12-02T02:14:51.845Z","latest_release_published_at":"2025-09-23T21:32:13.000Z","latest_release_number":"v1.3.0","last_synced_at":"2026-04-17T22:01:17.967Z","created_at":"2023-12-02T02:14:47.797Z","updated_at":"2026-04-17T22:01:17.967Z","registry_url":"https://pkg.go.dev/github.com/rails/globalid","install_command":"go get github.com/rails/globalid","documentation_url":"https://pkg.go.dev/github.com/rails/globalid#section-documentation","metadata":{},"repo_metadata":{"id":19735094,"uuid":"22991474","full_name":"rails/globalid","owner":"rails","description":"Identify app models with a URI","archived":false,"fork":false,"pushed_at":"2025-09-23T21:32:30.000Z","size":336,"stargazers_count":1255,"open_issues_count":7,"forks_count":133,"subscribers_count":27,"default_branch":"main","last_synced_at":"2025-10-19T07:49:23.690Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rails.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2014-08-15T14:05:35.000Z","updated_at":"2025-10-17T07:01:43.000Z","dependencies_parsed_at":"2024-06-17T16:30:51.926Z","dependency_job_id":"aa01819a-1d6c-4761-ad1c-0075bed52b3f","html_url":"https://github.com/rails/globalid","commit_stats":{"total_commits":257,"total_committers":67,"mean_commits":"3.8358208955223883","dds":0.7587548638132295,"last_synced_commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/rails/globalid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","download_url":"https://codeload.github.com/rails/globalid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/sbom","scorecard":{"id":759281,"data":{"date":"2025-08-11","repo":{"name":"github.com/rails/globalid","commit":"e9548a3531a89abfaf036f88d4dac732355a5b80"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":6,"reason":"Found 9/15 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/rails/globalid/ci.yml/main?enable=pin","Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:3","Warn: containerImage not pinned by hash: .devcontainer/base.Dockerfile:3","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE:0","Info: FSF or OSI recognized license: MIT License: MIT-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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 25 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"25 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9822-6m93-xqf4","Warn: Project is vulnerable to: GHSA-fwhr-88qx-h9g7","Warn: Project is vulnerable to: GHSA-vfg9-r3fq-jvx4","Warn: Project is vulnerable to: GHSA-vfm5-rmrh-j26v","Warn: Project is vulnerable to: GHSA-x76w-6vjr-8xgj","Warn: Project is vulnerable to: GHSA-cr5q-6q9f-rq6q","Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-r95h-9x8f-r3f7","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-xc9x-jj77-9p9j","Warn: Project is vulnerable to: GHSA-22f2-v57c-j9cx","Warn: Project is vulnerable to: GHSA-54rr-7fvw-6x8f","Warn: Project is vulnerable to: GHSA-7g2v-jj9q-g3rg","Warn: Project is vulnerable to: GHSA-7wqh-767x-r66v","Warn: Project is vulnerable to: GHSA-8cgq-6mh2-7j6v","Warn: Project is vulnerable to: GHSA-gjh7-p2fx-99vx","Warn: Project is vulnerable to: GHSA-vpfw-47h7-xj4g","Warn: Project is vulnerable to: GHSA-xj5v-6v4g-jfw6","Warn: Project is vulnerable to: GHSA-2x5m-9ch4-qgrr","Warn: Project is vulnerable to: GHSA-638j-pmjw-jq48","Warn: Project is vulnerable to: GHSA-cfjx-w229-hgx5","Warn: Project is vulnerable to: GHSA-rxv5-gxqc-xx8g","Warn: Project is vulnerable to: GHSA-w8gc-x259-rc7x"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T22:49:22.827Z","repository_id":19735094,"created_at":"2025-08-22T22:49:22.827Z","updated_at":"2025-08-22T22:49:22.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280161929,"owners_count":26283097,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-20T02:00:06.978Z","response_time":62,"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":"rails","name":"Ruby on Rails","uuid":"4223","kind":"organization","description":"","email":null,"website":"https://rubyonrails.org/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/4223?v=4","repositories_count":116,"last_synced_at":"2023-04-09T03:40:20.529Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rails","funding_links":[],"total_stars":114333,"followers":null,"following":null,"created_at":"2022-11-02T16:17:13.297Z","updated_at":"2023-04-09T03:40:20.550Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rails/repositories"},"tags":[]},"repo_metadata_updated_at":"2025-10-20T21:26:48.082Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":10.801592556016239,"dependent_packages_count":9.575730298247606,"stargazers_count":1.9718764342878214,"forks_count":2.44888674211981,"docker_downloads_count":null,"average":6.199521507667869},"purl":"pkg:golang/github.com/rails/globalid","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/rails/globalid","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/rails/globalid","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/rails/globalid/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-16T04:41:28.679Z","issues_count":43,"pull_requests_count":112,"avg_time_to_close_issue":15835281.057142857,"avg_time_to_close_pull_request":6313476.584269663,"issues_closed_count":35,"pull_requests_closed_count":89,"pull_request_authors_count":59,"issue_authors_count":42,"avg_comments_per_issue":3.627906976744186,"avg_comments_per_pull_request":1.6785714285714286,"merged_pull_requests_count":71,"bot_issues_count":0,"bot_pull_requests_count":14,"past_year_issues_count":5,"past_year_pull_requests_count":17,"past_year_avg_time_to_close_issue":309628.5,"past_year_avg_time_to_close_pull_request":2791433.75,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":6,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.0,"past_year_avg_comments_per_pull_request":0.5882352941176471,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/issues","maintainers":[{"login":"y-yagi","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/y-yagi"},{"login":"rafaelfranca","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rafaelfranca"},{"login":"eugeneius","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/eugeneius"},{"login":"vipulnsward","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vipulnsward"},{"login":"amatsuda","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/amatsuda"},{"login":"zzak","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zzak"},{"login":"ghiculescu","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ghiculescu"},{"login":"p8","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/p8"},{"login":"kamipo","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kamipo"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frails%2Fglobalid/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frails%2Fglobalid/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frails%2Fglobalid/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frails%2Fglobalid/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frails%2Fglobalid/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2104372,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}}],"commits":{"id":3207,"full_name":"rails/globalid","default_branch":"main","total_commits":277,"total_committers":71,"total_bot_commits":11,"total_bot_committers":1,"mean_commits":3.9014084507042255,"dds":0.776173285198556,"past_year_total_commits":13,"past_year_total_committers":5,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":2.6,"past_year_dds":0.46153846153846156,"last_synced_at":"2026-04-19T15:08:13.288Z","last_synced_commit":"26544d21043a4e324db7f7a4a9c2b4a88486b388","created_at":"2023-03-07T09:16:49.448Z","updated_at":"2026-04-19T15:07:14.743Z","committers":[{"name":"Kasper Timm Hansen","email":"kaspth@gmail.com","login":"kaspth","count":62},{"name":"Rafael Mendonça França","email":"rafael@rubyonrails.org","login":"rafaelfranca","count":42},{"name":"David Heinemeier Hansson","email":"david@loudthinking.com","login":"dhh","count":19},{"name":"Jeremy Kemper","email":"jeremykemper@gmail.com","login":"jeremy","count":13},{"name":"yuuji.yaginuma","email":"yuuji.yaginuma@gmail.com","login":"y-yagi","count":12},{"name":"Abdelkader Boudih","email":"terminale@gmail.com","login":"seuros","count":11},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":11},{"name":"Nick Veys","email":"nick@codelever.com","login":null,"count":8},{"name":"Tony Han","email":"h.bing612@gmail.com","login":"tony612","count":7},{"name":"Dan Olson","email":"olson_dan@yahoo.com","login":"DanOlson","count":5},{"name":"Rafael Mendonça França","email":"rafael.franca@plataformatec.com.br","login":null,"count":4},{"name":"Vipul A M","email":"vipulnsward@gmail.com","login":"vipulnsward","count":4},{"name":"Vít Ondruch","email":"vondruch@redhat.com","login":"voxik","count":3},{"name":"Jun Aruga","email":"jaruga@redhat.com","login":"junaruga","count":3},{"name":"Akira Matsuda","email":"ronnie@dio.jp","login":"amatsuda","count":3},{"name":"Petrik","email":"petrik@deheus.net","login":"p8","count":2},{"name":"Olle Jonsson","email":"olle.jonsson@gmail.com","login":"olleolleolle","count":2},{"name":"Nikita Vasilevsky","email":"nikita.vasilevsky@shopify.com","login":"nvasilevski","count":2},{"name":"Larry Lv","email":"larrylv1990@gmail.com","login":"larrylv","count":2},{"name":"Jose Rafael Coello Alba","email":"rafael.coello@freshly.com","login":"rafacoello","count":2},{"name":"Jamie Lawrence","email":"jamie@ideasasylum.com","login":"ideasasylum","count":2},{"name":"George Claghorn","email":"george@basecamp.com","login":"georgeclaghorn","count":2},{"name":"Eugene Kenny","email":"elkenny@gmail.com","login":"eugeneius","count":2},{"name":"Elia Schito","email":"elia@schito.me","login":"elia","count":2},{"name":"Earlopain","email":"14981592+Earlopain","login":"Earlopain","count":2},{"name":"Bradley Buda","email":"bradleybuda@gmail.com","login":"bradleybuda","count":2},{"name":"Alex Watt","email":"alex@alexcwatt.com","login":"alexcwatt","count":2},{"name":"Aaron Patterson","email":"tenderlove@ruby-lang.org","login":"tenderlove","count":2},{"name":"Thomas Drake-Brockman","email":"thom@sfedb.com","login":"thomasfedb","count":2},{"name":"Adrianna Chang","email":"adrianna.chang@shopify.com","login":"adrianna-chang-shopify","count":1},{"name":"Alex","email":"alex@tanda.co","login":"ghiculescu","count":1},{"name":"Andrey Sobolev","email":"catandscript@gmail.com","login":"duffuniverse","count":1},{"name":"Ben Miller","email":"ben.miller@cohortsolutions.com","login":null,"count":1},{"name":"Joel Ambass","email":"joel@electricfeel.com","login":null,"count":1},{"name":"Ray Zane","email":"rzane@bodnargroup.com","login":null,"count":1},{"name":"Lucas Mazza","email":"lucastmazza@gmail.com","login":"lucasmazza","count":1},{"name":"Mourad De Clerck","email":"mourad@risen.be","login":"risen","count":1},{"name":"Rainer Borene","email":"rainerborene@gmail.com","login":"rainerborene","count":1},{"name":"Ryuta Kamizono","email":"kamipo@gmail.com","login":"kamipo","count":1},{"name":"Santiago Pastorino","email":"santiago@wyeworks.com","login":"spastorino","count":1},{"name":"Sebastian Sogamoso","email":"sebasoga@gmail.com","login":"sogamoso","count":1},{"name":"Steven Harman","email":"steven@harmanly.com","login":"stevenharman","count":1},{"name":"Tekin Suleyman","email":"tekin@tekin.co.uk","login":"tekin","count":1},{"name":"Tyler Willingham","email":"171991+tylerwillingham","login":"tylerwillingham","count":1},{"name":"Yasuharu Ozaki","email":"yasuharu.ozaki@gmail.com","login":"yasuoza","count":1},{"name":"heka1024","email":"heka1024@gmail.com","login":"heka1024","count":1},{"name":"lijunwei","email":"ljw532344863@sina.com","login":"liijunwei","count":1},{"name":"m-nakamura145","email":"masato.nakamura145@gmail.com","login":"m-nakamura145","count":1},{"name":"maclover7","email":"me@jonathanmoss.me","login":"maclover7","count":1},{"name":"ojab","email":"ojab@ojab.ru","login":"ojab","count":1},{"name":"ooooooo_q","email":"ooooooo-q","login":"ooooooo-q","count":1},{"name":"toshimaru","email":"me@toshimaru.net","login":"toshimaru","count":1},{"name":"wendi","email":"ifyouseewendy@gmail.com","login":"ifyouseewendy","count":1},{"name":"bcrouse","email":"bcrouse@weblinc.com","login":null,"count":1},{"name":"Andy Atkinson","email":"andyatkinson@gmail.com","login":"andyatkinson","count":1},{"name":"Antonis Berkakis","email":"aberkakis@gmail.com","login":"berkos","count":1},{"name":"Assain","email":"assainjaleel20@gmail.com","login":"assain","count":1},{"name":"Atul Bhosale","email":"atul1bhosale@gmail.com","login":"Atul9","count":1},{"name":"Chetan Sarva","email":"chetan@pixelcop.net","login":"chetan","count":1},{"name":"Damien Roche","email":"damienrch@gmail.com","login":"damien-roche","count":1},{"name":"Damon Aw","email":"damon.aw@gusto.com","login":"daemonsy","count":1},{"name":"Eric Boehs","email":"ericboehs@gmail.com","login":"ericboehs","count":1},{"name":"Faraz Yashar","email":"faraz.yashar@gmail.com","login":"fny","count":1},{"name":"George Claghorn","email":"gclaghorn@wistia.com","login":"georgeclaghorn-wistia","count":1},{"name":"Grachev Mikhail","email":"work@mgrachev.com","login":"mgrachev","count":1},{"name":"Herbert Ilhan Tanujaya","email":"7744han@gmail.com","login":"donjar","count":1},{"name":"Igor Zubkov","email":"igor.zubkov@gmail.com","login":"biow0lf","count":1},{"name":"Ismael Abreu","email":"ismaelga","login":"ismaelga","count":1},{"name":"Jason Kriss","email":"jasonkriss@gmail.com","login":"jasonkriss","count":1},{"name":"Jean Boussier","email":"jean.boussier@gmail.com","login":"byroot","count":1},{"name":"Kir Shatrov","email":"shatrov@me.com","login":"kirs","count":1}],"past_year_committers":[{"name":"Rafael Mendonça França","email":"rafael@rubyonrails.org","login":"rafaelfranca","count":7},{"name":"Vít Ondruch","email":"vondruch@redhat.com","login":"voxik","count":3},{"name":"Tyler Willingham","email":"171991+tylerwillingham","login":"tylerwillingham","count":1},{"name":"Steven Harman","email":"steven@harmanly.com","login":"stevenharman","count":1},{"name":"Earlopain","email":"14981592+Earlopain","login":"Earlopain","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-19T00:00:13.908Z","repositories_count":6214529,"commits_count":900194549,"contributors_count":34915568,"owners_count":1143537,"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":"rails/globalid","html_url":"https://github.com/rails/globalid","last_synced_at":"2026-04-13T21:21:26.534Z","status":"error","issues_count":43,"pull_requests_count":114,"avg_time_to_close_issue":16282813.588235294,"avg_time_to_close_pull_request":6291030.533333333,"issues_closed_count":34,"pull_requests_closed_count":90,"pull_request_authors_count":61,"issue_authors_count":42,"avg_comments_per_issue":3.6511627906976742,"avg_comments_per_pull_request":1.6842105263157896,"merged_pull_requests_count":71,"bot_issues_count":0,"bot_pull_requests_count":14,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":2175758.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":5,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":2.5,"past_year_avg_comments_per_pull_request":0.8571428571428571,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"created_at":"2023-05-12T11:28:17.589Z","updated_at":"2026-04-13T21:21:26.534Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rails%2Fglobalid/issues","issue_labels_count":{"help wanted":2,"enhancement":1,"bug":1},"pull_request_labels_count":{"dependencies":14},"issue_author_associations_count":{"NONE":37,"CONTRIBUTOR":5,"MEMBER":1},"pull_request_author_associations_count":{"CONTRIBUTOR":59,"NONE":35,"MEMBER":20},"issue_authors":{"antulik":2,"ravicious":1,"nhorton":1,"giangbimin":1,"junaruga":1,"scottbarrow":1,"isikyus":1,"erikbelusic":1,"tsrivishnu":1,"sbhatore95":1,"fny":1,"rafaelfranca":1,"edimossilva":1,"intrip":1,"romikoops":1,"bensheldon":1,"amerritt14":1,"halostatue":1,"bdragon":1,"reichertm":1,"nruth":1,"seizmo":1,"utkarsh2102":1,"secretmike":1,"stevecrozz":1,"rafacoello":1,"avokhmin":1,"fschwahn":1,"DaanVanVugt":1,"thomasfedb":1,"tekin":1,"aergonaut":1,"alex-tan":1,"JuanitoFatas":1,"alee-ccu":1,"tetherit":1,"philipgiuliani":1,"pyromaniac":1,"ream88":1,"tylerwillingham":1,"voxik":1,"Drowze":1},"pull_request_authors":{"dependabot[bot]":14,"y-yagi":9,"olleolleolle":5,"tylerwillingham":5,"Earlopain":4,"elia":4,"nvasilevski":3,"voxik":3,"alexcwatt":3,"junaruga":3,"georgeclaghorn":3,"m-nakamura145":2,"berkos":2,"duffuniverse":2,"kaspth":2,"vipulnsward":2,"rafaelfranca":2,"ideasasylum":2,"eugeneius":2,"mgrachev":1,"ooooooo-q":1,"bemurphy":1,"shettytejas":1,"Atul9":1,"bencrouse":1,"efatsi":1,"lucasmazza":1,"paulRbr":1,"p8":1,"formigarafa":1,"amerritt14":1,"assain":1,"xijo":1,"jonatas":1,"shetty-tejas":1,"daemonsy":1,"bradleybuda":1,"rainerborene":1,"donjar":1,"Jcambass":1,"heka1024":1,"risen":1,"Drowze":1,"fattymiller":1,"rzane":1,"biow0lf":1,"rafacoello":1,"ghiculescu":1,"thomasfedb":1,"toshimaru":1,"kamipo":1,"ojab":1,"maclover7":1,"casperisfine":1,"jhoffner":1,"amatsuda":1,"tekin":1,"liijunwei":1,"stevenharman":1,"fny":1,"zzak":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-15T00:00:09.535Z","repositories_count":14275607,"issues_count":34612295,"pull_requests_count":113262059,"authors_count":11235370,"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":2},"past_year_pull_request_author_associations_count":{"NONE":6,"CONTRIBUTOR":1},"past_year_issue_authors":{"Drowze":1,"isikyus":1},"past_year_pull_request_authors":{"tylerwillingham":3,"Drowze":1,"paulRbr":1,"voxik":1,"xijo":1},"maintainers":[{"login":"y-yagi","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/y-yagi"},{"login":"rafaelfranca","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rafaelfranca"},{"login":"eugeneius","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/eugeneius"},{"login":"vipulnsward","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vipulnsward"},{"login":"amatsuda","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/amatsuda"},{"login":"zzak","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zzak"},{"login":"ghiculescu","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ghiculescu"},{"login":"p8","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/p8"},{"login":"kamipo","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kamipo"}],"active_maintainers":[]},"events":{"total":{"ReleaseEvent":1,"PullRequestEvent":13,"ForkEvent":10,"IssuesEvent":11,"WatchEvent":46,"IssueCommentEvent":17,"PushEvent":11,"PullRequestReviewCommentEvent":5,"PullRequestReviewEvent":6,"CreateEvent":1},"last_year":{"ReleaseEvent":1,"PullRequestEvent":6,"ForkEvent":1,"IssuesEvent":8,"WatchEvent":17,"IssueCommentEvent":10,"PushEvent":11,"PullRequestReviewCommentEvent":5,"PullRequestReviewEvent":6,"CreateEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-07-12T05:18:30.787Z","updated_at":"2022-07-12T05:18:30.787Z","repository_link":"https://github.com/rails/globalid/blob/main/Gemfile","dependencies":[{"id":153173288,"package_name":"activemodel","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":153173289,"package_name":"railties","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile.lock","sha":null,"kind":"lockfile","created_at":"2022-07-12T05:18:30.980Z","updated_at":"2022-07-12T05:18:30.980Z","repository_link":"https://github.com/rails/globalid/blob/main/Gemfile.lock","dependencies":[{"id":153177139,"package_name":"globalid","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":153177140,"package_name":"actionpack","ecosystem":"rubygems","requirements":"6.1.4.1","direct":false,"kind":"runtime","optional":false},{"id":153177141,"package_name":"actionview","ecosystem":"rubygems","requirements":"6.1.4.1","direct":false,"kind":"runtime","optional":false},{"id":153177142,"package_name":"activemodel","ecosystem":"rubygems","requirements":"6.1.4.1","direct":false,"kind":"runtime","optional":false},{"id":153177143,"package_name":"activesupport","ecosystem":"rubygems","requirements":"6.1.4.1","direct":false,"kind":"runtime","optional":false},{"id":153177144,"package_name":"builder","ecosystem":"rubygems","requirements":"3.2.4","direct":false,"kind":"runtime","optional":false},{"id":153177145,"package_name":"concurrent-ruby","ecosystem":"rubygems","requirements":"1.1.9","direct":false,"kind":"runtime","optional":false},{"id":153177146,"package_name":"crass","ecosystem":"rubygems","requirements":"1.0.6","direct":false,"kind":"runtime","optional":false},{"id":153177147,"package_name":"erubi","ecosystem":"rubygems","requirements":"1.10.0","direct":false,"kind":"runtime","optional":false},{"id":153177148,"package_name":"i18n","ecosystem":"rubygems","requirements":"1.8.11","direct":false,"kind":"runtime","optional":false},{"id":153177149,"package_name":"loofah","ecosystem":"rubygems","requirements":"2.18.0","direct":false,"kind":"runtime","optional":false},{"id":153177150,"package_name":"method_source","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":153177151,"package_name":"mini_portile2","ecosystem":"rubygems","requirements":"2.6.1","direct":false,"kind":"runtime","optional":false},{"id":153177152,"package_name":"minitest","ecosystem":"rubygems","requirements":"5.14.4","direct":false,"kind":"runtime","optional":false},{"id":153177153,"package_name":"nokogiri","ecosystem":"rubygems","requirements":"1.12.5","direct":false,"kind":"runtime","optional":false},{"id":153177154,"package_name":"racc","ecosystem":"rubygems","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":153177155,"package_name":"rack","ecosystem":"rubygems","requirements":"2.2.3.1","direct":false,"kind":"runtime","optional":false},{"id":153177156,"package_name":"rack-test","ecosystem":"rubygems","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":153177157,"package_name":"rails-dom-testing","ecosystem":"rubygems","requirements":"2.0.3","direct":false,"kind":"runtime","optional":false},{"id":153177158,"package_name":"rails-html-sanitizer","ecosystem":"rubygems","requirements":"1.4.3","direct":false,"kind":"runtime","optional":false},{"id":153177159,"package_name":"railties","ecosystem":"rubygems","requirements":"6.1.4.1","direct":false,"kind":"runtime","optional":false},{"id":153177160,"package_name":"rake","ecosystem":"rubygems","requirements":"13.0.6","direct":false,"kind":"runtime","optional":false},{"id":153177161,"package_name":"thor","ecosystem":"rubygems","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":153177162,"package_name":"tzinfo","ecosystem":"rubygems","requirements":"2.0.4","direct":false,"kind":"runtime","optional":false},{"id":153177163,"package_name":"zeitwerk","ecosystem":"rubygems","requirements":"2.5.1","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"globalid.gemspec","sha":null,"kind":"manifest","created_at":"2022-07-12T05:18:31.136Z","updated_at":"2022-07-12T05:18:31.136Z","repository_link":"https://github.com/rails/globalid/blob/main/globalid.gemspec","dependencies":[{"id":153178090,"package_name":"activesupport","ecosystem":"rubygems","requirements":"\u003e= 5.0","direct":true,"kind":"runtime","optional":false},{"id":153178091,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-13T20:33:06.746Z","updated_at":"2023-01-13T20:33:06.746Z","repository_link":"https://github.com/rails/globalid/blob/main/.github/workflows/ci.yml","dependencies":[{"id":6891384387,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":6891384388,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"docker","filepath":".devcontainer/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-01-13T20:33:06.761Z","updated_at":"2023-01-13T20:33:06.761Z","repository_link":"https://github.com/rails/globalid/blob/main/.devcontainer/Dockerfile","dependencies":[{"id":6891384389,"package_name":"mcr.microsoft.com/vscode/devcontainers/ruby","ecosystem":"docker","requirements":"0-${VARIANT}","direct":true,"kind":"build","optional":false}]}],"score":33.184956224631364,"created_at":"2024-12-15T21:38:08.158Z","updated_at":"2026-04-30T04:03:18.801Z","avatar_url":"https://github.com/rails.png","language":"Ruby","monthly_downloads":0,"readme":"# Global ID - Reference models by URI\n\nA Global ID is an app wide URI that uniquely identifies a model instance:\n\n  gid://YourApp/Some::Model/id\n\nThis is helpful when you need a single identifier to reference different\nclasses of objects.\n\nOne example is job scheduling. We need to reference a model object rather than\nserialize the object itself. We can pass a Global ID that can be used to locate\nthe model when it's time to perform the job. The job scheduler doesn't need to know\nthe details of model naming and IDs, just that it has a global identifier that\nreferences a model.\n\nAnother example is a drop-down list of options, consisting of both Users and Groups.\nNormally we'd need to come up with our own ad hoc scheme to reference them. With Global\nIDs, we have a universal identifier that works for objects of both classes.\n\n\n## Usage\n\nMix `GlobalID::Identification` into any model with a `#find(id)` class method.\nSupport is automatically included in Active Record.\n\n```ruby\nperson_gid = Person.find(1).to_global_id\n# =\u003e #\u003cGlobalID ...\n\nperson_gid.uri\n# =\u003e #\u003cURI ...\n\nperson_gid.to_s\n# =\u003e \"gid://app/Person/1\"\n\nGlobalID::Locator.locate person_gid\n# =\u003e #\u003cPerson:0x007fae94bf6298 @id=\"1\"\u003e\n```\n\n### Signed Global IDs\n\nFor added security GlobalIDs can also be signed to ensure that the data hasn't been tampered with.\n\n```ruby\nperson_sgid = Person.find(1).to_signed_global_id\n# =\u003e #\u003cSignedGlobalID:0x007fea1944b410\u003e\n\nperson_sgid = Person.find(1).to_sgid\n# =\u003e #\u003cSignedGlobalID:0x007fea1944b410\u003e\n\nperson_sgid.to_s\n# =\u003e \"BAhJIh5naWQ6Ly9pZGluYWlkaS9Vc2VyLzM5NTk5BjoGRVQ=--81d7358dd5ee2ca33189bb404592df5e8d11420e\"\n\nGlobalID::Locator.locate_signed person_sgid\n# =\u003e #\u003cPerson:0x007fae94bf6298 @id=\"1\"\u003e\n```\n\n**Expiration**\n\nSigned Global IDs can expire sometime in the future. This is useful if there's a resource\npeople shouldn't have indefinite access to, like a share link.\n\n```ruby\nexpiring_sgid = Document.find(5).to_sgid(expires_in: 2.hours, for: 'sharing')\n# =\u003e #\u003cSignedGlobalID:0x008fde45df8937 ...\u003e\n\n# Within 2 hours...\nGlobalID::Locator.locate_signed(expiring_sgid.to_s, for: 'sharing')\n# =\u003e #\u003cDocument:0x007fae94bf6298 @id=\"5\"\u003e\n\n# More than 2 hours later...\nGlobalID::Locator.locate_signed(expiring_sgid.to_s, for: 'sharing')\n# =\u003e nil\n```\n\n**In Rails, an auto-expiry of 1 month is set by default.** You can alter that\ndefault in an initializer with:\n\n```ruby\n# config/initializers/global_id.rb\nRails.application.config.global_id.expires_in = 3.months\n```\n\nYou can assign a default SGID lifetime like so:\n\n```ruby\nSignedGlobalID.expires_in = 1.month\n```\n\nThis way, any generated SGID will use that relative expiry.\n\nIt's worth noting that _expiring SGIDs are not idempotent_ because they encode the current timestamp; repeated calls to `to_sgid` will produce different results. For example, in Rails\n\n```ruby\nDocument.find(5).to_sgid.to_s == Document.find(5).to_sgid.to_s\n# =\u003e false\n```\n\nYou need to explicitly pass `expires_in: nil` to generate a permanent SGID that will not expire,\n\n```ruby\n# Passing a false value to either expiry option turns off expiration entirely.\nnever_expiring_sgid = Document.find(5).to_sgid(expires_in: nil)\n# =\u003e #\u003cSignedGlobalID:0x008fde45df8937 ...\u003e\n\n# Any time later...\nGlobalID::Locator.locate_signed never_expiring_sgid\n# =\u003e #\u003cDocument:0x007fae94bf6298 @id=\"5\"\u003e\n```\n\nIt's also possible to pass a specific expiry time\n\n```ruby\nexplicit_expiring_sgid = SecretAgentMessage.find(5).to_sgid(expires_at: Time.now.advance(hours: 1))\n# =\u003e #\u003cSignedGlobalID:0x008fde45df8937 ...\u003e\n\n# 1 hour later...\nGlobalID::Locator.locate_signed explicit_expiring_sgid.to_s\n# =\u003e nil\n```\nNote that an explicit `:expires_at` takes precedence over a relative `:expires_in`.\n\n**Purpose**\n\nYou can even bump the security up some more by explaining what purpose a Signed Global ID is for.\nIn this way evildoers can't reuse a sign-up form's SGID on the login page. For example.\n\n```ruby\nsignup_person_sgid = Person.find(1).to_sgid(for: 'signup_form')\n# =\u003e #\u003cSignedGlobalID:0x007fea1984b520\n\nGlobalID::Locator.locate_signed(signup_person_sgid.to_s, for: 'signup_form')\n# =\u003e #\u003cPerson:0x007fae94bf6298 @id=\"1\"\u003e\n```\n\n### Locating many Global IDs\n\nWhen needing to locate many Global IDs use `GlobalID::Locator.locate_many` or `GlobalID::Locator.locate_many_signed` for Signed Global IDs to allow loading\nGlobal IDs more efficiently.\n\nFor instance, the default locator passes every `model_id` per `model_name` thus\nusing `model_name.where(id: model_ids)` versus `GlobalID::Locator.locate`'s `model_name.find(id)`.\n\nIn the case of looking up Global IDs from a database, it's only necessary to query\nonce per `model_name` as shown here:\n\n```ruby\ngids = users.concat(people).sort_by(\u0026:id).map(\u0026:to_global_id)\n# =\u003e [#\u003cGlobalID:0x00007ffd6a8411a0 @uri=#\u003cURI::GID gid://app/User/1\u003e\u003e,\n#\u003cGlobalID:0x00007ffd675d32b8 @uri=#\u003cURI::GID gid://app/Student/1\u003e\u003e,\n#\u003cGlobalID:0x00007ffd6a840b10 @uri=#\u003cURI::GID gid://app/User/2\u003e\u003e,\n#\u003cGlobalID:0x00007ffd675d2c28 @uri=#\u003cURI::GID gid://app/Student/2\u003e\u003e,\n#\u003cGlobalID:0x00007ffd6a840480 @uri=#\u003cURI::GID gid://app/User/3\u003e\u003e,\n#\u003cGlobalID:0x00007ffd675d2598 @uri=#\u003cURI::GID gid://app/Student/3\u003e\u003e]\n\nGlobalID::Locator.locate_many gids\n# SELECT \"users\".* FROM \"users\" WHERE \"users\".\"id\" IN ($1, $2, $3)  [[\"id\", 1], [\"id\", 2], [\"id\", 3]]\n# SELECT \"students\".* FROM \"students\" WHERE \"students\".\"id\" IN ($1, $2, $3)  [[\"id\", 1], [\"id\", 2], [\"id\", 3]]\n# =\u003e [#\u003cUser id: 1\u003e, #\u003cStudent id: 1\u003e, #\u003cUser id: 2\u003e, #\u003cStudent id: 2\u003e, #\u003cUser id: 3\u003e, #\u003cStudent id: 3\u003e]\n```\n\nNote the order is maintained in the returned results.\n\n### Options\n\nEither `GlobalID::Locator.locate` or `GlobalID::Locator.locate_many` supports a hash of options as second parameter. The supported options are:\n\n* `:includes` - A Symbol, Array, Hash or combination of them.\n  The same structure you would pass into an `includes` method of Active Record.\n  See [Active Record eager loading associations](https://guides.rubyonrails.org/active_record_querying.html#eager-loading-associations).\n  If present, `locate` or `locate_many` will eager load all the relationships specified here.\n  Note: It only works if all the GIDs Models have those relationships.\n* `:only` - A class, module, or Array of classes and/or modules that are\n  allowed to be located.  Passing one or more classes limits instances of returned\n  classes to those classes or their subclasses.  Passing one or more modules in limits\n  instances of returned classes to those including that module.  If no classes or\n  modules match, `nil` is returned.\n* `:ignore_missing` (Only for `locate_many`) - By default, `locate_many` will call `#find` on the model to locate the\n  ids extracted from the GIDs. In Active Record (and other data stores following the same pattern),\n  `#find` will raise an exception if a named ID can't be found. When you set this option to `true`,\n  we will use `#where(id: ids)` instead, which does not raise on missing records.\n\n### Custom App Locator\n\nA custom locator can be set for an app by calling `GlobalID::Locator.use` and providing an app locator to use for that app.\nA custom app locator is useful when different apps collaborate and reference each others' Global IDs.\nWhen finding a Global ID's model, the locator to use is based on the app name provided in the Global ID url.\n\nA custom locator can either be a block or a class.\n\nUsing a block:\n\n```ruby\nGlobalID::Locator.use :foo do |gid, options|\n  FooRemote.const_get(gid.model_name).find(gid.model_id)\nend\n```\n\nUsing a class:\n\n```ruby\nGlobalID::Locator.use :bar, BarLocator.new\nclass BarLocator\n  def locate(gid, options = {})\n    @search_client.search name: gid.model_name, id: gid.model_id\n  end\nend\n```\n\nAfter defining locators as above, URIs like `gid://foo/Person/1` and `gid://bar/Person/1` will now use the foo block locator and `BarLocator` respectively.\nOther apps will still keep using the default locator.\n\n### Custom Default Locator\n\nA custom default locator can be set for an app by calling `GlobalID::Locator.default_locator=` and providing a default locator to use for that app.\n\n```ruby\nclass MyCustomLocator \u003c UnscopedLocator\n  def locate(gid, options = {})\n    ActiveRecord::Base.connected_to(role: :reading) do\n      super(gid, options)\n    end\n  end\n  \n  def locate_many(gids, options = {})\n    ActiveRecord::Base.connected_to(role: :reading) do\n      super(gids, options)\n    end\n  end\nend\n\nGlobalID::Locator.default_locator = MyCustomLocator.new\n```\n\n## Contributing to GlobalID\n\nGlobalID is work of many contributors. You're encouraged to submit pull requests, propose\nfeatures and discuss issues.\n\nSee [CONTRIBUTING](CONTRIBUTING.md).\n\n## License\nGlobalID is released under the [MIT License](http://www.opensource.org/licenses/MIT).\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["activerecord","activejob","mvc","rubygems","rack","rspec","feature-flag","background-jobs","crash-reporting","sidekiq"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/486","html_url":"https://ruby.ecosyste.ms/projects/486"}