{"id":123431,"url":"https://github.com/flavorjones/loofah","last_synced_at":"2026-08-13T17:03:33.239Z","repository":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-07-15T19:57:38.000Z","size":1273,"stargazers_count":1000,"open_issues_count":19,"forks_count":144,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-08-01T16:11:36.966Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-07-30T00:51:16.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36180044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-02T02:00:06.915Z","response_time":58,"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":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"packages":[{"id":247784,"name":"loofah","ecosystem":"rubygems","description":"Loofah is a general library for manipulating and transforming HTML/XML documents and fragments,\nbuilt on top of Nokogiri.\n\nLoofah also includes some HTML sanitizers based on `html5lib`'s safelist, which are a specific\napplication of the general transformation functionality.\n","homepage":"https://github.com/flavorjones/loofah","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":[],"namespace":null,"versions_count":65,"first_release_published_at":"2009-08-18T05:20:14.000Z","latest_release_published_at":"2026-07-15T19:57:51.152Z","latest_release_number":"2.25.2","last_synced_at":"2026-08-13T04:26:08.846Z","created_at":"2022-04-06T03:36:21.692Z","updated_at":"2026-08-13T14:25:03.965Z","registry_url":"https://rubygems.org/gems/loofah","install_command":"gem install loofah -s https://rubygems.org","documentation_url":"http://www.rubydoc.info/gems/loofah/","metadata":{"funding":"https://github.com/sponsors/flavorjones"},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-07-15T19:57:38.000Z","size":1273,"stargazers_count":1000,"open_issues_count":19,"forks_count":144,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-08-01T16:11:36.966Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-07-30T00:51:16.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36180044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-02T02:00:06.915Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"tags":[{"name":"v2.25.2","sha":"2706d7e858426ba856d9711b0e761b2fee7986c4","kind":"commit","published_at":"2026-07-15T19:57:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.2/manifests"},{"name":"v2.25.1","sha":"c895c8b2ac9c7255ca10c4e3083b8f0b019b7189","kind":"commit","published_at":"2026-03-17T17:34:45.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.1/manifests"},{"name":"v2.25.0","sha":"e65bdddfd3381f3a131be7e137d89bb3959c072b","kind":"commit","published_at":"2025-12-15T21:16:48.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0/manifests"},{"name":"v2.24.1","sha":"6cadc8adf635d790faba337ffc8086ad0da4689e","kind":"commit","published_at":"2025-05-12T12:31:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1/manifests"},{"name":"v2.24.0","sha":"85990602c6fdb40489138e80080ca508200c7137","kind":"commit","published_at":"2025-01-01T03:03:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0/manifests"},{"name":"v2.23.1","sha":"3c09a938a16e19388bb7d15978b5960cf08de694","kind":"commit","published_at":"2024-10-25T12:43:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1/manifests"},{"name":"v2.23.0","sha":"5ac17a8f46a2ebf8453b7bc41539c5de06738425","kind":"commit","published_at":"2024-10-24T12:57:49.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0/manifests"},{"name":"v2.22.0","sha":"cb14ea7c03649504feb5491ea2e874fe13a4c353","kind":"commit","published_at":"2023-11-13T21:39:10.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.22.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0/manifests"},{"name":"v2.21.4","sha":"992b0549326923c84f8ffea5fde67a9b1b685184","kind":"commit","published_at":"2023-10-10T17:54:25.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4/manifests"},{"name":"v2.21.3","sha":"e34118a5843f6a8fed7358ac0ed0a208a89fd4b6","kind":"commit","published_at":"2023-05-15T21:09:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3/manifests"},{"name":"v2.21.2","sha":"712067b1deb8de178d7edea3abdd798457656b7a","kind":"commit","published_at":"2023-05-11T15:38:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2/manifests"},{"name":"v2.21.1","sha":"bb6653d0909cf599a1f37f52c0c94cbdcb043478","kind":"commit","published_at":"2023-05-10T14:38:23.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1/manifests"},{"name":"v2.21.0","sha":"a9b51f497bade7747d78546fcae4cf3219317c8c","kind":"commit","published_at":"2023-05-10T13:49:07.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0/manifests"},{"name":"v2.21.0.rc1","sha":"4b1f3f3423a6c644d3564d97443d0c87a7ad0132","kind":"commit","published_at":"2023-04-03T02:19:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1/manifests"},{"name":"v2.20.0","sha":"3d80a4eb2745e466c4f7958cb838ce3806ecbff7","kind":"commit","published_at":"2023-04-01T17:04:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.20.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0/manifests"},{"name":"v2.19.1","sha":"3f8806300089135f7832a59aa2689a6674d37897","kind":"commit","published_at":"2022-12-12T22:16:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1/manifests"},{"name":"v2.19.0","sha":"0dca6009d590e703b7b1dc464728a1654115edb3","kind":"commit","published_at":"2022-09-14T13:37:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0/manifests"},{"name":"v2.18.0","sha":"a0caaf0fb7d83a65f9f31a5f43f0b32958b224cb","kind":"commit","published_at":"2022-05-11T18:40:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.18.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"22fcddaf691928eeed949a8b7fc82a71d50f77f7","kind":"commit","published_at":"2022-04-28T13:34:24.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.17.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0/manifests"},{"name":"v2.16.0","sha":"931ed84998ca27ed1b9ab0198bc4d07681155e97","kind":"commit","published_at":"2022-04-01T18:16:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.16.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0/manifests"},{"name":"v2.15.0","sha":"e644c1c94aaee3ea7de573aa1316d170f12cd93b","kind":"commit","published_at":"2022-03-14T17:08:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.15.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0/manifests"},{"name":"v2.14.0","sha":"f80055aad1ab535b65e3fe3a6224f3e02668bc4b","kind":"commit","published_at":"2022-02-11T19:08:09.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.14.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"e595467bfe88c8a5b45d557a8e943bfb27bc2c1c","kind":"commit","published_at":"2021-12-10T05:20:21.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.13.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0/manifests"},{"name":"v2.12.0","sha":"08cc49f43073ce71b2eab4e00f95e62dd0150fdd","kind":"commit","published_at":"2021-08-11T17:29:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.12.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0/manifests"},{"name":"v2.11.0","sha":"a8199d235e4533fc2096d2b4acbbbb5ecf4a4c83","kind":"commit","published_at":"2021-07-31T21:29:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.11.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"6820f9f62c3c145386ec8994442e482ef6ba8a37","kind":"commit","published_at":"2021-06-06T17:00:15.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.10.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0/manifests"},{"name":"v2.9.1","sha":"4a6be028e32b24fe543e0d77c4a998e61ae7a9b5","kind":"commit","published_at":"2021-04-07T15:17:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1/manifests"},{"name":"v2.9.0","sha":"b18e3dc6c65209deadd2aadcd38774b456aa3001","kind":"commit","published_at":"2021-01-14T21:35:53.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0/manifests"},{"name":"v2.8.0","sha":"e051fe82153480dba7dc3255d72239bc977869ea","kind":"commit","published_at":"2020-11-25T21:11:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.8.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"029a49636ef64137b40d066633a7836a0ae02a84","kind":"commit","published_at":"2020-08-26T19:31:57.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.7.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0/manifests"},{"name":"v2.6.0","sha":"e48f298e5a3d2dd85cf882e7ced720cc0ca32027","kind":"commit","published_at":"2020-06-16T21:21:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.6.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0/manifests"},{"name":"v2.5.0","sha":"2595827d3e61d852ddbe533bb267ecbd15654dc0","kind":"commit","published_at":"2020-04-05T20:50:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.5.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0/manifests"},{"name":"v2.4.0","sha":"724ac1c9d689e1fdce9542816909a12632cf410f","kind":"commit","published_at":"2019-11-25T18:08:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"83df303aa14d58f76349b59e6917ae61ce011a83","kind":"commit","published_at":"2019-10-22T13:07:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"f6d4c2d1b094e33848ed454f4a69f3c12cd44084","kind":"commit","published_at":"2019-09-28T17:31:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0/manifests"},{"name":"v2.2.3","sha":"cb3dbfa604195b99b3a811e040584daec7663504","kind":"commit","published_at":"2018-10-30T12:56:28.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"37af4ee08f9e9531e24287c2783a79d331fc9243","kind":"commit","published_at":"2018-03-22T15:07:59.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"7541374548ee9be53c463a3172cf4d28356ebe1c","kind":"commit","published_at":"2018-03-19T20:22:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"adc0c3ffd5a704a346a7fb4f7eff4d53a8613303","kind":"commit","published_at":"2018-02-11T22:22:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"4aea261a306164ee7ce62b551162d6f9766aebc2","kind":"commit","published_at":"2017-09-25T01:10:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"680f1655927867e50a082706908a8c4b9a63e28d","kind":"commit","published_at":"2017-09-24T20:45:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0/manifests"},{"name":"v2.1.0.rc2","sha":"17e16f3e96fe5884f92623f95dab3f527d6f5263","kind":"commit","published_at":"2016-01-11T18:28:38.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2/manifests"},{"name":"v2.1.0.rc1","sha":"756f956566c8e48905fcf2da7fc5ce886e5e8860","kind":"commit","published_at":"2015-08-17T23:21:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1/manifests"},{"name":"v2.0.3","sha":"4887e62da44a5ae772d52f028ee25019e6c3626d","kind":"commit","published_at":"2015-08-17T18:09:31.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"1e451b4104dc82f42b1358543c5a635ee9909c98","kind":"commit","published_at":"2015-05-05T19:58:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1e1637cafd32e98957c04550bfb8662b67e3fd6d","kind":"commit","published_at":"2014-08-21T21:25:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"d7b11be917a307b6f153dc6d4d36f48830958eb2","kind":"commit","published_at":"2014-05-09T22:49:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"eafd2b2e6a7247c451a01ae861b2ff233a9dfd19","kind":"commit","published_at":"2012-04-14T18:59:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"3cd2b206bf36dae5ee33e2ef6adcf77bf1a28eb0","kind":"tag","published_at":"2011-08-08T16:53:56.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"01687df5a0ee82098d869930f997a52ce7af394c","kind":"tag","published_at":"2011-08-08T05:22:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ce7ba2ff83182998aad9edabb7a5b9ca4c614ff0","kind":"commit","published_at":"2010-10-26T04:51:27.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0/manifests"},{"name":"v1.0.0.beta.1","sha":"a8091ca5fd6522b3675d2f3e1e8d48894c5ce69b","kind":"commit","published_at":"2010-07-21T06:53:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0.beta.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0.beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0.beta.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1/manifests"},{"name":"v0.4.7","sha":"2a08fd2dd08a18b33065bb5f9fa79bff8390a551","kind":"commit","published_at":"2010-03-09T20:45:46.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.7","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7/manifests"},{"name":"v0.4.6","sha":"cfdad6b5641ea32782ad1c044fc5a18a6255b05c","kind":"commit","published_at":"2010-02-02T14:54:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.6","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6/manifests"},{"name":"v0.4.5","sha":"ac9eeed98563db8cfc2dc06de70d5f289072f305","kind":"commit","published_at":"2010-02-02T12:27:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.5","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5/manifests"},{"name":"v0.4.4","sha":"c70fceff81b37c00432dd6a1263225d9a3822bac","kind":"commit","published_at":"2010-02-01T21:59:18.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4/manifests"},{"name":"v0.4.3","sha":"688d2fdfcabf2ac714ab90396757e5f12f7c02e6","kind":"commit","published_at":"2010-01-31T20:17:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c5cf60e90805deb30d0c82119fff52b02c7dff28","kind":"commit","published_at":"2010-01-24T03:53:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"6ea20b8dddefe807a17249cebd60769186a71a40","kind":"commit","published_at":"2009-11-23T12:16:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"da0f050dfde4347e88414bfe37dc74e2b8bda17e","kind":"commit","published_at":"2009-11-22T03:51:52.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0/manifests"},{"name":"v0.3.1","sha":"9c41b488c56c8793f6f6381ca2a3cfde63ce0a1c","kind":"commit","published_at":"2009-10-13T03:08:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"50069295ea53b13f103785c53ff9723a0f384ac6","kind":"commit","published_at":"2009-10-06T22:46:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"5189bb0f6d555da3e3815d493e93ed51cc529a0b","kind":"commit","published_at":"2009-08-31T03:49:14.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"08c27c0e35ce0b60e8c92c8954886643ed793937","kind":"commit","published_at":"2009-08-19T05:56:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"24e03120e0a8042b261596e0f83bb61a989e0485","kind":"commit","published_at":"2009-08-11T05:35:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0/manifests"}]},"repo_metadata_updated_at":"2026-08-13T04:26:08.721Z","dependent_packages_count":88,"downloads":731418378,"downloads_period":"total","dependent_repos_count":519899,"rankings":{"downloads":0.028991648175198764,"dependent_repos_count":0.02787658478384496,"dependent_packages_count":0.3534750950591541,"stargazers_count":1.963626632174039,"forks_count":2.2212062755767663,"docker_downloads_count":0.1444007091803169,"average":0.7899294908248867},"purl":"pkg:gem/loofah","advisories":[{"uuid":"GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","url":"https://github.com/advisories/GHSA-5qhf-9phg-95m2","title":"Loofah `allowed_uri?` does not detect `javascript:` URIs split by numeric character references without semicolons","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` or `vbscript:` URIs when the scheme is split by a numeric character reference that has no trailing semicolon. A browser decodes such references and resolves the URL to an executable `javascript:` scheme, while `allowed_uri?` reports it safe.\n\nThis is a bypass of the fix for [GHSA-46fp-8f5p-pf2m](https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m), which handled numeric character references with a trailing `;` (`\u0026#9;`, `\u0026#10;`, `\u0026#13;`) but did not cover the forms without semicolons.\n\n## Details\n\n`allowed_uri?` decodes HTML entities with `CGI.unescapeHTML`, which decodes numeric character references only when they carry a trailing `;`. A reference without a semicolon such as `\u0026#58` (colon) or `\u0026#9` (tab) is left literal, so the scheme-detection check finds no scheme, and the method falls through to its scheme-less path and returns `true`.\n\nA browser, however, decodes numeric character references even without a trailing semicolon. An encoded colon such as `\u0026#58` becomes the `:` scheme separator, so `javascript\u0026#58alert(1)` resolves to `javascript:alert(1)`. Encoded whitespace such as `\u0026#9` (tab) is decoded and then stripped from the URL, rejoining the surrounding text, so `java\u0026#9script:alert(1)` also resolves to `javascript:alert(1)`. In both cases the URL executes while `allowed_uri?` approved it as safe.\n\nNote that Loofah's default `sanitize()` path is **not** affected, because Nokogiri decodes or entity-escapes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects callers of the public `allowed_uri?` string-level helper that pass it HTML-encoded strings.\n\n## Impact\n\nCallers that validate a user-controlled URL with `Loofah::HTML5::Scrub.allowed_uri?` and then render the approved value into an `href` or other browser-interpreted URI attribute may be vulnerable to cross-site scripting (XSS). This includes applications that call `allowed_uri?` directly, as well as higher-level features built on top of it, such as Action Text 8.2's markdown link validation.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nResponsibly reported by GitHub user @MoonFuji.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-07-21T22:03:11.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-5qhf-9phg-95m2","https://github.com/flavorjones/loofah/commit/f1be9d893b5a8dd79240441a912d8897e74c38c0","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-5qhf-9phg-95m2"],"source_kind":"github","identifiers":["GHSA-5qhf-9phg-95m2"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T23:00:09.238Z","updated_at":"2026-07-23T21:00:11.960Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003e= 2.25.0, \u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","url":"https://github.com/advisories/GHSA-9wjq-cp2p-hrgf","title":"Loofah: SVG `href` attribute bypasses local-reference restriction","description":"## Summary\n\nLoofah's HTML5 sanitizer restricted only the `xlink:href` attribute on certain SVG elements to local, same-document references. Browsers also accept a plain `href` attribute as an alternative to the deprecated `xlink:href` per the SVG 2 spec, but Loofah did not apply the same restriction to it, allowing those elements to reference arbitrary external documents.\n\n## Impact\n\nSVG `\u003cuse\u003e` can load and render external SVG content by reference. If the referenced external SVG is same-origin and contains scripts or other dangerous content, it could execute in the context of the sanitized document. `\u003cfeImage\u003e` can load external images, which can be used for tracking. Modern browsers restrict cross-origin `\u003cuse\u003e` fetches, which limits but does not eliminate the risk.\n\nApplications that sanitize user-supplied SVG (directly, or as part of HTML) with Loofah's default allowlist are affected.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nFound by the maintainer, Mike Dalessio, during a security audit.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2026-07-21T22:01:58.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":4.7,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-9wjq-cp2p-hrgf","https://github.com/flavorjones/loofah/commit/20867b9be689521887364b74822c41ef830523c9","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-9wjq-cp2p-hrgf"],"source_kind":"github","identifiers":["GHSA-9wjq-cp2p-hrgf","CVE-2026-73490"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T23:00:09.238Z","updated_at":"2026-08-13T14:00:55.661Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","url":"https://github.com/advisories/GHSA-8whx-365g-h9vv","title":"Loofah `allowed_uri?` does not detect `javascript:` URIs split by named whitespace character references","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split or prefixed by the HTML5 named character references `\u0026Tab;` (tab) or `\u0026NewLine;` (line feed).\n\nThis is a bypass of the fix for [GHSA-46fp-8f5p-pf2m](https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m), which handled the equivalent numeric character references (`\u0026#9;`, `\u0026#10;`, `\u0026#13;`) but did not cover the named forms.\n\n## Details\n\n`allowed_uri?` decodes HTML entities with `CGI.unescapeHTML`, which handles numeric character references but not HTML5 named character references. Payloads like `java\u0026Tab;script:alert(1)` are therefore left intact, so the method does not recognize the `javascript:` scheme and returns `true`. A browser, however, decodes `\u0026Tab;` and `\u0026NewLine;` to tab and line feed and strips them from the URL during parsing, producing `javascript:alert(1)`.\n\n`\u0026Tab;` and `\u0026NewLine;` are the only relevant named character references: across the HTML5 named-character table, they are the only two that decode to characters the WHATWG URL parser strips from a URL (U+0009 and U+000A; there is no named reference for U+000D). `\u0026nbsp;` / `\u0026NonBreakingSpace;` decode to U+00A0, which browsers do not strip, so they aren't usable for this bypass.\n\nNote that Loofah's default `sanitize()` path is **not** affected, because Nokogiri decodes or entity-escapes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects callers of the public `allowed_uri?` string-level helper that pass it HTML-encoded strings.\n\n## Impact\n\nCallers that validate a user-controlled URL with `Loofah::HTML5::Scrub.allowed_uri?` and then render the approved value into an `href` or other browser-interpreted URI attribute may be vulnerable to cross-site scripting (XSS). This includes applications that call `allowed_uri?` directly, as well as higher-level features built on top of it, such as Action Text 8.2's markdown link validation.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nResponsibly reported by GitHub user @connorshea.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-07-21T15:04:14.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-8whx-365g-h9vv","https://github.com/flavorjones/loofah/commit/5e91af861e3cdab47b91dd0b81f3afdfd13a5e19","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-8whx-365g-h9vv"],"source_kind":"github","identifiers":["GHSA-8whx-365g-h9vv","CVE-2026-73491"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T16:00:07.803Z","updated_at":"2026-08-13T14:01:00.531Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003e= 2.25.0, \u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","url":"https://github.com/advisories/GHSA-2j22-pr5w-6gq8","title":"Loofah has improper detection of disallowed URIs via `allowed_uri?`","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split by HTML entity-encoded control characters such as `\u0026#13;` (carriage return), `\u0026#10;` (line feed), or `\u0026#9;` (tab).\n\n## Details\n\nThe `allowed_uri?` method strips literal control characters before decoding HTML entities. Payloads like `java\u0026#13;script:alert(1)` survive the control character strip, then `\u0026#13;` is decoded to a carriage return, producing `java\\rscript:alert(1)`.\n\nNote that the Loofah sanitizer's default `sanitize()` path is **not affected** because Nokogiri decodes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects direct callers of the `allowed_uri?` string-level helper when passing HTML-encoded strings.\n\n## Impact\n\nApplications that call `Loofah::HTML5::Scrub.allowed_uri?` to validate user-controlled URLs and then render approved URLs into `href` or other browser-interpreted URI attributes may be vulnerable to cross-site scripting (XSS).\n\nThis only affects Loofah `2.25.0`.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= `2.25.1`.\n\n## Credit\n\nResponsibly reported by HackOne user @smlee.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-03-26T22:19:02.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m","https://github.com/flavorjones/loofah/commit/f4ebc9c5193dde759a57541062e490e86fc7c068","https://github.com/flavorjones/loofah/releases/tag/v2.25.1","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/GHSA-46fp-8f5p-pf2m.yml","https://github.com/advisories/GHSA-2j22-pr5w-6gq8"],"source_kind":"github","identifiers":["GHSA-2j22-pr5w-6gq8"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-03-26T23:00:10.996Z","updated_at":"2026-07-19T12:02:11.181Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.1","vulnerable_version_range":"= 2.25.0"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","url":"https://github.com/advisories/GHSA-46fp-8f5p-pf2m","title":"Improper detection of disallowed URIs by Loofah `allowed_uri?`","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split by HTML entity-encoded control characters such as `\u0026#13;` (carriage return), `\u0026#10;` (line feed), or `\u0026#9;` (tab).\n\n## Details\n\nThe `allowed_uri?` method strips literal control characters before decoding HTML entities. Payloads like `java\u0026#13;script:alert(1)` survive the control character strip, then `\u0026#13;` is decoded to a carriage return, producing `java\\rscript:alert(1)`.\n\nNote that the Loofah sanitizer's default `sanitize()` path is **not affected** because Nokogiri decodes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects direct callers of the `allowed_uri?` string-level helper when passing HTML-encoded strings.\n\n## Impact\n\nApplications that call `Loofah::HTML5::Scrub.allowed_uri?` to validate user-controlled URLs and then render approved URLs into `href` or other browser-interpreted URI attributes may be vulnerable to cross-site scripting (XSS).\n\nThis only affects Loofah `2.25.0`.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= `2.25.1`.\n\n## Credit\n\nResponsibly reported by HackOne user `@smlee`.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-03-18T17:26:48.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.7,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:U","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m","https://github.com/advisories/GHSA-46fp-8f5p-pf2m"],"source_kind":"github","identifiers":["GHSA-46fp-8f5p-pf2m"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-03-18T18:00:10.862Z","updated_at":"2026-07-19T12:02:21.790Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.1","vulnerable_version_range":"= 2.25.0"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","url":"https://github.com/advisories/GHSA-3x8r-x6xp-q4vm","title":"Uncontrolled Recursion in Loofah","description":"## Summary\n\nLoofah `\u003e= 2.2.0, \u003c 2.19.1` uses recursion for sanitizing `CDATA` sections, making it susceptible to stack exhaustion and raising a `SystemStackError` exception.  This may lead to a denial of service through CPU resource consumption.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\nUsers who are unable to upgrade may be able to mitigate this vulnerability by limiting the length of the strings that are sanitized.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [High Severity 7.5 (CVSS3.1)](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).\n\n\n## References\n\n- [CWE - CWE-674: Uncontrolled Recursion (4.9)](https://cwe.mitre.org/data/definitions/674.html)","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2022-12-13T17:40:50.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-3x8r-x6xp-q4vm","https://github.com/flavorjones/loofah/commit/86f7f6364491b0099d215db858ecdc0c89ded040","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23516.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23516","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-3x8r-x6xp-q4vm"],"source_kind":"github","identifiers":["GHSA-3x8r-x6xp-q4vm","CVE-2022-23516"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.424Z","updated_at":"2026-08-13T14:17:19.364Z","epss_percentage":0.01104,"epss_percentile":0.62505,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003e= 2.2.0, \u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","url":"https://github.com/advisories/GHSA-228g-948r-83gx","title":"Improper neutralization of data URIs may allow XSS in Loofah","description":"## Summary\n\nLoofah `\u003e= 2.1.0, \u003c 2.19.1` is vulnerable to cross-site scripting via the `image/svg+xml` media type in data URIs.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [Medium Severity 6.1](https://www.first.org/cvss/calculator/3.0#CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N).\n\n\n## References\n\n- [CWE - CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (4.9)](https://cwe.mitre.org/data/definitions/79.html)\n- [SVG MIME Type (image/svg+xml) is misleading to developers · Issue #266 · w3c/svgwg](https://github.com/w3c/svgwg/issues/266)\n- https://hackerone.com/reports/1694173\n- https://github.com/flavorjones/loofah/issues/101\n\n## Credit\n\nThis vulnerability was responsibly reported by Maciej Piechota (@haqpl).","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2022-12-13T17:39:36.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.1,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-228g-948r-83gx","https://github.com/flavorjones/loofah/issues/101","https://github.com/w3c/svgwg/issues/266","https://github.com/flavorjones/loofah/commit/415677f3cf7f9254f42f811e784985cd63c7407f","https://hackerone.com/reports/1694173","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23515.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23515","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-228g-948r-83gx"],"source_kind":"github","identifiers":["GHSA-228g-948r-83gx","CVE-2022-23515"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.434Z","updated_at":"2026-07-29T14:13:27.081Z","epss_percentage":0.00792,"epss_percentile":0.52508,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003e= 2.1.0, \u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","url":"https://github.com/advisories/GHSA-486f-hjj9-9vhh","title":"Inefficient Regular Expression Complexity in Loofah","description":"## Summary\n\nLoofah `\u003c 2.19.1` contains an inefficient regular expression that is susceptible to excessive backtracking when attempting to sanitize certain SVG attributes. This may lead to a denial of service through CPU resource consumption.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [High Severity 7.5 (CVSS3.1)](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).\n\n\n## References\n\n- [CWE - CWE-1333: Inefficient Regular Expression Complexity (4.9)](https://cwe.mitre.org/data/definitions/1333.html)\n- https://hackerone.com/reports/1684163\n\n\n## Credit\n\nThis vulnerability was responsibly reported by @ooooooo-q (https://github.com/ooooooo-q).","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2022-12-13T17:36:28.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-486f-hjj9-9vhh","https://github.com/flavorjones/loofah/commit/a6e0a1ab90675a17b1b2be189129d94139e4b143","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23514.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23514","https://hackerone.com/reports/1684163","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-486f-hjj9-9vhh"],"source_kind":"github","identifiers":["GHSA-486f-hjj9-9vhh","CVE-2022-23514"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.444Z","updated_at":"2026-07-23T21:10:23.548Z","epss_percentage":0.01686,"epss_percentile":0.74513,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","url":"https://github.com/advisories/GHSA-c3gv-9cxf-6f57","title":"Loofah Allows Cross-site Scripting","description":"In the Loofah gem for Ruby through v2.3.0, unsanitized JavaScript may occur in sanitized output when a crafted SVG element is republished.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2019-11-05T23:58:25.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":5.4,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2019-15587","https://github.com/flavorjones/loofah/issues/171","https://hackerone.com/reports/709009","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4WK2UG7ORKRQOJ6E4XJ2NVIHYJES6BYZ/","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XMCWPLYPNIWYAY443IZZJ4IHBBLIHBP5/","https://security.netapp.com/advisory/ntap-20191122-0003/","https://usn.ubuntu.com/4498-1/","https://www.debian.org/security/2019/dsa-4554","https://github.com/flavorjones/loofah/commit/0c6617af440879ce97440f6eb6c58636456dc8ec","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2019-15587.yml","https://github.com/advisories/GHSA-c3gv-9cxf-6f57"],"source_kind":"github","identifiers":["GHSA-c3gv-9cxf-6f57","CVE-2019-15587"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:27.644Z","updated_at":"2026-08-13T14:18:00.414Z","epss_percentage":0.01561,"epss_percentile":0.72986,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.3.1","vulnerable_version_range":"\u003c 2.3.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","url":"https://github.com/advisories/GHSA-g4xq-jx4w-4cjv","title":"Loofah Cross-site Scripting vulnerability","description":"In the Loofah gem for Ruby, through version 2.2.2, unsanitized JavaScript may occur in sanitized output when a crafted SVG element is republished. Users are advised to upgrade to version 2.2.3.\n\nSee https://github.com/flavorjones/loofah/issues/154 for more details.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2018-11-01T14:46:01.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":5.4,"cvss_vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2018-16468","https://github.com/flavorjones/loofah/issues/154","https://www.debian.org/security/2019/dsa-4364","https://github.com/advisories/GHSA-g4xq-jx4w-4cjv"],"source_kind":"github","identifiers":["GHSA-g4xq-jx4w-4cjv","CVE-2018-16468"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:33.898Z","updated_at":"2026-08-13T14:24:48.097Z","epss_percentage":0.00915,"epss_percentile":0.56945,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.2.3","vulnerable_version_range":"\u003c 2.2.3"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","url":"https://github.com/advisories/GHSA-x7rv-cr6v-4vm4","title":"Cross-site Scripting in loofah","description":"Loofah allows non-whitelisted attributes to be present in sanitized output when input with specially-crafted HTML fragments.\n\nUsers are affected if running Loofah \u003c 2.2.1, but only:\n\n* when running on MRI or RBX,\n* in combination with libxml2 \u003e= 2.9.2.\n\nJRuby users are not affected.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2018-03-21T11:57:11.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.1,"cvss_vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2018-8048","https://github.com/flavorjones/loofah/issues/144","https://github.com/advisories/GHSA-x7rv-cr6v-4vm4","https://security.netapp.com/advisory/ntap-20191122-0003/","https://www.debian.org/security/2018/dsa-4171","http://www.openwall.com/lists/oss-security/2018/03/19/5","https://github.com/flavorjones/loofah/commit/f739cf8eac5851f328b8044281d6653f74eff116","https://github.com/sparklemotion/nokogiri/pull/1746","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2018-8048.yml","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/nokogiri/CVE-2018-8048.yml"],"source_kind":"github","identifiers":["GHSA-x7rv-cr6v-4vm4","CVE-2018-8048"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:37.316Z","updated_at":"2026-08-13T14:24:55.706Z","epss_percentage":0.01962,"epss_percentile":0.78523,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.2.1","vulnerable_version_range":"\u003c 2.2.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00/related_packages","related_advisories":[]}],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/loofah","docker_dependents_count":1359,"docker_downloads_count":821074725,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":true,"issue_metadata":{"last_synced_at":"2026-08-12T16:33:36.201Z","issues_count":49,"pull_requests_count":108,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":2922431.44,"issues_closed_count":37,"pull_requests_closed_count":100,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":1.7314814814814814,"merged_pull_requests_count":78,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":2,"past_year_pull_requests_count":6,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":13784.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":1.3333333333333333,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":63,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/loofah/codemeta","maintainers":[{"uuid":"2583","login":"flavorjones","name":null,"email":null,"url":null,"packages_count":48,"html_url":"https://rubygems.org/profiles/flavorjones","role":null,"created_at":"2022-11-09T09:39:16.336Z","updated_at":"2022-11-09T09:39:16.336Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/flavorjones/packages"},{"uuid":"1997","login":"brynary","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://rubygems.org/profiles/brynary","role":null,"created_at":"2022-11-09T09:39:16.433Z","updated_at":"2022-11-09T09:39:16.433Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/brynary/packages"}],"registry":{"name":"rubygems.org","url":"https://rubygems.org","ecosystem":"rubygems","default":true,"packages_count":210498,"maintainers_count":69457,"namespaces_count":0,"keywords_count":19391,"github":"rubygems","metadata":{"funded_packages_count":7917},"icon_url":"https://github.com/rubygems.png","created_at":"2022-04-04T15:19:23.446Z","updated_at":"2026-08-12T05:03:25.267Z","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":14513846,"name":"dev-ruby/loofah","ecosystem":"gentoo","description":"Library for manipulating and transforming HTML/XML documents and fragments","homepage":"https://github.com/flavorjones/loofah","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["~amd64","~arm","~arm64","~hppa","~ppc","~ppc64","~riscv","~sparc","~x86"],"namespace":"dev-ruby","versions_count":3,"first_release_published_at":"2026-05-02T10:08:13.000Z","latest_release_published_at":"2026-05-02T10:08:13.000Z","latest_release_number":"2.25.0","last_synced_at":"2026-07-28T01:17:17.119Z","created_at":"2026-05-27T02:46:58.992Z","updated_at":"2026-07-28T01:17:17.119Z","registry_url":"https://packages.gentoo.org/packages/dev-ruby/loofah","install_command":"emerge dev-ruby/loofah","documentation_url":"https://packages.gentoo.org/packages/dev-ruby/loofah","metadata":{"category":"dev-ruby","slot":"0","eapi":"8","inherit":"ruby-fakegem","iuse":"test ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 ruby_targets_ruby40 doc test test"},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-07-15T19:57:38.000Z","size":1273,"stargazers_count":998,"open_issues_count":19,"forks_count":144,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-25T10:33:44.439Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-07-25T09:25:40.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35877013,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-25T02:00:06.922Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"tags":[{"name":"v2.25.0","sha":"e65bdddfd3381f3a131be7e137d89bb3959c072b","kind":"commit","published_at":"2025-12-15T21:16:48.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0/manifests"},{"name":"v2.24.1","sha":"6cadc8adf635d790faba337ffc8086ad0da4689e","kind":"commit","published_at":"2025-05-12T12:31:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1/manifests"},{"name":"v2.24.0","sha":"85990602c6fdb40489138e80080ca508200c7137","kind":"commit","published_at":"2025-01-01T03:03:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0/manifests"},{"name":"v2.23.1","sha":"3c09a938a16e19388bb7d15978b5960cf08de694","kind":"commit","published_at":"2024-10-25T12:43:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1/manifests"},{"name":"v2.23.0","sha":"5ac17a8f46a2ebf8453b7bc41539c5de06738425","kind":"commit","published_at":"2024-10-24T12:57:49.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0/manifests"},{"name":"v2.22.0","sha":"cb14ea7c03649504feb5491ea2e874fe13a4c353","kind":"commit","published_at":"2023-11-13T21:39:10.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.22.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0/manifests"},{"name":"v2.21.4","sha":"992b0549326923c84f8ffea5fde67a9b1b685184","kind":"commit","published_at":"2023-10-10T17:54:25.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4/manifests"},{"name":"v2.21.3","sha":"e34118a5843f6a8fed7358ac0ed0a208a89fd4b6","kind":"commit","published_at":"2023-05-15T21:09:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3/manifests"},{"name":"v2.21.2","sha":"712067b1deb8de178d7edea3abdd798457656b7a","kind":"commit","published_at":"2023-05-11T15:38:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2/manifests"},{"name":"v2.21.1","sha":"bb6653d0909cf599a1f37f52c0c94cbdcb043478","kind":"commit","published_at":"2023-05-10T14:38:23.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1/manifests"},{"name":"v2.21.0","sha":"a9b51f497bade7747d78546fcae4cf3219317c8c","kind":"commit","published_at":"2023-05-10T13:49:07.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0/manifests"},{"name":"v2.21.0.rc1","sha":"4b1f3f3423a6c644d3564d97443d0c87a7ad0132","kind":"commit","published_at":"2023-04-03T02:19:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1/manifests"},{"name":"v2.20.0","sha":"3d80a4eb2745e466c4f7958cb838ce3806ecbff7","kind":"commit","published_at":"2023-04-01T17:04:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.20.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0/manifests"},{"name":"v2.19.1","sha":"3f8806300089135f7832a59aa2689a6674d37897","kind":"commit","published_at":"2022-12-12T22:16:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1/manifests"},{"name":"v2.19.0","sha":"0dca6009d590e703b7b1dc464728a1654115edb3","kind":"commit","published_at":"2022-09-14T13:37:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0/manifests"},{"name":"v2.18.0","sha":"a0caaf0fb7d83a65f9f31a5f43f0b32958b224cb","kind":"commit","published_at":"2022-05-11T18:40:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.18.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"22fcddaf691928eeed949a8b7fc82a71d50f77f7","kind":"commit","published_at":"2022-04-28T13:34:24.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.17.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0/manifests"},{"name":"v2.16.0","sha":"931ed84998ca27ed1b9ab0198bc4d07681155e97","kind":"commit","published_at":"2022-04-01T18:16:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.16.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0/manifests"},{"name":"v2.15.0","sha":"e644c1c94aaee3ea7de573aa1316d170f12cd93b","kind":"commit","published_at":"2022-03-14T17:08:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.15.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0/manifests"},{"name":"v2.14.0","sha":"f80055aad1ab535b65e3fe3a6224f3e02668bc4b","kind":"commit","published_at":"2022-02-11T19:08:09.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.14.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"e595467bfe88c8a5b45d557a8e943bfb27bc2c1c","kind":"commit","published_at":"2021-12-10T05:20:21.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.13.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0/manifests"},{"name":"v2.12.0","sha":"08cc49f43073ce71b2eab4e00f95e62dd0150fdd","kind":"commit","published_at":"2021-08-11T17:29:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.12.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0/manifests"},{"name":"v2.11.0","sha":"a8199d235e4533fc2096d2b4acbbbb5ecf4a4c83","kind":"commit","published_at":"2021-07-31T21:29:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.11.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"6820f9f62c3c145386ec8994442e482ef6ba8a37","kind":"commit","published_at":"2021-06-06T17:00:15.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.10.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0/manifests"},{"name":"v2.9.1","sha":"4a6be028e32b24fe543e0d77c4a998e61ae7a9b5","kind":"commit","published_at":"2021-04-07T15:17:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1/manifests"},{"name":"v2.9.0","sha":"b18e3dc6c65209deadd2aadcd38774b456aa3001","kind":"commit","published_at":"2021-01-14T21:35:53.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0/manifests"},{"name":"v2.8.0","sha":"e051fe82153480dba7dc3255d72239bc977869ea","kind":"commit","published_at":"2020-11-25T21:11:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.8.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"029a49636ef64137b40d066633a7836a0ae02a84","kind":"commit","published_at":"2020-08-26T19:31:57.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.7.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0/manifests"},{"name":"v2.6.0","sha":"e48f298e5a3d2dd85cf882e7ced720cc0ca32027","kind":"commit","published_at":"2020-06-16T21:21:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.6.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0/manifests"},{"name":"v2.5.0","sha":"2595827d3e61d852ddbe533bb267ecbd15654dc0","kind":"commit","published_at":"2020-04-05T20:50:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.5.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0/manifests"},{"name":"v2.4.0","sha":"724ac1c9d689e1fdce9542816909a12632cf410f","kind":"commit","published_at":"2019-11-25T18:08:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"83df303aa14d58f76349b59e6917ae61ce011a83","kind":"commit","published_at":"2019-10-22T13:07:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"f6d4c2d1b094e33848ed454f4a69f3c12cd44084","kind":"commit","published_at":"2019-09-28T17:31:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0/manifests"},{"name":"v2.2.3","sha":"cb3dbfa604195b99b3a811e040584daec7663504","kind":"commit","published_at":"2018-10-30T12:56:28.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"37af4ee08f9e9531e24287c2783a79d331fc9243","kind":"commit","published_at":"2018-03-22T15:07:59.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"7541374548ee9be53c463a3172cf4d28356ebe1c","kind":"commit","published_at":"2018-03-19T20:22:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"adc0c3ffd5a704a346a7fb4f7eff4d53a8613303","kind":"commit","published_at":"2018-02-11T22:22:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"4aea261a306164ee7ce62b551162d6f9766aebc2","kind":"commit","published_at":"2017-09-25T01:10:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"680f1655927867e50a082706908a8c4b9a63e28d","kind":"commit","published_at":"2017-09-24T20:45:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0/manifests"},{"name":"v2.1.0.rc2","sha":"17e16f3e96fe5884f92623f95dab3f527d6f5263","kind":"commit","published_at":"2016-01-11T18:28:38.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2/manifests"},{"name":"v2.1.0.rc1","sha":"756f956566c8e48905fcf2da7fc5ce886e5e8860","kind":"commit","published_at":"2015-08-17T23:21:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1/manifests"},{"name":"v2.0.3","sha":"4887e62da44a5ae772d52f028ee25019e6c3626d","kind":"commit","published_at":"2015-08-17T18:09:31.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"1e451b4104dc82f42b1358543c5a635ee9909c98","kind":"commit","published_at":"2015-05-05T19:58:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1e1637cafd32e98957c04550bfb8662b67e3fd6d","kind":"commit","published_at":"2014-08-21T21:25:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"d7b11be917a307b6f153dc6d4d36f48830958eb2","kind":"commit","published_at":"2014-05-09T22:49:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"eafd2b2e6a7247c451a01ae861b2ff233a9dfd19","kind":"commit","published_at":"2012-04-14T18:59:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"3cd2b206bf36dae5ee33e2ef6adcf77bf1a28eb0","kind":"tag","published_at":"2011-08-08T16:53:56.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"01687df5a0ee82098d869930f997a52ce7af394c","kind":"tag","published_at":"2011-08-08T05:22:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ce7ba2ff83182998aad9edabb7a5b9ca4c614ff0","kind":"commit","published_at":"2010-10-26T04:51:27.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0/manifests"},{"name":"v1.0.0.beta.1","sha":"a8091ca5fd6522b3675d2f3e1e8d48894c5ce69b","kind":"commit","published_at":"2010-07-21T06:53:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0.beta.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0.beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0.beta.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1/manifests"},{"name":"v0.4.7","sha":"2a08fd2dd08a18b33065bb5f9fa79bff8390a551","kind":"commit","published_at":"2010-03-09T20:45:46.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.7","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7/manifests"},{"name":"v0.4.6","sha":"cfdad6b5641ea32782ad1c044fc5a18a6255b05c","kind":"commit","published_at":"2010-02-02T14:54:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.6","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6/manifests"},{"name":"v0.4.5","sha":"ac9eeed98563db8cfc2dc06de70d5f289072f305","kind":"commit","published_at":"2010-02-02T12:27:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.5","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5/manifests"},{"name":"v0.4.4","sha":"c70fceff81b37c00432dd6a1263225d9a3822bac","kind":"commit","published_at":"2010-02-01T21:59:18.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4/manifests"},{"name":"v0.4.3","sha":"688d2fdfcabf2ac714ab90396757e5f12f7c02e6","kind":"commit","published_at":"2010-01-31T20:17:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c5cf60e90805deb30d0c82119fff52b02c7dff28","kind":"commit","published_at":"2010-01-24T03:53:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"6ea20b8dddefe807a17249cebd60769186a71a40","kind":"commit","published_at":"2009-11-23T12:16:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"da0f050dfde4347e88414bfe37dc74e2b8bda17e","kind":"commit","published_at":"2009-11-22T03:51:52.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0/manifests"},{"name":"v0.3.1","sha":"9c41b488c56c8793f6f6381ca2a3cfde63ce0a1c","kind":"commit","published_at":"2009-10-13T03:08:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"50069295ea53b13f103785c53ff9723a0f384ac6","kind":"commit","published_at":"2009-10-06T22:46:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"5189bb0f6d555da3e3815d493e93ed51cc529a0b","kind":"commit","published_at":"2009-08-31T03:49:14.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"08c27c0e35ce0b60e8c92c8954886643ed793937","kind":"commit","published_at":"2009-08-19T05:56:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"24e03120e0a8042b261596e0f83bb61a989e0485","kind":"commit","published_at":"2009-08-11T05:35:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0/manifests"}]},"repo_metadata_updated_at":"2026-07-27T01:16:47.887Z","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:gentoo/dev-ruby/loofah","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/gentoo/dev-ruby/loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/gentoo/dev-ruby/loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/gentoo/dev-ruby/loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-07-17T07:01:18.762Z","issues_count":49,"pull_requests_count":108,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":2922431.44,"issues_closed_count":37,"pull_requests_closed_count":100,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":1.7314814814814814,"merged_pull_requests_count":78,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":2,"past_year_pull_requests_count":6,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":13784.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":1.3333333333333333,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":63,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-ruby%2Floofah/codemeta","maintainers":[],"registry":{"name":"gentoo-portage","url":"https://packages.gentoo.org/","ecosystem":"gentoo","default":true,"packages_count":19519,"maintainers_count":0,"namespaces_count":174,"keywords_count":1054,"github":"gentoo","metadata":{"snapshot_url":"https://distfiles.gentoo.org/snapshots/portage-latest.tar.xz","funded_packages_count":450},"icon_url":"https://github.com/gentoo.png","created_at":"2026-05-26T08:59:24.155Z","updated_at":"2026-08-12T05:05:20.132Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/namespaces"}},{"id":12267458,"name":"loofah","ecosystem":"rubygems","description":"Loofah is a general library for manipulating and transforming HTML/XML documents and fragments,\nbuilt on top of Nokogiri.\n\nLoofah also includes some HTML sanitizers based on `html5lib`'s safelist, which are a specific\napplication of the general transformation functionality.\n","homepage":"https://github.com/flavorjones/loofah","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":[],"namespace":null,"versions_count":65,"first_release_published_at":"2009-08-18T05:20:14.000Z","latest_release_published_at":"2026-07-15T19:57:51.152Z","latest_release_number":"2.25.2","last_synced_at":"2026-08-12T19:33:25.830Z","created_at":"2025-10-07T04:06:32.378Z","updated_at":"2026-08-12T19:33:25.831Z","registry_url":"https://gem.coop/gems/loofah","install_command":"gem install loofah -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/loofah/","metadata":{"funding":"https://github.com/sponsors/flavorjones"},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-07-15T19:57:38.000Z","size":1273,"stargazers_count":1000,"open_issues_count":19,"forks_count":144,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-08-01T16:11:36.966Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-07-30T00:51:16.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36180044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-02T02:00:06.915Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"tags":[{"name":"v2.25.2","sha":"2706d7e858426ba856d9711b0e761b2fee7986c4","kind":"commit","published_at":"2026-07-15T19:57:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.2/manifests"},{"name":"v2.25.1","sha":"c895c8b2ac9c7255ca10c4e3083b8f0b019b7189","kind":"commit","published_at":"2026-03-17T17:34:45.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.1/manifests"},{"name":"v2.25.0","sha":"e65bdddfd3381f3a131be7e137d89bb3959c072b","kind":"commit","published_at":"2025-12-15T21:16:48.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0/manifests"},{"name":"v2.24.1","sha":"6cadc8adf635d790faba337ffc8086ad0da4689e","kind":"commit","published_at":"2025-05-12T12:31:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1/manifests"},{"name":"v2.24.0","sha":"85990602c6fdb40489138e80080ca508200c7137","kind":"commit","published_at":"2025-01-01T03:03:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0/manifests"},{"name":"v2.23.1","sha":"3c09a938a16e19388bb7d15978b5960cf08de694","kind":"commit","published_at":"2024-10-25T12:43:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1/manifests"},{"name":"v2.23.0","sha":"5ac17a8f46a2ebf8453b7bc41539c5de06738425","kind":"commit","published_at":"2024-10-24T12:57:49.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0/manifests"},{"name":"v2.22.0","sha":"cb14ea7c03649504feb5491ea2e874fe13a4c353","kind":"commit","published_at":"2023-11-13T21:39:10.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.22.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0/manifests"},{"name":"v2.21.4","sha":"992b0549326923c84f8ffea5fde67a9b1b685184","kind":"commit","published_at":"2023-10-10T17:54:25.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4/manifests"},{"name":"v2.21.3","sha":"e34118a5843f6a8fed7358ac0ed0a208a89fd4b6","kind":"commit","published_at":"2023-05-15T21:09:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3/manifests"},{"name":"v2.21.2","sha":"712067b1deb8de178d7edea3abdd798457656b7a","kind":"commit","published_at":"2023-05-11T15:38:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2/manifests"},{"name":"v2.21.1","sha":"bb6653d0909cf599a1f37f52c0c94cbdcb043478","kind":"commit","published_at":"2023-05-10T14:38:23.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1/manifests"},{"name":"v2.21.0","sha":"a9b51f497bade7747d78546fcae4cf3219317c8c","kind":"commit","published_at":"2023-05-10T13:49:07.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0/manifests"},{"name":"v2.21.0.rc1","sha":"4b1f3f3423a6c644d3564d97443d0c87a7ad0132","kind":"commit","published_at":"2023-04-03T02:19:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1/manifests"},{"name":"v2.20.0","sha":"3d80a4eb2745e466c4f7958cb838ce3806ecbff7","kind":"commit","published_at":"2023-04-01T17:04:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.20.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0/manifests"},{"name":"v2.19.1","sha":"3f8806300089135f7832a59aa2689a6674d37897","kind":"commit","published_at":"2022-12-12T22:16:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1/manifests"},{"name":"v2.19.0","sha":"0dca6009d590e703b7b1dc464728a1654115edb3","kind":"commit","published_at":"2022-09-14T13:37:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0/manifests"},{"name":"v2.18.0","sha":"a0caaf0fb7d83a65f9f31a5f43f0b32958b224cb","kind":"commit","published_at":"2022-05-11T18:40:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.18.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"22fcddaf691928eeed949a8b7fc82a71d50f77f7","kind":"commit","published_at":"2022-04-28T13:34:24.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.17.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0/manifests"},{"name":"v2.16.0","sha":"931ed84998ca27ed1b9ab0198bc4d07681155e97","kind":"commit","published_at":"2022-04-01T18:16:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.16.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0/manifests"},{"name":"v2.15.0","sha":"e644c1c94aaee3ea7de573aa1316d170f12cd93b","kind":"commit","published_at":"2022-03-14T17:08:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.15.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0/manifests"},{"name":"v2.14.0","sha":"f80055aad1ab535b65e3fe3a6224f3e02668bc4b","kind":"commit","published_at":"2022-02-11T19:08:09.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.14.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"e595467bfe88c8a5b45d557a8e943bfb27bc2c1c","kind":"commit","published_at":"2021-12-10T05:20:21.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.13.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0/manifests"},{"name":"v2.12.0","sha":"08cc49f43073ce71b2eab4e00f95e62dd0150fdd","kind":"commit","published_at":"2021-08-11T17:29:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.12.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0/manifests"},{"name":"v2.11.0","sha":"a8199d235e4533fc2096d2b4acbbbb5ecf4a4c83","kind":"commit","published_at":"2021-07-31T21:29:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.11.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"6820f9f62c3c145386ec8994442e482ef6ba8a37","kind":"commit","published_at":"2021-06-06T17:00:15.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.10.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0/manifests"},{"name":"v2.9.1","sha":"4a6be028e32b24fe543e0d77c4a998e61ae7a9b5","kind":"commit","published_at":"2021-04-07T15:17:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1/manifests"},{"name":"v2.9.0","sha":"b18e3dc6c65209deadd2aadcd38774b456aa3001","kind":"commit","published_at":"2021-01-14T21:35:53.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0/manifests"},{"name":"v2.8.0","sha":"e051fe82153480dba7dc3255d72239bc977869ea","kind":"commit","published_at":"2020-11-25T21:11:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.8.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"029a49636ef64137b40d066633a7836a0ae02a84","kind":"commit","published_at":"2020-08-26T19:31:57.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.7.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0/manifests"},{"name":"v2.6.0","sha":"e48f298e5a3d2dd85cf882e7ced720cc0ca32027","kind":"commit","published_at":"2020-06-16T21:21:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.6.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0/manifests"},{"name":"v2.5.0","sha":"2595827d3e61d852ddbe533bb267ecbd15654dc0","kind":"commit","published_at":"2020-04-05T20:50:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.5.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0/manifests"},{"name":"v2.4.0","sha":"724ac1c9d689e1fdce9542816909a12632cf410f","kind":"commit","published_at":"2019-11-25T18:08:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"83df303aa14d58f76349b59e6917ae61ce011a83","kind":"commit","published_at":"2019-10-22T13:07:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"f6d4c2d1b094e33848ed454f4a69f3c12cd44084","kind":"commit","published_at":"2019-09-28T17:31:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0/manifests"},{"name":"v2.2.3","sha":"cb3dbfa604195b99b3a811e040584daec7663504","kind":"commit","published_at":"2018-10-30T12:56:28.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"37af4ee08f9e9531e24287c2783a79d331fc9243","kind":"commit","published_at":"2018-03-22T15:07:59.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"7541374548ee9be53c463a3172cf4d28356ebe1c","kind":"commit","published_at":"2018-03-19T20:22:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"adc0c3ffd5a704a346a7fb4f7eff4d53a8613303","kind":"commit","published_at":"2018-02-11T22:22:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"4aea261a306164ee7ce62b551162d6f9766aebc2","kind":"commit","published_at":"2017-09-25T01:10:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"680f1655927867e50a082706908a8c4b9a63e28d","kind":"commit","published_at":"2017-09-24T20:45:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0/manifests"},{"name":"v2.1.0.rc2","sha":"17e16f3e96fe5884f92623f95dab3f527d6f5263","kind":"commit","published_at":"2016-01-11T18:28:38.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2/manifests"},{"name":"v2.1.0.rc1","sha":"756f956566c8e48905fcf2da7fc5ce886e5e8860","kind":"commit","published_at":"2015-08-17T23:21:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1/manifests"},{"name":"v2.0.3","sha":"4887e62da44a5ae772d52f028ee25019e6c3626d","kind":"commit","published_at":"2015-08-17T18:09:31.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"1e451b4104dc82f42b1358543c5a635ee9909c98","kind":"commit","published_at":"2015-05-05T19:58:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1e1637cafd32e98957c04550bfb8662b67e3fd6d","kind":"commit","published_at":"2014-08-21T21:25:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"d7b11be917a307b6f153dc6d4d36f48830958eb2","kind":"commit","published_at":"2014-05-09T22:49:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"eafd2b2e6a7247c451a01ae861b2ff233a9dfd19","kind":"commit","published_at":"2012-04-14T18:59:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"3cd2b206bf36dae5ee33e2ef6adcf77bf1a28eb0","kind":"tag","published_at":"2011-08-08T16:53:56.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"01687df5a0ee82098d869930f997a52ce7af394c","kind":"tag","published_at":"2011-08-08T05:22:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ce7ba2ff83182998aad9edabb7a5b9ca4c614ff0","kind":"commit","published_at":"2010-10-26T04:51:27.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0/manifests"},{"name":"v1.0.0.beta.1","sha":"a8091ca5fd6522b3675d2f3e1e8d48894c5ce69b","kind":"commit","published_at":"2010-07-21T06:53:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0.beta.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0.beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0.beta.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1/manifests"},{"name":"v0.4.7","sha":"2a08fd2dd08a18b33065bb5f9fa79bff8390a551","kind":"commit","published_at":"2010-03-09T20:45:46.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.7","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7/manifests"},{"name":"v0.4.6","sha":"cfdad6b5641ea32782ad1c044fc5a18a6255b05c","kind":"commit","published_at":"2010-02-02T14:54:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.6","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6/manifests"},{"name":"v0.4.5","sha":"ac9eeed98563db8cfc2dc06de70d5f289072f305","kind":"commit","published_at":"2010-02-02T12:27:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.5","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5/manifests"},{"name":"v0.4.4","sha":"c70fceff81b37c00432dd6a1263225d9a3822bac","kind":"commit","published_at":"2010-02-01T21:59:18.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4/manifests"},{"name":"v0.4.3","sha":"688d2fdfcabf2ac714ab90396757e5f12f7c02e6","kind":"commit","published_at":"2010-01-31T20:17:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c5cf60e90805deb30d0c82119fff52b02c7dff28","kind":"commit","published_at":"2010-01-24T03:53:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"6ea20b8dddefe807a17249cebd60769186a71a40","kind":"commit","published_at":"2009-11-23T12:16:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"da0f050dfde4347e88414bfe37dc74e2b8bda17e","kind":"commit","published_at":"2009-11-22T03:51:52.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0/manifests"},{"name":"v0.3.1","sha":"9c41b488c56c8793f6f6381ca2a3cfde63ce0a1c","kind":"commit","published_at":"2009-10-13T03:08:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"50069295ea53b13f103785c53ff9723a0f384ac6","kind":"commit","published_at":"2009-10-06T22:46:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"5189bb0f6d555da3e3815d493e93ed51cc529a0b","kind":"commit","published_at":"2009-08-31T03:49:14.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"08c27c0e35ce0b60e8c92c8954886643ed793937","kind":"commit","published_at":"2009-08-19T05:56:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"24e03120e0a8042b261596e0f83bb61a989e0485","kind":"commit","published_at":"2009-08-11T05:35:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0/manifests"}]},"repo_metadata_updated_at":"2026-08-12T19:33:25.629Z","dependent_packages_count":0,"downloads":731255940,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":0.028114034850590126,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":0.009371344950196708},"purl":"pkg:gem/loofah?repository_url=https://gem.coop","advisories":[{"uuid":"GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","url":"https://github.com/advisories/GHSA-5qhf-9phg-95m2","title":"Loofah `allowed_uri?` does not detect `javascript:` URIs split by numeric character references without semicolons","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` or `vbscript:` URIs when the scheme is split by a numeric character reference that has no trailing semicolon. A browser decodes such references and resolves the URL to an executable `javascript:` scheme, while `allowed_uri?` reports it safe.\n\nThis is a bypass of the fix for [GHSA-46fp-8f5p-pf2m](https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m), which handled numeric character references with a trailing `;` (`\u0026#9;`, `\u0026#10;`, `\u0026#13;`) but did not cover the forms without semicolons.\n\n## Details\n\n`allowed_uri?` decodes HTML entities with `CGI.unescapeHTML`, which decodes numeric character references only when they carry a trailing `;`. A reference without a semicolon such as `\u0026#58` (colon) or `\u0026#9` (tab) is left literal, so the scheme-detection check finds no scheme, and the method falls through to its scheme-less path and returns `true`.\n\nA browser, however, decodes numeric character references even without a trailing semicolon. An encoded colon such as `\u0026#58` becomes the `:` scheme separator, so `javascript\u0026#58alert(1)` resolves to `javascript:alert(1)`. Encoded whitespace such as `\u0026#9` (tab) is decoded and then stripped from the URL, rejoining the surrounding text, so `java\u0026#9script:alert(1)` also resolves to `javascript:alert(1)`. In both cases the URL executes while `allowed_uri?` approved it as safe.\n\nNote that Loofah's default `sanitize()` path is **not** affected, because Nokogiri decodes or entity-escapes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects callers of the public `allowed_uri?` string-level helper that pass it HTML-encoded strings.\n\n## Impact\n\nCallers that validate a user-controlled URL with `Loofah::HTML5::Scrub.allowed_uri?` and then render the approved value into an `href` or other browser-interpreted URI attribute may be vulnerable to cross-site scripting (XSS). This includes applications that call `allowed_uri?` directly, as well as higher-level features built on top of it, such as Action Text 8.2's markdown link validation.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nResponsibly reported by GitHub user @MoonFuji.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-07-21T22:03:11.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-5qhf-9phg-95m2","https://github.com/flavorjones/loofah/commit/f1be9d893b5a8dd79240441a912d8897e74c38c0","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-5qhf-9phg-95m2"],"source_kind":"github","identifiers":["GHSA-5qhf-9phg-95m2"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T23:00:09.238Z","updated_at":"2026-07-23T21:00:11.960Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003e= 2.25.0, \u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01cWhmLTlwaGctOTVtMs4ABfLl/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","url":"https://github.com/advisories/GHSA-9wjq-cp2p-hrgf","title":"Loofah: SVG `href` attribute bypasses local-reference restriction","description":"## Summary\n\nLoofah's HTML5 sanitizer restricted only the `xlink:href` attribute on certain SVG elements to local, same-document references. Browsers also accept a plain `href` attribute as an alternative to the deprecated `xlink:href` per the SVG 2 spec, but Loofah did not apply the same restriction to it, allowing those elements to reference arbitrary external documents.\n\n## Impact\n\nSVG `\u003cuse\u003e` can load and render external SVG content by reference. If the referenced external SVG is same-origin and contains scripts or other dangerous content, it could execute in the context of the sanitized document. `\u003cfeImage\u003e` can load external images, which can be used for tracking. Modern browsers restrict cross-origin `\u003cuse\u003e` fetches, which limits but does not eliminate the risk.\n\nApplications that sanitize user-supplied SVG (directly, or as part of HTML) with Loofah's default allowlist are affected.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nFound by the maintainer, Mike Dalessio, during a security audit.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2026-07-21T22:01:58.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":4.7,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-9wjq-cp2p-hrgf","https://github.com/flavorjones/loofah/commit/20867b9be689521887364b74822c41ef830523c9","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-9wjq-cp2p-hrgf"],"source_kind":"github","identifiers":["GHSA-9wjq-cp2p-hrgf"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T23:00:09.238Z","updated_at":"2026-07-23T21:00:11.960Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS05d2pxLWNwMnAtaHJnZs4ABfLk/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","url":"https://github.com/advisories/GHSA-8whx-365g-h9vv","title":"Loofah `allowed_uri?` does not detect `javascript:` URIs split by named whitespace character references","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split or prefixed by the HTML5 named character references `\u0026Tab;` (tab) or `\u0026NewLine;` (line feed).\n\nThis is a bypass of the fix for [GHSA-46fp-8f5p-pf2m](https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m), which handled the equivalent numeric character references (`\u0026#9;`, `\u0026#10;`, `\u0026#13;`) but did not cover the named forms.\n\n## Details\n\n`allowed_uri?` decodes HTML entities with `CGI.unescapeHTML`, which handles numeric character references but not HTML5 named character references. Payloads like `java\u0026Tab;script:alert(1)` are therefore left intact, so the method does not recognize the `javascript:` scheme and returns `true`. A browser, however, decodes `\u0026Tab;` and `\u0026NewLine;` to tab and line feed and strips them from the URL during parsing, producing `javascript:alert(1)`.\n\n`\u0026Tab;` and `\u0026NewLine;` are the only relevant named character references: across the HTML5 named-character table, they are the only two that decode to characters the WHATWG URL parser strips from a URL (U+0009 and U+000A; there is no named reference for U+000D). `\u0026nbsp;` / `\u0026NonBreakingSpace;` decode to U+00A0, which browsers do not strip, so they aren't usable for this bypass.\n\nNote that Loofah's default `sanitize()` path is **not** affected, because Nokogiri decodes or entity-escapes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects callers of the public `allowed_uri?` string-level helper that pass it HTML-encoded strings.\n\n## Impact\n\nCallers that validate a user-controlled URL with `Loofah::HTML5::Scrub.allowed_uri?` and then render the approved value into an `href` or other browser-interpreted URI attribute may be vulnerable to cross-site scripting (XSS). This includes applications that call `allowed_uri?` directly, as well as higher-level features built on top of it, such as Action Text 8.2's markdown link validation.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= 2.25.2.\n\n## Credit\n\nResponsibly reported by GitHub user @connorshea.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-07-21T15:04:14.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-8whx-365g-h9vv","https://github.com/flavorjones/loofah/commit/5e91af861e3cdab47b91dd0b81f3afdfd13a5e19","https://github.com/flavorjones/loofah/releases/tag/v2.25.2","https://github.com/advisories/GHSA-8whx-365g-h9vv"],"source_kind":"github","identifiers":["GHSA-8whx-365g-h9vv"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-07-21T16:00:07.803Z","updated_at":"2026-07-21T16:00:07.803Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.2","vulnerable_version_range":"\u003e= 2.25.0, \u003c 2.25.2"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS04d2h4LTM2NWctaDl2ds4ABcUT/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","url":"https://github.com/advisories/GHSA-2j22-pr5w-6gq8","title":"Loofah has improper detection of disallowed URIs via `allowed_uri?`","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split by HTML entity-encoded control characters such as `\u0026#13;` (carriage return), `\u0026#10;` (line feed), or `\u0026#9;` (tab).\n\n## Details\n\nThe `allowed_uri?` method strips literal control characters before decoding HTML entities. Payloads like `java\u0026#13;script:alert(1)` survive the control character strip, then `\u0026#13;` is decoded to a carriage return, producing `java\\rscript:alert(1)`.\n\nNote that the Loofah sanitizer's default `sanitize()` path is **not affected** because Nokogiri decodes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects direct callers of the `allowed_uri?` string-level helper when passing HTML-encoded strings.\n\n## Impact\n\nApplications that call `Loofah::HTML5::Scrub.allowed_uri?` to validate user-controlled URLs and then render approved URLs into `href` or other browser-interpreted URI attributes may be vulnerable to cross-site scripting (XSS).\n\nThis only affects Loofah `2.25.0`.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= `2.25.1`.\n\n## Credit\n\nResponsibly reported by HackOne user @smlee.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-03-26T22:19:02.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.3,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m","https://github.com/flavorjones/loofah/commit/f4ebc9c5193dde759a57541062e490e86fc7c068","https://github.com/flavorjones/loofah/releases/tag/v2.25.1","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/GHSA-46fp-8f5p-pf2m.yml","https://github.com/advisories/GHSA-2j22-pr5w-6gq8"],"source_kind":"github","identifiers":["GHSA-2j22-pr5w-6gq8"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-03-26T23:00:10.996Z","updated_at":"2026-07-19T12:02:11.181Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.1","vulnerable_version_range":"= 2.25.0"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yajIyLXByNXctNmdxOM4ABUWf/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","url":"https://github.com/advisories/GHSA-46fp-8f5p-pf2m","title":"Improper detection of disallowed URIs by Loofah `allowed_uri?`","description":"## Summary\n\n`Loofah::HTML5::Scrub.allowed_uri?` does not correctly reject `javascript:` URIs when the scheme is split by HTML entity-encoded control characters such as `\u0026#13;` (carriage return), `\u0026#10;` (line feed), or `\u0026#9;` (tab).\n\n## Details\n\nThe `allowed_uri?` method strips literal control characters before decoding HTML entities. Payloads like `java\u0026#13;script:alert(1)` survive the control character strip, then `\u0026#13;` is decoded to a carriage return, producing `java\\rscript:alert(1)`.\n\nNote that the Loofah sanitizer's default `sanitize()` path is **not affected** because Nokogiri decodes HTML entities during parsing before Loofah evaluates the URI protocol. This issue only affects direct callers of the `allowed_uri?` string-level helper when passing HTML-encoded strings.\n\n## Impact\n\nApplications that call `Loofah::HTML5::Scrub.allowed_uri?` to validate user-controlled URLs and then render approved URLs into `href` or other browser-interpreted URI attributes may be vulnerable to cross-site scripting (XSS).\n\nThis only affects Loofah `2.25.0`.\n\n## Mitigation\n\nUpgrade to Loofah \u003e= `2.25.1`.\n\n## Credit\n\nResponsibly reported by HackOne user `@smlee`.","origin":"UNSPECIFIED","severity":"LOW","published_at":"2026-03-18T17:26:48.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":2.7,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:U","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-46fp-8f5p-pf2m","https://github.com/advisories/GHSA-46fp-8f5p-pf2m"],"source_kind":"github","identifiers":["GHSA-46fp-8f5p-pf2m"],"repository_url":null,"blast_radius":0.0,"created_at":"2026-03-18T18:00:10.862Z","updated_at":"2026-07-19T12:02:21.790Z","epss_percentage":null,"epss_percentile":null,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.25.1","vulnerable_version_range":"= 2.25.0"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00NmZwLThmNXAtcGYybc4ABTz8/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","url":"https://github.com/advisories/GHSA-3x8r-x6xp-q4vm","title":"Uncontrolled Recursion in Loofah","description":"## Summary\n\nLoofah `\u003e= 2.2.0, \u003c 2.19.1` uses recursion for sanitizing `CDATA` sections, making it susceptible to stack exhaustion and raising a `SystemStackError` exception.  This may lead to a denial of service through CPU resource consumption.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\nUsers who are unable to upgrade may be able to mitigate this vulnerability by limiting the length of the strings that are sanitized.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [High Severity 7.5 (CVSS3.1)](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).\n\n\n## References\n\n- [CWE - CWE-674: Uncontrolled Recursion (4.9)](https://cwe.mitre.org/data/definitions/674.html)","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2022-12-13T17:40:50.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-3x8r-x6xp-q4vm","https://github.com/flavorjones/loofah/commit/86f7f6364491b0099d215db858ecdc0c89ded040","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23516.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23516","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-3x8r-x6xp-q4vm"],"source_kind":"github","identifiers":["GHSA-3x8r-x6xp-q4vm","CVE-2022-23516"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.424Z","updated_at":"2026-07-19T12:08:29.256Z","epss_percentage":0.01104,"epss_percentile":0.61515,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003e= 2.2.0, \u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0zeDhyLXg2eHAtcTR2bc4AAwSe/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","url":"https://github.com/advisories/GHSA-228g-948r-83gx","title":"Improper neutralization of data URIs may allow XSS in Loofah","description":"## Summary\n\nLoofah `\u003e= 2.1.0, \u003c 2.19.1` is vulnerable to cross-site scripting via the `image/svg+xml` media type in data URIs.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [Medium Severity 6.1](https://www.first.org/cvss/calculator/3.0#CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N).\n\n\n## References\n\n- [CWE - CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (4.9)](https://cwe.mitre.org/data/definitions/79.html)\n- [SVG MIME Type (image/svg+xml) is misleading to developers · Issue #266 · w3c/svgwg](https://github.com/w3c/svgwg/issues/266)\n- https://hackerone.com/reports/1694173\n- https://github.com/flavorjones/loofah/issues/101\n\n## Credit\n\nThis vulnerability was responsibly reported by Maciej Piechota (@haqpl).","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2022-12-13T17:39:36.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.1,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-228g-948r-83gx","https://github.com/flavorjones/loofah/issues/101","https://github.com/w3c/svgwg/issues/266","https://github.com/flavorjones/loofah/commit/415677f3cf7f9254f42f811e784985cd63c7407f","https://hackerone.com/reports/1694173","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23515.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23515","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-228g-948r-83gx"],"source_kind":"github","identifiers":["GHSA-228g-948r-83gx","CVE-2022-23515"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.434Z","updated_at":"2026-07-19T12:08:29.256Z","epss_percentage":0.00792,"epss_percentile":0.51516,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003e= 2.1.0, \u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS0yMjhnLTk0OHItODNneM4AAwSd/related_packages","related_advisories":[]},{"uuid":"GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","url":"https://github.com/advisories/GHSA-486f-hjj9-9vhh","title":"Inefficient Regular Expression Complexity in Loofah","description":"## Summary\n\nLoofah `\u003c 2.19.1` contains an inefficient regular expression that is susceptible to excessive backtracking when attempting to sanitize certain SVG attributes. This may lead to a denial of service through CPU resource consumption.\n\n\n## Mitigation\n\nUpgrade to Loofah `\u003e= 2.19.1`.\n\n\n## Severity\n\nThe Loofah maintainers have evaluated this as [High Severity 7.5 (CVSS3.1)](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).\n\n\n## References\n\n- [CWE - CWE-1333: Inefficient Regular Expression Complexity (4.9)](https://cwe.mitre.org/data/definitions/1333.html)\n- https://hackerone.com/reports/1684163\n\n\n## Credit\n\nThis vulnerability was responsibly reported by @ooooooo-q (https://github.com/ooooooo-q).","origin":"UNSPECIFIED","severity":"HIGH","published_at":"2022-12-13T17:36:28.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":7.5,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","references":["https://github.com/flavorjones/loofah/security/advisories/GHSA-486f-hjj9-9vhh","https://github.com/flavorjones/loofah/commit/a6e0a1ab90675a17b1b2be189129d94139e4b143","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23514.yml","https://nvd.nist.gov/vuln/detail/CVE-2022-23514","https://hackerone.com/reports/1684163","https://lists.debian.org/debian-lts-announce/2023/09/msg00011.html","https://lists.debian.org/debian-lts-announce/2024/09/msg00044.html","https://github.com/advisories/GHSA-486f-hjj9-9vhh"],"source_kind":"github","identifiers":["GHSA-486f-hjj9-9vhh","CVE-2022-23514"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:11:45.444Z","updated_at":"2026-07-23T21:10:23.548Z","epss_percentage":0.01686,"epss_percentile":0.74513,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","html_url":"https://advisories.ecosyste.ms/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.19.1","vulnerable_version_range":"\u003c 2.19.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS00ODZmLWhqajktOXZoaM4AAwSc/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","url":"https://github.com/advisories/GHSA-c3gv-9cxf-6f57","title":"Loofah Allows Cross-site Scripting","description":"In the Loofah gem for Ruby through v2.3.0, unsanitized JavaScript may occur in sanitized output when a crafted SVG element is republished.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2019-11-05T23:58:25.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":5.4,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2019-15587","https://github.com/flavorjones/loofah/issues/171","https://hackerone.com/reports/709009","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4WK2UG7ORKRQOJ6E4XJ2NVIHYJES6BYZ/","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XMCWPLYPNIWYAY443IZZJ4IHBBLIHBP5/","https://security.netapp.com/advisory/ntap-20191122-0003/","https://usn.ubuntu.com/4498-1/","https://www.debian.org/security/2019/dsa-4554","https://github.com/flavorjones/loofah/commit/0c6617af440879ce97440f6eb6c58636456dc8ec","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2019-15587.yml","https://github.com/advisories/GHSA-c3gv-9cxf-6f57"],"source_kind":"github","identifiers":["GHSA-c3gv-9cxf-6f57","CVE-2019-15587"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:27.644Z","updated_at":"2026-07-23T21:10:51.191Z","epss_percentage":0.01554,"epss_percentile":0.7254,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.3.1","vulnerable_version_range":"\u003c 2.3.1"}],"purl":"pkg:gem/loofah"}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWMzZ3YtOWN4Zi02ZjU3/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","url":"https://github.com/advisories/GHSA-g4xq-jx4w-4cjv","title":"Loofah Cross-site Scripting vulnerability","description":"In the Loofah gem for Ruby, through version 2.2.2, unsanitized JavaScript may occur in sanitized output when a crafted SVG element is republished. Users are advised to upgrade to version 2.2.3.\n\nSee https://github.com/flavorjones/loofah/issues/154 for more details.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2018-11-01T14:46:01.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":5.4,"cvss_vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2018-16468","https://github.com/flavorjones/loofah/issues/154","https://www.debian.org/security/2019/dsa-4364","https://github.com/advisories/GHSA-g4xq-jx4w-4cjv"],"source_kind":"github","identifiers":["GHSA-g4xq-jx4w-4cjv","CVE-2018-16468"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:33.898Z","updated_at":"2026-07-24T19:15:09.299Z","epss_percentage":0.0091,"epss_percentile":0.55578,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.2.3","vulnerable_version_range":"\u003c 2.2.3"}],"purl":"pkg:gem/loofah","statistics":{"dependent_packages_count":88,"dependent_repos_count":519899,"downloads":722996789,"downloads_period":"total"},"affected_versions":["0.2.0","0.2.1","0.2.2","0.3.0","0.3.1","0.4.0","0.4.1","0.4.2","0.4.3","0.4.4","0.4.5","0.4.6","0.4.7","1.0.0","1.0.0.beta.1","1.1.0","1.2.0","1.2.1","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.1.0.rc1","2.1.0.rc2","2.1.1","2.2.0","2.2.1","2.2.2"],"unaffected_versions":["2.2.3","2.3.0","2.3.1","2.4.0","2.5.0","2.6.0","2.7.0","2.8.0","2.9.0","2.9.1","2.10.0","2.11.0","2.12.0","2.13.0","2.14.0","2.15.0","2.16.0","2.17.0","2.18.0","2.19.0","2.19.1","2.20.0","2.21.0","2.21.0.rc1","2.21.1","2.21.2","2.21.3","2.21.4","2.22.0","2.23.0","2.23.1","2.24.0","2.24.1","2.25.0","2.25.1","2.25.2"]}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLWc0eHEtang0dy00Y2p2/related_packages","related_advisories":[]},{"uuid":"MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","url":"https://github.com/advisories/GHSA-x7rv-cr6v-4vm4","title":"Cross-site Scripting in loofah","description":"Loofah allows non-whitelisted attributes to be present in sanitized output when input with specially-crafted HTML fragments.\n\nUsers are affected if running Loofah \u003c 2.2.1, but only:\n\n* when running on MRI or RBX,\n* in combination with libxml2 \u003e= 2.9.2.\n\nJRuby users are not affected.","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2018-03-21T11:57:11.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.1,"cvss_vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","references":["https://nvd.nist.gov/vuln/detail/CVE-2018-8048","https://github.com/flavorjones/loofah/issues/144","https://github.com/advisories/GHSA-x7rv-cr6v-4vm4","https://security.netapp.com/advisory/ntap-20191122-0003/","https://www.debian.org/security/2018/dsa-4171","http://www.openwall.com/lists/oss-security/2018/03/19/5","https://github.com/flavorjones/loofah/commit/f739cf8eac5851f328b8044281d6653f74eff116","https://github.com/sparklemotion/nokogiri/pull/1746","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2018-8048.yml","https://github.com/rubysec/ruby-advisory-db/blob/master/gems/nokogiri/CVE-2018-8048.yml"],"source_kind":"github","identifiers":["GHSA-x7rv-cr6v-4vm4","CVE-2018-8048"],"repository_url":"https://github.com/flavorjones/loofah","blast_radius":0.0,"created_at":"2022-12-21T16:13:37.316Z","updated_at":"2026-07-24T19:15:13.487Z","epss_percentage":0.01984,"epss_percentile":0.78088,"api_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","html_url":"https://advisories.ecosyste.ms/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00","packages":[{"ecosystem":"rubygems","package_name":"loofah","versions":[{"first_patched_version":"2.2.1","vulnerable_version_range":"\u003c 2.2.1"}],"purl":"pkg:gem/loofah","statistics":{"dependent_packages_count":88,"dependent_repos_count":519899,"downloads":722996789,"downloads_period":"total"},"affected_versions":["0.2.0","0.2.1","0.2.2","0.3.0","0.3.1","0.4.0","0.4.1","0.4.2","0.4.3","0.4.4","0.4.5","0.4.6","0.4.7","1.0.0","1.0.0.beta.1","1.1.0","1.2.0","1.2.1","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.1.0.rc1","2.1.0.rc2","2.1.1","2.2.0"],"unaffected_versions":["2.2.1","2.2.2","2.2.3","2.3.0","2.3.1","2.4.0","2.5.0","2.6.0","2.7.0","2.8.0","2.9.0","2.9.1","2.10.0","2.11.0","2.12.0","2.13.0","2.14.0","2.15.0","2.16.0","2.17.0","2.18.0","2.19.0","2.19.1","2.20.0","2.21.0","2.21.0.rc1","2.21.1","2.21.2","2.21.3","2.21.4","2.22.0","2.23.0","2.23.1","2.24.0","2.24.1","2.25.0","2.25.1","2.25.2"]}],"related_packages_url":"https://advisories.ecosyste.ms/api/v1/advisories/MDE2OlNlY3VyaXR5QWR2aXNvcnlHSFNBLXg3cnYtY3I2di00dm00/related_packages","related_advisories":[]}],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/loofah","docker_dependents_count":1359,"docker_downloads_count":821074725,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-12T16:33:36.201Z","issues_count":49,"pull_requests_count":108,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":2922431.44,"issues_closed_count":37,"pull_requests_closed_count":100,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":1.7314814814814814,"merged_pull_requests_count":78,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":2,"past_year_pull_requests_count":6,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":13784.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":1.3333333333333333,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":63,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/loofah/codemeta","maintainers":[{"uuid":"2583","login":"flavorjones","name":null,"email":null,"url":null,"packages_count":48,"html_url":"https://gem.coop/profiles/flavorjones","role":null,"created_at":"2025-10-07T22:42:42.475Z","updated_at":"2025-10-07T22:42:42.475Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/flavorjones/packages"},{"uuid":"1997","login":"brynary","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://gem.coop/profiles/brynary","role":null,"created_at":"2025-10-07T22:42:42.513Z","updated_at":"2025-10-07T22:42:42.513Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/brynary/packages"}],"registry":{"name":"gem.coop","url":"https://gem.coop","ecosystem":"rubygems","default":false,"packages_count":195080,"maintainers_count":68470,"namespaces_count":0,"keywords_count":18999,"github":"gem-coop","metadata":{"funded_packages_count":7542},"icon_url":"https://github.com/gem-coop.png","created_at":"2025-10-06T17:24:20.932Z","updated_at":"2026-08-12T05:05:26.854Z","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":8613316,"name":"github.com/flavorjones/loofah","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":[],"namespace":null,"versions_count":61,"first_release_published_at":"2009-08-11T05:35:26.000Z","latest_release_published_at":"2026-07-15T19:57:01.000Z","latest_release_number":"v2.25.2+incompatible","last_synced_at":"2026-08-12T19:33:26.434Z","created_at":"2023-12-02T02:09:03.657Z","updated_at":"2026-08-12T19:33:26.434Z","registry_url":"https://pkg.go.dev/github.com/flavorjones/loofah","install_command":"go get github.com/flavorjones/loofah","documentation_url":"https://pkg.go.dev/github.com/flavorjones/loofah#section-documentation","metadata":{},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"tags":[{"name":"v2.25.0","sha":"e65bdddfd3381f3a131be7e137d89bb3959c072b","kind":"commit","published_at":"2025-12-15T21:16:48.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0/manifests"},{"name":"v2.24.1","sha":"6cadc8adf635d790faba337ffc8086ad0da4689e","kind":"commit","published_at":"2025-05-12T12:31:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1/manifests"},{"name":"v2.24.0","sha":"85990602c6fdb40489138e80080ca508200c7137","kind":"commit","published_at":"2025-01-01T03:03:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0/manifests"},{"name":"v2.23.1","sha":"3c09a938a16e19388bb7d15978b5960cf08de694","kind":"commit","published_at":"2024-10-25T12:43:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1/manifests"},{"name":"v2.23.0","sha":"5ac17a8f46a2ebf8453b7bc41539c5de06738425","kind":"commit","published_at":"2024-10-24T12:57:49.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0/manifests"},{"name":"v2.22.0","sha":"cb14ea7c03649504feb5491ea2e874fe13a4c353","kind":"commit","published_at":"2023-11-13T21:39:10.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.22.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0/manifests"},{"name":"v2.21.4","sha":"992b0549326923c84f8ffea5fde67a9b1b685184","kind":"commit","published_at":"2023-10-10T17:54:25.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4/manifests"},{"name":"v2.21.3","sha":"e34118a5843f6a8fed7358ac0ed0a208a89fd4b6","kind":"commit","published_at":"2023-05-15T21:09:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3/manifests"},{"name":"v2.21.2","sha":"712067b1deb8de178d7edea3abdd798457656b7a","kind":"commit","published_at":"2023-05-11T15:38:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2/manifests"},{"name":"v2.21.1","sha":"bb6653d0909cf599a1f37f52c0c94cbdcb043478","kind":"commit","published_at":"2023-05-10T14:38:23.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1/manifests"},{"name":"v2.21.0","sha":"a9b51f497bade7747d78546fcae4cf3219317c8c","kind":"commit","published_at":"2023-05-10T13:49:07.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0/manifests"},{"name":"v2.21.0.rc1","sha":"4b1f3f3423a6c644d3564d97443d0c87a7ad0132","kind":"commit","published_at":"2023-04-03T02:19:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1/manifests"},{"name":"v2.20.0","sha":"3d80a4eb2745e466c4f7958cb838ce3806ecbff7","kind":"commit","published_at":"2023-04-01T17:04:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.20.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0/manifests"},{"name":"v2.19.1","sha":"3f8806300089135f7832a59aa2689a6674d37897","kind":"commit","published_at":"2022-12-12T22:16:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1/manifests"},{"name":"v2.19.0","sha":"0dca6009d590e703b7b1dc464728a1654115edb3","kind":"commit","published_at":"2022-09-14T13:37:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0/manifests"},{"name":"v2.18.0","sha":"a0caaf0fb7d83a65f9f31a5f43f0b32958b224cb","kind":"commit","published_at":"2022-05-11T18:40:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.18.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"22fcddaf691928eeed949a8b7fc82a71d50f77f7","kind":"commit","published_at":"2022-04-28T13:34:24.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.17.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0/manifests"},{"name":"v2.16.0","sha":"931ed84998ca27ed1b9ab0198bc4d07681155e97","kind":"commit","published_at":"2022-04-01T18:16:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.16.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0/manifests"},{"name":"v2.15.0","sha":"e644c1c94aaee3ea7de573aa1316d170f12cd93b","kind":"commit","published_at":"2022-03-14T17:08:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.15.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0/manifests"},{"name":"v2.14.0","sha":"f80055aad1ab535b65e3fe3a6224f3e02668bc4b","kind":"commit","published_at":"2022-02-11T19:08:09.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.14.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"e595467bfe88c8a5b45d557a8e943bfb27bc2c1c","kind":"commit","published_at":"2021-12-10T05:20:21.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.13.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0/manifests"},{"name":"v2.12.0","sha":"08cc49f43073ce71b2eab4e00f95e62dd0150fdd","kind":"commit","published_at":"2021-08-11T17:29:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.12.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0/manifests"},{"name":"v2.11.0","sha":"a8199d235e4533fc2096d2b4acbbbb5ecf4a4c83","kind":"commit","published_at":"2021-07-31T21:29:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.11.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"6820f9f62c3c145386ec8994442e482ef6ba8a37","kind":"commit","published_at":"2021-06-06T17:00:15.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.10.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0/manifests"},{"name":"v2.9.1","sha":"4a6be028e32b24fe543e0d77c4a998e61ae7a9b5","kind":"commit","published_at":"2021-04-07T15:17:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1/manifests"},{"name":"v2.9.0","sha":"b18e3dc6c65209deadd2aadcd38774b456aa3001","kind":"commit","published_at":"2021-01-14T21:35:53.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0/manifests"},{"name":"v2.8.0","sha":"e051fe82153480dba7dc3255d72239bc977869ea","kind":"commit","published_at":"2020-11-25T21:11:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.8.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"029a49636ef64137b40d066633a7836a0ae02a84","kind":"commit","published_at":"2020-08-26T19:31:57.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.7.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0/manifests"},{"name":"v2.6.0","sha":"e48f298e5a3d2dd85cf882e7ced720cc0ca32027","kind":"commit","published_at":"2020-06-16T21:21:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.6.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0/manifests"},{"name":"v2.5.0","sha":"2595827d3e61d852ddbe533bb267ecbd15654dc0","kind":"commit","published_at":"2020-04-05T20:50:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.5.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0/manifests"},{"name":"v2.4.0","sha":"724ac1c9d689e1fdce9542816909a12632cf410f","kind":"commit","published_at":"2019-11-25T18:08:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"83df303aa14d58f76349b59e6917ae61ce011a83","kind":"commit","published_at":"2019-10-22T13:07:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"f6d4c2d1b094e33848ed454f4a69f3c12cd44084","kind":"commit","published_at":"2019-09-28T17:31:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0/manifests"},{"name":"v2.2.3","sha":"cb3dbfa604195b99b3a811e040584daec7663504","kind":"commit","published_at":"2018-10-30T12:56:28.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"37af4ee08f9e9531e24287c2783a79d331fc9243","kind":"commit","published_at":"2018-03-22T15:07:59.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"7541374548ee9be53c463a3172cf4d28356ebe1c","kind":"commit","published_at":"2018-03-19T20:22:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"adc0c3ffd5a704a346a7fb4f7eff4d53a8613303","kind":"commit","published_at":"2018-02-11T22:22:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"4aea261a306164ee7ce62b551162d6f9766aebc2","kind":"commit","published_at":"2017-09-25T01:10:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"680f1655927867e50a082706908a8c4b9a63e28d","kind":"commit","published_at":"2017-09-24T20:45:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0/manifests"},{"name":"v2.1.0.rc2","sha":"17e16f3e96fe5884f92623f95dab3f527d6f5263","kind":"commit","published_at":"2016-01-11T18:28:38.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2/manifests"},{"name":"v2.1.0.rc1","sha":"756f956566c8e48905fcf2da7fc5ce886e5e8860","kind":"commit","published_at":"2015-08-17T23:21:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1/manifests"},{"name":"v2.0.3","sha":"4887e62da44a5ae772d52f028ee25019e6c3626d","kind":"commit","published_at":"2015-08-17T18:09:31.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"1e451b4104dc82f42b1358543c5a635ee9909c98","kind":"commit","published_at":"2015-05-05T19:58:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1e1637cafd32e98957c04550bfb8662b67e3fd6d","kind":"commit","published_at":"2014-08-21T21:25:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"d7b11be917a307b6f153dc6d4d36f48830958eb2","kind":"commit","published_at":"2014-05-09T22:49:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"eafd2b2e6a7247c451a01ae861b2ff233a9dfd19","kind":"commit","published_at":"2012-04-14T18:59:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"3cd2b206bf36dae5ee33e2ef6adcf77bf1a28eb0","kind":"tag","published_at":"2011-08-08T16:53:56.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"01687df5a0ee82098d869930f997a52ce7af394c","kind":"tag","published_at":"2011-08-08T05:22:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ce7ba2ff83182998aad9edabb7a5b9ca4c614ff0","kind":"commit","published_at":"2010-10-26T04:51:27.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0/manifests"},{"name":"v1.0.0.beta.1","sha":"a8091ca5fd6522b3675d2f3e1e8d48894c5ce69b","kind":"commit","published_at":"2010-07-21T06:53:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0.beta.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0.beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0.beta.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1/manifests"},{"name":"v0.4.7","sha":"2a08fd2dd08a18b33065bb5f9fa79bff8390a551","kind":"commit","published_at":"2010-03-09T20:45:46.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.7","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7/manifests"},{"name":"v0.4.6","sha":"cfdad6b5641ea32782ad1c044fc5a18a6255b05c","kind":"commit","published_at":"2010-02-02T14:54:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.6","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6/manifests"},{"name":"v0.4.5","sha":"ac9eeed98563db8cfc2dc06de70d5f289072f305","kind":"commit","published_at":"2010-02-02T12:27:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.5","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5/manifests"},{"name":"v0.4.4","sha":"c70fceff81b37c00432dd6a1263225d9a3822bac","kind":"commit","published_at":"2010-02-01T21:59:18.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4/manifests"},{"name":"v0.4.3","sha":"688d2fdfcabf2ac714ab90396757e5f12f7c02e6","kind":"commit","published_at":"2010-01-31T20:17:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c5cf60e90805deb30d0c82119fff52b02c7dff28","kind":"commit","published_at":"2010-01-24T03:53:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"6ea20b8dddefe807a17249cebd60769186a71a40","kind":"commit","published_at":"2009-11-23T12:16:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"da0f050dfde4347e88414bfe37dc74e2b8bda17e","kind":"commit","published_at":"2009-11-22T03:51:52.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0/manifests"},{"name":"v0.3.1","sha":"9c41b488c56c8793f6f6381ca2a3cfde63ce0a1c","kind":"commit","published_at":"2009-10-13T03:08:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"50069295ea53b13f103785c53ff9723a0f384ac6","kind":"commit","published_at":"2009-10-06T22:46:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"5189bb0f6d555da3e3815d493e93ed51cc529a0b","kind":"commit","published_at":"2009-08-31T03:49:14.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"08c27c0e35ce0b60e8c92c8954886643ed793937","kind":"commit","published_at":"2009-08-19T05:56:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"24e03120e0a8042b261596e0f83bb61a989e0485","kind":"commit","published_at":"2009-08-11T05:35:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0/manifests"}]},"repo_metadata_updated_at":"2026-07-09T03:02:02.198Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":10.801592556016239,"dependent_packages_count":9.575730298247606,"stargazers_count":2.112173583650171,"forks_count":2.341459210608068,"docker_downloads_count":null,"average":6.207738912130521},"purl":"pkg:golang/github.com/flavorjones/loofah","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/flavorjones/loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/flavorjones/loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/flavorjones/loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fflavorjones%2Floofah/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2263076,"maintainers_count":0,"namespaces_count":837425,"keywords_count":122443,"github":"golang","metadata":{"funded_packages_count":65362,"sync_missing_packages_cursor":{"timestamp":"2026-08-12T00:18:10.975284Z","path":"github.com/fhunleth/muontrap","version":"v0.2.1"},"rate_limit":1},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-08-12T12:33:12.528Z","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":13751305,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T07:17:15.785Z","latest_release_published_at":"2026-02-13T07:17:15.785Z","latest_release_number":"2.4.0+dfsg-1","last_synced_at":"2026-03-13T08:21:59.782Z","created_at":"2026-02-13T07:17:15.347Z","updated_at":"2026-07-09T03:02:00.750Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.4.1","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 12), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:00.750Z","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-loofah?arch=source\u0026distro=ubuntu-20.04\u0026repository_url=https://launchpad.net/ubuntu/focal","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages/ruby-loofah/codemeta","maintainers":[],"registry":{"name":"ubuntu-20.04","url":"https://launchpad.net/ubuntu/focal","ecosystem":"ubuntu","default":false,"packages_count":30789,"maintainers_count":0,"namespaces_count":4,"keywords_count":1429,"github":"ubuntu","metadata":{"codename":"focal","funded_packages_count":464},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:47.233Z","updated_at":"2026-08-10T05:08:00.495Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-20.04/namespaces"}},{"id":13779208,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T13:20:07.221Z","latest_release_published_at":"2026-02-13T13:20:07.221Z","latest_release_number":"2.13.0-2","last_synced_at":"2026-03-13T13:36:38.930Z","created_at":"2026-02-13T13:20:07.004Z","updated_at":"2026-07-09T03:01:59.725Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.0","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:01:59.725Z","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-loofah?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/ruby-loofah/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":1498,"github":"ubuntu","metadata":{"codename":"jammy","funded_packages_count":559},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-08-10T05:07:56.140Z","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":13406884,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T15:30:16.593Z","latest_release_published_at":"2026-02-06T15:30:16.593Z","latest_release_number":"2.22.0-1","last_synced_at":"2026-03-06T16:00:39.929Z","created_at":"2026-02-06T15:30:16.321Z","updated_at":"2026-07-09T03:01:59.682Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:01:59.682Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:deb/ubuntu/ruby-loofah?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/ruby-loofah/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":1697,"github":"ubuntu","metadata":{"codename":"noble","funded_packages_count":723},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-08-10T05:07:57.238Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/namespaces"}},{"id":13669137,"name":"ruby-loofah","ecosystem":"debian","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T12:29:56.067Z","latest_release_published_at":"2026-02-12T12:29:56.067Z","latest_release_number":"2.24.0-1","last_synced_at":"2026-03-14T18:07:48.813Z","created_at":"2026-02-12T12:29:55.781Z","updated_at":"2026-07-09T03:02:01.979Z","registry_url":"https://tracker.debian.org/pkg/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":"https://packages.debian.org/trixie/ruby-loofah","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:01.979Z","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-loofah?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/ruby-loofah/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":1985,"github":"debian","metadata":{"codename":"trixie","funded_packages_count":1208},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-08-12T05:05:15.557Z","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":13466940,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T16:53:10.820Z","latest_release_published_at":"2026-02-09T16:53:10.820Z","latest_release_number":"2.22.0-1","last_synced_at":"2026-03-09T17:07:04.906Z","created_at":"2026-02-09T16:53:10.039Z","updated_at":"2026-07-09T03:02:02.390Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:02.390Z","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-loofah?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/ruby-loofah/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":1440,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":890},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-08-12T05:05:16.435Z","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":13530544,"name":"ruby-loofah","ecosystem":"debian","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-10T23:33:37.309Z","latest_release_published_at":"2026-02-10T23:33:37.309Z","latest_release_number":"2.7.0+dfsg-1","last_synced_at":"2026-03-14T05:21:49.926Z","created_at":"2026-02-10T23:33:37.125Z","updated_at":"2026-07-09T03:02:00.749Z","registry_url":"https://tracker.debian.org/pkg/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":"https://packages.debian.org/bullseye/ruby-loofah","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.5.0","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:00.749Z","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-loofah?arch=source\u0026distro=debian-11\u0026repository_url=https://packages.debian.org/bullseye","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/ruby-loofah/codemeta","maintainers":[],"registry":{"name":"debian-11","url":"https://packages.debian.org/bullseye","ecosystem":"debian","default":false,"packages_count":31268,"maintainers_count":0,"namespaces_count":3,"keywords_count":759,"github":"debian","metadata":{"codename":"bullseye","funded_packages_count":456},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.702Z","updated_at":"2026-08-10T05:08:02.664Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/namespaces"}},{"id":13712728,"name":"ruby-loofah","ecosystem":"debian","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T23:34:42.536Z","latest_release_published_at":"2026-02-12T23:34:42.536Z","latest_release_number":"2.19.1-1","last_synced_at":"2026-03-13T00:04:40.108Z","created_at":"2026-02-12T23:34:42.357Z","updated_at":"2026-07-09T03:02:00.750Z","registry_url":"https://tracker.debian.org/pkg/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":"https://packages.debian.org/bookworm/ruby-loofah","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:00.750Z","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-loofah?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/ruby-loofah/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":2652,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":809},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-08-10T05:08:01.819Z","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":13804715,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T18:24:38.838Z","latest_release_published_at":"2026-02-13T18:24:38.838Z","latest_release_number":"2.21.3-1","last_synced_at":"2026-03-14T01:17:43.246Z","created_at":"2026-02-13T18:24:38.650Z","updated_at":"2026-07-09T03:02:00.753Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.2","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:00.753Z","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-loofah?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/ruby-loofah/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":2213,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":891},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-08-10T05:07:58.402Z","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":13566714,"name":"ruby-loofah","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T06:42:56.928Z","latest_release_published_at":"2026-02-11T06:42:56.928Z","latest_release_number":"2.19.1-1","last_synced_at":"2026-03-12T07:03:41.859Z","created_at":"2026-02-11T06:42:56.758Z","updated_at":"2026-07-09T03:02:01.249Z","registry_url":"https://launchpad.net/ubuntu/+source/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.6.1","maintainer":"Debian Ruby Team \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:01.249Z","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-loofah?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/ruby-loofah/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":1000,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":613},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-08-10T05:07:59.632Z","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":13605716,"name":"ruby-loofah","ecosystem":"debian","description":null,"homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-11T11:22:22.416Z","latest_release_published_at":"2026-02-11T11:22:22.416Z","latest_release_number":"2.2.3-1+deb10u1","last_synced_at":"2026-03-13T17:01:13.802Z","created_at":"2026-02-11T11:22:22.225Z","updated_at":"2026-07-09T03:02:00.753Z","registry_url":"https://tracker.debian.org/pkg/ruby-loofah","install_command":"apt-get install ruby-loofah","documentation_url":"https://packages.debian.org/buster/ruby-loofah","metadata":{"component":"main","architecture":"all","priority":"optional","binary":"ruby-loofah","standards_version":"4.3.0","maintainer":"Debian Ruby Extras Maintainers \u003cpkg-ruby-extras-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper (\u003e= 12), debhelper-compat (= 12), gem2deb, ruby-crass, ruby-json, ruby-minitest, ruby-nokogiri, ruby-rr, ruby-test-unit","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:00.752Z","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-loofah?arch=source\u0026distro=debian-10\u0026repository_url=https://packages.debian.org/buster","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages/ruby-loofah/codemeta","maintainers":[],"registry":{"name":"debian-10","url":"https://packages.debian.org/buster","ecosystem":"debian","default":false,"packages_count":28836,"maintainers_count":0,"namespaces_count":3,"keywords_count":915,"github":"debian","metadata":{"codename":"buster","mirror":"http://archive.debian.org/debian","funded_packages_count":444},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.156Z","updated_at":"2026-08-13T05:02:46.543Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/debian-10/namespaces"}},{"id":13950425,"name":"ruby-loofah","ecosystem":"guix","description":"Ruby library for manipulating and transforming HTML/XML","homepage":"https://github.com/flavorjones/loofah","licenses":"expat","normalized_licenses":["Other"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2026-03-02T18:56:31.809Z","latest_release_published_at":"2026-03-02T18:56:31.809Z","latest_release_number":"2.24.1","last_synced_at":"2026-04-27T16:20:43.810Z","created_at":"2026-03-02T18:56:31.634Z","updated_at":"2026-07-09T03:02:01.575Z","registry_url":"https://packages.guix.gnu.org/packages/ruby-loofah/2.24.1/","install_command":"guix install ruby-loofah","documentation_url":"https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/ruby-xyz.scm#n7737","metadata":{"location":"gnu/packages/ruby-xyz.scm:7737","variable_name":"ruby-loofah"},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"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"}},"repo_metadata_updated_at":"2026-07-09T03:02:01.575Z","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:guix/ruby-loofah","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/guix/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/guix/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/guix/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/ruby-loofah/codemeta","maintainers":[],"registry":{"name":"guix","url":"https://guix.gnu.org","ecosystem":"guix","default":true,"packages_count":32257,"maintainers_count":0,"namespaces_count":0,"keywords_count":1649,"github":"guix-mirror","metadata":{"funded_packages_count":882},"icon_url":"https://github.com/guix-mirror.png","created_at":"2026-03-02T16:23:46.981Z","updated_at":"2026-08-12T05:05:19.604Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/guix/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/guix/namespaces"}},{"id":14542019,"name":"www/ruby-loofah","ecosystem":"pkgsrc","description":"HTML sanitizer for Rails applications","homepage":"https://github.com/flavorjones/loofah","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/flavorjones/loofah","keywords_array":["www","ruby"],"namespace":"www","versions_count":1,"first_release_published_at":"2026-05-15T00:10:37.000Z","latest_release_published_at":"2026-05-15T00:10:37.000Z","latest_release_number":"2.25.0","last_synced_at":"2026-05-27T10:52:27.012Z","created_at":"2026-05-27T10:52:26.615Z","updated_at":"2026-07-09T03:02:02.205Z","registry_url":"https://pkgsrc.se/www/ruby-loofah","install_command":"pkg_add ruby40-loofah","documentation_url":"https://pkgsrc.se/www/ruby-loofah","metadata":{"pkg_slug":"ruby-loofah","pkgbase":"ruby40-loofah","machine_arch":"x86_64","opsys":"NetBSD","pkgname_latest":"ruby40-loofah-2.25.0"},"repo_metadata":{"id":631532,"uuid":"272313","full_name":"flavorjones/loofah","owner":"flavorjones","description":"Ruby library for HTML/XML transformation and sanitization","archived":false,"fork":false,"pushed_at":"2026-03-17T17:36:59.000Z","size":1224,"stargazers_count":998,"open_issues_count":18,"forks_count":145,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-07-01T22:29:48.411Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flavorjones.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"flavorjones","tidelift":"rubygems/loofah"}},"created_at":"2009-08-08T06:04:37.000Z","updated_at":"2026-06-29T19:56:22.000Z","dependencies_parsed_at":"2026-03-04T10:00:24.937Z","dependency_job_id":null,"html_url":"https://github.com/flavorjones/loofah","commit_stats":{"total_commits":725,"total_committers":63,"mean_commits":"11.507936507936508","dds":0.1724137931034483,"last_synced_commit":"85990602c6fdb40489138e80080ca508200c7137"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/flavorjones/loofah","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/sbom","scorecard":{"id":402883,"data":{"date":"2025-08-11","repo":{"name":"github.com/flavorjones/loofah","commit":"887c3550459497935dfd9aa9caef5467dd76de0b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Maintained","score":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 6/15 approved changesets -- score normalized to 4","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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/flavorjones/loofah/ci.yml/main?enable=pin","Info:   0 out of   3 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"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":"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: MIT-LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: MIT-LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:29:39.023Z","repository_id":631532,"created_at":"2025-08-18T20:29:39.024Z","updated_at":"2025-08-18T20:29:39.024Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35067032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"flavorjones","name":"Mike Dalessio","uuid":"8207","kind":"user","description":"Part-time OSS contributor, maintaining Nokogiri, Loofah, Rails::Html::Sanitizer, Mechanize, Sqlite3, and more in the Ruby ecosystem.","email":"","website":"http://mike.daless.io/","location":"New York City / New Jersey","twitter":"flavorjones","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8207?u=b696c885624fac0e15405b8713a770e888f26a96\u0026v=4","repositories_count":166,"last_synced_at":"2024-10-29T17:10:21.650Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/flavorjones","funding_links":["https://github.com/sponsors/flavorjones"],"total_stars":1856,"followers":553,"following":102,"created_at":"2022-11-02T16:17:21.078Z","updated_at":"2024-10-29T17:10:21.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flavorjones/repositories"},"tags":[{"name":"v2.25.0","sha":"e65bdddfd3381f3a131be7e137d89bb3959c072b","kind":"commit","published_at":"2025-12-15T21:16:48.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.25.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.25.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.25.0/manifests"},{"name":"v2.24.1","sha":"6cadc8adf635d790faba337ffc8086ad0da4689e","kind":"commit","published_at":"2025-05-12T12:31:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.1/manifests"},{"name":"v2.24.0","sha":"85990602c6fdb40489138e80080ca508200c7137","kind":"commit","published_at":"2025-01-01T03:03:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.24.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.24.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.24.0/manifests"},{"name":"v2.23.1","sha":"3c09a938a16e19388bb7d15978b5960cf08de694","kind":"commit","published_at":"2024-10-25T12:43:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.1/manifests"},{"name":"v2.23.0","sha":"5ac17a8f46a2ebf8453b7bc41539c5de06738425","kind":"commit","published_at":"2024-10-24T12:57:49.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.23.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.23.0/manifests"},{"name":"v2.22.0","sha":"cb14ea7c03649504feb5491ea2e874fe13a4c353","kind":"commit","published_at":"2023-11-13T21:39:10.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.22.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.22.0/manifests"},{"name":"v2.21.4","sha":"992b0549326923c84f8ffea5fde67a9b1b685184","kind":"commit","published_at":"2023-10-10T17:54:25.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.4/manifests"},{"name":"v2.21.3","sha":"e34118a5843f6a8fed7358ac0ed0a208a89fd4b6","kind":"commit","published_at":"2023-05-15T21:09:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.3/manifests"},{"name":"v2.21.2","sha":"712067b1deb8de178d7edea3abdd798457656b7a","kind":"commit","published_at":"2023-05-11T15:38:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.2/manifests"},{"name":"v2.21.1","sha":"bb6653d0909cf599a1f37f52c0c94cbdcb043478","kind":"commit","published_at":"2023-05-10T14:38:23.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.1/manifests"},{"name":"v2.21.0","sha":"a9b51f497bade7747d78546fcae4cf3219317c8c","kind":"commit","published_at":"2023-05-10T13:49:07.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0/manifests"},{"name":"v2.21.0.rc1","sha":"4b1f3f3423a6c644d3564d97443d0c87a7ad0132","kind":"commit","published_at":"2023-04-03T02:19:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.21.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.21.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.21.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.21.0.rc1/manifests"},{"name":"v2.20.0","sha":"3d80a4eb2745e466c4f7958cb838ce3806ecbff7","kind":"commit","published_at":"2023-04-01T17:04:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.20.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.20.0/manifests"},{"name":"v2.19.1","sha":"3f8806300089135f7832a59aa2689a6674d37897","kind":"commit","published_at":"2022-12-12T22:16:11.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.1/manifests"},{"name":"v2.19.0","sha":"0dca6009d590e703b7b1dc464728a1654115edb3","kind":"commit","published_at":"2022-09-14T13:37:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.19.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.19.0/manifests"},{"name":"v2.18.0","sha":"a0caaf0fb7d83a65f9f31a5f43f0b32958b224cb","kind":"commit","published_at":"2022-05-11T18:40:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.18.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"22fcddaf691928eeed949a8b7fc82a71d50f77f7","kind":"commit","published_at":"2022-04-28T13:34:24.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.17.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.17.0/manifests"},{"name":"v2.16.0","sha":"931ed84998ca27ed1b9ab0198bc4d07681155e97","kind":"commit","published_at":"2022-04-01T18:16:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.16.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.16.0/manifests"},{"name":"v2.15.0","sha":"e644c1c94aaee3ea7de573aa1316d170f12cd93b","kind":"commit","published_at":"2022-03-14T17:08:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.15.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.15.0/manifests"},{"name":"v2.14.0","sha":"f80055aad1ab535b65e3fe3a6224f3e02668bc4b","kind":"commit","published_at":"2022-02-11T19:08:09.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.14.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"e595467bfe88c8a5b45d557a8e943bfb27bc2c1c","kind":"commit","published_at":"2021-12-10T05:20:21.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.13.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.13.0/manifests"},{"name":"v2.12.0","sha":"08cc49f43073ce71b2eab4e00f95e62dd0150fdd","kind":"commit","published_at":"2021-08-11T17:29:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.12.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.12.0/manifests"},{"name":"v2.11.0","sha":"a8199d235e4533fc2096d2b4acbbbb5ecf4a4c83","kind":"commit","published_at":"2021-07-31T21:29:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.11.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"6820f9f62c3c145386ec8994442e482ef6ba8a37","kind":"commit","published_at":"2021-06-06T17:00:15.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.10.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.10.0/manifests"},{"name":"v2.9.1","sha":"4a6be028e32b24fe543e0d77c4a998e61ae7a9b5","kind":"commit","published_at":"2021-04-07T15:17:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.1/manifests"},{"name":"v2.9.0","sha":"b18e3dc6c65209deadd2aadcd38774b456aa3001","kind":"commit","published_at":"2021-01-14T21:35:53.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.9.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.9.0/manifests"},{"name":"v2.8.0","sha":"e051fe82153480dba7dc3255d72239bc977869ea","kind":"commit","published_at":"2020-11-25T21:11:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.8.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"029a49636ef64137b40d066633a7836a0ae02a84","kind":"commit","published_at":"2020-08-26T19:31:57.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.7.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.7.0/manifests"},{"name":"v2.6.0","sha":"e48f298e5a3d2dd85cf882e7ced720cc0ca32027","kind":"commit","published_at":"2020-06-16T21:21:12.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.6.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.6.0/manifests"},{"name":"v2.5.0","sha":"2595827d3e61d852ddbe533bb267ecbd15654dc0","kind":"commit","published_at":"2020-04-05T20:50:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.5.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.5.0/manifests"},{"name":"v2.4.0","sha":"724ac1c9d689e1fdce9542816909a12632cf410f","kind":"commit","published_at":"2019-11-25T18:08:13.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"83df303aa14d58f76349b59e6917ae61ce011a83","kind":"commit","published_at":"2019-10-22T13:07:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"f6d4c2d1b094e33848ed454f4a69f3c12cd44084","kind":"commit","published_at":"2019-09-28T17:31:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.3.0/manifests"},{"name":"v2.2.3","sha":"cb3dbfa604195b99b3a811e040584daec7663504","kind":"commit","published_at":"2018-10-30T12:56:28.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"37af4ee08f9e9531e24287c2783a79d331fc9243","kind":"commit","published_at":"2018-03-22T15:07:59.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"7541374548ee9be53c463a3172cf4d28356ebe1c","kind":"commit","published_at":"2018-03-19T20:22:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"adc0c3ffd5a704a346a7fb4f7eff4d53a8613303","kind":"commit","published_at":"2018-02-11T22:22:00.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"4aea261a306164ee7ce62b551162d6f9766aebc2","kind":"commit","published_at":"2017-09-25T01:10:43.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"680f1655927867e50a082706908a8c4b9a63e28d","kind":"commit","published_at":"2017-09-24T20:45:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0/manifests"},{"name":"v2.1.0.rc2","sha":"17e16f3e96fe5884f92623f95dab3f527d6f5263","kind":"commit","published_at":"2016-01-11T18:28:38.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc2/manifests"},{"name":"v2.1.0.rc1","sha":"756f956566c8e48905fcf2da7fc5ce886e5e8860","kind":"commit","published_at":"2015-08-17T23:21:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.1.0.rc1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.1.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.1.0.rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.1.0.rc1/manifests"},{"name":"v2.0.3","sha":"4887e62da44a5ae772d52f028ee25019e6c3626d","kind":"commit","published_at":"2015-08-17T18:09:31.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"1e451b4104dc82f42b1358543c5a635ee9909c98","kind":"commit","published_at":"2015-05-05T19:58:01.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"1e1637cafd32e98957c04550bfb8662b67e3fd6d","kind":"commit","published_at":"2014-08-21T21:25:33.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"d7b11be917a307b6f153dc6d4d36f48830958eb2","kind":"commit","published_at":"2014-05-09T22:49:54.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v2.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"eafd2b2e6a7247c451a01ae861b2ff233a9dfd19","kind":"commit","published_at":"2012-04-14T18:59:58.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"3cd2b206bf36dae5ee33e2ef6adcf77bf1a28eb0","kind":"tag","published_at":"2011-08-08T16:53:56.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"01687df5a0ee82098d869930f997a52ce7af394c","kind":"tag","published_at":"2011-08-08T05:22:02.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.1.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ce7ba2ff83182998aad9edabb7a5b9ca4c614ff0","kind":"commit","published_at":"2010-10-26T04:51:27.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0/manifests"},{"name":"v1.0.0.beta.1","sha":"a8091ca5fd6522b3675d2f3e1e8d48894c5ce69b","kind":"commit","published_at":"2010-07-21T06:53:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v1.0.0.beta.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v1.0.0.beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v1.0.0.beta.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v1.0.0.beta.1/manifests"},{"name":"v0.4.7","sha":"2a08fd2dd08a18b33065bb5f9fa79bff8390a551","kind":"commit","published_at":"2010-03-09T20:45:46.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.7","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.7/manifests"},{"name":"v0.4.6","sha":"cfdad6b5641ea32782ad1c044fc5a18a6255b05c","kind":"commit","published_at":"2010-02-02T14:54:20.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.6","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.6/manifests"},{"name":"v0.4.5","sha":"ac9eeed98563db8cfc2dc06de70d5f289072f305","kind":"commit","published_at":"2010-02-02T12:27:29.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.5","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.5/manifests"},{"name":"v0.4.4","sha":"c70fceff81b37c00432dd6a1263225d9a3822bac","kind":"commit","published_at":"2010-02-01T21:59:18.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.4","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.4/manifests"},{"name":"v0.4.3","sha":"688d2fdfcabf2ac714ab90396757e5f12f7c02e6","kind":"commit","published_at":"2010-01-31T20:17:37.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.3","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c5cf60e90805deb30d0c82119fff52b02c7dff28","kind":"commit","published_at":"2010-01-24T03:53:04.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"6ea20b8dddefe807a17249cebd60769186a71a40","kind":"commit","published_at":"2009-11-23T12:16:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"da0f050dfde4347e88414bfe37dc74e2b8bda17e","kind":"commit","published_at":"2009-11-22T03:51:52.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.4.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.4.0/manifests"},{"name":"v0.3.1","sha":"9c41b488c56c8793f6f6381ca2a3cfde63ce0a1c","kind":"commit","published_at":"2009-10-13T03:08:16.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"50069295ea53b13f103785c53ff9723a0f384ac6","kind":"commit","published_at":"2009-10-06T22:46:40.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.3.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"5189bb0f6d555da3e3815d493e93ed51cc529a0b","kind":"commit","published_at":"2009-08-31T03:49:14.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.2","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"08c27c0e35ce0b60e8c92c8954886643ed793937","kind":"commit","published_at":"2009-08-19T05:56:51.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.1","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"24e03120e0a8042b261596e0f83bb61a989e0485","kind":"commit","published_at":"2009-08-11T05:35:26.000Z","download_url":"https://codeload.github.com/flavorjones/loofah/tar.gz/v0.2.0","html_url":"https://github.com/flavorjones/loofah/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/flavorjones/loofah@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/tags/v0.2.0/manifests"}]},"repo_metadata_updated_at":"2026-07-09T03:02:02.205Z","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:pkgsrc/www/ruby-loofah?arch=x86_64\u0026os=NetBSD","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pkgsrc/www/ruby-loofah","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pkgsrc/www/ruby-loofah","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pkgsrc/www/ruby-loofah/dependencies","status":null,"funding_links":["https://github.com/sponsors/flavorjones","https://tidelift.com/funding/github/rubygems/loofah"],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-26T21:00:32.339Z","issues_count":48,"pull_requests_count":104,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":3043488.84375,"issues_closed_count":37,"pull_requests_closed_count":96,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0625,"avg_comments_per_pull_request":1.7692307692307692,"merged_pull_requests_count":74,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":1,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":412.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":1.6666666666666667,"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/flavorjones%2Floofah/issues","maintainers":[{"login":"flavorjones","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}],"active_maintainers":[{"login":"flavorjones","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/www%2Fruby-loofah/codemeta","maintainers":[],"registry":{"name":"pkgsrc-netbsd-x86_64-10.1-all","url":"https://cdn.netbsd.org/pub/pkgsrc/packages/NetBSD/x86_64/10.1/All","ecosystem":"pkgsrc","default":true,"packages_count":19690,"maintainers_count":0,"namespaces_count":43,"keywords_count":368,"github":"pkgsrc","metadata":{"funded_packages_count":351},"icon_url":"https://github.com/pkgsrc.png","created_at":"2026-05-26T08:59:24.518Z","updated_at":"2026-08-13T05:00:06.991Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/namespaces"}}],"commits":{"id":3263,"full_name":"flavorjones/loofah","default_branch":"main","total_commits":747,"total_committers":64,"total_bot_commits":1,"total_bot_committers":1,"mean_commits":11.671875,"dds":0.1686746987951807,"past_year_total_commits":18,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":18.0,"past_year_dds":0.0,"last_synced_at":"2026-08-02T11:11:41.838Z","last_synced_commit":"2706d7e858426ba856d9711b0e761b2fee7986c4","created_at":"2023-03-07T09:17:02.563Z","updated_at":"2026-08-02T11:09:09.560Z","committers":[{"name":"Mike Dalessio","email":"mike@csa.net","login":"flavorjones","count":621},{"name":"Bryan Helmkamp","email":"bryan@brynary.com","login":"brynary","count":15},{"name":"Olle Jonsson","email":"olle.jonsson@gmail.com","login":"olleolleolle","count":14},{"name":"Juanito Fatas","email":"katehuang0320@gmail.com","login":"JuanitoFatas","count":10},{"name":"Timm","email":"kaspth@gmail.com","login":"kaspth","count":9},{"name":"Jose Colella","email":"jose.colella@gusto.com","login":"josecolella","count":4},{"name":"Orien Madgwick","email":"_@orien.io","login":"orien","count":3},{"name":"Ken Dreyer","email":"ktdreyer@ktdreyer.com","login":"ktdreyer","count":3},{"name":"Aaron Patterson","email":"aaron.patterson@gmail.com","login":"tenderlove","count":3},{"name":"Juanito Fatas","email":"juanito.fatas@shopify.com","login":null,"count":3},{"name":"m-nakamura145","email":"masato.nakamura145@gmail.com","login":"m-nakamura145","count":2},{"name":"Tarcisio Ferraz","email":"tarcisio.ferraz@pipefy.com","login":null,"count":2},{"name":"Adam Sokolnicki","email":"adam.sokolnicki@gmail.com","login":"asok","count":2},{"name":"James Adam","email":"james@lazyatom.com","login":"lazyatom","count":2},{"name":"Jun Aruga","email":"jaruga@redhat.com","login":"junaruga","count":2},{"name":"MothOnMars","email":"mothonmars@gmail.com","login":"MothOnMars","count":2},{"name":"Nick DeSteffen","email":"nick.desteffen@gmail.com","login":"nick-desteffen","count":2},{"name":"Niko Roberts","email":"niko@tasboa.com","login":"NikoRoberts","count":2},{"name":"Brendon Muir","email":"brendon@spike.net.nz","login":"brendon","count":1},{"name":"Ben Atkins","email":"batkinz@gmail.com","login":"batter","count":1},{"name":"Bao Pham","email":"gbaopham@gmail.com","login":"baopham","count":1},{"name":"Anton Rieder","email":"1301152+aried3r","login":"aried3r","count":1},{"name":"Andrey Nering","email":"andrey.nering@gmail.com","login":"andreynering","count":1},{"name":"Andrew Nesbitt","email":"andrewnez@gmail.com","login":"andrew","count":1},{"name":"Matt Swanson","email":"mdswanson@sep.com","login":null,"count":1},{"name":"Bill Chaney","email":"bill@aha.io","login":null,"count":1},{"name":"Fabian Winkler","email":"","login":null,"count":1},{"name":"Jen-Mei Wu and Tommy Devol","email":"pair+jenmei+tommy@indiegogo.com","login":null,"count":1},{"name":"Laurent Cobos","email":"laurent@11factory.fr","login":null,"count":1},{"name":"Rafael Mendonça França","email":"rafael.franca@plataformatec.com.br","login":null,"count":1},{"name":"Stefanni Brasil","email":"stefannibrasil@gmail.com","login":null,"count":1},{"name":"miguel perez","email":"miguelperez@0002-Chopis-MacBook-Pro.local","login":null,"count":1},{"name":"yuuji.yaginuma","email":"yuuji.yaginuma@gmail.com","login":"y-yagi","count":1},{"name":"rmacklin","email":"richard.github@nrm.com","login":"rmacklin","count":1},{"name":"pavel","email":"pavel.rosicky@easy.cz","login":"ahorek","count":1},{"name":"joncalhoun","email":"joncalhoun@gmail.com","login":"joncalhoun","count":1},{"name":"dependabot-preview[bot]","email":"27856297+dependabot-preview[bot]","login":"dependabot-preview[bot]","count":1},{"name":"Vipul A M","email":"vipulnsward@gmail.com","login":"vipulnsward","count":1},{"name":"Tommy Devol","email":"kultiv8tor@gmail.com","login":"tastycode","count":1},{"name":"Siddhartha Mukherjee","email":"mukherjee.siddhartha@gmail.com","login":"mukherjee78","count":1},{"name":"Sampo Kuokkanen","email":"sampo.kuokkanen@gmail.com","login":"sampokuokkanen","count":1},{"name":"Paul Dix","email":"paul@pauldix.net","login":"pauldix","count":1},{"name":"Olivier Lacan","email":"hi@olivierlacan.com","login":"olivierlacan","count":1},{"name":"Nando Vieira","email":"me@fnando.com","login":"fnando","count":1},{"name":"Dharam Gollapudi","email":"dharam.gollapudi@gmail.com","login":"dharamgollapudi","count":1},{"name":"Matt Pasquini","email":"matt.pasquini@coupa.com","login":"mrpasquini","count":1},{"name":"Louis-Michel Couture","email":"louim_1@hotmail.com","login":"louim","count":1},{"name":"Kristian Freeman","email":"kristian@kristianfreeman.com","login":"kristianfreeman","count":1},{"name":"Katsuhiko YOSHIDA","email":"claddvd@gmail.com","login":"kyoshidajp","count":1},{"name":"Joshua Nichols","email":"josh@technicalpickles.com","login":"technicalpickles","count":1},{"name":"Josh Owens","email":"joshua.owens@gmail.com","login":"queso","count":1},{"name":"John Barnette","email":"jbarnette@gmail.com","login":"jbarnette","count":1},{"name":"Jesse Storimer","email":"jesse@shopify.com","login":"jstorimer","count":1},{"name":"Jay Sissom and Sean Hurley","email":"sean.hurley6@gmail.com","login":"ThatHurleyGuy","count":1},{"name":"Jared Beck","email":"jared@jaredbeck.com","login":"jaredbeck","count":1},{"name":"Igor Victor","email":"gogainda@yandex.ru","login":"gogainda","count":1},{"name":"George Claghorn","email":"george@basecamp.com","login":"georgeclaghorn","count":1},{"name":"Earlopain","email":"14981592+Earlopain","login":"Earlopain","count":1},{"name":"7rans","email":"transfire@gmail.com","login":"trans","count":1},{"name":"David A. Wheeler","email":"dwheeler@dwheeler.com","login":"david-a-wheeler","count":1},{"name":"Dan Stucky","email":"danfstucky@gmail.com","login":"danfstucky","count":1},{"name":"Damon P. Cortesi","email":"d.lifehacker@gmail.com","login":"dacort","count":1},{"name":"Christian Kissner","email":"christian.kissner.-nd@disney.com","login":"christiankisssner","count":1},{"name":"Carlos B","email":"4706739+cjba7","login":"cjba7","count":1}],"past_year_committers":[{"name":"Mike Dalessio","email":"mike.dalessio@gmail.com","login":"flavorjones","count":18}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-02T00:00:18.173Z","repositories_count":6544298,"commits_count":901407911,"contributors_count":37910970,"owners_count":1299826,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"flavorjones/loofah","html_url":"https://github.com/flavorjones/loofah","last_synced_at":"2026-08-12T16:33:36.201Z","status":"error","issues_count":49,"pull_requests_count":108,"avg_time_to_close_issue":15767736.486486487,"avg_time_to_close_pull_request":2922431.44,"issues_closed_count":37,"pull_requests_closed_count":100,"pull_request_authors_count":39,"issue_authors_count":37,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":1.7314814814814814,"merged_pull_requests_count":78,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":2,"past_year_pull_requests_count":6,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":13784.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":1.3333333333333333,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"created_at":"2023-05-12T13:23:09.155Z","updated_at":"2026-08-12T16:33:36.201Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/flavorjones%2Floofah/issues","issue_labels_count":{"table":{"user-help":4,"feature":3,"allowlist":3,"will-close":2,"needs more information":2,"discussion":2,"scrubbers":1,"blocked":1}},"pull_request_labels_count":{"table":{"dependencies":2,"pr-under-review":1,"needs more information":1}},"issue_author_associations_count":{"table":{"NONE":36,"OWNER":10,"CONTRIBUTOR":3}},"pull_request_author_associations_count":{"table":{"OWNER":53,"NONE":28,"CONTRIBUTOR":27}},"issue_authors":{"table":{"flavorjones":10,"stefannibrasil":2,"bbugh":2,"epinault":2,"rocketedaway":1,"lessless":1,"unikitty37":1,"miguelperez":1,"jarkko":1,"th0r":1,"davidjstein":1,"piyush-ally":1,"jmjohnson":1,"puneet-sutar":1,"brendon":1,"dometto":1,"Segaja":1,"hahuang65":1,"zac23or":1,"pandu-cls":1,"der-flo":1,"srussking":1,"DanielHeath":1,"danema":1,"gamesover":1,"stanhu":1,"Iwaide":1,"wizardofosmium":1,"jacobherrington":1,"anil-adepu":1,"b7kich":1,"mileslane":1,"chengguangnan":1,"mroach":1,"weiqingtoh":1,"aert":1,"ryanb":1}},"pull_request_authors":{"table":{"flavorjones":53,"lazyatom":4,"m-nakamura145":4,"factcondenser":2,"josecolella":2,"nick-desteffen":2,"andrew":2,"headius":2,"Earlopain":2,"JuanitoFatas":2,"lucyxiang":2,"troym9731":2,"dependabot-preview[bot]":2,"fnando":2,"cjba7":1,"kyoshidajp":1,"b7kich":1,"sampokuokkanen":1,"rafbm":1,"shota-yamashita":1,"naveensrinivasan":1,"andreynering":1,"ahorek":1,"tarcisiozf":1,"orien":1,"brendon":1,"kataokatsuki":1,"dharamgollapudi":1,"miguelperez":1,"gogainda":1,"asok":1,"Antronin":1,"wynksaiddestroy":1,"IhorPohasii":1,"oluwayetty":1,"louim":1,"HusseinMorsy":1,"stefannibrasil":1,"dedene":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-12T00:00:07.634Z","repositories_count":16026515,"issues_count":40529267,"pull_requests_count":131033080,"authors_count":11440540,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{}},"past_year_issue_author_associations_count":{"table":{"NONE":1,"OWNER":1}},"past_year_pull_request_author_associations_count":{"table":{"OWNER":5,"NONE":1}},"past_year_issue_authors":{"table":{"flavorjones":1,"zac23or":1}},"past_year_pull_request_authors":{"table":{"flavorjones":5,"kataokatsuki":1}},"maintainers":[{"table":{"login":"flavorjones","count":63,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}}],"active_maintainers":[{"table":{"login":"flavorjones","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/flavorjones"}}]}},"events":{"total":{"ReleaseEvent":4,"DeleteEvent":7,"PullRequestEvent":21,"ForkEvent":7,"IssuesEvent":1,"WatchEvent":33,"IssueCommentEvent":18,"PushEvent":27,"CreateEvent":10},"last_year":{"DeleteEvent":3,"PullRequestEvent":1,"ForkEvent":2,"IssuesEvent":1,"WatchEvent":13,"PushEvent":8,"CreateEvent":2}},"keywords":[],"dependencies":[{"ecosystem":"rubygems","filepath":"loofah.gemspec","sha":null,"kind":"manifest","created_at":"2022-07-05T04:31:59.759Z","updated_at":"2022-07-05T04:31:59.759Z","repository_link":"https://github.com/flavorjones/loofah/blob/main/loofah.gemspec","dependencies":[{"id":105622116,"package_name":"crass","ecosystem":"rubygems","requirements":"~\u003e 1.0.2","direct":true,"kind":"runtime","optional":false},{"id":105622117,"package_name":"nokogiri","ecosystem":"rubygems","requirements":"\u003e= 1.5.9","direct":true,"kind":"runtime","optional":false},{"id":105622118,"package_name":"hoe-markdown","ecosystem":"rubygems","requirements":"~\u003e 1.3","direct":true,"kind":"development","optional":false},{"id":105622119,"package_name":"json","ecosystem":"rubygems","requirements":"~\u003e 2.2","direct":true,"kind":"development","optional":false},{"id":105622120,"package_name":"minitest","ecosystem":"rubygems","requirements":"~\u003e 5.14","direct":true,"kind":"development","optional":false},{"id":105622121,"package_name":"rake","ecosystem":"rubygems","requirements":"~\u003e 13.0","direct":true,"kind":"development","optional":false},{"id":105622122,"package_name":"rdoc","ecosystem":"rubygems","requirements":"\u003e= 4.0, \u003c 7","direct":true,"kind":"development","optional":false},{"id":105622123,"package_name":"rr","ecosystem":"rubygems","requirements":"~\u003e 1.2.0","direct":true,"kind":"development","optional":false},{"id":105622124,"package_name":"rubocop","ecosystem":"rubygems","requirements":"~\u003e 1.1","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-13T10:32:27.381Z","updated_at":"2023-01-13T10:32:27.381Z","repository_link":"https://github.com/flavorjones/loofah/blob/main/.github/workflows/ci.yml","dependencies":[{"id":6875551651,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6875551652,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2023-07-07T01:16:30.724Z","updated_at":"2023-07-07T01:16:30.724Z","repository_link":"https://github.com/flavorjones/loofah/blob/main/Gemfile","dependencies":[{"id":11173998308,"package_name":"rubocop","ecosystem":"rubygems","requirements":"~\u003e 1.1","direct":true,"kind":"development","optional":false},{"id":11173998309,"package_name":"rubocop-minitest","ecosystem":"rubygems","requirements":"= 0.29.0","direct":true,"kind":"development","optional":false},{"id":11173998310,"package_name":"rubocop-packaging","ecosystem":"rubygems","requirements":"= 0.5.2","direct":true,"kind":"development","optional":false},{"id":11173998313,"package_name":"rubocop-performance","ecosystem":"rubygems","requirements":"= 1.16.0","direct":true,"kind":"development","optional":false},{"id":11173998314,"package_name":"rubocop-rake","ecosystem":"rubygems","requirements":"= 0.6.0","direct":true,"kind":"development","optional":false},{"id":11173998317,"package_name":"rubocop-shopify","ecosystem":"rubygems","requirements":"= 2.12.0","direct":true,"kind":"development","optional":false}]}],"score":32.94185124884035,"created_at":"2024-06-13T11:02:27.264Z","updated_at":"2026-08-13T17:03:33.252Z","avatar_url":"https://github.com/flavorjones.png","language":"Ruby","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/123431","html_url":"https://summary.ecosyste.ms/projects/123431"}