{"id":123402,"url":"https://github.com/rspec/rspec-mocks","last_synced_at":"2026-05-14T20:30:41.870Z","repository":{"id":602761,"uuid":"238983","full_name":"rspec/rspec-mocks","owner":"rspec","description":"RSpec's 'test double' framework, with support for stubbing and mocking","archived":true,"fork":false,"pushed_at":"2024-11-30T10:37:10.000Z","size":7511,"stargazers_count":1153,"open_issues_count":0,"forks_count":354,"subscribers_count":32,"default_branch":"main","last_synced_at":"2025-10-30T21:03:25.940Z","etag":null,"topics":["rspec","ruby"],"latest_commit_sha":null,"homepage":"https://rspec.info","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/rspec.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["JonRowe","benoittgt"],"open_collective":"rspec"}},"created_at":"2009-06-29T15:56:06.000Z","updated_at":"2025-10-27T11:17:34.000Z","dependencies_parsed_at":"2024-02-04T11:41:00.200Z","dependency_job_id":"71dd080e-ce3b-405b-a254-dacb775d73cc","html_url":"https://github.com/rspec/rspec-mocks","commit_stats":{"total_commits":2218,"total_committers":190,"mean_commits":"11.673684210526316","dds":0.7042380522993688,"last_synced_commit":"3caa9ac841e146d618421f870077c0ad684e6cad"},"previous_names":[],"tags_count":145,"template":false,"template_full_name":null,"purl":"pkg:github/rspec/rspec-mocks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec","download_url":"https://codeload.github.com/rspec/rspec-mocks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/sbom","scorecard":{"id":787569,"data":{"date":"2025-08-11","repo":{"name":"github.com/rspec/rspec-mocks","commit":"3caa9ac841e146d618421f870077c0ad684e6cad"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.5,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yml:15","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/14 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:81","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:82","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:83","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:84","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:85","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:157: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:158: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction 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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md: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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-23T06:29:25.565Z","repository_id":602761,"created_at":"2025-08-23T06:29:25.565Z","updated_at":"2025-08-23T06:29:25.565Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281915778,"owners_count":26583378,"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-31T02:00:07.401Z","response_time":57,"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":"rspec","name":"RSpec","uuid":"22388","kind":"organization","description":"","email":null,"website":"http://rspec.info","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/22388?v=4","repositories_count":18,"last_synced_at":"2024-03-25T19:34:00.441Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rspec","funding_links":[],"total_stars":12597,"followers":89,"following":0,"created_at":"2022-11-02T16:17:28.010Z","updated_at":"2024-03-25T19:34:05.806Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec/repositories"},"packages":[{"id":8614751,"name":"github.com/rspec/rspec-mocks","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/rspec/rspec-mocks","keywords_array":[],"namespace":null,"versions_count":86,"first_release_published_at":"2009-06-29T16:11:40.000Z","latest_release_published_at":"2024-10-02T13:19:21.000Z","latest_release_number":"v3.13.2+incompatible","last_synced_at":"2025-11-21T13:02:32.418Z","created_at":"2023-12-02T02:14:57.121Z","updated_at":"2025-11-21T13:02:32.418Z","registry_url":"https://pkg.go.dev/github.com/rspec/rspec-mocks","install_command":"go get github.com/rspec/rspec-mocks","documentation_url":"https://pkg.go.dev/github.com/rspec/rspec-mocks#section-documentation","metadata":{},"repo_metadata":{"id":602761,"uuid":"238983","full_name":"rspec/rspec-mocks","owner":"rspec","description":"RSpec's 'test double' framework, with support for stubbing and mocking","archived":true,"fork":false,"pushed_at":"2024-11-30T10:37:10.000Z","size":7511,"stargazers_count":1152,"open_issues_count":0,"forks_count":354,"subscribers_count":33,"default_branch":"main","last_synced_at":"2025-10-23T15:51:37.544Z","etag":null,"topics":["rspec","ruby"],"latest_commit_sha":null,"homepage":"https://rspec.info","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/rspec.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["JonRowe","benoittgt"],"open_collective":"rspec"}},"created_at":"2009-06-29T15:56:06.000Z","updated_at":"2025-10-05T06:55:10.000Z","dependencies_parsed_at":"2024-02-04T11:41:00.200Z","dependency_job_id":"71dd080e-ce3b-405b-a254-dacb775d73cc","html_url":"https://github.com/rspec/rspec-mocks","commit_stats":{"total_commits":2218,"total_committers":190,"mean_commits":"11.673684210526316","dds":0.7042380522993688,"last_synced_commit":"3caa9ac841e146d618421f870077c0ad684e6cad"},"previous_names":[],"tags_count":145,"template":false,"template_full_name":null,"purl":"pkg:github/rspec/rspec-mocks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec","download_url":"https://codeload.github.com/rspec/rspec-mocks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/sbom","scorecard":{"id":787569,"data":{"date":"2025-08-11","repo":{"name":"github.com/rspec/rspec-mocks","commit":"3caa9ac841e146d618421f870077c0ad684e6cad"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.5,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yml:15","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/14 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:81","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:82","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:83","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:84","Info: Possibly incomplete results: error parsing job operating system: .github/workflows/ci.yml:85","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:157: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:158: update your workflow using https://app.stepsecurity.io/secureworkflow/rspec/rspec-mocks/ci.yml/main?enable=pin","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction 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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md: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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-23T06:29:25.565Z","repository_id":602761,"created_at":"2025-08-23T06:29:25.565Z","updated_at":"2025-08-23T06:29:25.565Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281155551,"owners_count":26452905,"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-26T02:00:06.575Z","response_time":61,"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":"rspec","name":"RSpec","uuid":"22388","kind":"organization","description":"","email":null,"website":"http://rspec.info","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/22388?v=4","repositories_count":18,"last_synced_at":"2024-03-25T19:34:00.441Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rspec","funding_links":[],"total_stars":12597,"followers":89,"following":0,"created_at":"2022-11-02T16:17:28.010Z","updated_at":"2024-03-25T19:34:05.806Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rspec/repositories"},"tags":[]},"repo_metadata_updated_at":"2025-10-30T21:10:05.202Z","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.971776222038277,"forks_count":1.5451726757271902,"docker_downloads_count":null,"average":5.973567938007328},"purl":"pkg:golang/github.com/rspec/rspec-mocks","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/rspec/rspec-mocks","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/rspec/rspec-mocks","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/rspec/rspec-mocks/dependencies","status":null,"funding_links":["https://github.com/sponsors/JonRowe","https://github.com/sponsors/benoittgt","https://opencollective.com/rspec"],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T21:06:09.340Z","issues_count":89,"pull_requests_count":111,"avg_time_to_close_issue":77939141.11392406,"avg_time_to_close_pull_request":20407943.81081081,"issues_closed_count":79,"pull_requests_closed_count":111,"pull_request_authors_count":42,"issue_authors_count":86,"avg_comments_per_issue":6.348314606741573,"avg_comments_per_pull_request":2.6216216216216215,"merged_pull_requests_count":76,"bot_issues_count":0,"bot_pull_requests_count":1,"past_year_issues_count":6,"past_year_pull_requests_count":11,"past_year_avg_time_to_close_issue":1395643.6666666667,"past_year_avg_time_to_close_pull_request":1200050.5454545454,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":11,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":6,"past_year_avg_comments_per_issue":2.8333333333333335,"past_year_avg_comments_per_pull_request":0.36363636363636365,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":9,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/issues","maintainers":[{"login":"JonRowe","count":73,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JonRowe"},{"login":"pirj","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/pirj"},{"login":"myronmarston","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/myronmarston"},{"login":"fables-tales","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/fables-tales"},{"login":"xaviershay","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xaviershay"},{"login":"soulcutter","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/soulcutter"},{"login":"benoittgt","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benoittgt"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frspec%2Frspec-mocks/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frspec%2Frspec-mocks/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frspec%2Frspec-mocks/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frspec%2Frspec-mocks/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frspec%2Frspec-mocks/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":1996408,"maintainers_count":0,"namespaces_count":752358,"keywords_count":111674,"github":"golang","metadata":{"funded_packages_count":52805},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2025-11-22T06:23:32.354Z","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":3373,"full_name":"rspec/rspec-mocks","default_branch":"main","total_commits":2218,"total_committers":190,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":11.673684210526316,"dds":0.7042380522993688,"past_year_total_commits":2,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":2.0,"past_year_dds":0.0,"last_synced_at":"2025-11-19T07:32:39.719Z","last_synced_commit":"3caa9ac841e146d618421f870077c0ad684e6cad","created_at":"2023-03-07T09:17:27.459Z","updated_at":"2025-11-19T07:24:23.703Z","committers":[{"name":"Myron Marston","email":"myron.marston@gmail.com","login":"myronmarston","count":656},{"name":"Jon Rowe","email":"hello@jonrowe.co.uk","login":"JonRowe","count":468},{"name":"David Chelimsky","email":"dchelimsky@gmail.com","login":"dchelimsky","count":407},{"name":"Sam Phippen","email":"samphippen@googlemail.com","login":null,"count":114},{"name":"Xavier Shay","email":"xavier@rhnh.net","login":"xaviershay","count":60},{"name":"Andy Lindeman","email":"alindeman@gmail.com","login":"alindeman","count":57},{"name":"Justin Ko","email":"jko170@gmail.com","login":"justinko","count":27},{"name":"Benoit Tigeot","email":"benoit@hopsandfork.com","login":"benoittgt","count":19},{"name":"Phil Pirozhkov","email":"hello@fili.pp.ru","login":"pirj","count":18},{"name":"Chad Humphries","email":"chad@spicycode.com","login":"spicycode","count":18},{"name":"Sidu Ponnappa","email":"ckponnappa@gmail.com","login":"kaiwren","count":17},{"name":"Joe Ferris","email":"jferris@thoughtbot.com","login":"jferris","count":15},{"name":"Aaron Kromer","email":"aaron.kromer@gmail.com","login":"cupakromer","count":11},{"name":"Guilherme Carvalho","email":"guilherme@guava.com.br","login":null,"count":10},{"name":"Yuji Nakayama","email":"nkymyj@gmail.com","login":"yujinakayama","count":10},{"name":"Michi Huber","email":"michi.huber@gmail.com","login":null,"count":10},{"name":"Yusuke Endoh","email":"mame@ruby-lang.org","login":"mame","count":9},{"name":"Bradley Schaefer","email":"bradley.schaefer@gmail.com","login":"soulcutter","count":6},{"name":"Mauricio Linhares","email":"mauricio.linhares@gmail.com","login":"mauricio","count":6},{"name":"Tjalling van der Wal","email":"tjalling@booqable.com","login":"tjallingvanderwal","count":6},{"name":"Kyle Smith","email":"kyle.smith@salsify.com","login":"askreet","count":6},{"name":"Olle Jonsson","email":"olle.jonsson@gmail.com","login":"olleolleolle","count":5},{"name":"Bryan Powell","email":"bryan@metabahn.com","login":"bryanp","count":5},{"name":"Alex Dowad","email":"alexinbeijing@gmail.com","login":"alexdowad","count":5},{"name":"Paul Annesley","email":"paul@annesley.cc","login":"pda","count":5},{"name":"Tim Wade","email":"tim@majority.co","login":null,"count":5},{"name":"preethiramdev","email":"preethiramdev@yahoo.com","login":"preethiramdev","count":5},{"name":"Josep M. Bach","email":"josep.m.bach@gmail.com","login":null,"count":5},{"name":"Siva Gollapalli","email":"siva@joshsoftware.com","login":null,"count":4},{"name":"Zhdanov","email":"evdev34@gmail.com","login":"zhisme","count":4},{"name":"Tim Cowlishaw","email":"tim@timcowlishaw.co.uk","login":"timcowlishaw","count":4},{"name":"Pete Higgins","email":"pete@peterhiggins.org","login":"phiggins","count":4},{"name":"Benoit Daloze","email":"eregontp@gmail.com","login":"eregon","count":4},{"name":"Eric Mueller","email":"nevinera@gmail.com","login":"nevinera","count":4},{"name":"Matijs van Zuijlen","email":"matijs@matijs.net","login":"mvz","count":4},{"name":"Adarsh Pandit","email":"adarsh@thoughtbot.com","login":null,"count":3},{"name":"Alex Egan","email":"alexander.egan@customink.com","login":null,"count":3},{"name":"Fabien Schurter","email":"fabien.schurter@gmail.com","login":null,"count":3},{"name":"Attila Domokos","email":"adomokos@gmail.com","login":"adomokos","count":3},{"name":"Cezary Baginski","email":"cezary@chronomantic.net","login":"e2","count":3},{"name":"Jess Hottenstein","email":"jess@splitwise.com","login":"jhottenstein","count":3},{"name":"John Ceh","email":"jceh@revspringinc.com","login":"johnceh","count":3},{"name":"Keegan Roth","email":"keegan.roth@lookout.com","login":"keegangroth","count":3},{"name":"Marc-Andre Lafortune","email":"github@marc-andre.ca","login":"marcandre","count":3},{"name":"Pat Allan","email":"pat@freelancing-gods.com","login":"pat","count":3},{"name":"Peter Goldstein","email":"peter.m.goldstein@gmail.com","login":"petergoldstein","count":3},{"name":"Oren Dobzinski","email":"oren@dobzinski.com","login":"orend","count":3},{"name":"Jean Boussier","email":"jean.boussier@gmail.com","login":"byroot","count":2},{"name":"Joe Rafaniello","email":"jrafanie@redhat.com","login":"jrafanie","count":2},{"name":"Maxim Krizhanovsky","email":"darhazer@gmail.com","login":"Darhazer","count":2},{"name":"Patrick Linnane","email":"patrick@linnane.io","login":"p-linnane","count":2},{"name":"Stuart Hicks","email":"stuarthicks","login":"stuarthicks","count":2},{"name":"Vinicius Horewicz","email":"vinicius@horewi.cz","login":"wicz","count":2},{"name":"aakash","email":"aakashd@gmail.com","login":"aakashd","count":2},{"name":"coreyhaines","email":"coreyhaines@gmail.com","login":"coreyhaines","count":2},{"name":"sanemat","email":"o.gata.ken@gmail.com","login":"sanemat","count":2},{"name":"Federico Ravasio","email":"ravasio.federico@gmail.com","login":"razielgn","count":2},{"name":"Carlos Palhares","email":"chjunior@gmail.com","login":"xjunior","count":2},{"name":"Bryce McDonnell","email":"bryce@bridgetownint.com","login":"brycemcd","count":2},{"name":"Ben Moss","email":"ben@mossity.com","login":"benmoss","count":2},{"name":"Ben Langfeld","email":"ben@langfeld.me","login":"benlangfeld","count":2},{"name":"Andrii Malyshko","email":"pleasesendmeaspam@gmail.com","login":"nashbridges","count":2},{"name":"Mik_Die","email":"MikDiet@gmail.com","login":"mikdiet","count":2},{"name":"Alex DeLaPena","email":"ajdlp12@gmail.com","login":"ajdlp","count":2},{"name":"Alessandro Berardi","email":"berardialessandro@gmail.com","login":"alxberardi","count":2},{"name":"Thomas Holmes","email":"thomas@devminded.com","login":null,"count":2},{"name":"Neha Kumari","email":"neha@c42.in","login":null,"count":2},{"name":"Liz Rush","email":"lizmrush@squareup.com","login":null,"count":2},{"name":"Jonathan del Strother","email":"jon.delStrother@audioboo.fm","login":null,"count":2},{"name":"Adam Steel","email":"adam.steel@stitchfix.com","login":null,"count":2},{"name":"ydah","email":"13041216+ydah","login":"ydah","count":2},{"name":"Jim Deville","email":"james.deville@gmail.com","login":"jredville","count":2},{"name":"Isaac Cambron","email":"icambron@alum.mit.edu","login":"icambron","count":2},{"name":"Arthur Nogueira Neves","email":"arthurnn@gmail.com","login":"arthurnn","count":1},{"name":"Cory Foy","email":"github@cornetdesign.com","login":"CoryFoy","count":1},{"name":"Alireza Bashiri","email":"azbshiri@gmail.com","login":null,"count":1},{"name":"Corey Ehmke and Michael Niessner","email":"pair+Bantik+niessner@niessner.us","login":null,"count":1},{"name":"Cezar Halmagean","email":"cezar@halmagean.ro","login":null,"count":1},{"name":"Daniel Orner","email":"daniel.orner@wishabi.com","login":null,"count":1},{"name":"David Chelimsky","email":"dchelimsky@drw.com","login":null,"count":1},{"name":"David Chelimsky, Chad Humphries and Corey Haines","email":"dchelimsky+pair@gmail.com","login":null,"count":1},{"name":"David Genord II","email":"david@xspond.com","login":null,"count":1},{"name":"David Rodríguez","email":"deivid.rodriguez@gmail.com","login":null,"count":1},{"name":"David S. Kang","email":"kangster@localhost","login":null,"count":1},{"name":"Igor Kapkov","email":"igasgeek@me.com","login":null,"count":1},{"name":"4r2r","email":"arthrrr@gmail.com","login":null,"count":1},{"name":"Jeff Weiss","email":"jeff.weiss@puppetlabs.com","login":null,"count":1},{"name":"Joe Ferris and Joël Quenneville","email":"support+jferris+jquenneville@thoughtbot.com","login":null,"count":1},{"name":"Melanie Gilman","email":"melanie@thoughtbot.com","login":null,"count":1},{"name":"Nathan Long","email":"nathan.long@tma1.com","login":null,"count":1},{"name":"Ryan Jones","email":"ryan@system88.com","login":null,"count":1},{"name":"Tom Schady","email":"tom.schady@raise.com","login":null,"count":1},{"name":"Tony Novak","email":"tony@amitree.com","login":null,"count":1},{"name":"Yorick Peterse","email":"yorickpeterse@gmail.com","login":null,"count":1},{"name":"maeve","email":"maeve.revels@g5platform.com","login":null,"count":1},{"name":"takiy33","email":"takiy33@gmail.com","login":null,"count":1},{"name":"Scott Taylor","email":"scott@railsnewbie.com","login":"smtlaissezfaire","count":1},{"name":"Saverio Miroddi","email":"saverio.pub2@gmail.com","login":"64kramsystem","count":1},{"name":"Samuel Giddins","email":"segiddins@segiddins.me","login":"segiddins","count":1},{"name":"Samnang Chhun","email":"samnang.chhun@gmail.com","login":"samnang","count":1},{"name":"Ryan Fitzgerald","email":"ryan.fitzgerald@brigade.com","login":"rf-","count":1},{"name":"Ryan Beckman","email":"beckman.ryan@gmail.com","login":"zaldabus","count":1},{"name":"Robert Goliasz","email":"r.goliasz@digital-science.com","login":"goblin","count":1},{"name":"René Föhring","email":"rf@bamaru.de","login":"rrrene","count":1},{"name":"Piotr Jakubowski","email":"piotrj@gmail.com","login":"piotrj","count":1},{"name":"Pavel Shpak","email":"shpakvel@gmail.com","login":"ShPakvel","count":1},{"name":"Pavel Pravosud","email":"pavel@pravosud.com","login":"rwz","count":1},{"name":"Patrik Wenger","email":"paddor@gmail.com","login":"paddor","count":1},{"name":"Patrick Ellis","email":"patrick@soundcloud.com","login":"pje","count":1},{"name":"Patrick Boatner","email":"patrickboatner@gmail.com","login":"locofocos","count":1},{"name":"Orien Madgwick","email":"_@orien.io","login":"orien","count":1},{"name":"Oliver Martell Núñez","email":"oliver.martell@gmail.com","login":"omartell","count":1},{"name":"Nobuyoshi Nakada","email":"nobu@ruby-lang.org","login":"nobu","count":1},{"name":"Nicolas Braem","email":"nicolas.braem@gmail.com","login":"nbraem","count":1},{"name":"Nicholas Rutherford","email":"nick.rutherford@gmail.com","login":"nruth","count":1},{"name":"Nicholas Henry","email":"nicholas.henry@gmail.com","login":"nicholasjhenry","count":1},{"name":"Michael Gee","email":"michaelpgee@gmail.com","login":"mikegee","count":1},{"name":"Martin Emde","email":"martin.emde@gmail.com","login":"martinemde","count":1},{"name":"Martijn Versluis","email":"martijnversluis","login":"martijnversluis","count":1},{"name":"Thomas Holmes","email":"thomas@holmes.io","login":"thomas-holmes","count":1},{"name":"vfrride","email":"jeff@jpcutler.net","login":"vfrride","count":1},{"name":"proby","email":"proby","login":"proby","count":1},{"name":"pjambet","email":"pierre.jambet@gmail.com","login":"pjambet","count":1},{"name":"mrageh","email":"adam@mrageh.com","login":"mrageh","count":1},{"name":"maxlinc","email":"mlincoln@thoughtworks.com","login":"maxlinc","count":1},{"name":"georgeu2000","email":"george@boost-media.com","login":"georgeu2000","count":1},{"name":"expeehaa","email":"expeehaa@outlook.com","login":"expeehaa","count":1},{"name":"daneget","email":"daniel.eguzkiza@gmail.com","login":"daneget","count":1},{"name":"dB","email":"dblock@dblock.org","login":"dblock","count":1},{"name":"Zhong Zheng","email":"Zhong-z","login":"Zhong-z","count":1},{"name":"Zane Wolfgang Pickett","email":"sirwolfgang","login":"sirwolfgang","count":1},{"name":"Uģis Ozols","email":"ugis.ozolss@gmail.com","login":"ugisozols","count":1},{"name":"Tom Ward","email":"tom@popdog.net","login":"tomafro","count":1},{"name":"Tom Stuart","email":"tom@experthuman.com","login":"tomstuart","count":1},{"name":"Tobias Bühlmann","email":"tobias.buehlmann@gmx.de","login":"tbuehlmann","count":1},{"name":"Tim Wade","email":"hello@timjwade.com","login":"imtayadeway","count":1},{"name":"Tibor Claassen","email":"tc@codebeige.net","login":"codebeige","count":1},{"name":"James Crisp","email":"james@crispdesign.net","login":"jcrisp","count":1},{"name":"Thomas Brand","email":"tom025@me.com","login":"tom025","count":1},{"name":"Steve Ognibene","email":"steve.ognibene@namely.com","login":"nycdotnet","count":1},{"name":"Stephen Best","email":"bestie@gmail.com","login":"bestie","count":1},{"name":"Sergiy Yarinovskiy","email":"serezha.km@gmail.com","login":"syarynovskyi","count":1},{"name":"Marc Ignacio","email":"marcrendlignacio@gmail.com","login":"padi","count":1},{"name":"Damian Nurzynski","email":"dnurzynski@gmail.com","login":"dnurzynski","count":1},{"name":"Craig Little","email":"craiglttl@gmail.com","login":"craiglittle","count":1},{"name":"Craig Buchek","email":"craig@boochtek.com","login":"booch","count":1},{"name":"Nick DeLuca","email":"nick@wescrimmage.com","login":"nddeluca","count":1},{"name":"Ashish Dixit","email":"tundal45@gmail.com","login":"tundal45","count":1},{"name":"Aubrey Rhodes","email":"aubrey.c.rhodes@gmail.com","login":"aubreyrhodes","count":1},{"name":"Bas Vodde","email":"basv@odd-e.com","login":"basvodde","count":1},{"name":"Benjamin Quorning","email":"bquorning","login":"bquorning","count":1},{"name":"Brad Trick","email":"76491823+brtrick","login":"brtrick","count":1},{"name":"Brandon Fish","email":"brandon.j.fish@oracle.com","login":"bjfish","count":1},{"name":"Brian John","email":"brian@brianjohn.com","login":"f1sherman","count":1},{"name":"Bruno Bonamin","email":"bruno@bonamin.org","login":"bbonamin","count":1},{"name":"Bryan Helmkamp","email":"bryan@brynary.com","login":"brynary","count":1},{"name":"Chris Griego","email":"cgriego@gmail.com","login":"cgriego","count":1},{"name":"Aaron Rosenberg","email":"agrberg","login":"agrberg","count":1},{"name":"Alex Tkachev","email":"tkachev.alex@gmail.com","login":"alextk","count":1},{"name":"Alexander Panasyuk","email":"panasmeister@gmail.com","login":"panasyuk","count":1},{"name":"Alyssa Ross","email":"hi@alyssa.is","login":"alyssais","count":1},{"name":"Anderson Dias","email":"andersondaraujo@gmail.com","login":"andersondias","count":1},{"name":"Andrew","email":"andrew@xtrasimplicity.com","login":"xtrasimplicity","count":1},{"name":"Andrew Kozin (aka nepalez)","email":"andrew.kozin@gmail.com","login":"nepalez","count":1},{"name":"Andrew Marshall","email":"andrew@johnandrewmarshall.com","login":"amarshall","count":1},{"name":"Andy Waite","email":"github.aw@andywaite.com","login":"andyw8","count":1},{"name":"Luís Costa","email":"luispcosta","login":"luispcosta","count":1},{"name":"Lachlan Sylvester","email":"lachlan.sylvester@hypothetical.com.au","login":"lsylvester","count":1},{"name":"Kivanio Barbosa","email":"kivanio@gmail.com","login":"kivanio","count":1},{"name":"Kilian Cirera Sant","email":"kilian@paradem.co","login":"kiliancs","count":1},{"name":"Kevin","email":"kcboschert","login":"kcboschert","count":1},{"name":"Kenichi Kamiya","email":"kachick1@gmail.com","login":"kachick","count":1},{"name":"Karthik T","email":"karthikt.holmes+github@gmail.com","login":"ktaragorn","count":1},{"name":"Justin Coyne","email":"justin@curationexperts.com","login":"jcoyne","count":1},{"name":"Juanito Fatas","email":"katehuang0320@gmail.com","login":"JuanitoFatas","count":1},{"name":"Jon Moss","email":"maclover7","login":"maclover7","count":1},{"name":"Jimmy Cuadra","email":"jimmy@jimmycuadra.com","login":"jimmycuadra","count":1},{"name":"Isaac Betesh","email":"iybetesh@gmail.com","login":"betesh","count":1},{"name":"Igor Drozdov","email":"ihardrozdov@gmail.com","login":"igor-drozdov","count":1},{"name":"Hans de Graaff","email":"hans@degraaff.org","login":"graaff","count":1},{"name":"Grant Hollingworth","email":"grant@antiflux.org","login":"granth","count":1},{"name":"Glauco Custódio","email":"glauco.custodio@gmail.com","login":"glaucocustodio","count":1},{"name":"Gioele Barabucci","email":"gioele@svario.it","login":"gioele","count":1},{"name":"Eugene Kenny","email":"eugene@intercom.io","login":"eugeneius","count":1},{"name":"Erik Behrends","email":"erik.behrends@gmail.com","login":"behrends","count":1},{"name":"Dillon Welch","email":"daw0328@gmail.com","login":"dillonwelch","count":1},{"name":"Diego Elio Pettenò","email":"flameeyes@gmail.com","login":"Flameeyes","count":1},{"name":"Dennis Taylor","email":"dennis.taylor@goclio.com","login":"fimmtiu","count":1},{"name":"Daniel Finnie","email":"dan@danfinnie.com","login":"danfinnie","count":1},{"name":"vanstee","email":"vanstee@highgroove.com","login":null,"count":1}],"past_year_committers":[{"name":"Jon Rowe","email":"hello@jonrowe.co.uk","login":"JonRowe","count":2}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-11-22T00:00:11.667Z","repositories_count":6114359,"commits_count":924834066,"contributors_count":36012239,"owners_count":1118531,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"rspec/rspec-mocks","html_url":"https://github.com/rspec/rspec-mocks","last_synced_at":"2025-08-31T21:06:09.340Z","status":"error","issues_count":89,"pull_requests_count":111,"avg_time_to_close_issue":77939141.11392406,"avg_time_to_close_pull_request":20407943.81081081,"issues_closed_count":79,"pull_requests_closed_count":111,"pull_request_authors_count":42,"issue_authors_count":86,"avg_comments_per_issue":6.348314606741573,"avg_comments_per_pull_request":2.6216216216216215,"merged_pull_requests_count":76,"bot_issues_count":0,"bot_pull_requests_count":1,"past_year_issues_count":6,"past_year_pull_requests_count":11,"past_year_avg_time_to_close_issue":1395643.6666666667,"past_year_avg_time_to_close_pull_request":1200050.5454545454,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":11,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":6,"past_year_avg_comments_per_issue":2.8333333333333335,"past_year_avg_comments_per_pull_request":0.36363636363636365,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":9,"created_at":"2023-05-12T16:29:58.734Z","updated_at":"2025-09-02T23:58:49.874Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rspec%2Frspec-mocks/issues","issue_labels_count":{"table":{"needs-reproduction":2,"small":1,"good-first-issue":1,"hacktoberfest":1,"Not a release blocker":1,"Release Blocker":1}},"pull_request_labels_count":{"table":{"small":1}},"issue_author_associations_count":{"table":{"NONE":77,"CONTRIBUTOR":8,"MEMBER":5}},"pull_request_author_associations_count":{"table":{"MEMBER":93,"CONTRIBUTOR":27,"NONE":21}},"issue_authors":{"table":{"marcotc":2,"jasonkarns":2,"myronmarston":2,"TonyCTHsu":1,"JonRowe":1,"graywolf-at-work":1,"64kramsystem":1,"tubaxenor":1,"suzukimilanpaak":1,"sergio-bobillier":1,"Loschcode":1,"andrykonchin":1,"dblock":1,"Resonious":1,"boardfish":1,"fidalgo":1,"chrisface":1,"voxik":1,"alextwoods":1,"brtrick":1,"keidax":1,"afn":1,"eaden-hnry":1,"jhottenstein":1,"palkan":1,"felipero":1,"AntoineBecquet":1,"ingobecker":1,"knewter":1,"skatenerd":1,"evankellogg":1,"dreyks":1,"illegalnumbers":1,"Geesu":1,"amandapouget":1,"drcapulet":1,"scotthain":1,"onlynone":1,"tomczak-mateusz":1,"exoego":1,"raoehtesham03":1,"sirwolfgang":1,"joshuap":1,"AlbertoTejada":1,"mvidner":1,"philnash":1,"VitaliiLazebnyi":1,"p-mongo":1,"raldred":1,"xaviershay":1,"cpetschnig":1,"imtayadeway":1,"postmodern":1,"alexevanczuk":1,"vibro":1,"manueljacob":1,"npearson72":1,"jcoyne":1,"gabehollombe":1,"krainboltgreene":1,"tatzsuzuki":1,"jvenezia":1,"istolpov":1,"nepalez":1,"vemv":1,"envygeeks":1,"aried3r":1,"ioquatix":1,"pedrocarmona":1,"jrochkind":1,"github0013":1,"GCorbel":1,"baweaver":1,"williamhakim10":1,"swrobel":1,"Bastes":1,"wuarmin":1,"dmytro-savochkin":1,"ric2b":1,"agrimm":1,"s101d1":1,"kinkou":1,"honigc":1,"leandro":1,"soulcutter":1,"schinery":1,"eLod":1}},"pull_request_authors":{"table":{"JonRowe":72,"pirj":18,"p-linnane":2,"kaiwren":2,"onlynone":2,"nevinera":2,"Geesu":2,"ydah":2,"jamesdabbs-procore":2,"xjunior":2,"eregon":2,"nobu":2,"GCorbel":2,"tjallingvanderwal":2,"bjfish":1,"keegangroth":1,"godfat":1,"igor-drozdov":1,"benoittgt":1,"myronmarston":1,"adsteel":1,"ikaronen-relex":1,"honigc":1,"ro31337":1,"Takahashi-Riki":1,"fables-tales":1,"nashbridges":1,"martijnversluis":1,"kivanio":1,"C-Miles":1,"nycdotnet":1,"eLod":1,"petergoldstein":1,"lsylvester":1,"mame":1,"casperisfine":1,"olleolleolle":1,"ojab":1,"sirwolfgang":1,"jcoleman":1,"brtrick":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-11-18T00:00:08.608Z","repositories_count":11612951,"issues_count":35495626,"pull_requests_count":115079481,"authors_count":11044660,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{}},"past_year_issue_author_associations_count":{"table":{}},"past_year_pull_request_author_associations_count":{"table":{}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{}},"maintainers":[{"table":{"login":"JonRowe","count":73,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JonRowe"}},{"table":{"login":"pirj","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/pirj"}},{"table":{"login":"myronmarston","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/myronmarston"}},{"table":{"login":"fables-tales","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/fables-tales"}},{"table":{"login":"xaviershay","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xaviershay"}},{"table":{"login":"soulcutter","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/soulcutter"}},{"table":{"login":"benoittgt","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benoittgt"}}],"active_maintainers":[]}},"events":{"total":{"IssuesEvent":28,"WatchEvent":9,"DeleteEvent":6,"IssueCommentEvent":27,"PushEvent":10,"PullRequestEvent":12,"ForkEvent":11,"CreateEvent":1},"last_year":{"IssuesEvent":25,"WatchEvent":5,"DeleteEvent":5,"IssueCommentEvent":27,"PushEvent":2,"PullRequestEvent":10}},"keywords":["rspec","ruby"],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-07-20T06:47:15.983Z","updated_at":"2022-07-20T06:47:15.983Z","repository_link":"https://github.com/rspec/rspec-mocks/blob/main/Gemfile","dependencies":[{"id":297856347,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003c 11.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856348,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003c 12.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856349,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003e 12.3.2","direct":true,"kind":"runtime","optional":false},{"id":297856350,"package_name":"diff-lcs","ecosystem":"rubygems","requirements":"~\u003e 1.4, \u003e= 1.4.3","direct":true,"kind":"runtime","optional":false},{"id":297856351,"package_name":"yard","ecosystem":"rubygems","requirements":"~\u003e 0.9.24","direct":true,"kind":"runtime","optional":false},{"id":297856352,"package_name":"rubocop","ecosystem":"rubygems","requirements":"~\u003e 1.0, \u003c 1.12","direct":true,"kind":"runtime","optional":false},{"id":297856353,"package_name":"ffi","ecosystem":"rubygems","requirements":"\u003c 1.10","direct":true,"kind":"runtime","optional":false},{"id":297856354,"package_name":"ffi","ecosystem":"rubygems","requirements":"\u003c 1.15","direct":true,"kind":"runtime","optional":false},{"id":297856355,"package_name":"ffi","ecosystem":"rubygems","requirements":"\u003c 1.9.19","direct":true,"kind":"runtime","optional":false},{"id":297856356,"package_name":"ffi","ecosystem":"rubygems","requirements":"\u003c 1.11.0","direct":true,"kind":"runtime","optional":false},{"id":297856357,"package_name":"ffi","ecosystem":"rubygems","requirements":"\u003e 1.9.24","direct":true,"kind":"runtime","optional":false},{"id":297856358,"package_name":"childprocess","ecosystem":"rubygems","requirements":"\u003c 1.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856359,"package_name":"contracts","ecosystem":"rubygems","requirements":"~\u003e 0.15.0","direct":true,"kind":"runtime","optional":false},{"id":297856360,"package_name":"minitest","ecosystem":"rubygems","requirements":"\u003c 5.12.0","direct":true,"kind":"runtime","optional":false},{"id":297856361,"package_name":"thor","ecosystem":"rubygems","requirements":"\u003c 1.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856362,"package_name":"thor","ecosystem":"rubygems","requirements":"\u003e 1.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856363,"package_name":"redcarpet","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":297856364,"package_name":"github-markup","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":297856365,"package_name":"simplecov","ecosystem":"rubygems","requirements":"~\u003e 0.8","direct":true,"kind":"development","optional":false},{"id":297856366,"package_name":"json","ecosystem":"rubygems","requirements":"\u003c 2.0.0","direct":true,"kind":"runtime","optional":false},{"id":297856367,"package_name":"json","ecosystem":"rubygems","requirements":"\u003e 2.3.0","direct":true,"kind":"runtime","optional":false},{"id":297856368,"package_name":"cucumber","ecosystem":"rubygems","requirements":"\u003c= 1.3.22","direct":true,"kind":"runtime","optional":false},{"id":297856369,"package_name":"jruby-openssl","ecosystem":"rubygems","requirements":"\u003c 0.10.0","direct":true,"kind":"runtime","optional":false},{"id":297856370,"package_name":"jruby-openssl","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"rspec-mocks.gemspec","sha":null,"kind":"manifest","created_at":"2022-07-20T06:47:16.077Z","updated_at":"2022-07-20T06:47:16.077Z","repository_link":"https://github.com/rspec/rspec-mocks/blob/main/rspec-mocks.gemspec","dependencies":[{"id":297856417,"package_name":"diff-lcs","ecosystem":"rubygems","requirements":"\u003e= 1.2.0, \u003c 2.0","direct":true,"kind":"runtime","optional":false},{"id":297856418,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003e 10.0.0","direct":true,"kind":"development","optional":false},{"id":297856419,"package_name":"cucumber","ecosystem":"rubygems","requirements":"\u003e= 1.3","direct":true,"kind":"development","optional":false},{"id":297856420,"package_name":"aruba","ecosystem":"rubygems","requirements":"~\u003e 0.14.10","direct":true,"kind":"development","optional":false},{"id":297856421,"package_name":"minitest","ecosystem":"rubygems","requirements":"~\u003e 5.2","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-13T10:31:13.368Z","updated_at":"2023-01-13T10:31:13.368Z","repository_link":"https://github.com/rspec/rspec-mocks/blob/main/.github/workflows/ci.yml","dependencies":[{"id":6875550283,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":6875550284,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]}],"score":null,"created_at":"2024-06-13T11:02:26.993Z","updated_at":"2026-05-14T20:30:41.870Z","avatar_url":"https://github.com/rspec.png","language":"Ruby","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/123402","html_url":"https://summary.ecosyste.ms/projects/123402"}