{"id":306,"name":null,"description":"acts_as_paranoid for Rails 5, 6 and 7","url":"https://github.com/rubysherpas/paranoia","last_synced_at":"2026-05-24T06:00:50.813Z","repository":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2917,"open_issues_count":103,"forks_count":528,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-05-20T05:38:21.568Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-05-13T16:15:15.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33423284,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T22:14:44.296Z","status":"online","status_checked_at":"2026-05-24T02:00:06.296Z","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":"rubysherpas","name":"Ruby Sherpas","uuid":"9400277","kind":"organization","description":"","email":"contact@rubysherpas.com","website":"http://rubysherpas.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/9400277?v=4","repositories_count":7,"last_synced_at":"2024-03-25T20:47:17.818Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rubysherpas","funding_links":[],"total_stars":4445,"followers":3,"following":0,"created_at":"2022-11-02T16:36:22.009Z","updated_at":"2024-03-25T20:47:20.220Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas/repositories"},"packages":[{"id":10378512,"name":"github.com/rubysherpas/paranoia","ecosystem":"go","description":null,"homepage":null,"licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":[],"namespace":null,"versions_count":40,"first_release_published_at":"2010-10-07T00:50:45.000Z","latest_release_published_at":"2025-01-19T04:28:28.000Z","latest_release_number":"v3.0.1+incompatible","last_synced_at":"2026-05-21T12:35:00.958Z","created_at":"2024-06-16T05:25:44.103Z","updated_at":"2026-05-21T12:35:00.958Z","registry_url":"https://pkg.go.dev/github.com/rubysherpas/paranoia","install_command":"go get github.com/rubysherpas/paranoia","documentation_url":"https://pkg.go.dev/github.com/rubysherpas/paranoia#section-documentation","metadata":{},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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":"rubysherpas","name":"Ruby Sherpas","uuid":"9400277","kind":"organization","description":"","email":"contact@rubysherpas.com","website":"http://rubysherpas.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/9400277?v=4","repositories_count":7,"last_synced_at":"2024-03-25T20:47:17.818Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rubysherpas","funding_links":[],"total_stars":4445,"followers":3,"following":0,"created_at":"2022-11-02T16:36:22.009Z","updated_at":"2024-03-25T20:47:20.220Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas/repositories"},"tags":[{"name":"v3.0.1","sha":"fe46c57e9a52d3fb03c7e12254693d7e99b95563","kind":"commit","published_at":"2025-01-19T04:28:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"f441c378c3fb4a3c8beb482db376ac14717f81a7","kind":"tag","published_at":"2024-08-13T02:56:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0/manifests"},{"name":"v2.6.4","sha":"c3b432e621a749782043036bb6f39165ac8f0f60","kind":"commit","published_at":"2024-07-20T00:10:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4/manifests"},{"name":"v2.6.3","sha":"72a03f14621fa7f16bb8b56a0648be30cddd1c1e","kind":"commit","published_at":"2023-10-11T19:49:29.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3/manifests"},{"name":"v2.6.2","sha":"33e433a28e55588319fdb50e2e05e72af54ae365","kind":"commit","published_at":"2023-06-05T20:35:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2/manifests"},{"name":"v2.6.1","sha":"09e3a9fb3b3b47c976388c103df05438267dacc6","kind":"commit","published_at":"2022-11-15T23:11:40.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1/manifests"},{"name":"v2.6.0","sha":"c0d1d9a3478bea09feb529d2dc0eb8c9b8d7e805","kind":"commit","published_at":"2022-03-23T06:09:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0/manifests"},{"name":"v2.5.3","sha":"57a978d68b59e61c187845153e119522ad5c8b17","kind":"commit","published_at":"2022-03-23T03:14:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3/manifests"},{"name":"v2.5.2","sha":"742951cb8f99c51dfbb993a7242f002e5b1b2925","kind":"commit","published_at":"2022-02-02T02:15:00.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2/manifests"},{"name":"v2.5.1","sha":"b6b51672fff64172c47fe5669efb773910a41bc4","kind":"commit","published_at":"2022-01-19T07:39:46.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1/manifests"},{"name":"v2.5.0","sha":"06af2601d77bd69031f527f7311ecf99d977ab55","kind":"commit","published_at":"2022-01-12T05:46:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0/manifests"},{"name":"2.4.3","sha":"03d0779327b1604befd6dd36001cd8fcb908bff9","kind":"commit","published_at":"2020-12-16T07:31:01.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.4.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3/manifests"},{"name":"v2.4.2","sha":"0600183a12b1e0c5d74d94000bee08d5fc4a5933","kind":"tag","published_at":"2019-04-26T01:25:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2/manifests"},{"name":"v2.4.1","sha":"35e671680ef233e55ea8f89e9a5db27afa6a2aa2","kind":"tag","published_at":"2018-04-10T18:11:35.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"92505787662e0415f228a3507a885ba771058ff1","kind":"tag","published_at":"2017-11-03T20:58:53.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"c1232a37d33ab81cff6165a945c8149ae5a3ae4a","kind":"tag","published_at":"2017-04-27T22:56:57.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1/manifests"},{"name":"2.3.0","sha":"07c8e8b624287a4395b1ef351dc52f0ab239e082","kind":"commit","published_at":"2017-04-14T19:58:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0/manifests"},{"name":"2.2.1","sha":"ba48f19640d8791b57d9755dfdb41a77576b825c","kind":"commit","published_at":"2017-02-16T18:27:58.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1/manifests"},{"name":"2.2.0","sha":"b29bc4dd33aa614eff920122594cc2f9cf88272a","kind":"commit","published_at":"2016-10-20T20:18:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0/manifests"},{"name":"v2.2.0","sha":"e7a5edb89c0cf34500f1d8d9f000e6c5f3f6e671","kind":"tag","published_at":"2016-10-20T20:01:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0/manifests"},{"name":"2.2.0.pre","sha":"70f6e37b7b32cf4f70c5b852a38597699f476c62","kind":"commit","published_at":"2016-07-12T20:47:41.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre/manifests"},{"name":"v2.1.5","sha":"f180fe6faaffe3f48c58061bab7d14a1fafd16fc","kind":"tag","published_at":"2016-01-07T01:07:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5/manifests"},{"name":"v2.1.4","sha":"5593550b9dfccf527f88d0e6c70ac40c85780056","kind":"tag","published_at":"2015-11-05T01:23:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4/manifests"},{"name":"v2.1.3","sha":"ca50876c9e29d87c555eb2d354ab6378c39a1239","kind":"tag","published_at":"2015-06-17T07:46:19.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3/manifests"},{"name":"v2.1.2","sha":"e1320fb7d6c9ac0adbf1566ffbf0a00774ca5e1e","kind":"tag","published_at":"2015-04-28T02:55:37.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"df42daa3d95f4a387c7656a23d8f878eddb8cea8","kind":"tag","published_at":"2015-03-23T21:59:16.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"18162f63fc4525c82d42ae76f3ecff43cd948132","kind":"tag","published_at":"2015-01-24T00:19:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0/manifests"},{"name":"v2.1.0.pre","sha":"addbcc80b6946f5d0296c0fcc90ce3a96522a96a","kind":"tag","published_at":"2015-01-22T22:34:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre/manifests"},{"name":"v2.0.5","sha":"7866b73df405faf934081cc23b33847618707b81","kind":"tag","published_at":"2015-01-22T22:07:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5/manifests"},{"name":"v1.3.4","sha":"68794fdb9a8f8079c34f83f4fd6b345c7f3c7a00","kind":"tag","published_at":"2015-01-19T21:28:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4/manifests"},{"name":"v2.0.4","sha":"ed704be8c3d2c117a3b5cf8485f31be29b8f648e","kind":"tag","published_at":"2014-12-03T03:57:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"c32a7c6bfc4e804005c8300206612e00f5835502","kind":"tag","published_at":"2014-11-21T05:10:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"74c0e8bf72acce4402da7965852781ad2d74f2f6","kind":"tag","published_at":"2014-01-16T19:57:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2/manifests"},{"name":"v1.3.3","sha":"d6653bb4fb5ace93d69fabf174fd1111816e86b6","kind":"tag","published_at":"2014-01-16T19:54:17.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3/manifests"},{"name":"v2.0.1","sha":"0f2fde6f10a20ff7cac94d2c55a9cf32a4f27013","kind":"tag","published_at":"2013-10-24T05:29:43.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1/manifests"},{"name":"v1.3.2","sha":"ffa40a244502570b02228fc8afed8074e347a843","kind":"tag","published_at":"2013-10-24T05:28:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"6670dce6b307679e4273f58de96fb240528b46c8","kind":"tag","published_at":"2013-07-08T04:26:25.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1/manifests"},{"name":"v2.0.0","sha":"43b9f31e28aa1e19dc8a1a40850bb401799ed4b4","kind":"tag","published_at":"2013-07-08T02:11:36.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0/manifests"},{"name":"v1.3.0","sha":"a2db597548bf42d665d52b6eb7e88b125bc51ecb","kind":"tag","published_at":"2013-07-08T02:09:52.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"cb018cc361e44ed2f0c774749f5e0429f4757a7d","kind":"tag","published_at":"2012-11-22T03:12:39.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"f05f83dcca4cdaeaea72fe14fddb1d542e3fb310","kind":"tag","published_at":"2011-07-11T08:30:10.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0/manifests"},{"name":"v1.0.3","sha":"7e9adb2a6b69bc3d5f9fe987c059c86a5d1edbfd","kind":"tag","published_at":"2011-05-26T07:02:32.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"7439417eb6dd55b48961a8f0915b908262668add","kind":"tag","published_at":"2011-05-24T21:41:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"14d131a142e7684f2b4d29cb12b6ef52e45b5ecd","kind":"tag","published_at":"2011-05-12T11:30:13.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"9879f78f26ef6591de45ebede3518aa45f7df2ca","kind":"tag","published_at":"2011-04-06T02:54:24.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0/manifests"},{"name":"v0.0.1","sha":"a8b5db39dac99203e5f51b29534a039d6bfd14e0","kind":"tag","published_at":"2010-10-07T00:51:02.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v0.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2026-02-24T18:03:39.098Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":6.9445469250160885,"dependent_packages_count":6.5076054129418095,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":6.726076168978949},"purl":"pkg:golang/github.com/rubysherpas/paranoia","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/rubysherpas/paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/rubysherpas/paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/rubysherpas/paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Frubysherpas%2Fparanoia/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2147083,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":13779461,"name":"ruby-paranoia","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T13:22:22.873Z","latest_release_published_at":"2026-02-13T13:22:22.873Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-13T17:37:10.304Z","created_at":"2026-02-13T13:22:22.693Z","updated_at":"2026-03-13T17:37:10.547Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.488Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-paranoia?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"ubuntu-22.04","url":"https://launchpad.net/ubuntu/jammy","ecosystem":"ubuntu","default":false,"packages_count":34289,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"jammy"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-04-27T18:20:36.155Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/namespaces"}},{"id":13669314,"name":"ruby-paranoia","ecosystem":"debian","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T12:36:28.655Z","latest_release_published_at":"2026-02-12T12:36:28.655Z","latest_release_number":"3.0.0-1","last_synced_at":"2026-03-13T21:21:44.280Z","created_at":"2026-02-12T12:36:28.479Z","updated_at":"2026-03-13T21:21:44.519Z","registry_url":"https://tracker.debian.org/pkg/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":"https://packages.debian.org/trixie/ruby-paranoia","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.7.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.523Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/debian/ruby-paranoia?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"debian-13","url":"https://packages.debian.org/trixie","ecosystem":"debian","default":false,"packages_count":38024,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"trixie"},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-04-27T18:20:39.853Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/namespaces"}},{"id":13804956,"name":"ruby-paranoia","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T18:28:26.548Z","latest_release_published_at":"2026-02-13T18:28:26.548Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-14T09:15:43.920Z","created_at":"2026-02-13T18:28:26.311Z","updated_at":"2026-03-14T09:15:44.146Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.487Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-paranoia?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-04-27T18:20:38.051Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":13566906,"name":"ruby-paranoia","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T06:46:09.747Z","latest_release_published_at":"2026-02-11T06:46:09.747Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-12T03:12:35.464Z","created_at":"2026-02-11T06:46:09.495Z","updated_at":"2026-03-12T03:12:35.726Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.488Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:deb/ubuntu/ruby-paranoia?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.04","url":"https://launchpad.net/ubuntu/lunar","ecosystem":"ubuntu","default":false,"packages_count":36116,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-04-27T18:20:38.741Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/namespaces"}},{"id":13761617,"name":"ruby-paranoia","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T09:54:06.423Z","latest_release_published_at":"2026-02-13T09:54:06.423Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-13T12:21:54.353Z","created_at":"2026-02-13T09:54:06.262Z","updated_at":"2026-03-13T12:30:36.269Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.487Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":0.3876473189895153,"forks_count":0.1977261492832427,"docker_downloads_count":null,"average":0.1463433670681895},"purl":"pkg:deb/ubuntu/ruby-paranoia?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-04-27T18:20:37.303Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":13712971,"name":"ruby-paranoia","ecosystem":"debian","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T23:37:15.607Z","latest_release_published_at":"2026-02-12T23:37:15.607Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-13T05:22:35.514Z","created_at":"2026-02-12T23:37:15.420Z","updated_at":"2026-03-13T05:42:56.946Z","registry_url":"https://tracker.debian.org/pkg/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":"https://packages.debian.org/bookworm/ruby-paranoia","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.482Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":0.8349167962227212,"forks_count":0.5873207807911557,"docker_downloads_count":null,"average":0.3555593942534692},"purl":"pkg:deb/debian/ruby-paranoia?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"debian-12","url":"https://packages.debian.org/bookworm","ecosystem":"debian","default":true,"packages_count":34734,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"debian","metadata":{"codename":"bookworm"},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-04-27T18:20:38.992Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/namespaces"}},{"id":269991,"name":"paranoia","ecosystem":"rubygems","description":"    Paranoia is a re-implementation of acts_as_paranoid for Rails 5, 6, and 7,\n    using much, much, much less code. You would use either plugin / gem if you\n    wished that when you called destroy on an Active Record object that it\n    didn't actually destroy it, but just \"hid\" the record. Paranoia does this\n    by setting a deleted_at field to the current time when you destroy a record,\n    and hides it by scoping all queries on your model to only include records\n    which do not have a deleted_at field.\n","homepage":"https://github.com/rubysherpas/paranoia","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":[],"namespace":null,"versions_count":46,"first_release_published_at":"2010-10-07T00:51:22.569Z","latest_release_published_at":"2025-11-07T11:12:28.719Z","latest_release_number":"3.1.0","last_synced_at":"2026-05-23T15:12:31.603Z","created_at":"2022-04-06T06:35:43.767Z","updated_at":"2026-05-23T15:45:13.688Z","registry_url":"https://rubygems.org/gems/paranoia","install_command":"gem install paranoia -s https://rubygems.org","documentation_url":"http://www.rubydoc.info/gems/paranoia/","metadata":{"funding":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2917,"open_issues_count":103,"forks_count":528,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-05-20T05:38:21.568Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-05-13T16:15:15.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33300882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-21T12:23:38.849Z","status":"ssl_error","status_checked_at":"2026-05-21T12:22:11.673Z","response_time":62,"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":"rubysherpas","name":"Ruby Sherpas","uuid":"9400277","kind":"organization","description":"","email":"contact@rubysherpas.com","website":"http://rubysherpas.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/9400277?v=4","repositories_count":7,"last_synced_at":"2024-03-25T20:47:17.818Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rubysherpas","funding_links":[],"total_stars":4445,"followers":3,"following":0,"created_at":"2022-11-02T16:36:22.009Z","updated_at":"2024-03-25T20:47:20.220Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas/repositories"},"tags":[{"name":"v3.0.1","sha":"fe46c57e9a52d3fb03c7e12254693d7e99b95563","kind":"commit","published_at":"2025-01-19T04:28:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"f441c378c3fb4a3c8beb482db376ac14717f81a7","kind":"tag","published_at":"2024-08-13T02:56:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0/manifests"},{"name":"v2.6.4","sha":"c3b432e621a749782043036bb6f39165ac8f0f60","kind":"commit","published_at":"2024-07-20T00:10:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4/manifests"},{"name":"v2.6.3","sha":"72a03f14621fa7f16bb8b56a0648be30cddd1c1e","kind":"commit","published_at":"2023-10-11T19:49:29.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3/manifests"},{"name":"v2.6.2","sha":"33e433a28e55588319fdb50e2e05e72af54ae365","kind":"commit","published_at":"2023-06-05T20:35:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2/manifests"},{"name":"v2.6.1","sha":"09e3a9fb3b3b47c976388c103df05438267dacc6","kind":"commit","published_at":"2022-11-15T23:11:40.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1/manifests"},{"name":"v2.6.0","sha":"c0d1d9a3478bea09feb529d2dc0eb8c9b8d7e805","kind":"commit","published_at":"2022-03-23T06:09:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0/manifests"},{"name":"v2.5.3","sha":"57a978d68b59e61c187845153e119522ad5c8b17","kind":"commit","published_at":"2022-03-23T03:14:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3/manifests"},{"name":"v2.5.2","sha":"742951cb8f99c51dfbb993a7242f002e5b1b2925","kind":"commit","published_at":"2022-02-02T02:15:00.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2/manifests"},{"name":"v2.5.1","sha":"b6b51672fff64172c47fe5669efb773910a41bc4","kind":"commit","published_at":"2022-01-19T07:39:46.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1/manifests"},{"name":"v2.5.0","sha":"06af2601d77bd69031f527f7311ecf99d977ab55","kind":"commit","published_at":"2022-01-12T05:46:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0/manifests"},{"name":"2.4.3","sha":"03d0779327b1604befd6dd36001cd8fcb908bff9","kind":"commit","published_at":"2020-12-16T07:31:01.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.4.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3/manifests"},{"name":"v2.4.2","sha":"0600183a12b1e0c5d74d94000bee08d5fc4a5933","kind":"tag","published_at":"2019-04-26T01:25:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2/manifests"},{"name":"v2.4.1","sha":"35e671680ef233e55ea8f89e9a5db27afa6a2aa2","kind":"tag","published_at":"2018-04-10T18:11:35.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"92505787662e0415f228a3507a885ba771058ff1","kind":"tag","published_at":"2017-11-03T20:58:53.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"c1232a37d33ab81cff6165a945c8149ae5a3ae4a","kind":"tag","published_at":"2017-04-27T22:56:57.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1/manifests"},{"name":"2.3.0","sha":"07c8e8b624287a4395b1ef351dc52f0ab239e082","kind":"commit","published_at":"2017-04-14T19:58:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0/manifests"},{"name":"2.2.1","sha":"ba48f19640d8791b57d9755dfdb41a77576b825c","kind":"commit","published_at":"2017-02-16T18:27:58.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1/manifests"},{"name":"2.2.0","sha":"b29bc4dd33aa614eff920122594cc2f9cf88272a","kind":"commit","published_at":"2016-10-20T20:18:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0/manifests"},{"name":"v2.2.0","sha":"e7a5edb89c0cf34500f1d8d9f000e6c5f3f6e671","kind":"tag","published_at":"2016-10-20T20:01:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0/manifests"},{"name":"2.2.0.pre","sha":"70f6e37b7b32cf4f70c5b852a38597699f476c62","kind":"commit","published_at":"2016-07-12T20:47:41.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre/manifests"},{"name":"v2.1.5","sha":"f180fe6faaffe3f48c58061bab7d14a1fafd16fc","kind":"tag","published_at":"2016-01-07T01:07:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5/manifests"},{"name":"v2.1.4","sha":"5593550b9dfccf527f88d0e6c70ac40c85780056","kind":"tag","published_at":"2015-11-05T01:23:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4/manifests"},{"name":"v2.1.3","sha":"ca50876c9e29d87c555eb2d354ab6378c39a1239","kind":"tag","published_at":"2015-06-17T07:46:19.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3/manifests"},{"name":"v2.1.2","sha":"e1320fb7d6c9ac0adbf1566ffbf0a00774ca5e1e","kind":"tag","published_at":"2015-04-28T02:55:37.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"df42daa3d95f4a387c7656a23d8f878eddb8cea8","kind":"tag","published_at":"2015-03-23T21:59:16.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"18162f63fc4525c82d42ae76f3ecff43cd948132","kind":"tag","published_at":"2015-01-24T00:19:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0/manifests"},{"name":"v2.1.0.pre","sha":"addbcc80b6946f5d0296c0fcc90ce3a96522a96a","kind":"tag","published_at":"2015-01-22T22:34:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre/manifests"},{"name":"v2.0.5","sha":"7866b73df405faf934081cc23b33847618707b81","kind":"tag","published_at":"2015-01-22T22:07:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5/manifests"},{"name":"v1.3.4","sha":"68794fdb9a8f8079c34f83f4fd6b345c7f3c7a00","kind":"tag","published_at":"2015-01-19T21:28:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4/manifests"},{"name":"v2.0.4","sha":"ed704be8c3d2c117a3b5cf8485f31be29b8f648e","kind":"tag","published_at":"2014-12-03T03:57:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"c32a7c6bfc4e804005c8300206612e00f5835502","kind":"tag","published_at":"2014-11-21T05:10:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"74c0e8bf72acce4402da7965852781ad2d74f2f6","kind":"tag","published_at":"2014-01-16T19:57:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2/manifests"},{"name":"v1.3.3","sha":"d6653bb4fb5ace93d69fabf174fd1111816e86b6","kind":"tag","published_at":"2014-01-16T19:54:17.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3/manifests"},{"name":"v2.0.1","sha":"0f2fde6f10a20ff7cac94d2c55a9cf32a4f27013","kind":"tag","published_at":"2013-10-24T05:29:43.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1/manifests"},{"name":"v1.3.2","sha":"ffa40a244502570b02228fc8afed8074e347a843","kind":"tag","published_at":"2013-10-24T05:28:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"6670dce6b307679e4273f58de96fb240528b46c8","kind":"tag","published_at":"2013-07-08T04:26:25.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1/manifests"},{"name":"v2.0.0","sha":"43b9f31e28aa1e19dc8a1a40850bb401799ed4b4","kind":"tag","published_at":"2013-07-08T02:11:36.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0/manifests"},{"name":"v1.3.0","sha":"a2db597548bf42d665d52b6eb7e88b125bc51ecb","kind":"tag","published_at":"2013-07-08T02:09:52.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"cb018cc361e44ed2f0c774749f5e0429f4757a7d","kind":"tag","published_at":"2012-11-22T03:12:39.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"f05f83dcca4cdaeaea72fe14fddb1d542e3fb310","kind":"tag","published_at":"2011-07-11T08:30:10.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0/manifests"},{"name":"v1.0.3","sha":"7e9adb2a6b69bc3d5f9fe987c059c86a5d1edbfd","kind":"tag","published_at":"2011-05-26T07:02:32.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"7439417eb6dd55b48961a8f0915b908262668add","kind":"tag","published_at":"2011-05-24T21:41:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"14d131a142e7684f2b4d29cb12b6ef52e45b5ecd","kind":"tag","published_at":"2011-05-12T11:30:13.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"9879f78f26ef6591de45ebede3518aa45f7df2ca","kind":"tag","published_at":"2011-04-06T02:54:24.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0/manifests"},{"name":"v0.0.1","sha":"a8b5db39dac99203e5f51b29534a039d6bfd14e0","kind":"tag","published_at":"2010-10-07T00:51:02.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v0.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2026-05-23T15:45:13.660Z","dependent_packages_count":36,"downloads":77829159,"downloads_period":"total","dependent_repos_count":3683,"rankings":{"downloads":0.38748452849544496,"dependent_repos_count":0.5185044769795163,"dependent_packages_count":0.6852064539869092,"stargazers_count":0.6857639856825861,"forks_count":1.1953479555312718,"docker_downloads_count":1.8526778247343363,"average":0.8874975375683442},"purl":"pkg:gem/paranoia","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/paranoia","docker_dependents_count":138,"docker_downloads_count":509182,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/paranoia/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2026-04-19T13:00:51.285Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/paranoia/codemeta","maintainers":[{"uuid":"43492","login":"jhawthorn","name":null,"email":null,"url":null,"packages_count":150,"html_url":"https://rubygems.org/profiles/jhawthorn","role":null,"created_at":"2022-11-09T09:44:34.954Z","updated_at":"2022-11-09T09:44:34.954Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/jhawthorn/packages"},{"uuid":"79442","login":"mathieu","name":null,"email":null,"url":null,"packages_count":37,"html_url":"https://rubygems.org/profiles/mathieu","role":null,"created_at":"2022-11-09T09:44:34.943Z","updated_at":"2022-11-09T09:44:34.943Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/mathieu/packages"},{"uuid":"78564","login":"BenMorganIO","name":null,"email":null,"url":null,"packages_count":9,"html_url":"https://rubygems.org/profiles/BenMorganIO","role":null,"created_at":"2022-11-09T09:44:34.959Z","updated_at":"2022-11-09T09:44:34.959Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/BenMorganIO/packages"},{"uuid":"27","login":"ryanbigg","name":null,"email":null,"url":null,"packages_count":43,"html_url":"https://rubygems.org/profiles/ryanbigg","role":null,"created_at":"2022-11-09T09:44:34.948Z","updated_at":"2022-11-09T09:44:34.948Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/ryanbigg/packages"},{"uuid":"78111","login":"sevenseacat","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://rubygems.org/profiles/sevenseacat","role":null,"created_at":"2022-11-09T09:44:34.965Z","updated_at":"2022-11-09T09:44:34.965Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/sevenseacat/packages"}],"registry":{"name":"rubygems.org","url":"https://rubygems.org","ecosystem":"rubygems","default":true,"packages_count":207303,"maintainers_count":68781,"namespaces_count":0,"keywords_count":18627,"github":"rubygems","metadata":{"funded_packages_count":7375},"icon_url":"https://github.com/rubygems.png","created_at":"2022-04-04T15:19:23.446Z","updated_at":"2026-05-13T05:11:24.133Z","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":12290898,"name":"paranoia","ecosystem":"rubygems","description":"    Paranoia is a re-implementation of acts_as_paranoid for Rails 5, 6, and 7,\n    using much, much, much less code. You would use either plugin / gem if you\n    wished that when you called destroy on an Active Record object that it\n    didn't actually destroy it, but just \"hid\" the record. Paranoia does this\n    by setting a deleted_at field to the current time when you destroy a record,\n    and hides it by scoping all queries on your model to only include records\n    which do not have a deleted_at field.\n","homepage":"https://github.com/rubysherpas/paranoia","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":[],"namespace":null,"versions_count":46,"first_release_published_at":"2010-10-07T00:51:22.569Z","latest_release_published_at":"2025-11-07T11:12:28.719Z","latest_release_number":"3.1.0","last_synced_at":"2026-05-24T04:30:28.678Z","created_at":"2025-10-07T04:50:28.367Z","updated_at":"2026-05-24T04:30:28.815Z","registry_url":"https://gem.coop/gems/paranoia","install_command":"gem install paranoia -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/paranoia/","metadata":{"funding":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2917,"open_issues_count":103,"forks_count":528,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-05-20T05:38:21.568Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-05-13T16:15:15.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33300882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-21T12:23:38.849Z","status":"ssl_error","status_checked_at":"2026-05-21T12:22:11.673Z","response_time":62,"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":"rubysherpas","name":"Ruby Sherpas","uuid":"9400277","kind":"organization","description":"","email":"contact@rubysherpas.com","website":"http://rubysherpas.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/9400277?v=4","repositories_count":7,"last_synced_at":"2024-03-25T20:47:17.818Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/rubysherpas","funding_links":[],"total_stars":4445,"followers":3,"following":0,"created_at":"2022-11-02T16:36:22.009Z","updated_at":"2024-03-25T20:47:20.220Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas/repositories"},"tags":[{"name":"v3.0.1","sha":"fe46c57e9a52d3fb03c7e12254693d7e99b95563","kind":"commit","published_at":"2025-01-19T04:28:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"f441c378c3fb4a3c8beb482db376ac14717f81a7","kind":"tag","published_at":"2024-08-13T02:56:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v3.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v3.0.0/manifests"},{"name":"v2.6.4","sha":"c3b432e621a749782043036bb6f39165ac8f0f60","kind":"commit","published_at":"2024-07-20T00:10:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.4/manifests"},{"name":"v2.6.3","sha":"72a03f14621fa7f16bb8b56a0648be30cddd1c1e","kind":"commit","published_at":"2023-10-11T19:49:29.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.3/manifests"},{"name":"v2.6.2","sha":"33e433a28e55588319fdb50e2e05e72af54ae365","kind":"commit","published_at":"2023-06-05T20:35:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.2/manifests"},{"name":"v2.6.1","sha":"09e3a9fb3b3b47c976388c103df05438267dacc6","kind":"commit","published_at":"2022-11-15T23:11:40.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.1/manifests"},{"name":"v2.6.0","sha":"c0d1d9a3478bea09feb529d2dc0eb8c9b8d7e805","kind":"commit","published_at":"2022-03-23T06:09:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.6.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.6.0/manifests"},{"name":"v2.5.3","sha":"57a978d68b59e61c187845153e119522ad5c8b17","kind":"commit","published_at":"2022-03-23T03:14:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.3/manifests"},{"name":"v2.5.2","sha":"742951cb8f99c51dfbb993a7242f002e5b1b2925","kind":"commit","published_at":"2022-02-02T02:15:00.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.2/manifests"},{"name":"v2.5.1","sha":"b6b51672fff64172c47fe5669efb773910a41bc4","kind":"commit","published_at":"2022-01-19T07:39:46.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.1/manifests"},{"name":"v2.5.0","sha":"06af2601d77bd69031f527f7311ecf99d977ab55","kind":"commit","published_at":"2022-01-12T05:46:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.5.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.5.0/manifests"},{"name":"2.4.3","sha":"03d0779327b1604befd6dd36001cd8fcb908bff9","kind":"commit","published_at":"2020-12-16T07:31:01.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.4.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.4.3/manifests"},{"name":"v2.4.2","sha":"0600183a12b1e0c5d74d94000bee08d5fc4a5933","kind":"tag","published_at":"2019-04-26T01:25:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.2/manifests"},{"name":"v2.4.1","sha":"35e671680ef233e55ea8f89e9a5db27afa6a2aa2","kind":"tag","published_at":"2018-04-10T18:11:35.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"92505787662e0415f228a3507a885ba771058ff1","kind":"tag","published_at":"2017-11-03T20:58:53.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.4.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"c1232a37d33ab81cff6165a945c8149ae5a3ae4a","kind":"tag","published_at":"2017-04-27T22:56:57.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.3.1/manifests"},{"name":"2.3.0","sha":"07c8e8b624287a4395b1ef351dc52f0ab239e082","kind":"commit","published_at":"2017-04-14T19:58:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.3.0/manifests"},{"name":"2.2.1","sha":"ba48f19640d8791b57d9755dfdb41a77576b825c","kind":"commit","published_at":"2017-02-16T18:27:58.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.1/manifests"},{"name":"2.2.0","sha":"b29bc4dd33aa614eff920122594cc2f9cf88272a","kind":"commit","published_at":"2016-10-20T20:18:28.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0/manifests"},{"name":"v2.2.0","sha":"e7a5edb89c0cf34500f1d8d9f000e6c5f3f6e671","kind":"tag","published_at":"2016-10-20T20:01:42.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.2.0/manifests"},{"name":"2.2.0.pre","sha":"70f6e37b7b32cf4f70c5b852a38597699f476c62","kind":"commit","published_at":"2016-07-12T20:47:41.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/2.2.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/2.2.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@2.2.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/2.2.0.pre/manifests"},{"name":"v2.1.5","sha":"f180fe6faaffe3f48c58061bab7d14a1fafd16fc","kind":"tag","published_at":"2016-01-07T01:07:50.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.5/manifests"},{"name":"v2.1.4","sha":"5593550b9dfccf527f88d0e6c70ac40c85780056","kind":"tag","published_at":"2015-11-05T01:23:45.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.4/manifests"},{"name":"v2.1.3","sha":"ca50876c9e29d87c555eb2d354ab6378c39a1239","kind":"tag","published_at":"2015-06-17T07:46:19.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.3/manifests"},{"name":"v2.1.2","sha":"e1320fb7d6c9ac0adbf1566ffbf0a00774ca5e1e","kind":"tag","published_at":"2015-04-28T02:55:37.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"df42daa3d95f4a387c7656a23d8f878eddb8cea8","kind":"tag","published_at":"2015-03-23T21:59:16.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"18162f63fc4525c82d42ae76f3ecff43cd948132","kind":"tag","published_at":"2015-01-24T00:19:07.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0/manifests"},{"name":"v2.1.0.pre","sha":"addbcc80b6946f5d0296c0fcc90ce3a96522a96a","kind":"tag","published_at":"2015-01-22T22:34:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.1.0.pre","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.1.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.1.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.1.0.pre/manifests"},{"name":"v2.0.5","sha":"7866b73df405faf934081cc23b33847618707b81","kind":"tag","published_at":"2015-01-22T22:07:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.5","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.5/manifests"},{"name":"v1.3.4","sha":"68794fdb9a8f8079c34f83f4fd6b345c7f3c7a00","kind":"tag","published_at":"2015-01-19T21:28:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.4/manifests"},{"name":"v2.0.4","sha":"ed704be8c3d2c117a3b5cf8485f31be29b8f648e","kind":"tag","published_at":"2014-12-03T03:57:23.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.4","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"c32a7c6bfc4e804005c8300206612e00f5835502","kind":"tag","published_at":"2014-11-21T05:10:34.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"74c0e8bf72acce4402da7965852781ad2d74f2f6","kind":"tag","published_at":"2014-01-16T19:57:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.2/manifests"},{"name":"v1.3.3","sha":"d6653bb4fb5ace93d69fabf174fd1111816e86b6","kind":"tag","published_at":"2014-01-16T19:54:17.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.3/manifests"},{"name":"v2.0.1","sha":"0f2fde6f10a20ff7cac94d2c55a9cf32a4f27013","kind":"tag","published_at":"2013-10-24T05:29:43.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.1/manifests"},{"name":"v1.3.2","sha":"ffa40a244502570b02228fc8afed8074e347a843","kind":"tag","published_at":"2013-10-24T05:28:08.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"6670dce6b307679e4273f58de96fb240528b46c8","kind":"tag","published_at":"2013-07-08T04:26:25.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.1/manifests"},{"name":"v2.0.0","sha":"43b9f31e28aa1e19dc8a1a40850bb401799ed4b4","kind":"tag","published_at":"2013-07-08T02:11:36.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v2.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v2.0.0/manifests"},{"name":"v1.3.0","sha":"a2db597548bf42d665d52b6eb7e88b125bc51ecb","kind":"tag","published_at":"2013-07-08T02:09:52.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.3.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"cb018cc361e44ed2f0c774749f5e0429f4757a7d","kind":"tag","published_at":"2012-11-22T03:12:39.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.2.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"f05f83dcca4cdaeaea72fe14fddb1d542e3fb310","kind":"tag","published_at":"2011-07-11T08:30:10.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.1.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.1.0/manifests"},{"name":"v1.0.3","sha":"7e9adb2a6b69bc3d5f9fe987c059c86a5d1edbfd","kind":"tag","published_at":"2011-05-26T07:02:32.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.3","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"7439417eb6dd55b48961a8f0915b908262668add","kind":"tag","published_at":"2011-05-24T21:41:12.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.2","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"14d131a142e7684f2b4d29cb12b6ef52e45b5ecd","kind":"tag","published_at":"2011-05-12T11:30:13.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"9879f78f26ef6591de45ebede3518aa45f7df2ca","kind":"tag","published_at":"2011-04-06T02:54:24.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v1.0.0","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v1.0.0/manifests"},{"name":"v0.0.1","sha":"a8b5db39dac99203e5f51b29534a039d6bfd14e0","kind":"tag","published_at":"2010-10-07T00:51:02.000Z","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/v0.0.1","html_url":"https://github.com/rubysherpas/paranoia/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/rubysherpas/paranoia@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2026-05-24T04:30:28.784Z","dependent_packages_count":0,"downloads":77833086,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":0.391972405142678,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":1.4894951395421763,"average":0.4703668861712136},"purl":"pkg:gem/paranoia?repository_url=https://gem.coop","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/paranoia","docker_dependents_count":138,"docker_downloads_count":509182,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-19T13:00:51.285Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/paranoia/codemeta","maintainers":[{"uuid":"43492","login":"jhawthorn","name":null,"email":null,"url":null,"packages_count":150,"html_url":"https://gem.coop/profiles/jhawthorn","role":null,"created_at":"2025-10-08T01:43:27.721Z","updated_at":"2025-10-08T01:43:27.721Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/jhawthorn/packages"},{"uuid":"79442","login":"mathieu","name":null,"email":null,"url":null,"packages_count":37,"html_url":"https://gem.coop/profiles/mathieu","role":null,"created_at":"2025-10-08T01:43:27.938Z","updated_at":"2025-10-08T01:43:27.938Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/mathieu/packages"},{"uuid":"78564","login":"BenMorganIO","name":null,"email":null,"url":null,"packages_count":9,"html_url":"https://gem.coop/profiles/BenMorganIO","role":null,"created_at":"2025-10-08T01:43:27.792Z","updated_at":"2025-10-08T01:43:27.792Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/BenMorganIO/packages"},{"uuid":"27","login":"ryanbigg","name":null,"email":null,"url":null,"packages_count":43,"html_url":"https://gem.coop/profiles/ryanbigg","role":null,"created_at":"2025-10-08T01:43:27.674Z","updated_at":"2025-10-08T01:43:27.674Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/ryanbigg/packages"},{"uuid":"78111","login":"sevenseacat","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://gem.coop/profiles/sevenseacat","role":null,"created_at":"2025-10-08T01:43:27.868Z","updated_at":"2025-10-08T01:43:27.868Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/sevenseacat/packages"}],"registry":{"name":"gem.coop","url":"https://gem.coop","ecosystem":"rubygems","default":false,"packages_count":192140,"maintainers_count":67790,"namespaces_count":0,"keywords_count":0,"github":"gem-coop","metadata":{"funded_packages_count":6507},"icon_url":"https://github.com/gem-coop.png","created_at":"2025-10-06T17:24:20.932Z","updated_at":"2026-04-03T06:45:05.763Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/namespaces"}},{"id":13407072,"name":"ruby-paranoia","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/rubysherpas/paranoia","licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/rubysherpas/paranoia","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T15:42:50.587Z","latest_release_published_at":"2026-02-06T15:42:50.587Z","latest_release_number":"2.4.3-1","last_synced_at":"2026-03-06T16:46:21.927Z","created_at":"2026-02-06T15:42:50.330Z","updated_at":"2026-03-06T16:46:22.193Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-paranoia","install_command":"apt-get install ruby-paranoia","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-paranoia","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, rake, ruby-activerecord (\u003e= 2:4.0~), ruby-sqlite3","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":40990851,"uuid":"904810","full_name":"rubysherpas/paranoia","owner":"rubysherpas","description":"acts_as_paranoid for Rails 5, 6 and 7","archived":false,"fork":false,"pushed_at":"2025-11-07T11:11:54.000Z","size":457,"stargazers_count":2919,"open_issues_count":103,"forks_count":529,"subscribers_count":30,"default_branch":"core","last_synced_at":"2026-02-24T14:53:34.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubysherpas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2010-09-12T08:57:53.000Z","updated_at":"2026-02-23T14:17:32.000Z","dependencies_parsed_at":"2024-03-12T12:27:27.498Z","dependency_job_id":"c5d50554-d41b-4692-9556-06e584fabc17","html_url":"https://github.com/rubysherpas/paranoia","commit_stats":{"total_commits":406,"total_committers":153,"mean_commits":2.65359477124183,"dds":0.8596059113300493,"last_synced_commit":"7b96793a72f111eef474ca20fd88dd3d536d6633"},"previous_names":["radar/paranoia"],"tags_count":46,"template":false,"template_full_name":null,"purl":"pkg:github/rubysherpas/paranoia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubysherpas","download_url":"https://codeload.github.com/rubysherpas/paranoia/tar.gz/refs/heads/core","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/sbom","scorecard":{"id":788985,"data":{"date":"2025-08-11","repo":{"name":"github.com/rubysherpas/paranoia","commit":"12c851ce00b06cbbeffceda1853d8d1808584522"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"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":"Code-Review","score":7,"reason":"Found 21/30 approved changesets -- score normalized to 7","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/rubysherpas/paranoia/build.yml/core?enable=pin","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: non-200 OK status code: 504 Gateway Timeout body: \"{\\\"message\\\": \\\"We couldn't respond to your request in time. Sorry about that. Please try resubmitting your request and contact us if the problem persists.\\\"}\\r\\n\"","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"}}]},"last_synced_at":"2025-08-23T06:55:24.493Z","repository_id":40990851,"created_at":"2025-08-23T06:55:24.493Z","updated_at":"2025-08-23T06:55:24.493Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29793659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T16:37:37.581Z","status":"ssl_error","status_checked_at":"2026-02-24T16:37:37.074Z","response_time":75,"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"}},"repo_metadata_updated_at":"2026-02-24T18:03:13.488Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:deb/ubuntu/ruby-paranoia?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-paranoia","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-paranoia","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-paranoia/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-01-12T14:00:44.481Z","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-paranoia/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.04","url":"https://launchpad.net/ubuntu/noble","ecosystem":"ubuntu","default":true,"packages_count":37306,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"noble"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-04-27T18:20:35.701Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}}],"commits":{"id":3307,"full_name":"rubysherpas/paranoia","default_branch":"core","total_commits":410,"total_committers":144,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":2.8472222222222223,"dds":0.8317073170731707,"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-05-22T17:09:21.405Z","last_synced_commit":"a950fe498191ba01fc45d716e7157d1903ef30b7","created_at":"2023-03-07T09:17:13.802Z","updated_at":"2026-05-22T17:05:49.263Z","committers":[{"name":"John Hawthorn","email":"john.hawthorn@gmail.com","login":"jhawthorn","count":69},{"name":"Ryan Bigg","email":"radarlistener@gmail.com","login":"radar","count":65},{"name":"Ben A. Morgan","email":"ben@benmorgan.io","login":"BenMorganIO","count":22},{"name":"Mathieu Jobin","email":"mathieu@justbudget.com","login":"mathieujobin","count":18},{"name":"Sergey Alekseev","email":"sergey.alekseev.minsk@gmail.com","login":"sergey-alekseev","count":14},{"name":"delba","email":"delba@server.fake","login":"delba","count":9},{"name":"Uwe Kubosch","email":"donv","login":"donv","count":9},{"name":"Martin Sereinig","email":"martin.sereinig@lomography.com","login":null,"count":6},{"name":"edwardmp","email":"e.poot@evolutionhost.nl","login":"edwardmp","count":5},{"name":"Nikolay Norkin","email":"n.e.norkin@gmail.com","login":"duderman","count":5},{"name":"Jared Norman","email":"jared@super.gd","login":"jarednorman","count":5},{"name":"Weston Ganger","email":"westonganger@gmail.com","login":"westonganger","count":4},{"name":"Sammy Larbi","email":"sam@codeodor.com","login":"codeodor","count":4},{"name":"Emil Sågfors","email":"emil.sagfors@iki.fi","login":"lime","count":4},{"name":"Anton Kolodii","email":"iggant@gmail.com","login":"iggant","count":3},{"name":"Andrzej Piątyszek","email":"konto.andrzeja@gmail.com","login":"konto-andrzeja","count":3},{"name":"Mauro George","email":"maurogot@gmail.com","login":"maurogeorge","count":3},{"name":"Ryunosuke Sato","email":"tricknotes.rs@gmail.com","login":"tricknotes","count":3},{"name":"Tony Byrne","email":"tonyb@byrnehq.com","login":"tonybyrne","count":3},{"name":"ray","email":"frayay@gmail.com","login":"JeskTop","count":3},{"name":"mishina2228","email":"32959831+mishina2228","login":"mishina2228","count":3},{"name":"Michal Dobaczewski","email":"michal@thinknear.com","login":"michaltn","count":3},{"name":"Ryan Bigg","email":"radar@lifx.co","login":null,"count":3},{"name":"Ashwin Hegde","email":"ashwin.hegde12@gmail.com","login":"hashwin","count":2},{"name":"Ben Woosley","email":"ben.woosley@gmail.com","login":"Empact","count":2},{"name":"Daniel Lehmann","email":"leh@l3h.de","login":"leh","count":2},{"name":"Eli","email":"eli@elilies.com","login":"efoxepstein","count":2},{"name":"Emil Ong","email":"emilong","login":"emilong","count":2},{"name":"Hassanin Ahmed","email":"sas1ni69@gmail.com","login":"sas1ni69","count":2},{"name":"Jake Quain","email":"quainjn@gmail.com","login":"quainjn","count":2},{"name":"Jim","email":"powerjim@gmail.com","login":"jdurand","count":2},{"name":"Jörg Schiller","email":"joergschiller@googlemail.com","login":"joergschiller","count":2},{"name":"Kensuke Yanase","email":"kirie115@gmail.com","login":"ken3ypa","count":2},{"name":"Leonardo Alifraco","email":"leonardo.alifraco@gmail.com","login":"leonardoalifraco","count":2},{"name":"Mohammed Nasser","email":"135416851+mohammednasser-32","login":"mohammednasser-32","count":2},{"name":"Nicolas Leger","email":"nicolasleger","login":"nicolasleger","count":2},{"name":"Patrick Koperwas","email":"patrickkoperwas@gmail.com","login":"PatKoperwas","count":2},{"name":"Scott Gonyea","email":"me@sgonyea.com","login":"sgonyea","count":2},{"name":"Washington Luiz","email":"huoxito@gmail.com","login":"huoxito","count":2},{"name":"Dmitry Babenko","email":"dmitry@ergoserv.com","login":"stgeneral","count":2},{"name":"Alexey Pokhozhaev","email":"poporul@gmail.com","login":"poporul","count":2},{"name":"Akira Matsuda","email":"ronnie@dio.jp","login":"amatsuda","count":2},{"name":"curtis","email":"curtis@flatterline.com","login":null,"count":2},{"name":"Kurtis Rainbolt-Greene","email":"me@kurtisrainboltgreene.name","login":null,"count":2},{"name":"Thomas Vendetta","email":"thomas.vendetta@ajj.com","login":null,"count":2},{"name":"Aditya Sanghi","email":"asanghi@me.com","login":null,"count":2},{"name":"David Piegza","email":"david.piegza@web.de","login":"davidpiegza","count":1},{"name":"Bartosz Bonisławski","email":"b.bonislawski@hotmail.com","login":"bbonislawski","count":1},{"name":"David Verhasselt","email":"david@crowdway.com","login":"dv","count":1},{"name":"Aaron Jensen","email":"aaronjensen@gmail.com","login":"aaronjensen","count":1},{"name":"Able1991","email":"able1221@gmail.com","login":"Able1991","count":1},{"name":"Akshay S Murthy","email":"iamakshay@gmail.com","login":"akshaysmurthy","count":1},{"name":"Alex Cooper","email":"alex@acooper.org","login":"kuperov","count":1},{"name":"Alex Koppel","email":"alex@alexkoppel.com","login":"arsduo","count":1},{"name":"Amit Aharoni","email":"amit.sites@gmail.com","login":"vaharoni","count":1},{"name":"Andrew Hampton","email":"andrewwh@gmail.com","login":"andrewhampton","count":1},{"name":"Andrew Slotin","email":"andrew.slotin@gmail.com","login":"andrewslotin","count":1},{"name":"Anton Rieder","email":"aried3r@gmail.com","login":"aried3r","count":1},{"name":"Austin Ziegler","email":"austin@zieglers.ca","login":"halostatue","count":1},{"name":"Benjamin Alexander","email":"reedstonefood","login":"reedstonefood","count":1},{"name":"Bogdanov Anton","email":"kortirso@gmail.com","login":"kortirso","count":1},{"name":"Dario Hamidi","email":"dario.hamidi@xing.com","login":null,"count":1},{"name":"Dan Cheail","email":"dan@undumb.com","login":null,"count":1},{"name":"Erich Menge","email":"erich.menge@me.com","login":null,"count":1},{"name":"Georg Limbach","email":"glimbach@milabent.com","login":null,"count":1},{"name":"Jonas Pfenniger","email":"jonas@pfenniger.name","login":null,"count":1},{"name":"Kyle Ferrara","email":"kyleferrara@offerzen.com","login":null,"count":1},{"name":"Landon Wilkins","email":"lwilkins@instructure.com","login":null,"count":1},{"name":"Matt Connolly","email":"matt.connolly@tworedkites.com","login":null,"count":1},{"name":"Michael Tucker","email":"mtucker@godaddy.com","login":null,"count":1},{"name":"Nick Anderson","email":"nick.anderson@meyouhealth.com","login":null,"count":1},{"name":"Nick Palaniuk","email":"npalaniuk@gmail.com","login":null,"count":1},{"name":"Shuichi Tamayose","email":"tmshuichi@gmail.com","login":"siman-man","count":1},{"name":"Shreyas Agarwal","email":"shreyas.agarwal@gmail.com","login":"shreyas123","count":1},{"name":"Sherif Elkassaby","email":"90387198+sherif-nedap","login":"sherif-nedap","count":1},{"name":"Shaun Dern","email":"shaun@substantial.com","login":"smdern","count":1},{"name":"Sebastian Welther","email":"swelther","login":"swelther","count":1},{"name":"Sean O'Hara","email":"sohara@sohara.com","login":"sohara","count":1},{"name":"Sachin Jain","email":"clubforever@gmail.com","login":"sachinjain007","count":1},{"name":"Rémi Prévost","email":"remi@exomel.com","login":"remi","count":1},{"name":"Richard Schneeman","email":"richard.schneeman@gmail.com","login":"schneems","count":1},{"name":"Richard Lee","email":"dlackty@gmail.com","login":"dlackty","count":1},{"name":"Rene van Lieshout","email":"rene@lico.nl","login":"rvanlieshout","count":1},{"name":"Rebecca Le","email":"traybaby@gmail.com","login":"sevenseacat","count":1},{"name":"Philip Arndt","email":"parndt@gmail.com","login":"parndt","count":1},{"name":"Peter Woo","email":"petersnowdonwoo@gmail.com","login":"wioux","count":1},{"name":"Peter M. Goldstein","email":"peter.m.goldstein@gmail.com","login":"petergoldstein","count":1},{"name":"Pedro Nascimento","email":"pnascimento@gmail.com","login":"lunks","count":1},{"name":"Paweł Charyło","email":"pawelek987@gmail.com","login":"zygzagZ","count":1},{"name":"Paul Padier","email":"pp_online@outlook.com","login":"magni-","count":1},{"name":"Steve Rice","email":"steve.rice@brigade.com","login":"steverice","count":1},{"name":"yohei yoshimuta","email":"yoheimuta@gmail.com","login":"yoheimuta","count":1},{"name":"yachi","email":"yaachi@gmail.com","login":"yachi","count":1},{"name":"rbr","email":"rbrm","login":"rbrm","count":1},{"name":"rbr","email":"rbr","login":"rbr","count":1},{"name":"paneer_tikka","email":"neerajapte@gmail.com","login":"paneer-tikka","count":1},{"name":"johanneswuerbach","email":"johannes.wuerbach@googlemail.com","login":"johanneswuerbach","count":1},{"name":"dsandstrom","email":"darrell.sandstrom@gmail.com","login":"dsandstrom","count":1},{"name":"brchristian","email":"brchristian@gmail.com","login":"brchristian","count":1},{"name":"astronz","email":"extralinedesign@gmail.com","login":"cre-o","count":1},{"name":"alfa-jpn","email":"a.nkmr.ja@gmail.com","login":"alfa-jpn","count":1},{"name":"Zeke Sikelianos","email":"zeke@sikelianos.com","login":"zeke","count":1},{"name":"Yusei Yamanaka","email":"yusei1128@gmail.com","login":"miyukki","count":1},{"name":"Yann Hourdel","email":"yann@hourdel.fr","login":"levraipixel","count":1},{"name":"Vincent Bonmalais","email":"vb.kouno@gmail.com","login":"kouno","count":1},{"name":"Thomas Romera","email":"me@thomas-romera.com","login":"thromera","count":1},{"name":"Thomas","email":"thomas@icdesign.com.au","login":"anathematic","count":1},{"name":"Patrik Bóna","email":"patrik.bona@mrhead.sk","login":"mrhead","count":1},{"name":"Jason Fleetwood-Boldt","email":"jason@heliosdev.shop","login":"jasonfb","count":1},{"name":"Jared Smith","email":"jared.smith88@me.com","login":"sublimecoder","count":1},{"name":"Ignatius Reza","email":"ignatiusreza","login":"ignatiusreza","count":1},{"name":"Iaan Krynauw","email":"iaankrynauw@gmail.com","login":"iaankrynauw","count":1},{"name":"Geoffrey Roguelon","email":"geoffrey.roguelon@gmail.com","login":"GRoguelon","count":1},{"name":"Diego Aguir Selzlein","email":"diegoselzlein@gmail.com","login":"diego-aslz","count":1},{"name":"Dharam Gollapudi","email":"dharam.gollapudi@gmail.com","login":"dharamgollapudi","count":1},{"name":"Patrick Brinich-Langlois","email":"pbrinichlanglois@gmail.com","login":"patbl","count":1},{"name":"Braden Anderson","email":"banderson@instructure.com","login":"bluej100","count":1},{"name":"Chandan Jhunjhunwal","email":"chandan.jhun@coupa.com","login":"indyarocks","count":1},{"name":"Chris Oliver","email":"excid3@gmail.com","login":"excid3","count":1},{"name":"Christopher Wade","email":"wade.christopher@gmail.com","login":"chrislwade","count":1},{"name":"Claessens Simon","email":"gagalago@gmail.com","login":"gagalago","count":1},{"name":"Clément Prod'homme","email":"prodhomme.clement@hotmail.fr","login":"cprodhomme","count":1},{"name":"Copilot","email":"198982749+Copilot","login":"Copilot","count":1},{"name":"DJ","email":"6138914+bkDJ","login":"bkDJ","count":1},{"name":"Dave Mayo","email":"pobocks@gmail.com","login":"pobocks","count":1},{"name":"n3bulous","email":"kevin.mcfadden@welltok.com","login":null,"count":1},{"name":"zhengjia","email":"jiazheng@live.com","login":"zhengjia","count":1},{"name":"Jun Aruga","email":"jaruga@redhat.com","login":"junaruga","count":1},{"name":"Oleg Pudeyev","email":"oleg@bsdpower.com","login":"p","count":1},{"name":"Noah Matisoff","email":"noah@matisoff.me","login":"noahmatisoff","count":1},{"name":"Neil E. Pearson","email":"neil@helium.net.au","login":"hx","count":1},{"name":"Miklos Fazekas","email":"mfazekas@szemafor.com","login":"mfazekas","count":1},{"name":"Michael Dilley","email":"michael.dilley@gmail.com","login":"michaeljd","count":1},{"name":"Maxim Andryunin","email":"maxim.andryunin@gmail.com","login":"andryunin","count":1},{"name":"Matthew Jording","email":"mjording@gmail.com","login":"mjording","count":1},{"name":"Matt Larraz","email":"mlarraz","login":"mlarraz","count":1},{"name":"Mark J. Lehman","email":"supremebeing7","login":"supremebeing7","count":1},{"name":"Marcus Ilgner","email":"mail@marcusilgner.com","login":"milgner","count":1},{"name":"Leonardo Borges","email":"leonardoborges.rj@gmail.com","login":"theleoborges","count":1},{"name":"Derrick Zhang","email":"robot@zillou.me","login":"zillou","count":1},{"name":"Joé Dupuis","email":"1518299+JoeDupuis","login":"JoeDupuis","count":1},{"name":"Jozsef Nyitrai","email":"nyitrai.jozsef@gmail.com","login":"nyjt","count":1},{"name":"Joshua Pinter","email":"joshuapinter@gmail.com","login":"joshuapinter","count":1},{"name":"Josh Goebel","email":"dreamer3@gmail.com","login":"joshgoebel","count":1}],"past_year_committers":[{"name":"Copilot","email":"198982749+Copilot","login":"Copilot","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-24T00:00:21.472Z","repositories_count":6240188,"commits_count":884585399,"contributors_count":34910025,"owners_count":1156805,"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":"rubysherpas/paranoia","html_url":"https://github.com/rubysherpas/paranoia","last_synced_at":"2026-04-19T13:00:51.285Z","status":"error","issues_count":66,"pull_requests_count":91,"avg_time_to_close_issue":48601158.696969695,"avg_time_to_close_pull_request":21652269.35483871,"issues_closed_count":32,"pull_requests_closed_count":62,"pull_request_authors_count":62,"issue_authors_count":66,"avg_comments_per_issue":2.4545454545454546,"avg_comments_per_pull_request":2.4505494505494503,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":162992.0,"past_year_avg_time_to_close_pull_request":802229.6666666666,"past_year_issues_closed_count":1,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":2.5714285714285716,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"created_at":"2023-05-12T14:56:28.106Z","updated_at":"2026-04-19T13:00:51.285Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubysherpas%2Fparanoia/issues","issue_labels_count":{"stale":22,"bug":5,"question":3,"enhancement":3,"v2.5.2":1},"pull_request_labels_count":{"stale":25,"enhancement":2,"v2.5.2":2},"issue_author_associations_count":{"NONE":58,"CONTRIBUTOR":8},"pull_request_author_associations_count":{"NONE":41,"CONTRIBUTOR":41,"COLLABORATOR":9},"issue_authors":{"besquared":1,"whitewolf92":1,"atd":1,"ranieseah":1,"yllihv27":1,"letiesperon":1,"VitaliSakolski":1,"JoaoCnh":1,"dalton":1,"janko":1,"ikbenben":1,"schinery":1,"crevete":1,"ngudbhav":1,"MatheusRich":1,"jdejong":1,"stewartjohnson":1,"domanhtien2011":1,"Friend-LGA":1,"TrevorHinesley":1,"Laykou":1,"AndyGauge":1,"wildanmuslim":1,"ACPK":1,"dfens":1,"nin9":1,"jadamdipak":1,"andrewhampton":1,"Anas-Shahid":1,"cweyer":1,"jhubert":1,"mahdiar-naufal-shyftplan":1,"prativapokhrel":1,"lionelchauvin":1,"gus4no":1,"daveroberts":1,"vidivalianto":1,"mohammednasser-32":1,"sunloverz":1,"ayza-hamid":1,"jasonfb":1,"scsmith":1,"baixm92":1,"mrhead":1,"caius":1,"mishina2228":1,"frederikspang":1,"securityncompliance":1,"spiicychknsandy":1,"mnifakram":1,"JoeDupuis":1,"mtclimberguy":1,"sherif-nedap":1,"Able1991":1,"davismattg":1,"Try431":1,"r7kamura":1,"denysivanov":1,"therrick":1,"nertzy":1,"noctivityinc":1,"pomartel":1,"KaleFive":1,"studious":1,"reedstonefood":1,"eitoball":1},"pull_request_authors":{"yoheimuta":4,"radar":4,"reedstonefood":4,"mohammednasser-32":4,"mishina2228":3,"tricknotes":3,"mathieujobin":3,"chenillen":2,"emilong":2,"kwent":2,"jhawthorn":2,"andrewhampton":2,"mahdiar-naufal-shyftplan":2,"sas1ni69":2,"cprodhomme":2,"JoeDupuis":2,"Empact":2,"zygzagZ":2,"dennispaagman":1,"hashwin":1,"skukx":1,"pomartel":1,"mlarraz":1,"ekampp":1,"harryhlai":1,"swelther":1,"jules-w2":1,"shosti":1,"pfeiffer":1,"joergschiller":1,"AndrewPratley":1,"jasonfb":1,"p":1,"sherif-nedap":1,"andyklimczak":1,"ken3ypa":1,"npezza93":1,"atd":1,"leklund":1,"krainboltgreene":1,"mlabarca":1,"shizm":1,"theodorton":1,"Kyle-Ferrara":1,"Copilot":1,"ignatiusreza":1,"tjallingvanderwal":1,"bkDJ":1,"westonganger":1,"magni-":1,"arieliten":1,"kortirso":1,"sachinjain007":1,"Shigawire":1,"willnet":1,"indyarocks":1,"dgmora":1,"walski":1,"vraravam":1,"rbr":1,"Able1991":1,"hannesfostie":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-24T00:00:44.577Z","repositories_count":14683572,"issues_count":34058092,"pull_requests_count":111488512,"authors_count":11272443,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":3},"past_year_pull_request_author_associations_count":{"NONE":3},"past_year_issue_authors":{"crevete":1,"denysivanov":1,"r7kamura":1},"past_year_pull_request_authors":{"Copilot":1,"dennispaagman":1,"jules-w2":1},"maintainers":[{"login":"radar","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/radar"},{"login":"mathieujobin","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mathieujobin"},{"login":"jhawthorn","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jhawthorn"}],"active_maintainers":[]},"events":{"total":{"CreateEvent":1,"CommitCommentEvent":1,"ReleaseEvent":2,"DeleteEvent":1,"PullRequestEvent":8,"ForkEvent":4,"IssuesEvent":10,"WatchEvent":47,"IssueCommentEvent":26,"PushEvent":7,"PullRequestReviewEvent":24,"PullRequestReviewCommentEvent":18},"last_year":{"DeleteEvent":1,"PullRequestEvent":3,"IssuesEvent":5,"WatchEvent":15,"IssueCommentEvent":14,"PushEvent":4,"PullRequestReviewCommentEvent":6,"PullRequestReviewEvent":8}},"keywords":[],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-08-10T01:29:26.584Z","updated_at":"2022-08-10T01:29:26.584Z","repository_link":"https://github.com/rubysherpas/paranoia/blob/core/Gemfile","dependencies":[{"id":990811007,"package_name":"sqlite3","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":990811008,"package_name":"activerecord-jdbcsqlite3-adapter","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":990811009,"package_name":"rubinius-developer_tools","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":990811010,"package_name":"rubysl","ecosystem":"rubygems","requirements":"~\u003e 2.0","direct":true,"kind":"runtime","optional":false},{"id":990811011,"package_name":"rubysl-test-unit","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":990811012,"package_name":"rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"paranoia.gemspec","sha":null,"kind":"manifest","created_at":"2022-08-10T01:29:26.724Z","updated_at":"2022-08-10T01:29:26.724Z","repository_link":"https://github.com/rubysherpas/paranoia/blob/core/paranoia.gemspec","dependencies":[{"id":990811605,"package_name":"activerecord","ecosystem":"rubygems","requirements":"\u003e= 5.1, \u003c 7.1","direct":true,"kind":"runtime","optional":false},{"id":990811606,"package_name":"bundler","ecosystem":"rubygems","requirements":"\u003e= 1.0.0","direct":true,"kind":"development","optional":false},{"id":990811607,"package_name":"rake","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/build.yml","sha":null,"kind":"manifest","created_at":"2023-01-21T09:18:05.971Z","updated_at":"2023-01-21T09:18:05.971Z","repository_link":"https://github.com/rubysherpas/paranoia/blob/core/.github/workflows/build.yml","dependencies":[{"id":7076263163,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7076263164,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]}],"score":31.85257089291955,"created_at":"2024-12-15T21:38:07.670Z","updated_at":"2026-05-24T06:00:50.835Z","avatar_url":"https://github.com/rubysherpas.png","language":"Ruby","monthly_downloads":0,"readme":"[![Gem Version](https://badge.fury.io/rb/paranoia.svg)](https://badge.fury.io/rb/paranoia)\n[![build](https://github.com/rubysherpas/paranoia/actions/workflows/build.yml/badge.svg)](https://github.com/rubysherpas/paranoia/actions/workflows/build.yml)\n\n**Notice:**\n\n`paranoia` has some surprising behaviour (like overriding ActiveRecord's `delete` and `destroy`) and is not recommended for new projects. See [`discard`'s README](https://github.com/jhawthorn/discard#why-not-paranoia-or-acts_as_paranoid) for more details.\n\nParanoia will continue to accept bug fixes and support new versions of Rails but isn't accepting new features.\n\n# Paranoia\n\nParanoia is a re-implementation of [acts\\_as\\_paranoid](http://github.com/ActsAsParanoid/acts_as_paranoid) for Rails 3/4/5, using much, much, much less code.\n\nWhen your app is using Paranoia, calling `destroy` on an ActiveRecord object doesn't actually destroy the database record, but just *hides* it. Paranoia does this by setting a `deleted_at` field to the current time when you `destroy` a record, and hides it by scoping all queries on your model to only include records which do not have a `deleted_at` field.\n\nIf you wish to actually destroy an object you may call `really_destroy!`. **WARNING**: This will also *really destroy* all `dependent: :destroy` records, so please aim this method away from face when using.\n\nIf a record has `has_many` associations defined AND those associations have `dependent: :destroy` set on them, then they will also be soft-deleted if `acts_as_paranoid` is set, otherwise the normal destroy will be called. ***See [Destroying through association callbacks](#destroying-through-association-callbacks) for clarifying examples.***\n\n## Getting Started Video\nSetup and basic usage of the paranoia gem\n[GoRails #41](https://gorails.com/episodes/soft-delete-with-paranoia)\n\n## Installation \u0026 Usage\n\nFor Rails 3, please use version 1 of Paranoia:\n\n``` ruby\ngem \"paranoia\", \"~\u003e 1.0\"\n```\n\nFor Rails 4 and 5, please use version 2 of Paranoia (2.2 or greater required for rails 5):\n\n``` ruby\ngem \"paranoia\", \"~\u003e 2.2\"\n```\n\nOf course you can install this from GitHub as well from one of these examples:\n\n``` ruby\ngem \"paranoia\", github: \"rubysherpas/paranoia\", branch: \"rails3\"\ngem \"paranoia\", github: \"rubysherpas/paranoia\", branch: \"rails4\"\ngem \"paranoia\", github: \"rubysherpas/paranoia\", branch: \"rails5\"\n```\n\nThen run:\n\n``` shell\nbundle install\n```\n\nUpdating is as simple as `bundle update paranoia`.\n\n#### Run your migrations for the desired models\n\nRun:\n\n``` shell\nbin/rails generate migration AddDeletedAtToClients deleted_at:datetime:index\n```\n\nand now you have a migration\n\n``` ruby\nclass AddDeletedAtToClients \u003c ActiveRecord::Migration\n  def change\n    add_column :clients, :deleted_at, :datetime\n    add_index :clients, :deleted_at\n  end\nend\n```\n\n### Usage\n\n#### In your model:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid\n\n  # ...\nend\n```\n\nHey presto, it's there! Calling `destroy` will now set the `deleted_at` column:\n\n\n``` ruby\n\u003e\u003e client.deleted_at\n# =\u003e nil\n\u003e\u003e client.destroy\n# =\u003e client\n\u003e\u003e client.deleted_at\n# =\u003e [current timestamp]\n```\n\nIf you really want it gone *gone*, call `really_destroy!`:\n\n``` ruby\n\u003e\u003e client.deleted_at\n# =\u003e nil\n\u003e\u003e client.really_destroy!\n# =\u003e client\n```\n\nIf you need skip updating timestamps for deleting records, call `really_destroy!(update_destroy_attributes: false)`.\nWhen we call `really_destroy!(update_destroy_attributes: false)` on the parent `client`, then each child `email` will also have `really_destroy!(update_destroy_attributes: false)` called.\n\n``` ruby\n\u003e\u003e client.really_destroy!(update_destroy_attributes: false)\n# =\u003e client\n```\n\nIf you want to use a column other than `deleted_at`, you can pass it as an option:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid column: :destroyed_at\n\n  ...\nend\n```\n\n\nIf you want to skip adding the default scope:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid without_default_scope: true\n\n  ...\nend\n```\n\nIf you want to access soft-deleted associations, override the getter method:\n\n``` ruby\ndef product\n  Product.unscoped { super }\nend\n```\n\nIf you want to include associated soft-deleted objects, you can (un)scope the association:\n\n``` ruby\nclass Person \u003c ActiveRecord::Base\n  belongs_to :group, -\u003e { with_deleted }\nend\n\nPerson.includes(:group).all\n```\n\nIf you want to find all records, even those which are deleted:\n\n``` ruby\nClient.with_deleted\n```\n\nIf you want to exclude deleted records, when not able to use the default_scope (e.g. when using without_default_scope):\n\n``` ruby\nClient.without_deleted\n```\n\nIf you want to find only the deleted records:\n\n``` ruby\nClient.only_deleted\n```\n\nIf you want to check if a record is soft-deleted:\n\n``` ruby\nclient.paranoia_destroyed?\n# or\nclient.deleted?\n```\n\nIf you want to restore a record:\n\n``` ruby\nClient.restore(id)\n# or\nclient.restore\n```\n\nIf you want to restore a whole bunch of records:\n\n``` ruby\nClient.restore([id1, id2, ..., idN])\n```\n\nIf you want to restore a record and their dependently destroyed associated records:\n\n``` ruby\nClient.restore(id, :recursive =\u003e true)\n# or\nclient.restore(:recursive =\u003e true)\n```\n\nIf you want to restore a record and only those dependently destroyed associated records that were deleted within 2 minutes of the object upon which they depend:\n\n``` ruby\nClient.restore(id, :recursive =\u003e true, :recovery_window =\u003e 2.minutes)\n# or\nclient.restore(:recursive =\u003e true, :recovery_window =\u003e 2.minutes)\n```\n\nIf you want to trigger an after_commit callback when restoring a record:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid after_restore_commit: true\n\n  after_commit          :commit_called, on: :restore\n  # or\n  after_restore_commit  :commit_called\n  ...\nend\n```\n\nNote that by default paranoia will not prevent that a soft destroyed object can't be associated with another object of a different model.\nA Rails validator is provided should you require this functionality:\n  ``` ruby\nvalidates :some_assocation, association_not_soft_destroyed: true\n```\nThis validator makes sure that `some_assocation` is not soft destroyed. If the object is soft destroyed the main object is rendered invalid and an validation error is added.\n\nFor more information, please look at the tests.\n\n#### About indexes:\n\nBeware that you should adapt all your indexes for them to work as fast as previously.\nFor example,\n\n``` ruby\nadd_index :clients, :group_id\nadd_index :clients, [:group_id, :other_id]\n```\n\nshould be replaced with\n\n``` ruby\nadd_index :clients, :group_id, where: \"deleted_at IS NULL\"\nadd_index :clients, [:group_id, :other_id], where: \"deleted_at IS NULL\"\n```\n\nOf course, this is not necessary for the indexes you always use in association with `with_deleted` or `only_deleted`.\n\n##### Unique Indexes\n\nBecause NULL != NULL in standard SQL, we can not simply create a unique index\non the deleted_at column and expect it to enforce that there only be one record\nwith a certain combination of values.\n\nIf your database supports them, good alternatives include partial indexes\n(above) and indexes on computed columns. E.g.\n\n``` ruby\nadd_index :clients, [:group_id, 'COALESCE(deleted_at, false)'], unique: true\n```\n\nIf not, an alternative is to create a separate column which is maintained\nalongside deleted_at for the sake of enforcing uniqueness. To that end,\nparanoia makes use of two method to make its destroy and restore actions:\nparanoia_restore_attributes and paranoia_destroy_attributes.\n\n``` ruby\nadd_column :clients, :active, :boolean\nadd_index :clients, [:group_id, :active], unique: true\n\nclass Client \u003c ActiveRecord::Base\n  # optionally have paranoia make use of your unique column, so that\n  # your lookups will benefit from the unique index\n  acts_as_paranoid column: :active, sentinel_value: true\n\n  def paranoia_restore_attributes\n    {\n      deleted_at: nil,\n      active: true\n    }\n  end\n\n  def paranoia_destroy_attributes\n    {\n      deleted_at: current_time_from_proper_timezone,\n      active: nil\n    }\n  end\nend\n```\n\n##### Destroying through association callbacks\n\nWhen dealing with `dependent: :destroy` associations and `acts_as_paranoid`, it's important to remember that whatever method is called on the parent model will be called on the child model. For example, given both models of an association have `acts_as_paranoid` defined:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid\n\n  has_many :emails, dependent: :destroy\nend\n\nclass Email \u003c ActiveRecord::Base\n  acts_as_paranoid\n\n  belongs_to :client\nend\n```\n\nWhen we call `destroy` on the parent `client`, it will call `destroy` on all of its associated children `emails`:\n\n``` ruby\n\u003e\u003e client.emails.count\n# =\u003e 5\n\u003e\u003e client.destroy\n# =\u003e client\n\u003e\u003e client.deleted_at\n# =\u003e [current timestamp]\n\u003e\u003e Email.where(client_id: client.id).count\n# =\u003e 0\n\u003e\u003e Email.with_deleted.where(client_id: client.id).count\n# =\u003e 5\n```\n\nSimilarly, when we call `really_destroy!` on the parent `client`, then each child `email` will also have `really_destroy!` called:\n\n``` ruby\n\u003e\u003e client.emails.count\n# =\u003e 5\n\u003e\u003e client.id\n# =\u003e 12345\n\u003e\u003e client.really_destroy!\n# =\u003e client\n\u003e\u003e Client.find 12345\n# =\u003e ActiveRecord::RecordNotFound\n\u003e\u003e Email.with_deleted.where(client_id: client.id).count\n# =\u003e 0\n```\n\nHowever, if the child model `Email` does not have `acts_as_paranoid` set, then calling `destroy` on the parent `client` will also call `destroy` on each child `email`, thereby actually destroying them:\n\n``` ruby\nclass Client \u003c ActiveRecord::Base\n  acts_as_paranoid\n\n  has_many :emails, dependent: :destroy\nend\n\nclass Email \u003c ActiveRecord::Base\n  belongs_to :client\nend\n\n\u003e\u003e client.emails.count\n# =\u003e 5\n\u003e\u003e client.destroy\n# =\u003e client\n\u003e\u003e Email.where(client_id: client.id).count\n# =\u003e 0\n\u003e\u003e Email.with_deleted.where(client_id: client.id).count\n# =\u003e NoMethodError: undefined method `with_deleted' for #\u003cClass:0x0123456\u003e\n```\n\n#### delete_all:\n\nThe gem supports `delete_all` method, however it is disabled by default, to enable it add this in your `environment` file\n\n``` ruby\nParanoia.delete_all_enabled = true\n```\nalternatively, you can enable/disable it for specific models as follow:\n\n``` ruby\nclass User \u003c ActiveRecord::Base\n  acts_as_paranoid(delete_all_enabled: true)\nend\n```\n\n## Acts As Paranoid Migration\n\nYou can replace the older `acts_as_paranoid` methods as follows:\n\n| Old Syntax                 | New Syntax                     |\n|:-------------------------- |:------------------------------ |\n|`find_with_deleted(:all)`   | `Client.with_deleted`          |\n|`find_with_deleted(:first)` | `Client.with_deleted.first`    |\n|`find_with_deleted(id)`     | `Client.with_deleted.find(id)` |\n\n\nThe `recover` method in `acts_as_paranoid` runs `update` callbacks.  Paranoia's\n`restore` method does not do this.\n\n## Callbacks\n\nParanoia provides several callbacks. It triggers `destroy` callback when the record is marked as deleted and `real_destroy` when the record is completely removed from database. It also calls `restore` callback when the record is restored via paranoia\n\nFor example if you want to index your records in some search engine you can go like this:\n\n```ruby\nclass Product \u003c ActiveRecord::Base\n  acts_as_paranoid\n\n  after_destroy      :update_document_in_search_engine\n  after_restore      :update_document_in_search_engine\n  after_real_destroy :remove_document_from_search_engine\nend\n```\n\nYou can use these events just like regular Rails callbacks with before, after and around hooks.\n\n## License\n\nThis gem is released under the MIT license.\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["activerecord","activejob","mvc","rubygems","crash-reporting","rspec","sinatra","error-monitoring","rack","sidekiq"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/306","html_url":"https://ruby.ecosyste.ms/projects/306"}