{"id":641,"name":null,"description":":card_index: Parse and compare semantic version numbers and ranges","url":"https://github.com/librariesio/semantic_range","last_synced_at":"2026-05-02T02:30:23.042Z","repository":{"id":49509807,"uuid":"46054608","full_name":"librariesio/semantic_range","owner":"librariesio","description":":card_index: Parse and compare semantic version numbers and ranges","archived":false,"fork":false,"pushed_at":"2026-02-24T23:51:32.000Z","size":156,"stargazers_count":24,"open_issues_count":4,"forks_count":13,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-03-24T01:34:47.158Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://libraries.io/github/librariesio/semantic_range","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/librariesio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":".github/SUPPORT.md","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":"2015-11-12T13:29:08.000Z","updated_at":"2026-02-24T23:13:33.000Z","dependencies_parsed_at":"2024-06-18T16:55:13.216Z","dependency_job_id":"246c0bba-5e45-4ecb-b94f-939842c70ad8","html_url":"https://github.com/librariesio/semantic_range","commit_stats":{"total_commits":127,"total_committers":15,"mean_commits":8.466666666666667,"dds":"0.36220472440944884","last_synced_commit":"79e575a489f4f087b0567dfcbf3b07b3f831e124"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/librariesio/semantic_range","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/sbom","scorecard":{"id":588210,"data":{"date":"2025-08-11","repo":{"name":"github.com/librariesio/semantic_range","commit":"79e575a489f4f087b0567dfcbf3b07b3f831e124"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.7,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","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":"Code-Review","score":5,"reason":"Found 10/18 approved changesets -- score normalized to 5","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":"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":-1,"reason":"No tokens found","details":null,"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":"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":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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 24 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T21:08:00.524Z","repository_id":49509807,"created_at":"2025-08-20T21:08:00.525Z","updated_at":"2025-08-20T21:08:00.525Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31040842,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-27T08:32:29.083Z","status":"ssl_error","status_checked_at":"2026-03-27T08:32:27.811Z","response_time":164,"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":{"login":"librariesio","name":"Libraries.io","uuid":"11243589","kind":"organization","description":"Discover new open source libraries, modules and frameworks and keep track of ones you depend upon.","email":"support@libraries.io","website":"https://libraries.io","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11243589?v=4","repositories_count":74,"last_synced_at":"2024-04-12T10:03:32.025Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/librariesio","funding_links":[],"total_stars":1914,"followers":78,"following":0,"created_at":"2022-11-02T16:32:47.480Z","updated_at":"2024-04-12T10:04:00.419Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio/repositories"},"packages":[{"id":298432,"name":"semantic_range","ecosystem":"rubygems","description":"node-semver rewritten in ruby, for comparison and inclusion of semantic versions and ranges","homepage":"https://libraries.io/github/librariesio/semantic_range","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/librariesio/semantic_range","keywords_array":[],"namespace":null,"versions_count":13,"first_release_published_at":"2015-11-13T16:03:10.537Z","latest_release_published_at":"2026-02-24T23:14:07.984Z","latest_release_number":"3.1.1","last_synced_at":"2026-04-29T01:01:04.954Z","created_at":"2022-04-06T10:46:00.921Z","updated_at":"2026-04-29T01:01:04.954Z","registry_url":"https://rubygems.org/gems/semantic_range","install_command":"gem install semantic_range -s https://rubygems.org","documentation_url":"http://www.rubydoc.info/gems/semantic_range/","metadata":{"funding":null},"repo_metadata":{"id":49509807,"uuid":"46054608","full_name":"librariesio/semantic_range","owner":"librariesio","description":":card_index: Parse and compare semantic version numbers and ranges","archived":false,"fork":false,"pushed_at":"2024-02-22T11:49:13.000Z","size":130,"stargazers_count":22,"open_issues_count":3,"forks_count":13,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-08-01T04:21:46.838Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://libraries.io/github/librariesio/semantic_range","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/librariesio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":".github/SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-11-12T13:29:08.000Z","updated_at":"2024-01-17T13:25:03.000Z","dependencies_parsed_at":"2024-06-18T16:55:13.216Z","dependency_job_id":"246c0bba-5e45-4ecb-b94f-939842c70ad8","html_url":"https://github.com/librariesio/semantic_range","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":218999176,"owners_count":16421991,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"librariesio","name":"Libraries.io","uuid":"11243589","kind":"organization","description":"Discover new open source libraries, modules and frameworks and keep track of ones you depend upon.","email":"support@libraries.io","website":"https://libraries.io","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11243589?v=4","repositories_count":74,"last_synced_at":"2024-04-12T10:03:32.025Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/librariesio","funding_links":[],"total_stars":1914,"followers":78,"following":0,"created_at":"2022-11-02T16:32:47.480Z","updated_at":"2024-04-12T10:04:00.419Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio/repositories"},"tags":[{"name":"v2.3.1","sha":"2b94f262e461d994ac21998529a20869ec803da9","kind":"tag","published_at":"2020-12-02T19:23:54.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.3.1","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.3.1/manifests"},{"name":"v2.2.0","sha":"462f442ff143b002fdac1a8bf2505be9b73caba0","kind":"commit","published_at":"2019-03-11T20:30:53.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.2.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"7bcc854e8b8c97b9b6463db6eac433158eba1412","kind":"commit","published_at":"2018-09-24T19:10:13.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.1.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"7b4e009102a3b6fcaf0cdd45639d73bfd727cdca","kind":"tag","published_at":"2016-12-20T15:47:59.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.0.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.0.0/manifests"},{"name":"v1.0.0","sha":"f378fd8e8e781873fba3de497167fb0b7def9dc0","kind":"tag","published_at":"2015-11-20T22:48:36.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v1.0.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v1.0.0/manifests"},{"name":"v0.2.0","sha":"1f61bbd661d38125efb038a186b1f00aec0504b8","kind":"tag","published_at":"2015-11-17T11:10:40.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.2.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.2.0/manifests"},{"name":"v0.1.1","sha":"9d548563869ca9d96fd9035dc626f2270e03b658","kind":"tag","published_at":"2015-11-13T17:01:02.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.1.1","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"51b7649573f4da9435dcada099d930d6a127910d","kind":"tag","published_at":"2015-11-13T16:02:56.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.1.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-09-30T04:54:54.501Z","dependent_packages_count":7,"downloads":61123479,"downloads_period":"total","dependent_repos_count":33210,"rankings":{"downloads":0.48728270202160995,"dependent_repos_count":0.18510052296473054,"dependent_packages_count":2.4843612359362632,"stargazers_count":11.11718201179737,"forks_count":7.1587069724913865,"docker_downloads_count":1.111718201179737,"average":3.757391941065183},"purl":"pkg:gem/semantic_range","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/semantic_range","docker_dependents_count":130,"docker_downloads_count":17562781,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/semantic_range","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/semantic_range/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2024-09-30T02:31:47.235Z","issues_count":42,"pull_requests_count":37,"avg_time_to_close_issue":772153.9756097561,"avg_time_to_close_pull_request":44606.05714285714,"issues_closed_count":41,"pull_requests_closed_count":35,"pull_request_authors_count":13,"issue_authors_count":3,"avg_comments_per_issue":0.6666666666666666,"avg_comments_per_pull_request":1.2972972972972974,"merged_pull_requests_count":34,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":7616.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/issues","maintainers":[{"login":"katzj","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/katzj"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/semantic_range/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/semantic_range/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/semantic_range/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/semantic_range/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/semantic_range/codemeta","maintainers":[{"uuid":"120938","login":"katzj","name":null,"email":null,"url":null,"packages_count":13,"html_url":"https://rubygems.org/profiles/katzj","role":null,"created_at":"2022-11-09T09:50:27.773Z","updated_at":"2022-11-09T09:50:27.773Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/katzj/packages"}],"registry":{"name":"rubygems.org","url":"https://rubygems.org","ecosystem":"rubygems","default":true,"packages_count":205536,"maintainers_count":68468,"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":12322136,"name":"semantic_range","ecosystem":"rubygems","description":"node-semver rewritten in ruby, for comparison and inclusion of semantic versions and ranges","homepage":"https://libraries.io/github/librariesio/semantic_range","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/librariesio/semantic_range","keywords_array":[],"namespace":null,"versions_count":13,"first_release_published_at":"2015-11-13T16:03:10.537Z","latest_release_published_at":"2026-02-24T23:14:07.984Z","latest_release_number":"3.1.1","last_synced_at":"2026-04-29T04:02:01.088Z","created_at":"2025-10-07T05:50:48.596Z","updated_at":"2026-04-29T04:04:08.655Z","registry_url":"https://gem.coop/gems/semantic_range","install_command":"gem install semantic_range -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/semantic_range/","metadata":{"funding":null},"repo_metadata":{"id":49509807,"uuid":"46054608","full_name":"librariesio/semantic_range","owner":"librariesio","description":":card_index: Parse and compare semantic version numbers and ranges","archived":false,"fork":false,"pushed_at":"2026-02-24T23:51:32.000Z","size":156,"stargazers_count":24,"open_issues_count":4,"forks_count":13,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-03-24T01:34:47.158Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://libraries.io/github/librariesio/semantic_range","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/librariesio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":".github/SUPPORT.md","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":"2015-11-12T13:29:08.000Z","updated_at":"2026-02-24T23:13:33.000Z","dependencies_parsed_at":"2024-06-18T16:55:13.216Z","dependency_job_id":"246c0bba-5e45-4ecb-b94f-939842c70ad8","html_url":"https://github.com/librariesio/semantic_range","commit_stats":{"total_commits":127,"total_committers":15,"mean_commits":8.466666666666667,"dds":"0.36220472440944884","last_synced_commit":"79e575a489f4f087b0567dfcbf3b07b3f831e124"},"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/librariesio/semantic_range","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/sbom","scorecard":{"id":588210,"data":{"date":"2025-08-11","repo":{"name":"github.com/librariesio/semantic_range","commit":"79e575a489f4f087b0567dfcbf3b07b3f831e124"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.7,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","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":"Code-Review","score":5,"reason":"Found 10/18 approved changesets -- score normalized to 5","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":"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":-1,"reason":"No tokens found","details":null,"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":"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":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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 24 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T21:08:00.524Z","repository_id":49509807,"created_at":"2025-08-20T21:08:00.525Z","updated_at":"2025-08-20T21:08:00.525Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31040842,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-27T08:32:29.083Z","status":"ssl_error","status_checked_at":"2026-03-27T08:32:27.811Z","response_time":164,"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":"librariesio","name":"Libraries.io","uuid":"11243589","kind":"organization","description":"Discover new open source libraries, modules and frameworks and keep track of ones you depend upon.","email":"support@libraries.io","website":"https://libraries.io","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11243589?v=4","repositories_count":74,"last_synced_at":"2024-04-12T10:03:32.025Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/librariesio","funding_links":[],"total_stars":1914,"followers":78,"following":0,"created_at":"2022-11-02T16:32:47.480Z","updated_at":"2024-04-12T10:04:00.419Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/librariesio/repositories"},"tags":[{"name":"v3.1.0","sha":"a27f73b860244e2192fdc57fa54c6e777ec90a81","kind":"tag","published_at":"2024-10-31T21:11:42.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v3.1.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v3.1.0/manifests"},{"name":"v2.3.1","sha":"2b94f262e461d994ac21998529a20869ec803da9","kind":"tag","published_at":"2020-12-02T19:23:54.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.3.1","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.3.1/manifests"},{"name":"v2.2.0","sha":"462f442ff143b002fdac1a8bf2505be9b73caba0","kind":"commit","published_at":"2019-03-11T20:30:53.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.2.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"7bcc854e8b8c97b9b6463db6eac433158eba1412","kind":"commit","published_at":"2018-09-24T19:10:13.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.1.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"7b4e009102a3b6fcaf0cdd45639d73bfd727cdca","kind":"tag","published_at":"2016-12-20T15:47:59.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v2.0.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v2.0.0/manifests"},{"name":"v1.0.0","sha":"f378fd8e8e781873fba3de497167fb0b7def9dc0","kind":"tag","published_at":"2015-11-20T22:48:36.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v1.0.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v1.0.0/manifests"},{"name":"v0.2.0","sha":"1f61bbd661d38125efb038a186b1f00aec0504b8","kind":"tag","published_at":"2015-11-17T11:10:40.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.2.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.2.0/manifests"},{"name":"v0.1.1","sha":"9d548563869ca9d96fd9035dc626f2270e03b658","kind":"tag","published_at":"2015-11-13T17:01:02.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.1.1","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"51b7649573f4da9435dcada099d930d6a127910d","kind":"tag","published_at":"2015-11-13T16:02:56.000Z","download_url":"https://codeload.github.com/librariesio/semantic_range/tar.gz/v0.1.0","html_url":"https://github.com/librariesio/semantic_range/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/librariesio/semantic_range@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-04-29T04:04:08.655Z","dependent_packages_count":0,"downloads":61127010,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":0.46387154326494207,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":0.1546238477549807},"purl":"pkg:gem/semantic_range?repository_url=https://gem.coop","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/semantic_range","docker_dependents_count":130,"docker_downloads_count":17562781,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/semantic_range","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/semantic_range/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-19T01:26:40.873Z","issues_count":42,"pull_requests_count":42,"avg_time_to_close_issue":772153.9756097561,"avg_time_to_close_pull_request":48094.205128205125,"issues_closed_count":41,"pull_requests_closed_count":39,"pull_request_authors_count":15,"issue_authors_count":3,"avg_comments_per_issue":0.6666666666666666,"avg_comments_per_pull_request":1.1428571428571428,"merged_pull_requests_count":37,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/issues","maintainers":[{"login":"tradiff","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tradiff"},{"login":"katzj","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/katzj"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/semantic_range/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/semantic_range/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/semantic_range/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/semantic_range/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/semantic_range/codemeta","maintainers":[{"uuid":"65159","login":"tiegz","name":null,"email":null,"url":null,"packages_count":15,"html_url":"https://gem.coop/profiles/tiegz","role":null,"created_at":"2025-10-09T21:26:22.908Z","updated_at":"2025-10-09T21:26:22.908Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/tiegz/packages"},{"uuid":"120938","login":"katzj","name":null,"email":null,"url":null,"packages_count":13,"html_url":"https://gem.coop/profiles/katzj","role":null,"created_at":"2025-10-09T21:26:22.780Z","updated_at":"2025-10-09T21:26:22.780Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/katzj/packages"},{"uuid":"180073","login":"tradiff","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://gem.coop/profiles/tradiff","role":null,"created_at":"2025-10-09T21:26:23.087Z","updated_at":"2025-10-09T21:26:23.087Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/tradiff/packages"}],"registry":{"name":"gem.coop","url":"https://gem.coop","ecosystem":"rubygems","default":false,"packages_count":190389,"maintainers_count":67476,"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"}}],"commits":{"id":1741558,"full_name":"librariesio/semantic_range","default_branch":"main","total_commits":128,"total_committers":13,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":9.846153846153847,"dds":0.3671875,"past_year_total_commits":1,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":1.0,"past_year_dds":0.0,"last_synced_at":"2026-04-29T04:05:01.973Z","last_synced_commit":"adb9532e0c4684bf482c4d62e8435d3a9fa78b45","created_at":"2024-09-13T16:49:32.943Z","updated_at":"2026-04-29T04:05:01.926Z","committers":[{"name":"Andrew Nesbitt","email":"andrewnez@gmail.com","login":"andrew","count":81},{"name":"Kris Handley","email":"handley.kris@gmail.com","login":"krishandley","count":21},{"name":"Jeremy Katz","email":"jeremy@tidelift.com","login":"katzj","count":5},{"name":"Tyrel Souza","email":"tyrelsouza@gmail.com","login":"tyrelsouza","count":4},{"name":"Travis Collins","email":"travistx@gmail.com","login":"tradiff","count":3},{"name":"Roman Sokhan","email":"pustomytnyk@gmail.com","login":"pustomytnyk","count":3},{"name":"Keith Barrette","email":"etterrab@gmail.com","login":"kbarrette","count":3},{"name":"Tieg Zaharia","email":"tieg.zaharia@gmail.com","login":"tiegz","count":2},{"name":"Olle Jonsson","email":"olle.jonsson@auctionet.com","login":"olleolleolle","count":2},{"name":"jsonperl","email":"jason.a.pearl@gmail.com","login":"jsonperl","count":1},{"name":"Zeke Sikelianos","email":"zeke@sikelianos.com","login":"zeke","count":1},{"name":"Rodrigo Fernandes","email":"rtfrodrigo@gmail.com","login":"rtfpessoa","count":1},{"name":"Geremia Taglialatela","email":"tagliala.dev@gmail.com","login":"tagliala","count":1}],"past_year_committers":[{"name":"Tieg Zaharia","email":"tieg.zaharia@sonarsource.com","login":"tiegz","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-29T00:00:10.453Z","repositories_count":6222883,"commits_count":899833732,"contributors_count":34897260,"owners_count":1147458,"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":"librariesio/semantic_range","html_url":"https://github.com/librariesio/semantic_range","last_synced_at":"2026-04-19T01:26:40.873Z","status":"error","issues_count":42,"pull_requests_count":42,"avg_time_to_close_issue":772153.9756097561,"avg_time_to_close_pull_request":48094.205128205125,"issues_closed_count":41,"pull_requests_closed_count":39,"pull_request_authors_count":15,"issue_authors_count":3,"avg_comments_per_issue":0.6666666666666666,"avg_comments_per_pull_request":1.1428571428571428,"merged_pull_requests_count":37,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-12T17:02:35.490Z","updated_at":"2026-04-19T01:26:40.874Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/librariesio%2Fsemantic_range/issues","issue_labels_count":{"help wanted":37,"enhancement":34,"dependency":1,"bug":1},"pull_request_labels_count":{},"issue_author_associations_count":{"CONTRIBUTOR":41,"NONE":1},"pull_request_author_associations_count":{"CONTRIBUTOR":35,"NONE":4,"MEMBER":3},"issue_authors":{"andrew":38,"rtfpessoa":3,"rochefort":1},"pull_request_authors":{"krishandley":20,"tyrelsouza":2,"kbarrette":2,"lhtest429":2,"tradiff":2,"pustomytnyk":2,"andrew":2,"olleolleolle":2,"tagliala":2,"katzj":1,"rtfpessoa":1,"zeke":1,"jsonperl":1,"casperisfine":1,"tiegz":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-01T00:00:07.984Z","repositories_count":14452485,"issues_count":34155617,"pull_requests_count":112014493,"authors_count":11249994,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"tradiff","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tradiff"},{"login":"katzj","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/katzj"}],"active_maintainers":[]},"events":{"total":{"MemberEvent":1,"PullRequestEvent":6,"ForkEvent":2,"WatchEvent":2,"PushEvent":2,"PullRequestReviewCommentEvent":3,"PullRequestReviewEvent":7,"CreateEvent":1},"last_year":{"PullRequestEvent":2}},"keywords":[],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-08-31T19:52:56.544Z","updated_at":"2022-08-31T19:52:56.544Z","repository_link":"https://github.com/librariesio/semantic_range/blob/main/Gemfile","dependencies":[{"id":3435375967,"package_name":"guard-rspec","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"semantic_range.gemspec","sha":null,"kind":"manifest","created_at":"2022-08-31T19:52:56.658Z","updated_at":"2022-08-31T19:52:56.658Z","repository_link":"https://github.com/librariesio/semantic_range/blob/main/semantic_range.gemspec","dependencies":[{"id":3435375971,"package_name":"rspec","ecosystem":"rubygems","requirements":"~\u003e 3.4","direct":true,"kind":"development","optional":false}]}],"score":24.77151531248297,"created_at":"2024-12-15T21:38:08.605Z","updated_at":"2026-05-02T02:30:23.043Z","avatar_url":"https://github.com/librariesio.png","language":"Ruby","monthly_downloads":0,"readme":"# SemanticRange\n\n[node-semver](https://github.com/npm/node-semver) written in Ruby for comparison and inclusion of semantic versions and ranges.\n\n**NOTE: current `master` and releases `\u003e= 3` use keyword arguments instead of positional arguments to pass options.\nIf you used `SemanticRange.compare(a, b, true)` in SemanticRange 2, in SemanticRange 3 use `SemanticRange.compare(a, b, loose: true)`**\n\n\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'semantic_range'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install semantic_range\n\n## Usage\n\n```ruby\nSemanticRange.valid?('1.2.3') # true\nSemanticRange.valid?('a.b.c') # false\nSemanticRange.valid('1.2.3') # '1.2.3'\nSemanticRange.valid('a.b.c') # nil\nSemanticRange.clean('  =v1.2.3   ') # '1.2.3'\nSemanticRange.filter(['0.9.0', '1.3.0', '1.5.0', '2.0.5'], '1.3.0 || \u003c1.0.0 || \u003e2.0.0') # ['0.9.0', '1.3.0', '2.0.5']\nSemanticRange.satisfies?('1.2.3', '1.x || \u003e=2.5.0 || 5.0.0 - 7.2.3') # true\nSemanticRange.gt?('1.2.3', '9.8.7') # false\nSemanticRange.lt?('1.2.3', '9.8.7') # true\n```\n\n### Options\nAll functions support optional keyword arguments that modify default behavior. The options supported are:\n* `loose` Be more forgiving about not-quite-valid semver strings. Any resulting output will always be 100% strict compliant. `false` by default.\n\nSome functions support `platform` option:\n* `platform` Changes behavior for `'Rubygems'` and `'Packagist'`. `nil` by default. See https://github.com/librariesio/semantic_range/issues/59\n\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/librariesio/semantic_range. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](https://www.contributor-covenant.org/) code of conduct.\n\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["activerecord","activejob","mvc","rubygems","background-jobs","jobs","sidekiq","rack","feature-flag"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/641","html_url":"https://ruby.ecosyste.ms/projects/641"}