{"id":369969,"url":"https://github.com/pytest-dev/pytest-subtests","last_synced_at":"2026-08-25T12:33:51.639Z","repository":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"packages":[{"id":13708384,"name":"python-pytest-subtests","ecosystem":"debian","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T22:39:18.809Z","latest_release_published_at":"2026-02-12T22:39:18.809Z","latest_release_number":"0.9.0-1","last_synced_at":"2026-03-13T07:53:17.156Z","created_at":"2026-02-12T22:39:18.628Z","updated_at":"2026-03-13T08:42:13.143Z","registry_url":"https://tracker.debian.org/pkg/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":"https://packages.debian.org/bookworm/python-pytest-subtests","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"python3-pytest-subtests","standards_version":"4.6.0.1","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, python3-all:any, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-12T22:39:19.479Z","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/python-pytest-subtests?arch=source\u0026distro=debian-12","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-12/packages/python-pytest-subtests/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":2645,"github":"debian","metadata":{"codename":"bookworm","funded_packages_count":1237},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.459Z","updated_at":"2026-08-25T05:06:43.662Z","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":13800469,"name":"python-pytest-subtests","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T17:24:43.387Z","latest_release_published_at":"2026-02-13T17:24:43.387Z","latest_release_number":"0.11.0-1","last_synced_at":"2026-03-13T18:23:07.748Z","created_at":"2026-02-13T17:24:43.191Z","updated_at":"2026-03-13T18:23:07.748Z","registry_url":"https://launchpad.net/ubuntu/+source/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-pytest-subtests","standards_version":"4.6.2","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, pybuild-plugin-pyproject, python3-all:any, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T17:24:44.085Z","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/python-pytest-subtests?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/python-pytest-subtests/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":1339},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-08-25T05:06:51.033Z","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":11766636,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-04-01T01:53:31.822Z","created_at":"2025-06-07T18:51:05.455Z","updated_at":"2026-08-23T01:14:12.687Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T01:14:12.687Z","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:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.22","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2025-06-08T16:30:54.886Z","updated_at":"2025-06-08T16:30:54.886Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26323,"maintainers_count":422,"namespaces_count":2,"keywords_count":4638,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1803},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2026-08-24T05:06:25.345Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":13463967,"name":"python-pytest-subtests","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-09T13:00:47.514Z","latest_release_published_at":"2026-02-09T13:00:47.514Z","latest_release_number":"0.13.1-1","last_synced_at":"2026-03-09T13:05:32.814Z","created_at":"2026-02-09T13:00:46.769Z","updated_at":"2026-08-23T00:55:32.585Z","registry_url":"https://launchpad.net/ubuntu/+source/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-pytest-subtests","standards_version":"4.7.0","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-python3, pybuild-plugin-pyproject, python3-all:any, python3-attr, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T00:55:32.585Z","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/python-pytest-subtests?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/python-pytest-subtests/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":1322},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-08-25T05:04:58.025Z","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":12898468,"name":"python314Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-01-27T09:44:28.162Z","latest_release_published_at":"2026-01-27T09:44:28.162Z","latest_release_number":"0.14.2","last_synced_at":"2026-03-07T09:27:56.156Z","created_at":"2026-01-27T09:44:27.945Z","updated_at":"2026-08-23T02:42:10.377Z","registry_url":"https://search.nixos.org/packages?channel=unstable\u0026query=python314Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python314Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/python-modules/pytest-subtests/default.nix#L40","metadata":{"nix_attribute":"python3.14-pytest-subtests-0.14.2","position":"pkgs/development/python-modules/pytest-subtests/default.nix:40","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","aarch64-darwin","aarch64-windows","x86_64-windows","i686-windows","i686-freebsd","x86_64-freebsd","aarch64-freebsd"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T02:42:10.377Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:nix/python314Packages.pytest-subtests?channel=unstable","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python314Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python314Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python314Packages.pytest-subtests/dependencies","status":"removed","funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python314Packages.pytest-subtests/codemeta","maintainers":[],"registry":{"name":"nixpkgs-unstable","url":"https://channels.nixos.org/nixos-unstable","ecosystem":"nixpkgs","default":true,"packages_count":153806,"maintainers_count":4905,"namespaces_count":0,"keywords_count":3244,"github":"NixOS","metadata":{"funded_packages_count":6032},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:52.762Z","updated_at":"2026-08-25T05:00:24.061Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/namespaces"}},{"id":7779863,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-20T10:56:11.000Z","latest_release_published_at":"2023-04-20T10:56:11.000Z","latest_release_number":"0.10.0-r1","last_synced_at":"2026-04-01T03:43:47.730Z","created_at":"2023-05-22T14:37:03.233Z","updated_at":"2026-08-23T04:01:48.987Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T04:01:48.987Z","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":17.275946336841056,"forks_count":22.866689940651337,"docker_downloads_count":null,"average":10.035659069373098},"purl":"pkg:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.18","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2023-05-23T07:23:14.525Z","updated_at":"2023-05-23T07:23:14.525Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3639,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1238},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2026-08-22T05:06:15.110Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":13306500,"name":"python311Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-02T07:05:28.293Z","latest_release_published_at":"2026-02-02T07:05:28.293Z","latest_release_number":"0.11.0","last_synced_at":"2026-03-08T11:43:11.100Z","created_at":"2026-02-02T07:05:26.158Z","updated_at":"2026-08-23T04:01:49.824Z","registry_url":"https://search.nixos.org/packages?channel=23.11\u0026query=python311Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python311Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-23.11/pkgs/development/python-modules/pytest-subtests/default.nix#L36","metadata":{"nix_attribute":"python3.11-pytest-subtests-0.11.0","position":"pkgs/development/python-modules/pytest-subtests/default.nix:36","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","x86_64-windows","i686-windows"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T04:01:49.824Z","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:nix/python311Packages.pytest-subtests?channel=23.11\u0026repository_url=https://channels.nixos.org/nixos-23.11","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python311Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python311Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":4331,"html_url":null,"role":null,"created_at":"2026-03-08T11:43:11.313Z","updated_at":"2026-03-08T11:43:11.313Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-23.11","url":"https://channels.nixos.org/nixos-23.11","ecosystem":"nixpkgs","default":false,"packages_count":108178,"maintainers_count":2997,"namespaces_count":0,"keywords_count":569,"github":"NixOS","metadata":{"funded_packages_count":3095},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.577Z","updated_at":"2026-08-25T05:04:39.690Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/namespaces"}},{"id":13206886,"name":"python312Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-02T01:08:32.025Z","latest_release_published_at":"2026-02-02T01:08:32.025Z","latest_release_number":"0.12.1","last_synced_at":"2026-03-09T05:07:30.116Z","created_at":"2026-02-02T01:08:31.731Z","updated_at":"2026-08-23T05:22:50.342Z","registry_url":"https://search.nixos.org/packages?channel=24.05\u0026query=python312Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python312Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-24.05/pkgs/development/python-modules/pytest-subtests/default.nix#L42","metadata":{"nix_attribute":"python3.12-pytest-subtests-0.12.1","position":"pkgs/development/python-modules/pytest-subtests/default.nix:42","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","x86_64-windows","i686-windows"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T05:22:50.342Z","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:nix/python312Packages.pytest-subtests?channel=24.05\u0026repository_url=https://channels.nixos.org/nixos-24.05","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python312Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python312Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python312Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python312Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":4856,"html_url":null,"role":null,"created_at":"2026-03-09T05:07:30.270Z","updated_at":"2026-03-09T05:07:30.270Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-24.05","url":"https://channels.nixos.org/nixos-24.05","ecosystem":"nixpkgs","default":false,"packages_count":116156,"maintainers_count":3383,"namespaces_count":0,"keywords_count":654,"github":"NixOS","metadata":{"funded_packages_count":3204},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.309Z","updated_at":"2026-08-25T05:01:17.178Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/namespaces"}},{"id":13527699,"name":"python-pytest-subtests","ecosystem":"debian","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-10T23:01:43.803Z","latest_release_published_at":"2026-02-10T23:01:43.803Z","latest_release_number":"0.3.2-2","last_synced_at":"2026-03-13T09:30:01.382Z","created_at":"2026-02-10T23:01:43.606Z","updated_at":"2026-08-23T08:09:45.684Z","registry_url":"https://tracker.debian.org/pkg/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":"https://packages.debian.org/bullseye/python-pytest-subtests","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"python3-pytest-subtests","standards_version":"4.5.1","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, python3-all, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T08:09:45.684Z","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/python-pytest-subtests?arch=source\u0026distro=debian-11\u0026repository_url=https://packages.debian.org/bullseye","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-11/packages/python-pytest-subtests/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":805},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:49.702Z","updated_at":"2026-08-25T05:06:44.833Z","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":8677911,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-06-27T06:41:57.000Z","latest_release_published_at":"2023-06-27T06:41:57.000Z","latest_release_number":"0.11.0-r0","last_synced_at":"2026-04-01T03:25:29.848Z","created_at":"2023-12-20T10:29:55.750Z","updated_at":"2026-08-23T08:09:45.958Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T08:09:45.957Z","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:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.19","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2024-02-10T01:18:37.420Z","updated_at":"2024-02-10T01:18:37.420Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":392,"namespaces_count":2,"keywords_count":3176,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":960},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2026-08-25T05:07:15.581Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":13403969,"name":"python-pytest-subtests","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-06T11:54:33.271Z","latest_release_published_at":"2026-02-06T11:54:33.271Z","latest_release_number":"0.11.0-2","last_synced_at":"2026-03-06T12:07:52.824Z","created_at":"2026-02-06T11:54:32.362Z","updated_at":"2026-08-23T08:28:20.978Z","registry_url":"https://launchpad.net/ubuntu/+source/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-pytest-subtests","standards_version":"4.6.2","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, pybuild-plugin-pyproject, python3-all:any, python3-attr, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T08:28:20.977Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:deb/ubuntu/python-pytest-subtests?arch=source\u0026distro=ubuntu-24.04","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.04/packages/python-pytest-subtests/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":1245},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:45.928Z","updated_at":"2026-08-25T05:06:49.291Z","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":13665511,"name":"python-pytest-subtests","ecosystem":"debian","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["misc"],"namespace":"main","versions_count":1,"first_release_published_at":"2026-02-12T10:42:36.681Z","latest_release_published_at":"2026-02-12T10:42:36.681Z","latest_release_number":"0.13.1-1","last_synced_at":"2026-03-14T09:12:35.419Z","created_at":"2026-02-12T10:42:36.440Z","updated_at":"2026-08-23T08:28:21.582Z","registry_url":"https://tracker.debian.org/pkg/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":"https://packages.debian.org/trixie/python-pytest-subtests","metadata":{"component":"main","architecture":"all","priority":"extra","binary":"python3-pytest-subtests","standards_version":"4.7.0","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-python3, pybuild-plugin-pyproject, python3-all:any, python3-attr, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T08:28:21.582Z","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/python-pytest-subtests?arch=source\u0026distro=debian-13\u0026repository_url=https://packages.debian.org/trixie","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/debian/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/debian/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/debian/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/debian-13/packages/python-pytest-subtests/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":1687},"icon_url":"https://github.com/debian.png","created_at":"2026-02-04T11:01:50.448Z","updated_at":"2026-08-25T05:04:56.023Z","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":11139978,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-04-01T01:42:28.170Z","created_at":"2024-12-07T13:07:35.065Z","updated_at":"2026-08-23T09:07:56.859Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T09:07:56.858Z","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:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.21","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2024-12-16T16:40:53.634Z","updated_at":"2024-12-16T16:40:53.634Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25394,"maintainers_count":413,"namespaces_count":2,"keywords_count":3607,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1400},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2026-08-24T05:06:22.358Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":13775206,"name":"python-pytest-subtests","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T12:40:14.210Z","latest_release_published_at":"2026-02-13T12:40:14.210Z","latest_release_number":"0.6.0-1","last_synced_at":"2026-08-19T12:31:27.946Z","created_at":"2026-02-13T12:40:14.048Z","updated_at":"2026-08-23T09:07:56.753Z","registry_url":"https://launchpad.net/ubuntu/+source/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-pytest-subtests","standards_version":"4.6.0.1","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, python3-all:any, python3-pytest, python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T09:07:56.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/python-pytest-subtests?arch=source\u0026distro=ubuntu-22.04\u0026repository_url=https://launchpad.net/ubuntu/jammy","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-22.04/packages/python-pytest-subtests/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":976},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:46.486Z","updated_at":"2026-08-25T05:06:47.665Z","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":10345512,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-08-17T10:32:10.011Z","created_at":"2024-06-11T10:31:14.992Z","updated_at":"2026-08-23T10:23:57.791Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T10:23:57.791Z","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:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.20","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2024-06-12T01:31:08.217Z","updated_at":"2024-06-12T01:31:08.217Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4251,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1543},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2026-08-24T05:06:36.705Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":7779864,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-20T10:56:11.000Z","latest_release_published_at":"2023-04-20T10:56:11.000Z","latest_release_number":"0.10.0-r1","last_synced_at":"2026-04-01T03:43:47.284Z","created_at":"2023-05-22T14:37:03.498Z","updated_at":"2026-08-23T10:46:10.457Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T10:46:10.457Z","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":17.275946336841056,"forks_count":22.866689940651337,"docker_downloads_count":null,"average":10.035659069373098},"purl":"pkg:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.18","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2023-05-23T07:23:19.327Z","updated_at":"2023-05-23T07:23:19.327Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3639,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1238},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2026-08-22T05:06:15.110Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":6057190,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"main","versions_count":6,"first_release_published_at":"2022-11-22T19:33:35.000Z","latest_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_number":"0.14.2-r0","last_synced_at":"2026-03-25T05:07:33.034Z","created_at":"2023-01-31T18:56:51.326Z","updated_at":"2026-08-23T10:46:10.618Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/main/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"main","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T10:46:10.617Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":14.64073262366938,"stargazers_count":18.773481527864746,"forks_count":24.784752661239825,"average":14.549741703193488},"purl":"pkg:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=edge","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":"alpine@juniorjpdj.pl","url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":14,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2023-01-31T23:37:42.304Z","updated_at":"2023-01-31T23:37:42.304Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":39959,"maintainers_count":905,"namespaces_count":3,"keywords_count":6584,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2944},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2026-08-25T05:06:28.429Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":13079775,"name":"python311Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-01T17:43:18.934Z","latest_release_published_at":"2026-02-01T17:43:18.934Z","latest_release_number":"0.13.1","last_synced_at":"2026-03-08T05:24:44.232Z","created_at":"2026-02-01T17:43:18.012Z","updated_at":"2026-03-08T05:31:01.142Z","registry_url":"https://search.nixos.org/packages?channel=24.11\u0026query=python311Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python311Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-24.11/pkgs/development/python-modules/pytest-subtests/default.nix#L43","metadata":{"nix_attribute":"python3.11-pytest-subtests-0.13.1","position":"pkgs/development/python-modules/pytest-subtests/default.nix:43","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","aarch64-windows","x86_64-windows","i686-windows","i686-freebsd","x86_64-freebsd"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:nix/python311Packages.pytest-subtests?channel=24.11\u0026repository_url=https://channels.nixos.org/nixos-24.11","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python311Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python311Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":5052,"html_url":null,"role":null,"created_at":"2026-03-08T05:24:44.401Z","updated_at":"2026-03-08T05:24:44.401Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-24.11","url":"https://channels.nixos.org/nixos-24.11","ecosystem":"nixpkgs","default":false,"packages_count":121983,"maintainers_count":3777,"namespaces_count":0,"keywords_count":739,"github":"NixOS","metadata":{"funded_packages_count":3380},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.059Z","updated_at":"2026-08-25T05:04:34.674Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/namespaces"}},{"id":14512960,"name":"dev-python/pytest-subtests","ecosystem":"gentoo","description":"Unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["~alpha","amd64","arm","arm64","~hppa","~loong","~m68k","~mips","ppc","ppc64","~riscv","~s390","~sparc","x86"],"namespace":"dev-python","versions_count":1,"first_release_published_at":"2026-05-11T16:39:47.000Z","latest_release_published_at":"2026-05-11T16:39:47.000Z","latest_release_number":"0.15.0","last_synced_at":"2026-05-27T02:35:57.168Z","created_at":"2026-05-27T02:35:56.718Z","updated_at":"2026-08-23T12:48:22.574Z","registry_url":"https://packages.gentoo.org/packages/dev-python/pytest-subtests","install_command":"emerge dev-python/pytest-subtests","documentation_url":"https://packages.gentoo.org/packages/dev-python/pytest-subtests","metadata":{"category":"dev-python","slot":"0","eapi":"8","inherit":"distutils-r1 pypi","iuse":"test python_targets_pypy3_11 python_targets_python3_13t python_targets_python3_14t python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 python_targets_python3_14 verify-provenance"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T12:48:22.574Z","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-python/pytest-subtests","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/gentoo/dev-python/pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/gentoo/dev-python/pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/gentoo/dev-python/pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gentoo-portage/packages/dev-python%2Fpytest-subtests/codemeta","maintainers":[],"registry":{"name":"gentoo-portage","url":"https://packages.gentoo.org/","ecosystem":"gentoo","default":true,"packages_count":19524,"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":622},"icon_url":"https://github.com/gentoo.png","created_at":"2026-05-26T08:59:24.155Z","updated_at":"2026-08-25T05:05:03.406Z","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":5287808,"name":"pytest-subtests","ecosystem":"conda","description":"unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":null,"versions_count":4,"first_release_published_at":"2020-10-21T14:14:51.000Z","latest_release_published_at":"2025-08-27T13:17:43.000Z","latest_release_number":"0.14.2","last_synced_at":"2026-04-01T01:57:52.919Z","created_at":"2022-10-03T15:44:59.761Z","updated_at":"2026-08-23T15:52:21.069Z","registry_url":"https://anaconda.org/anaconda/pytest-subtests","install_command":"conda install -c anaconda pytest-subtests","documentation_url":null,"metadata":{},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T15:52:21.068Z","dependent_packages_count":2,"downloads":null,"downloads_period":null,"dependent_repos_count":1,"rankings":{"downloads":null,"dependent_repos_count":51.40695915279879,"dependent_packages_count":20.453857791225417,"stargazers_count":40.96822995461422,"forks_count":50.22692889561271,"docker_downloads_count":null,"average":40.763993948562785},"purl":"pkg:conda/pytest-subtests","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pytest-subtests/codemeta","maintainers":[],"registry":{"name":"anaconda.org","url":"https://anaconda.org","ecosystem":"conda","default":true,"packages_count":5475,"maintainers_count":0,"namespaces_count":0,"keywords_count":3313,"github":"Anaconda","metadata":{"kind":"anaconda","key":"Main","api":"https://repo.ananconda.com","funded_packages_count":852},"icon_url":"https://github.com/Anaconda.png","created_at":"2022-10-03T15:37:08.736Z","updated_at":"2026-08-24T05:06:29.101Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/namespaces"}},{"id":14549075,"name":"devel/py-test-subtests","ecosystem":"openbsd","description":"unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"mit","normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"devel","versions_count":1,"first_release_published_at":"2026-04-25T13:29:24.000Z","latest_release_published_at":"2026-04-25T13:29:24.000Z","latest_release_number":"0.15.0","last_synced_at":"2026-05-28T01:12:35.053Z","created_at":"2026-05-28T01:12:34.832Z","updated_at":"2026-08-23T15:52:21.148Z","registry_url":"https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/devel/py-test-subtests/","install_command":"pkg_add py3-pytest-subtests-0.15.0","documentation_url":null,"metadata":{"pkgstem":"py3-pytest-subtests","fullpkgname":"py3-pytest-subtests-0.15.0","subpackage":"-"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T15:52:21.148Z","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:openbsd/devel/py-test-subtests?arch=amd64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/openbsd/devel/py-test-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/openbsd/devel/py-test-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/openbsd/devel/py-test-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages/devel%2Fpy-test-subtests/codemeta","maintainers":[{"uuid":"ports@openbsd.org","login":null,"name":"The OpenBSD ports mailing-list","email":"ports@openbsd.org","url":null,"packages_count":6235,"html_url":null,"role":null,"created_at":"2026-05-28T01:12:35.256Z","updated_at":"2026-05-28T01:12:35.256Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/maintainers/ports@openbsd.org/packages"}],"registry":{"name":"openbsd-7.9-amd64","url":"https://cdn.openbsd.org/pub/OpenBSD/7.9/packages/amd64","ecosystem":"openbsd","default":true,"packages_count":11808,"maintainers_count":274,"namespaces_count":42,"keywords_count":23,"github":"openbsd","metadata":{"arch":"amd64","sqlports_version":"7.54","funded_packages_count":219},"icon_url":"https://github.com/openbsd.png","created_at":"2026-05-26T11:21:10.750Z","updated_at":"2026-08-25T05:00:07.823Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/openbsd-7.9-amd64/namespaces"}},{"id":5301286,"name":"pytest-subtests","ecosystem":"conda","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":null,"versions_count":11,"first_release_published_at":"2019-04-02T10:00:14.000Z","latest_release_published_at":"2022-10-28T22:09:41.000Z","latest_release_number":"0.9.0","last_synced_at":"2026-03-07T11:48:14.361Z","created_at":"2022-10-03T16:10:33.465Z","updated_at":"2026-08-23T20:08:15.036Z","registry_url":"https://anaconda.org/conda-forge/pytest-subtests","install_command":"conda install -c conda-forge pytest-subtests","documentation_url":null,"metadata":{},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T20:08:15.036Z","dependent_packages_count":4,"downloads":null,"downloads_period":null,"dependent_repos_count":1,"rankings":{"downloads":null,"dependent_repos_count":24.35251260042916,"dependent_packages_count":12.500623783621936,"stargazers_count":29.622236638554817,"forks_count":41.808473476720394,"docker_downloads_count":null,"average":27.070961624831575},"purl":"pkg:conda/pytest-subtests?repository_url=https://conda-forge.org","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/pytest-subtests/codemeta","maintainers":[],"registry":{"name":"conda-forge.org","url":"https://conda-forge.org","ecosystem":"conda","default":false,"packages_count":20636,"maintainers_count":0,"namespaces_count":0,"keywords_count":13549,"github":"conda-forge","metadata":{"kind":"conda-forge","key":"CondaForge","api":"https://conda.anaconda.org","funded_packages_count":2349},"icon_url":"https://github.com/conda-forge.png","created_at":"2022-10-03T15:37:08.743Z","updated_at":"2026-08-25T05:07:08.746Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/namespaces"}},{"id":13298836,"name":"python310Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-02T06:35:24.192Z","latest_release_published_at":"2026-02-02T06:35:24.192Z","latest_release_number":"0.11.0","last_synced_at":"2026-04-11T05:01:18.951Z","created_at":"2026-02-02T06:35:23.695Z","updated_at":"2026-04-11T05:01:18.952Z","registry_url":"https://search.nixos.org/packages?channel=23.11\u0026query=python310Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python310Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-23.11/pkgs/development/python-modules/pytest-subtests/default.nix#L36","metadata":{"nix_attribute":"python3.10-pytest-subtests-0.11.0","position":"pkgs/development/python-modules/pytest-subtests/default.nix:36","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","x86_64-windows","i686-windows"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:nix/python310Packages.pytest-subtests?channel=23.11\u0026repository_url=https://channels.nixos.org/nixos-23.11","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python310Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python310Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python310Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages/python310Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":4331,"html_url":null,"role":null,"created_at":"2026-03-03T23:27:29.507Z","updated_at":"2026-03-03T23:27:29.507Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-23.11","url":"https://channels.nixos.org/nixos-23.11","ecosystem":"nixpkgs","default":false,"packages_count":108178,"maintainers_count":2997,"namespaces_count":0,"keywords_count":569,"github":"NixOS","metadata":{"funded_packages_count":3095},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.577Z","updated_at":"2026-08-25T05:04:39.690Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.11/namespaces"}},{"id":13953007,"name":"python-pytest-subtests","ecosystem":"guix","description":"Unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"expat","normalized_licenses":["Other"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2026-03-02T19:45:33.944Z","latest_release_published_at":"2026-03-02T19:45:33.944Z","latest_release_number":"0.15.0","last_synced_at":"2026-04-27T16:44:15.906Z","created_at":"2026-03-02T19:45:33.648Z","updated_at":"2026-08-23T21:48:57.457Z","registry_url":"https://packages.guix.gnu.org/packages/python-pytest-subtests/0.15.0/","install_command":"guix install python-pytest-subtests","documentation_url":"https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/python-check.scm#n4312","metadata":{"location":"gnu/packages/python-check.scm:4312","variable_name":"python-pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T21:48:57.456Z","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/python-pytest-subtests","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/guix/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/guix/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/guix/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/guix/packages/python-pytest-subtests/codemeta","maintainers":[],"registry":{"name":"guix","url":"https://guix.gnu.org","ecosystem":"guix","default":true,"packages_count":32342,"maintainers_count":0,"namespaces_count":0,"keywords_count":1654,"github":"guix-mirror","metadata":{"funded_packages_count":1231},"icon_url":"https://github.com/guix-mirror.png","created_at":"2026-03-02T16:23:46.981Z","updated_at":"2026-08-25T05:05:02.543Z","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":12832444,"name":"python311Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-01-26T20:13:21.495Z","latest_release_published_at":"2026-01-26T20:13:21.495Z","latest_release_number":"0.10.0","last_synced_at":"2026-04-03T09:24:14.745Z","created_at":"2026-01-26T20:13:21.344Z","updated_at":"2026-04-03T09:31:02.597Z","registry_url":"https://search.nixos.org/packages?channel=23.05\u0026query=python311Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python311Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/development/python-modules/pytest-subtests/default.nix#L34","metadata":{"nix_attribute":"python3.11-pytest-subtests-0.10.0","position":"pkgs/development/python-modules/pytest-subtests/default.nix:34","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mipsel-linux","mips64el-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:nix/python311Packages.pytest-subtests?channel=23.05\u0026repository_url=https://channels.nixos.org/nixos-23.05","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python311Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python311Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":3335,"html_url":null,"role":null,"created_at":"2026-03-03T09:18:12.502Z","updated_at":"2026-03-03T09:18:12.502Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-23.05","url":"https://channels.nixos.org/nixos-23.05","ecosystem":"nixpkgs","default":false,"packages_count":101092,"maintainers_count":2622,"namespaces_count":0,"keywords_count":613,"github":"NixOS","metadata":{"funded_packages_count":2166},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.882Z","updated_at":"2026-08-25T05:04:32.337Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/namespaces"}},{"id":14528029,"name":"devel/py-test-subtests","ecosystem":"pkgsrc","description":"Unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["devel","python"],"namespace":"devel","versions_count":1,"first_release_published_at":"2026-03-19T07:46:23.000Z","latest_release_published_at":"2026-03-19T07:46:23.000Z","latest_release_number":"0.15.0","last_synced_at":"2026-05-27T06:43:06.109Z","created_at":"2026-05-27T06:43:05.822Z","updated_at":"2026-05-27T07:07:03.962Z","registry_url":"https://pkgsrc.se/devel/py-test-subtests","install_command":"pkg_add py313-test-subtests","documentation_url":"https://pkgsrc.se/devel/py-test-subtests","metadata":{"pkg_slug":"py-test-subtests","pkgbase":"py313-test-subtests","machine_arch":"x86_64","opsys":"NetBSD","pkgname_latest":"py313-test-subtests-0.15.0"},"repo_metadata":{},"repo_metadata_updated_at":"2026-05-27T06:43:06.617Z","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/devel/py-test-subtests?arch=x86_64\u0026os=NetBSD","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pkgsrc/devel/py-test-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pkgsrc/devel/py-test-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pkgsrc/devel/py-test-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pkgsrc-netbsd-x86_64-10.1-all/packages/devel%2Fpy-test-subtests/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":480},"icon_url":"https://github.com/pkgsrc.png","created_at":"2026-05-26T08:59:24.518Z","updated_at":"2026-08-25T05:00:19.652Z","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"}},{"id":13198625,"name":"python311Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-02T00:40:00.156Z","latest_release_published_at":"2026-02-02T00:40:00.156Z","latest_release_number":"0.12.1","last_synced_at":"2026-07-24T19:54:18.583Z","created_at":"2026-02-02T00:39:00.511Z","updated_at":"2026-08-24T07:40:22.863Z","registry_url":"https://search.nixos.org/packages?channel=24.05\u0026query=python311Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python311Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-24.05/pkgs/development/python-modules/pytest-subtests/default.nix#L42","metadata":{"nix_attribute":"python3.11-pytest-subtests-0.12.1","position":"pkgs/development/python-modules/pytest-subtests/default.nix:42","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","x86_64-windows","i686-windows"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-24T07:40:22.862Z","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:nix/python311Packages.pytest-subtests?channel=24.05\u0026repository_url=https://channels.nixos.org/nixos-24.05","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python311Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python311Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages/python311Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":4856,"html_url":null,"role":null,"created_at":"2026-03-09T03:09:35.085Z","updated_at":"2026-03-09T03:09:35.085Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-24.05","url":"https://channels.nixos.org/nixos-24.05","ecosystem":"nixpkgs","default":false,"packages_count":116156,"maintainers_count":3383,"namespaces_count":0,"keywords_count":654,"github":"NixOS","metadata":{"funded_packages_count":3204},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.309Z","updated_at":"2026-08-25T05:01:17.178Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.05/namespaces"}},{"id":6148987,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2022-02-01T01:03:15.000Z","latest_release_published_at":"2022-02-01T01:03:15.000Z","latest_release_number":"0.6.0-r0","last_synced_at":"2026-04-01T01:40:55.367Z","created_at":"2023-01-31T23:14:44.047Z","updated_at":"2026-08-24T07:40:24.819Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.16/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-24T07:40:24.819Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":27.31114632857897,"stargazers_count":13.07741973352116,"forks_count":18.0430827023537,"average":14.607912191113458},"purl":"pkg:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.16","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":2,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2023-02-01T14:19:07.310Z","updated_at":"2023-02-01T14:19:07.310Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.16","url":"https://pkgs.alpinelinux.org/packages?branch=v3.16","ecosystem":"alpine","default":false,"packages_count":17040,"maintainers_count":328,"namespaces_count":2,"keywords_count":2855,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":947},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.662Z","updated_at":"2026-08-25T05:06:56.693Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/namespaces"}},{"id":13563341,"name":"python-pytest-subtests","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-11T05:54:43.700Z","latest_release_published_at":"2026-02-11T05:54:43.700Z","latest_release_number":"0.9.0-1","last_synced_at":"2026-03-12T06:07:36.373Z","created_at":"2026-02-11T05:54:43.489Z","updated_at":"2026-03-12T06:07:36.373Z","registry_url":"https://launchpad.net/ubuntu/+source/python-pytest-subtests","install_command":"apt-get install python-pytest-subtests","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-pytest-subtests","standards_version":"4.6.0.1","maintainer":"Debian Python Team \u003cteam+python@tracker.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-python, python3-all:any, python3-pytest (\u003e= 7), python3-pytest-xdist, python3-setuptools, python3-setuptools-scm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-11T14:54:17.615Z","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/python-pytest-subtests?arch=source\u0026distro=ubuntu-23.04\u0026repository_url=https://launchpad.net/ubuntu/lunar","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/python-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/python-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/python-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.04/packages/python-pytest-subtests/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":999,"github":"ubuntu","metadata":{"codename":"lunar","mirror":"http://old-releases.ubuntu.com/ubuntu","funded_packages_count":1108},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:49.117Z","updated_at":"2026-08-25T05:06:52.544Z","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":8614574,"name":"github.com/pytest-dev/pytest-subtests","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":null,"versions_count":9,"first_release_published_at":"2023-05-15T12:01:24.000Z","latest_release_published_at":"2025-10-20T16:15:32.000Z","latest_release_number":"v0.15.0","last_synced_at":"2026-08-24T12:11:02.658Z","created_at":"2023-12-02T02:14:38.272Z","updated_at":"2026-08-24T12:11:02.658Z","registry_url":"https://pkg.go.dev/github.com/pytest-dev/pytest-subtests","install_command":"go get github.com/pytest-dev/pytest-subtests","documentation_url":"https://pkg.go.dev/github.com/pytest-dev/pytest-subtests#section-documentation","metadata":{},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T05:22:50.349Z","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":3.7762424639409433,"forks_count":5.0735457699407345,"docker_downloads_count":null,"average":7.306777772036381},"purl":"pkg:golang/github.com/pytest-dev/pytest-subtests","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/pytest-dev/pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/pytest-dev/pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/pytest-dev/pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpytest-dev%2Fpytest-subtests/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2281915,"maintainers_count":0,"namespaces_count":839492,"keywords_count":125216,"github":"golang","metadata":{"funded_packages_count":67974,"sync_missing_packages_cursor":{"timestamp":"2026-08-17T00:00:58.969562Z","path":"github.com/Tektoncd/operator","version":"v0.78.0"},"rate_limit":1},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-08-25T05:01:14.867Z","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":2885943,"name":"pytest-subtests","ecosystem":"pypi","description":"unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["test","unittest","pytest"],"namespace":null,"versions_count":22,"first_release_published_at":"2019-04-02T00:52:44.000Z","latest_release_published_at":"2025-10-20T16:26:17.000Z","latest_release_number":"0.15.0","last_synced_at":"2026-08-24T12:12:34.804Z","created_at":"2022-04-10T12:20:02.295Z","updated_at":"2026-08-24T12:12:34.804Z","registry_url":"https://pypi.org/project/pytest-subtests/","install_command":"pip install pytest-subtests --index-url https://pypi.org/simple","documentation_url":"https://pytest-subtests.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 4 - Beta","Framework :: Pytest","Intended Audience :: Developers","License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.9","Programming Language :: Python :: Implementation :: CPython","Topic :: Software Development :: Testing","Typing :: Typed"],"normalized_name":"pytest-subtests","project_status":null},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T21:58:15.920Z","dependent_packages_count":85,"downloads":4756931,"downloads_period":"last-month","dependent_repos_count":547,"rankings":{"downloads":0.3688940039480804,"dependent_repos_count":0.6055501779684916,"dependent_packages_count":0.23379800766750758,"stargazers_count":5.416357720539882,"forks_count":8.72337870067279,"docker_downloads_count":0.7389312744373223,"average":2.681151647539012},"purl":"pkg:pypi/pytest-subtests","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pytest-subtests","docker_dependents_count":18,"docker_downloads_count":1945720,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-23T11:34:03.468Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-subtests/codemeta","maintainers":[{"uuid":"ronny","login":"ronny","name":null,"email":null,"url":null,"packages_count":60,"html_url":"https://pypi.org/user/ronny/","role":null,"created_at":"2023-01-31T11:57:00.824Z","updated_at":"2023-01-31T11:57:00.824Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/ronny/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":930641,"maintainers_count":399816,"namespaces_count":0,"keywords_count":311995,"github":"pypi","metadata":{"funded_packages_count":58611,"rate_limit":2},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-08-25T05:06:24.344Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}},{"id":7632516,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"main","versions_count":4,"first_release_published_at":"2023-04-20T10:56:11.000Z","latest_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_number":"0.14.2-r0","last_synced_at":"2026-03-25T04:05:45.911Z","created_at":"2023-04-23T01:48:19.813Z","updated_at":"2026-03-25T04:05:45.911Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/main/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"main","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":false,"fork":false,"pushed_at":"2025-10-20T16:26:22.000Z","size":214,"stargazers_count":249,"open_issues_count":25,"forks_count":27,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-10-23T00:02:30.406Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2025-10-21T03:09:58.000Z","dependencies_parsed_at":"2023-02-10T18:45:34.913Z","dependency_job_id":"12026f21-fff4-4cc5-a99d-e866077c561a","html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280971730,"owners_count":26422675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"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":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":76,"last_synced_at":"2025-10-23T00:02:12.815Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":35797,"followers":680,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2025-10-23T00:02:12.815Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-30T03:22:11.118Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":14.132689623958058,"stargazers_count":19.462688782515123,"forks_count":25.2142936658132,"average":14.702418018071596},"purl":"pkg:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=edge","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-21T15:00:36.531Z","issues_count":67,"pull_requests_count":188,"avg_time_to_close_issue":14883985.694444444,"avg_time_to_close_pull_request":950604.4566473989,"issues_closed_count":36,"pull_requests_closed_count":173,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.716417910447761,"avg_comments_per_pull_request":0.5904255319148937,"merged_pull_requests_count":161,"bot_issues_count":0,"bot_pull_requests_count":106,"past_year_issues_count":14,"past_year_pull_requests_count":55,"past_year_avg_time_to_close_issue":617252.5,"past_year_avg_time_to_close_pull_request":113401.58333333333,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":48,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":14,"past_year_avg_comments_per_issue":1.3571428571428572,"past_year_avg_comments_per_pull_request":0.7636363636363637,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":36,"past_year_merged_pull_requests_count":44,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[{"login":"nicoddemus","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":"alpine@juniorjpdj.pl","url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":14,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2023-04-23T04:09:53.441Z","updated_at":"2023-04-23T04:09:53.441Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":39959,"maintainers_count":905,"namespaces_count":3,"keywords_count":6584,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2944},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2026-08-25T05:06:28.429Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":8677910,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-06-27T06:41:57.000Z","latest_release_published_at":"2023-06-27T06:41:57.000Z","latest_release_number":"0.11.0-r0","last_synced_at":"2026-04-01T03:26:59.188Z","created_at":"2023-12-20T10:29:55.628Z","updated_at":"2026-04-01T03:26:59.189Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":false,"fork":false,"pushed_at":"2025-10-20T16:26:22.000Z","size":214,"stargazers_count":249,"open_issues_count":25,"forks_count":27,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-10-23T00:02:30.406Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2025-10-21T03:09:58.000Z","dependencies_parsed_at":"2023-02-10T18:45:34.913Z","dependency_job_id":"12026f21-fff4-4cc5-a99d-e866077c561a","html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280971730,"owners_count":26422675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"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":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":76,"last_synced_at":"2025-10-23T00:02:12.815Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":35797,"followers":680,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2025-10-23T00:02:12.815Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-30T03:22:11.122Z","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:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.19","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-21T15:00:36.531Z","issues_count":67,"pull_requests_count":188,"avg_time_to_close_issue":14883985.694444444,"avg_time_to_close_pull_request":950604.4566473989,"issues_closed_count":36,"pull_requests_closed_count":173,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.716417910447761,"avg_comments_per_pull_request":0.5904255319148937,"merged_pull_requests_count":161,"bot_issues_count":0,"bot_pull_requests_count":106,"past_year_issues_count":14,"past_year_pull_requests_count":55,"past_year_avg_time_to_close_issue":617252.5,"past_year_avg_time_to_close_pull_request":113401.58333333333,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":48,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":14,"past_year_avg_comments_per_issue":1.3571428571428572,"past_year_avg_comments_per_pull_request":0.7636363636363637,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":36,"past_year_merged_pull_requests_count":44,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[{"login":"nicoddemus","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"JuniorJPDJ","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=JuniorJPDJ","role":null,"created_at":"2026-03-01T02:44:15.979Z","updated_at":"2026-03-01T02:44:15.979Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":392,"namespaces_count":2,"keywords_count":3176,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":960},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2026-08-25T05:07:15.581Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":12874587,"name":"python313Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-01-27T04:21:34.802Z","latest_release_published_at":"2026-01-27T04:21:34.802Z","latest_release_number":"0.14.2","last_synced_at":"2026-03-07T00:46:24.723Z","created_at":"2026-01-27T04:21:34.548Z","updated_at":"2026-08-24T15:17:34.380Z","registry_url":"https://search.nixos.org/packages?channel=unstable\u0026query=python313Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python313Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/python-modules/pytest-subtests/default.nix#L40","metadata":{"nix_attribute":"python3.13-pytest-subtests-0.14.2","position":"pkgs/development/python-modules/pytest-subtests/default.nix:40","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","aarch64-darwin","aarch64-windows","x86_64-windows","i686-windows","i686-freebsd","x86_64-freebsd","aarch64-freebsd"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-24T15:17:34.380Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{},"purl":"pkg:nix/python313Packages.pytest-subtests?channel=unstable","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python313Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python313Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python313Packages.pytest-subtests/dependencies","status":"removed","funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-24T12:09:22.784Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages/python313Packages.pytest-subtests/codemeta","maintainers":[],"registry":{"name":"nixpkgs-unstable","url":"https://channels.nixos.org/nixos-unstable","ecosystem":"nixpkgs","default":true,"packages_count":153806,"maintainers_count":4905,"namespaces_count":0,"keywords_count":3244,"github":"NixOS","metadata":{"funded_packages_count":6032},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:52.762Z","updated_at":"2026-08-25T05:00:24.061Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-unstable/namespaces"}},{"id":11766637,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-04-01T01:55:20.184Z","created_at":"2025-06-07T18:51:07.919Z","updated_at":"2026-04-01T01:55:20.184Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":false,"fork":false,"pushed_at":"2025-10-20T16:26:22.000Z","size":214,"stargazers_count":249,"open_issues_count":25,"forks_count":27,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-10-23T00:02:30.406Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2025-10-21T03:09:58.000Z","dependencies_parsed_at":"2023-02-10T18:45:34.913Z","dependency_job_id":"12026f21-fff4-4cc5-a99d-e866077c561a","html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280971730,"owners_count":26422675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"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":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":76,"last_synced_at":"2025-10-23T00:02:12.815Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":35797,"followers":680,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2025-10-23T00:02:12.815Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-30T03:22:11.131Z","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:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.22","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-21T15:00:36.531Z","issues_count":67,"pull_requests_count":188,"avg_time_to_close_issue":14883985.694444444,"avg_time_to_close_pull_request":950604.4566473989,"issues_closed_count":36,"pull_requests_closed_count":173,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.716417910447761,"avg_comments_per_pull_request":0.5904255319148937,"merged_pull_requests_count":161,"bot_issues_count":0,"bot_pull_requests_count":106,"past_year_issues_count":14,"past_year_pull_requests_count":55,"past_year_avg_time_to_close_issue":617252.5,"past_year_avg_time_to_close_pull_request":113401.58333333333,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":48,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":14,"past_year_avg_comments_per_issue":1.3571428571428572,"past_year_avg_comments_per_pull_request":0.7636363636363637,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":36,"past_year_merged_pull_requests_count":44,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[{"login":"nicoddemus","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2025-06-08T16:31:08.692Z","updated_at":"2025-06-08T16:31:08.692Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26323,"maintainers_count":422,"namespaces_count":2,"keywords_count":4638,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1803},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2026-08-24T05:06:25.345Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":10345511,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-04-01T02:07:09.947Z","created_at":"2024-06-11T10:31:12.235Z","updated_at":"2026-08-23T08:28:20.853Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-23T08:28:20.853Z","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:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.20","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2024-06-12T01:31:08.160Z","updated_at":"2024-06-12T01:31:08.160Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4251,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1543},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2026-08-24T05:06:36.705Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":6094752,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2022-11-09T09:25:21.000Z","latest_release_published_at":"2022-11-09T09:25:21.000Z","latest_release_number":"0.9.0-r0","last_synced_at":"2026-04-01T03:50:10.951Z","created_at":"2023-01-31T20:31:03.219Z","updated_at":"2026-04-01T03:50:10.951Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.17/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":false,"fork":false,"pushed_at":"2025-10-20T16:26:22.000Z","size":214,"stargazers_count":249,"open_issues_count":25,"forks_count":27,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-10-23T00:02:30.406Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2025-10-21T03:09:58.000Z","dependencies_parsed_at":"2023-02-10T18:45:34.913Z","dependency_job_id":"12026f21-fff4-4cc5-a99d-e866077c561a","html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280971730,"owners_count":26422675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"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":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":76,"last_synced_at":"2025-10-23T00:02:12.815Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":35797,"followers":680,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2025-10-23T00:02:12.815Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-30T03:22:11.121Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":27.253845290221175,"stargazers_count":15.746042438531493,"forks_count":21.376445492309422,"average":16.09408330526552},"purl":"pkg:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.17","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-21T15:00:36.531Z","issues_count":67,"pull_requests_count":188,"avg_time_to_close_issue":14883985.694444444,"avg_time_to_close_pull_request":950604.4566473989,"issues_closed_count":36,"pull_requests_closed_count":173,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.716417910447761,"avg_comments_per_pull_request":0.5904255319148937,"merged_pull_requests_count":161,"bot_issues_count":0,"bot_pull_requests_count":106,"past_year_issues_count":14,"past_year_pull_requests_count":55,"past_year_avg_time_to_close_issue":617252.5,"past_year_avg_time_to_close_pull_request":113401.58333333333,"past_year_issues_closed_count":6,"past_year_pull_requests_closed_count":48,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":14,"past_year_avg_comments_per_issue":1.3571428571428572,"past_year_avg_comments_per_pull_request":0.7636363636363637,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":36,"past_year_merged_pull_requests_count":44,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[{"login":"nicoddemus","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":5,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2023-02-01T06:49:58.729Z","updated_at":"2023-02-01T06:49:58.729Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.17","url":"https://pkgs.alpinelinux.org/packages?branch=v3.17","ecosystem":"alpine","default":false,"packages_count":17817,"maintainers_count":352,"namespaces_count":2,"keywords_count":3375,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1065},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.642Z","updated_at":"2026-08-25T05:07:20.502Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/namespaces"}},{"id":13088624,"name":"python312Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-02-01T18:11:11.544Z","latest_release_published_at":"2026-02-01T18:11:11.544Z","latest_release_number":"0.13.1","last_synced_at":"2026-03-08T07:14:40.384Z","created_at":"2026-02-01T18:11:03.736Z","updated_at":"2026-03-10T13:01:46.710Z","registry_url":"https://search.nixos.org/packages?channel=24.11\u0026query=python312Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python312Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-24.11/pkgs/development/python-modules/pytest-subtests/default.nix#L43","metadata":{"nix_attribute":"python3.12-pytest-subtests-0.13.1","position":"pkgs/development/python-modules/pytest-subtests/default.nix:43","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mips-linux","mips64-linux","mips64el-linux","mipsel-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin","i686-cygwin","x86_64-cygwin","aarch64-windows","x86_64-windows","i686-windows","i686-freebsd","x86_64-freebsd"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:nix/python312Packages.pytest-subtests?channel=24.11\u0026repository_url=https://channels.nixos.org/nixos-24.11","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python312Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python312Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python312Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages/python312Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":5052,"html_url":null,"role":null,"created_at":"2026-03-08T07:14:40.574Z","updated_at":"2026-03-08T07:14:40.574Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-24.11","url":"https://channels.nixos.org/nixos-24.11","ecosystem":"nixpkgs","default":false,"packages_count":121983,"maintainers_count":3777,"namespaces_count":0,"keywords_count":739,"github":"NixOS","metadata":{"funded_packages_count":3380},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.059Z","updated_at":"2026-08-25T05:04:34.674Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-24.11/namespaces"}},{"id":11139977,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.11.0-r1","last_synced_at":"2026-04-01T01:49:56.272Z","created_at":"2024-12-07T13:07:35.008Z","updated_at":"2026-08-24T23:54:39.937Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":78,"last_synced_at":"2026-08-22T23:49:27.099Z","metadata":{"has_sponsors_listing":true,"funding":null},"html_url":"https://github.com/pytest-dev","funding_links":["https://github.com/sponsors/pytest-dev"],"total_stars":38149,"followers":805,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2026-08-22T23:49:27.111Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.15.0","sha":"ff19523c499fcc0a04c999b6614dbfdc3e684629","kind":"commit","published_at":"2025-10-20T16:15:32.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.15.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.15.0/manifests"},{"name":"v0.14.2","sha":"14454dfde9b643263a969365011835d32a9eb721","kind":"commit","published_at":"2025-06-13T10:46:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.2/manifests"},{"name":"v0.14.1","sha":"12638b9b8db478679adb641b3601581fc0fed689","kind":"commit","published_at":"2024-12-10T00:15:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"7ac6f2f8722a0d43008bc06e496cf707aaafc1e3","kind":"commit","published_at":"2024-12-07T11:23:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.14.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.14.0/manifests"},{"name":"v0.13.1","sha":"3671b40691440fcb01e96e346220ac4fe62d3580","kind":"commit","published_at":"2024-07-17T00:30:44.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"3c6a72c0f7a579c887d8a74cd587359db83cfb24","kind":"commit","published_at":"2024-07-07T13:26:37.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.13.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"f55c65c4cbcbf2b6df3a4285c37854405a37747f","kind":"tag","published_at":"2024-03-07T22:53:18.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"850fc2bcae51ca66b8d980907356efa098f1645f","kind":"tag","published_at":"2024-03-06T20:47:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.12.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.12.0/manifests"},{"name":"v0.11.0","sha":"06315b41dc778301ae5a4184fb747da24fd7b261","kind":"tag","published_at":"2023-05-15T12:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/v0.11.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@v0.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/v0.11.0/manifests"},{"name":"0.10.0","sha":"d47a5ced94ed7e69d990640ad867280154f1f535","kind":"commit","published_at":"2023-02-16T01:43:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.10.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"bc84f33580ebf0594267ab902f8c7d832c58a9be","kind":"commit","published_at":"2022-10-28T16:11:13.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.9.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"0f8d4cfe9635424ac29e271e18fa8acdc1f950ba","kind":"commit","published_at":"2022-05-26T11:11:17.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.8.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"34c76500485010f8554c4be3cb71eeba60921a3b","kind":"commit","published_at":"2022-02-13T13:04:02.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.7.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.7.0/manifests"},{"name":"0.6.0","sha":"29a221c22ff526654a59de3977a99e18294c0810","kind":"commit","published_at":"2022-01-15T14:16:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.6.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.6.0/manifests"},{"name":"0.5.0","sha":"0612c4eca6f81887df4ca7956a600b8a6da1701c","kind":"commit","published_at":"2021-05-29T13:00:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.5.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.5.0/manifests"},{"name":"0.4.0","sha":"ecb7f2da251fb80853a856cf352bc536976f0ce9","kind":"commit","published_at":"2020-12-13T13:28:46.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.4.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.4.0/manifests"},{"name":"0.3.2","sha":"94918602e2077ea1ee1a9bf2c164544e90c6cf7b","kind":"commit","published_at":"2020-08-01T14:49:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.2","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.2/manifests"},{"name":"0.3.1","sha":"4c8f6e898f889eaf3fc255e7b5998641a297208d","kind":"commit","published_at":"2020-05-20T20:36:47.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.1/manifests"},{"name":"0.3.0","sha":"b83612519bf80151aade8b7c837a9e0e079dfe14","kind":"commit","published_at":"2020-01-22T23:56:26.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.3.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.3.0/manifests"},{"name":"0.2.1","sha":"4119498164067c620acab29cae71760d6c5449f7","kind":"commit","published_at":"2019-04-04T21:59:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.1","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.1/manifests"},{"name":"0.2.0","sha":"7db707202e4ea7d2167d226cea83c3485bb583d7","kind":"commit","published_at":"2019-04-03T23:13:06.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.2.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.2.0/manifests"},{"name":"0.1.0","sha":"8d6d09b4b21b8265e01ace995ce56f5fa44e2b6e","kind":"commit","published_at":"2019-04-01T23:04:09.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/0.1.0","html_url":"https://github.com/pytest-dev/pytest-subtests/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pytest-dev/pytest-subtests@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags/0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-08-24T23:54:39.937Z","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:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.21","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":["https://github.com/sponsors/pytest-dev"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-24T12:09:22.784Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2024-12-16T16:40:54.055Z","updated_at":"2024-12-16T16:40:54.055Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25394,"maintainers_count":413,"namespaces_count":2,"keywords_count":3607,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1400},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2026-08-24T05:06:22.358Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":12820051,"name":"python310Packages.pytest-subtests","ecosystem":"nixpkgs","description":"Pytest plugin for unittest subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":["python"],"namespace":null,"versions_count":1,"first_release_published_at":"2026-01-26T17:55:00.617Z","latest_release_published_at":"2026-01-26T17:55:00.617Z","latest_release_number":"0.10.0","last_synced_at":"2026-04-09T22:01:18.248Z","created_at":"2026-01-26T17:55:00.463Z","updated_at":"2026-08-25T00:43:19.893Z","registry_url":"https://search.nixos.org/packages?channel=23.05\u0026query=python310Packages.pytest-subtests","install_command":"nix-env -iA nixpkgs.python310Packages.pytest-subtests","documentation_url":"https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/development/python-modules/pytest-subtests/default.nix#L34","metadata":{"nix_attribute":"python3.10-pytest-subtests-0.10.0","position":"pkgs/development/python-modules/pytest-subtests/default.nix:34","platforms":["aarch64-linux","armv5tel-linux","armv6l-linux","armv7a-linux","armv7l-linux","i686-linux","loongarch64-linux","m68k-linux","microblaze-linux","microblazeel-linux","mipsel-linux","mips64el-linux","powerpc64-linux","powerpc64le-linux","riscv32-linux","riscv64-linux","s390-linux","s390x-linux","x86_64-linux","x86_64-darwin","i686-darwin","aarch64-darwin","armv7a-darwin"],"broken":false,"insecure":false,"unfree":false,"outputs":["dist","out"],"upstream_ecosystem":"pypi","upstream_name":"pytest-subtests","upstream_purl":"pkg:pypi/pytest-subtests"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-25T00:43:19.893Z","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:nix/python310Packages.pytest-subtests?channel=23.05\u0026repository_url=https://channels.nixos.org/nixos-23.05","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nixpkgs/python310Packages.pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nixpkgs/python310Packages.pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nixpkgs/python310Packages.pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-24T12:09:22.784Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages/python310Packages.pytest-subtests/codemeta","maintainers":[{"uuid":"fabaff","login":null,"name":"Fabian Affolter","email":"mail@fabian-affolter.ch","url":"https://github.com/fabaff","packages_count":3335,"html_url":null,"role":null,"created_at":"2026-03-03T19:41:02.077Z","updated_at":"2026-03-03T19:41:02.077Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/maintainers/fabaff/packages"}],"registry":{"name":"nixpkgs-23.05","url":"https://channels.nixos.org/nixos-23.05","ecosystem":"nixpkgs","default":false,"packages_count":101092,"maintainers_count":2622,"namespaces_count":0,"keywords_count":613,"github":"NixOS","metadata":{"funded_packages_count":2166},"icon_url":"https://github.com/NixOS.png","created_at":"2026-01-25T22:30:53.882Z","updated_at":"2026-08-25T05:04:32.337Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/nixpkgs-23.05/namespaces"}},{"id":12992903,"name":"py3-pytest-subtests-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pytest-subtests","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"main","versions_count":1,"first_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_number":"0.14.2-r0","last_synced_at":"2026-08-08T02:07:24.341Z","created_at":"2026-01-30T19:32:29.020Z","updated_at":"2026-08-23T06:26:06.713Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.23/main/x86_64/py3-pytest-subtests-pyc","install_command":"apk add py3-pytest-subtests-pyc","documentation_url":null,"metadata":{"repository":"main","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-23T06:26:06.713Z","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:apk/alpine/py3-pytest-subtests-pyc?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.23","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-22T11:06:10.259Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests-pyc/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2026-03-03T19:49:53.495Z","updated_at":"2026-03-03T19:49:53.495Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.23","url":"https://pkgs.alpinelinux.org/packages?branch=v3.23","ecosystem":"alpine","default":false,"packages_count":27576,"maintainers_count":428,"namespaces_count":2,"keywords_count":189,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1051},"icon_url":"https://github.com/alpinelinux.png","created_at":"2026-01-24T14:35:50.739Z","updated_at":"2026-08-25T05:04:59.407Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/namespaces"}},{"id":12992902,"name":"py3-pytest-subtests","ecosystem":"alpine","description":"pytest plugin for subTest() support and subtests fixture","homepage":"https://github.com/pytest-dev/pytest-subtests/","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-subtests","keywords_array":[],"namespace":"main","versions_count":1,"first_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_published_at":"2025-07-24T22:53:12.000Z","latest_release_number":"0.14.2-r0","last_synced_at":"2026-04-14T15:03:08.791Z","created_at":"2026-01-30T19:32:25.743Z","updated_at":"2026-08-25T06:37:46.933Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.23/main/x86_64/py3-pytest-subtests","install_command":"apk add py3-pytest-subtests","documentation_url":null,"metadata":{"repository":"main","architecture":"x86_64"},"repo_metadata":{"id":34415038,"uuid":"176597993","full_name":"pytest-dev/pytest-subtests","owner":"pytest-dev","description":"unittest subTest() support and subtests fixture","archived":true,"fork":false,"pushed_at":"2025-11-10T21:31:50.000Z","size":225,"stargazers_count":255,"open_issues_count":25,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-08-22T23:50:41.384Z","etag":null,"topics":["hacktoberfest","pytest","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/pytest-dev.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"claude":null,"gemini":null,"cursor":null,"copilot":null,"dco":null,"cla":null,"disclosure":null}},"created_at":"2019-03-19T21:03:15.000Z","updated_at":"2026-08-20T20:54:39.000Z","dependencies_parsed_at":"2026-07-08T14:03:06.742Z","dependency_job_id":null,"html_url":"https://github.com/pytest-dev/pytest-subtests","commit_stats":{"total_commits":130,"total_committers":23,"mean_commits":"5.6521739130434785","dds":0.5615384615384615,"last_synced_commit":"a15b4b8d7d7964a90c16b68a933e4af3e3363b38"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/pytest-dev/pytest-subtests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-subtests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/sbom","scorecard":{"id":752089,"data":{"date":"2025-08-11","repo":{"name":"github.com/pytest-dev/pytest-subtests","commit":"edb553875d9c55efa20b40c178785e3a0e4c616a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"11 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 10","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":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy.yml:30","Warn: no topLevel permission defined: .github/workflows/deploy.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/deploy.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/pytest-dev/pytest-subtests/test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:59","Info:   0 out of   7 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy.yml:24"],"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 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-22T20:39:16.397Z","repository_id":34415038,"created_at":"2025-08-22T20:39:16.397Z","updated_at":"2025-08-22T20:39:16.397Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36838002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"ssl_error","status_checked_at":"2026-08-22T15:14:58.237Z","response_time":51,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"repo_metadata_updated_at":"2026-08-25T06:37:46.933Z","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:apk/alpine/py3-pytest-subtests?arch=x86_64\u0026repository_url=https://pkgs.alpinelinux.org/packages?branch=v3.23","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pytest-subtests","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pytest-subtests","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pytest-subtests/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-24T12:09:22.784Z","issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","maintainers":[{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"},{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"},{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"},{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages/py3-pytest-subtests/codemeta","maintainers":[{"uuid":"alpine@juniorjpdj.pl","login":null,"name":"Jacek Pruciak","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Jacek Pruciak","role":null,"created_at":"2026-03-04T07:56:34.750Z","updated_at":"2026-03-04T07:56:34.750Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/maintainers/alpine@juniorjpdj.pl/packages"}],"registry":{"name":"alpine-v3.23","url":"https://pkgs.alpinelinux.org/packages?branch=v3.23","ecosystem":"alpine","default":false,"packages_count":27576,"maintainers_count":428,"namespaces_count":2,"keywords_count":189,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1051},"icon_url":"https://github.com/alpinelinux.png","created_at":"2026-01-24T14:35:50.739Z","updated_at":"2026-08-25T05:04:59.407Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.23/namespaces"}}],"commits":{"id":4668,"full_name":"pytest-dev/pytest-subtests","default_branch":"main","total_commits":204,"total_committers":26,"total_bot_commits":83,"total_bot_committers":2,"mean_commits":7.846153846153846,"dds":0.5735294117647058,"past_year_total_commits":11,"past_year_total_committers":4,"past_year_total_bot_commits":8,"past_year_total_bot_committers":2,"past_year_mean_commits":2.75,"past_year_dds":0.6363636363636364,"last_synced_at":"2026-08-19T09:33:51.537Z","last_synced_commit":"1e5760131dd7cc0376b86f4499aef15d51e28ea6","created_at":"2023-03-07T09:21:31.374Z","updated_at":"2026-08-19T09:33:49.267Z","committers":[{"name":"Bruno Oliveira","email":"nicoddemus@gmail.com","login":"nicoddemus","count":87},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":57},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":26},{"name":"Matt Cooper","email":"mattc@xbox.com","login":"vtbassmatt","count":3},{"name":"Ryan Hoban","email":"rhoban@bloomberg.net","login":"rhoban13","count":3},{"name":"Michael Howitz","email":"m.howitz@minddistrict.com","login":"icemac","count":2},{"name":"Danny Sepler","email":"dannysepler@gmail.com","login":"dannysepler","count":2},{"name":"Edgar Ramírez Mondragón","email":"16805946+edgarrmondragon","login":"edgarrmondragon","count":2},{"name":"Kale Kundert","email":"kale@thekunderts.net","login":"kalekundert","count":2},{"name":"Paul Kehrer","email":"paul.l.kehrer@gmail.com","login":"reaperhulk","count":2},{"name":"Ran Benita","email":"ran@unusedvar.com","login":"bluetech","count":2},{"name":"Yih-Dar","email":"2521628+ydshieh","login":"ydshieh","count":2},{"name":"Alex Gaynor","email":"alex.gaynor@gmail.com","login":"alex","count":1},{"name":"Baptiste Mispelon","email":"bmispelon@gmail.com","login":"bmispelon","count":1},{"name":"Bartosz Sławecki","email":"bartoszpiotrslawecki@gmail.com","login":"bswck","count":1},{"name":"Ben Beasley","email":"code@musicinmybrain.net","login":"musicinmybrain","count":1},{"name":"Carlos Ruiz","email":"carlos.r.domin@gmail.com","login":"CarlosRDomin","count":1},{"name":"Giampaolo Rodola","email":"g.rodola@gmail.com","login":"giampaolo","count":1},{"name":"Jac","email":"jacalata","login":"jacalata","count":1},{"name":"James Braza","email":"jamesbraza@gmail.com","login":"jamesbraza","count":1},{"name":"Mauricio Villegas","email":"5780272+mauvilsa","login":"mauvilsa","count":1},{"name":"Max Nikulin","email":"manikulin@gmail.com","login":"maxnikulin","count":1},{"name":"MichelOS","email":"michelheily@gmail.com","login":"michelhe","count":1},{"name":"Saul Shanabrook","email":"s.shanabrook@gmail.com","login":"saulshanabrook","count":1},{"name":"Sviatoslav Sydorenko","email":"webknjaz@redhat.com","login":"webknjaz","count":1},{"name":"maybe-sybr","email":"58414429+maybe-sybr","login":"maybe-sybr","count":1}],"past_year_committers":[{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":4},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":4},{"name":"Bruno Oliveira","email":"nicoddemus@gmail.com","login":"nicoddemus","count":2},{"name":"Michael Howitz","email":"m.howitz@minddistrict.com","login":"icemac","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-20T00:00:10.776Z","repositories_count":6750506,"commits_count":978010206,"contributors_count":41229425,"owners_count":1358604,"committers_count":3352512,"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":"pytest-dev/pytest-subtests","html_url":"https://github.com/pytest-dev/pytest-subtests","last_synced_at":"2026-08-24T12:09:22.784Z","status":null,"issues_count":67,"pull_requests_count":190,"avg_time_to_close_issue":17386999.35135135,"avg_time_to_close_pull_request":945147.7011494252,"issues_closed_count":37,"pull_requests_closed_count":174,"pull_request_authors_count":26,"issue_authors_count":52,"avg_comments_per_issue":2.791044776119403,"avg_comments_per_pull_request":0.5894736842105263,"merged_pull_requests_count":162,"bot_issues_count":0,"bot_pull_requests_count":107,"past_year_issues_count":1,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":22112.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.14285714285714285,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":6,"past_year_merged_pull_requests_count":4,"created_at":"2023-05-10T11:06:08.272Z","updated_at":"2026-08-24T12:09:22.784Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-subtests/issues","issue_labels_count":{"table":{"enhancement":5,"bug":5,"help wanted":1,"question":1}},"pull_request_labels_count":{"table":{"dependencies":38,"github_actions":3}},"issue_author_associations_count":{"table":{"NONE":54,"CONTRIBUTOR":7,"MEMBER":6}},"pull_request_author_associations_count":{"table":{"CONTRIBUTOR":138,"MEMBER":47,"NONE":5}},"issue_authors":{"table":{"nicoddemus":4,"pganssle":3,"Conchylicultor":3,"mkmoisen":3,"rhoban13":2,"pmeier":2,"yugokato":2,"reaperhulk":2,"buhtz":2,"jamesbraza":2,"ankurgupta02":1,"okken":1,"jrieke":1,"Julian":1,"ydshieh":1,"fabaff":1,"tzachshabtay":1,"mrbean-bremen":1,"bskinn":1,"Andrew-Brock":1,"liiight":1,"eleanorjboyd":1,"DevonFulcher":1,"Arroheim":1,"JuniorJPDJ":1,"xqt":1,"giampaolo":1,"mtelka":1,"cglacet":1,"C0DK":1,"fbarbu15":1,"Jongy":1,"kalekundert":1,"mgorny":1,"radoering":1,"chingc":1,"edgarrmondragon":1,"MariusGulbrandsen":1,"k2bd":1,"BowenBao":1,"risicle":1,"joaodaher":1,"crescent-bird":1,"detoyz":1,"sashko1988":1,"ghost":1,"exhuma":1,"oliversheridanmethven":1,"bluetech":1,"musicinmybrain":1,"bje-":1,"stefano-ottolenghi":1}},"pull_request_authors":{"table":{"pre-commit-ci[bot]":69,"nicoddemus":44,"dependabot[bot]":38,"maxnikulin":4,"rhoban13":4,"ydshieh":3,"michelhe":3,"dannysepler":2,"reaperhulk":2,"musicinmybrain":2,"bluetech":2,"icemac":2,"jamesbraza":2,"kalekundert":1,"CarlosRDomin":1,"alex":1,"mauvilsa":1,"edgarrmondragon":1,"saulshanabrook":1,"jacalata":1,"vtbassmatt":1,"radoering":1,"maybe-sybr":1,"webknjaz":1,"bswck":1,"bmispelon":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-25T00:00:09.459Z","repositories_count":16328808,"issues_count":42398313,"pull_requests_count":135865593,"authors_count":11520402,"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":{"dependencies":1,"github_actions":1}},"past_year_issue_author_associations_count":{"table":{}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":7}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{"pre-commit-ci[bot]":5,"dependabot[bot]":1,"icemac":1}},"maintainers":[{"table":{"login":"nicoddemus","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/nicoddemus"}},{"table":{"login":"bluetech","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bluetech"}},{"table":{"login":"webknjaz","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/webknjaz"}},{"table":{"login":"mrbean-bremen","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mrbean-bremen"}}],"active_maintainers":[]}},"events":{"total":{"CreateEvent":32,"DeleteEvent":24,"ForkEvent":3,"IssueCommentEvent":71,"IssuesEvent":22,"PullRequestEvent":61,"PullRequestReviewCommentEvent":13,"PullRequestReviewEvent":28,"PushEvent":30,"ReleaseEvent":2,"WatchEvent":37},"last_year":{"CreateEvent":8,"DeleteEvent":3,"IssueCommentEvent":9,"IssuesEvent":1,"PullRequestEvent":9,"PullRequestReviewCommentEvent":1,"PullRequestReviewEvent":4,"PushEvent":7,"WatchEvent":1}},"keywords":["hacktoberfest","pytest","python","testing"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/deploy.yml","sha":null,"kind":"manifest","created_at":"2023-02-10T18:45:34.775Z","updated_at":"2023-02-10T18:45:34.775Z","repository_link":"https://github.com/pytest-dev/pytest-subtests/blob/main/.github/workflows/deploy.yml","dependencies":[{"id":7536363854,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":7536363855,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":7536363856,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2026-07-08T14:03:05.261Z","updated_at":"2026-07-08T14:03:05.261Z","repository_link":"https://github.com/pytest-dev/pytest-subtests/blob/main/pyproject.toml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/test.yml","sha":null,"kind":"manifest","created_at":"2026-07-08T14:03:05.096Z","updated_at":"2026-07-08T14:03:05.096Z","repository_link":"https://github.com/pytest-dev/pytest-subtests/blob/main/.github/workflows/test.yml","dependencies":[{"id":25879508088,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":25879508089,"package_name":"hynek/build-and-inspect-python-package","ecosystem":"actions","requirements":"v2.14","direct":true,"kind":"composite","optional":false},{"id":25879508148,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"v6","direct":true,"kind":"composite","optional":false},{"id":25879508149,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v6","direct":true,"kind":"composite","optional":false}]}],"score":24.6109985809501,"created_at":"2025-12-20T09:24:04.339Z","updated_at":"2026-08-25T12:33:51.709Z","avatar_url":"https://github.com/pytest-dev.png","language":"Python","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/369969","html_url":"https://summary.ecosyste.ms/projects/369969"}