{"id":64173,"name":"ops","description":"Pure Python framework for writing Juju charms","url":"https://github.com/canonical/operator","last_synced_at":"2025-09-08T13:08:25.981Z","repository":{"id":37458190,"uuid":"212098176","full_name":"canonical/operator","owner":"canonical","description":"Pure Python framework for writing Juju charms","archived":false,"fork":false,"pushed_at":"2025-09-05T09:59:46.000Z","size":6453,"stargazers_count":253,"open_issues_count":81,"forks_count":125,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-09-05T11:31:04.818Z","etag":null,"topics":["charms","juju","python"],"latest_commit_sha":null,"homepage":"https://documentation.ubuntu.com/ops","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-01T13:06:11.000Z","updated_at":"2025-09-04T00:40:28.000Z","dependencies_parsed_at":"2023-10-11T02:50:47.283Z","dependency_job_id":"e00155ad-4dff-4056-bdab-6a81c4c1da97","html_url":"https://github.com/canonical/operator","commit_stats":{"total_commits":517,"total_committers":68,"mean_commits":7.602941176470588,"dds":0.8375241779497099,"last_synced_commit":"790473901224e99ef0e66087f12e6b662c144a69"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/canonical/operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/sbom","scorecard":{"id":264626,"data":{"date":"2025-08-11","repo":{"name":"github.com/canonical/operator","commit":"59856580d90a8f2b705d19ecd755b12d0badda06"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":8.2,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 11 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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yaml:17","Info: found token with 'none' permissions: .github/workflows/charmcraft-pack.yaml:1","Info: found token with 'none' permissions: .github/workflows/db-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/example-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/framework-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/hello-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/integration.yaml:1","Info: found token with 'none' permissions: .github/workflows/observability-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/publish.yaml:1","Info: found token with 'none' permissions: .github/workflows/published-charms-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/sbom-secscan.yaml:1","Info: found token with 'none' permissions: .github/workflows/smoke.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/test-publish.yaml:8","Info: found token with 'none' permissions: .github/workflows/tiobe.yaml:1","Info: found token with 'none' permissions: .github/workflows/update-charm-tests.yaml:1","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/validate-pr-title.yaml:10","Info: found token with 'none' permissions: .github/workflows/zizmor.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/integration.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/observability-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/observability-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/published-charms-tests.yaml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/published-charms-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/smoke.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/smoke.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tiobe.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/tiobe.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-charm-tests.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/update-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:43","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:56","Warn: pipCommand not pinned by hash: .github/workflows/example-charm-tests.yaml:38","Warn: goCommand not pinned by hash: .github/workflows/framework-tests.yaml:92","Warn: pipCommand not pinned by hash: .github/workflows/framework-tests.yaml:123","Warn: pipCommand not pinned by hash: .github/workflows/hello-charm-tests.yaml:44","Warn: pipCommand not pinned by hash: .github/workflows/observability-charm-tests.yaml:37","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:75","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:110","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:159","Warn: pipCommand not pinned by hash: .github/workflows/tiobe.yaml:28","Info:   0 out of  29 GitHub-owned GitHubAction dependencies pinned","Info:  15 out of  17 third-party GitHubAction dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned","Info:   0 out of   1 goCommand 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":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish.yaml:11"],"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":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'allow deletion' disabled on branch '2.23-maintenance'","Info: 'allow deletion' disabled on branch '2.19-maintenance'","Info: 'allow deletion' disabled on branch '2.16-maintenance'","Info: 'force pushes' disabled on branch 'main'","Info: 'force pushes' disabled on branch '2.23-maintenance'","Info: 'force pushes' disabled on branch '2.19-maintenance'","Info: 'force pushes' disabled on branch '2.16-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.23-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.19-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.16-maintenance'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch '2.23-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.19-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.16-maintenance'","Info: required approving review count is 2 on branch 'main'","Info: required approving review count is 2 on branch '2.23-maintenance'","Info: required approving review count is 2 on branch '2.19-maintenance'","Info: required approving review count is 2 on branch '2.16-maintenance'","Warn: codeowners review is not required on branch 'main'","Warn: codeowners review is not required on branch '2.23-maintenance'","Warn: codeowners review is not required on branch '2.19-maintenance'","Warn: codeowners review is not required on branch '2.16-maintenance'","Warn: 'last push approval' is disabled on branch 'main'","Warn: 'last push approval' is disabled on branch '2.23-maintenance'","Warn: 'last push approval' is disabled on branch '2.19-maintenance'","Warn: 'last push approval' is disabled on branch '2.16-maintenance'","Warn: 'up-to-date branches' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Warn: no status checks found to merge onto branch '2.23-maintenance'","Warn: no status checks found to merge onto branch '2.19-maintenance'","Warn: no status checks found to merge onto branch '2.16-maintenance'","Info: PRs are required in order to make changes on branch 'main'","Info: PRs are required in order to make changes on branch '2.23-maintenance'","Info: PRs are required in order to make changes on branch '2.19-maintenance'","Info: PRs are required in order to make changes on branch '2.16-maintenance'"],"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":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (30) 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-17T11:40:05.394Z","repository_id":37458190,"created_at":"2025-08-17T11:40:05.394Z","updated_at":"2025-08-17T11:40:05.394Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274188964,"owners_count":25237857,"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-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":"Canonical","company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1802,"last_synced_at":"2025-05-25T12:10:16.367Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":49667,"followers":2603,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2025-05-25T12:10:16.368Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"packages":[{"id":6241606,"name":"ops-scenario","ecosystem":"pypi","description":"Python library providing a state-transition testing API for Operator Framework charms.","homepage":"https://github.com/canonical/operator","licenses":"apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/canonical/operator","keywords_array":["juju","test"],"namespace":null,"versions_count":83,"first_release_published_at":"2023-02-02T09:06:20.000Z","latest_release_published_at":"2025-08-27T22:58:34.000Z","latest_release_number":"8.2.0","last_synced_at":"2025-09-05T11:48:24.815Z","created_at":"2023-02-02T09:13:18.531Z","updated_at":"2025-09-05T11:48:24.816Z","registry_url":"https://pypi.org/project/ops-scenario/","install_command":"pip install ops-scenario --index-url https://pypi.org/simple","documentation_url":"https://ops-scenario.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Framework :: Pytest","Intended Audience :: Developers","Topic :: Software Development :: Quality Assurance","Topic :: Software Development :: Testing","Topic :: Utilities"],"normalized_name":"ops-scenario","project_status":null},"repo_metadata":{"id":65902565,"uuid":"601568497","full_name":"canonical/ops-scenario","owner":"canonical","description":"State-transition testing SDK for Operator Framework Juju charms.","archived":false,"fork":false,"pushed_at":"2024-05-22T12:25:02.000Z","size":1103,"stargazers_count":10,"open_issues_count":25,"forks_count":6,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-05-22T12:55:04.061Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-14T10:49:42.000Z","updated_at":"2024-05-29T07:38:16.963Z","dependencies_parsed_at":null,"dependency_job_id":"a2c54e0f-dc53-412a-aeed-bf3bd8ba3851","html_url":"https://github.com/canonical/ops-scenario","commit_stats":null,"previous_names":[],"tags_count":65,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":217066560,"owners_count":16119499,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1196,"last_synced_at":"2024-04-10T05:05:02.504Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":39316,"followers":1586,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2024-04-10T05:12:56.679Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"tags":[{"name":"6.0.4","sha":"da30b05f3cce60d33452abac184d8d1f0e66c7f2","kind":"commit","published_at":"2024-05-29T07:30:23.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/6.0.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/6.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.4/manifests"},{"name":"6.0.3","sha":"2e798dfcc2a8213882cef4c120fdea432b38ec4c","kind":"commit","published_at":"2024-03-19T10:39:47.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/6.0.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/6.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.3/manifests"},{"name":"6.0.2","sha":"9592497ff77f2bca678d196372431589241754ec","kind":"commit","published_at":"2024-03-01T07:49:30.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/6.0.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/6.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.2/manifests"},{"name":"6.0.1","sha":"4a1ec5f6b6d6f5ced400d94797b9965e44ea3eef","kind":"commit","published_at":"2024-02-09T07:15:58.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/6.0.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/6.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0.1/manifests"},{"name":"6.0","sha":"138a9dd3d2b9cab8e8cc2ec68b335d8c903b484f","kind":"commit","published_at":"2024-01-17T10:54:29.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/6.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/6.0/manifests"},{"name":"5.8.1","sha":"22d48dc164fbe1759d44ead3e96b219dac480d8a","kind":"commit","published_at":"2024-01-09T08:51:10.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.8.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.8.1/manifests"},{"name":"5.8","sha":"de4a1d0a6ba41492e1de09653591b537914767ef","kind":"commit","published_at":"2024-01-05T07:44:58.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.8","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.8/manifests"},{"name":"5.7.1","sha":"2789c0a267f252f7fd040ec380ae2ccbcc6891c7","kind":"commit","published_at":"2023-11-22T11:20:00.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.7.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.7.1/manifests"},{"name":"5.7","sha":"7a4e2cbaea135560c58178f8252865c8239106a3","kind":"commit","published_at":"2023-11-20T09:24:33.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.7","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.7/manifests"},{"name":"5.6.2","sha":"31ab9dd1c6db1ffa1d5c3b0d9a6b6afffb1a20e4","kind":"commit","published_at":"2023-11-17T11:03:26.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.6.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6.2/manifests"},{"name":"5.6.1","sha":"f5ac9c881ab9a1939236789cba806a783659182a","kind":"commit","published_at":"2023-11-16T14:29:45.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.6.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6.1/manifests"},{"name":"5.6","sha":"70bb0224b7fb0603c0ed6a0c00965fecaba9cea3","kind":"commit","published_at":"2023-11-16T09:50:03.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.6","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.6/manifests"},{"name":"5.5","sha":"bcbff6ae7a9d7e08ce9bf512421e0f0628d5abb7","kind":"commit","published_at":"2023-10-26T08:01:45.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.5","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.5/manifests"},{"name":"5.4.1","sha":"3a5284d46737e9a084de7b737f3d52d8a2f61ecb","kind":"commit","published_at":"2023-10-20T07:27:09.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.4.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.4.1/manifests"},{"name":"5.4","sha":"55cb4e077b2588fc74a565d3c1fbe44aa418fdf9","kind":"commit","published_at":"2023-10-18T08:44:38.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.4/manifests"},{"name":"5.3.1","sha":"a3c2cd2b3821880c3f4c7e4cdda4c5be668e18b8","kind":"commit","published_at":"2023-10-09T07:01:32.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.3.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.3.1/manifests"},{"name":"5.3","sha":"8ee7720fdc00989ae50657c4d1bb16f7a75a51b0","kind":"commit","published_at":"2023-10-03T14:24:28.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.3/manifests"},{"name":"5.2.2","sha":"22ae93e93d0aa16538609f550cdfc979c2f92d97","kind":"commit","published_at":"2023-09-19T08:45:09.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.2.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2.2/manifests"},{"name":"5.2.1","sha":"0cd0c15806764965052f0972234221ecb1eb7729","kind":"commit","published_at":"2023-09-19T08:13:15.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.2.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2.1/manifests"},{"name":"5.2","sha":"388948ddccf9b6c6744d70db903c3a173463359a","kind":"commit","published_at":"2023-09-11T08:09:10.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.2/manifests"},{"name":"5.1.3","sha":"5254273c7a2347dd7801a727a319c8fed62c4265","kind":"commit","published_at":"2023-09-08T13:19:02.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.1.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.3/manifests"},{"name":"5.1.2","sha":"da076c33c4e48ba14a53112cb3a46e9dc030c6bc","kind":"commit","published_at":"2023-09-06T07:49:24.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.1.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.2/manifests"},{"name":"5.1.1","sha":"fbe1926d88fae9be4b5b51b0fa4608b555d89519","kind":"commit","published_at":"2023-09-06T07:38:55.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.1.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.1/manifests"},{"name":"5.1.0","sha":"60c8725f37106e04f484f8e9f1f047708d859a26","kind":"commit","published_at":"2023-09-06T06:39:44.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.1.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.1.0/manifests"},{"name":"5.0","sha":"d767ca8e3fd9195fb4a19dca126f11a5b1f21463","kind":"commit","published_at":"2023-09-04T06:29:24.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/5.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/5.0/manifests"},{"name":"4.0.4.1","sha":"a37322ed38ce827dcb930881d04d297fadc11bc9","kind":"commit","published_at":"2023-07-28T12:42:00.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0.4.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.4.1/manifests"},{"name":"4.0.4","sha":"327e39971e7cf473fb7a33098b7c1f209eb4b9a2","kind":"commit","published_at":"2023-07-21T12:06:34.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.4/manifests"},{"name":"4.0.3","sha":"9bf6084c9844d563599959374e8dffeb05d4c219","kind":"commit","published_at":"2023-07-21T09:44:12.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.3/manifests"},{"name":"4.0.2","sha":"f79001603cc38d1e4e9f2c91a5ecaafcb4d81205","kind":"commit","published_at":"2023-07-20T07:49:58.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.2/manifests"},{"name":"4.0.1","sha":"e5963fb778f128944f388956f1154efe465598a4","kind":"commit","published_at":"2023-07-20T07:44:49.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0.1/manifests"},{"name":"4.0","sha":"00d93e60bc208b2b1448f04220a141052a97664d","kind":"commit","published_at":"2023-06-28T13:20:20.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/4.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/4.0/manifests"},{"name":"3.1","sha":"9dfc6b580fabbf855c600498e6ce1feffa2dcf50","kind":"commit","published_at":"2023-06-01T08:47:08.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/3.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.1/manifests"},{"name":"3.0.2","sha":"d61ec36a98350f5f563c289c90d6dec433ac4740","kind":"commit","published_at":"2023-05-16T06:39:09.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/3.0.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0.2/manifests"},{"name":"3.0.1","sha":"43b94863047f1a35e35f6502aeadd357f68239aa","kind":"commit","published_at":"2023-05-09T11:13:13.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/3.0.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0.1/manifests"},{"name":"3.0a1","sha":"47743cb3280d4ce648c5a67832d8c48044f50e74","kind":"commit","published_at":"2023-05-09T11:09:28.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/3.0a1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/3.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0a1/manifests"},{"name":"3.0","sha":"dbcb56c036e3d1bb339cc45ef7f33a1c26b2f509","kind":"commit","published_at":"2023-05-09T07:41:35.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/3.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/3.0/manifests"},{"name":"2.2","sha":"c6fdc31aada0c86e2810397f8bc7f1b5ed7a990a","kind":"commit","published_at":"2023-04-24T08:19:23.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.2/manifests"},{"name":"2.1.3.5","sha":"a59bc95c404f358665ed407c33253fda83492284","kind":"commit","published_at":"2023-04-21T13:18:25.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3.5","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.5/manifests"},{"name":"2.1.3.4","sha":"400ebe31be428a4a0b04d763a633d14d592d46b7","kind":"commit","published_at":"2023-04-05T09:09:48.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.4/manifests"},{"name":"2.1.3.3","sha":"d17195b4f33da29388b90fa3e6f822e81c0ed8d6","kind":"commit","published_at":"2023-03-28T07:42:24.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.3/manifests"},{"name":"2.1.3.2","sha":"cd73f5652594936409474d26f9621d52b5ebbf7f","kind":"commit","published_at":"2023-03-16T16:34:05.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.2/manifests"},{"name":"2.1.3.1","sha":"3b51d205832c561af51b52df6c30d75e8e03e6b5","kind":"commit","published_at":"2023-03-16T16:16:57.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3.1/manifests"},{"name":"2.1.3","sha":"bf947f1aa630d3402c62ba0a241c74bafb42df4b","kind":"commit","published_at":"2023-03-16T15:30:55.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.3/manifests"},{"name":"2.1.2.5","sha":"8cdc31f88f967c6e709455b249810c08e50e71d8","kind":"commit","published_at":"2023-03-15T10:42:38.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2.5","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.5/manifests"},{"name":"2.1.2.4","sha":"8cffc92add0e5d2c6786116ba004af717e1f546c","kind":"commit","published_at":"2023-03-10T09:59:45.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.4/manifests"},{"name":"2.1.2.3","sha":"534c2d7f9947ab16a666c34506a302edc789b213","kind":"commit","published_at":"2023-02-22T15:24:15.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2.3","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.3/manifests"},{"name":"2.1.2.2","sha":"0293c387ccbe6d3b8dd9e29a2cf5d5c2c46e09aa","kind":"commit","published_at":"2023-02-17T09:06:46.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.2/manifests"},{"name":"2.1.2.1","sha":"05f63e912eb614883929476afda39049461782e3","kind":"commit","published_at":"2023-02-15T10:05:32.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2.1/manifests"},{"name":"2.1.2-rc1","sha":"5267f8ccbf346ef7fcebfe391a23f829d22a5adb","kind":"commit","published_at":"2023-02-15T09:54:50.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2-rc1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2-rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2-rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2-rc1/manifests"},{"name":"2.1.2","sha":"bd545a8d7dd785d2c28d3009db930ceb1e776d8a","kind":"commit","published_at":"2023-02-15T09:44:57.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.2/manifests"},{"name":"2.1.1","sha":"61fb5c35e7e56e6038507f3622e5933aa3c1fc0d","kind":"commit","published_at":"2023-02-13T15:13:00.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.1/manifests"},{"name":"2.1.0","sha":"6254657a5ef30ada720738bceb89c05c338d710b","kind":"commit","published_at":"2023-02-08T09:42:00.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.1.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.1.0/manifests"},{"name":"2.0.5","sha":"b6e6658542f0d3610d1780c65e8c4afd2f11dcb1","kind":"commit","published_at":"2023-02-07T16:11:31.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.5","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.5/manifests"},{"name":"2.0.4","sha":"f6daaab3c66906b197a866677b0c6962d2087510","kind":"commit","published_at":"2023-02-02T09:57:33.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.4","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.4/manifests"},{"name":"2.0.2","sha":"d1786988bb326bca1141da69312cfc90fa0038e8","kind":"commit","published_at":"2023-02-02T09:45:52.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.2/manifests"},{"name":"2.0.1-rc2","sha":"59b24969d55f62000735e51c9281ec546d5ea6fe","kind":"commit","published_at":"2023-02-02T09:42:22.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.1-rc2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.1-rc2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1-rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1-rc2/manifests"},{"name":"2.0.1-rc1","sha":"dee0a94b1c693f3dfb0aeb45b53fe2ec130683fa","kind":"commit","published_at":"2023-02-02T09:31:00.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.1-rc1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.1-rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1-rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1-rc1/manifests"},{"name":"2.0.1","sha":"65cbd5679dbcaa4aa9d473cfedfb1ae24a227408","kind":"commit","published_at":"2023-02-02T09:24:58.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/2.0.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/2.0.1/manifests"},{"name":"v0.5.1-test","sha":"87b345b75b09f8a8f6532c98b3f531e442d3a049","kind":"commit","published_at":"2023-02-02T08:55:17.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/v0.5.1-test","html_url":"https://github.com/canonical/ops-scenario/releases/tag/v0.5.1-test","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/v0.5.1-test","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/v0.5.1-test/manifests"},{"name":"1.0.0","sha":"17ce60fc493ac355c545d36988a44bdf7ed5602b","kind":"commit","published_at":"2023-01-25T14:27:15.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/1.0.0","html_url":"https://github.com/canonical/ops-scenario/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/1.0.0/manifests"},{"name":"0.2.2","sha":"26c316dd3b4a24d48af4b5cb831db1f5f3ef66ba","kind":"commit","published_at":"2023-01-20T10:59:09.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/0.2.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2.2/manifests"},{"name":"0.2.1","sha":"61b2948474f5e9d67276c579f1211955c7108167","kind":"commit","published_at":"2023-01-20T08:26:02.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/0.2.1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2.1/manifests"},{"name":"0.2-ci1","sha":"db358711bfec549eb3440103fa1e721ecc1d8f2e","kind":"commit","published_at":"2023-01-20T08:22:22.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/0.2-ci1","html_url":"https://github.com/canonical/ops-scenario/releases/tag/0.2-ci1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2-ci1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2-ci1/manifests"},{"name":"0.2","sha":"631fcecdab27a28416bd0398ace3761edd3b861f","kind":"commit","published_at":"2023-01-19T09:52:46.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/0.2","html_url":"https://github.com/canonical/ops-scenario/releases/tag/0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2/manifests"},{"name":"0.2-ci","sha":"631fcecdab27a28416bd0398ace3761edd3b861f","kind":"commit","published_at":"2023-01-19T09:52:46.000Z","download_url":"https://codeload.github.com/canonical/ops-scenario/tar.gz/0.2-ci","html_url":"https://github.com/canonical/ops-scenario/releases/tag/0.2-ci","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2-ci","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/tags/0.2-ci/manifests"}]},"repo_metadata_updated_at":"2024-08-26T20:51:11.326Z","dependent_packages_count":1,"downloads":97488,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":3.148379171292428,"dependent_repos_count":21.607168748712237,"dependent_packages_count":4.7733152219534345,"stargazers_count":18.52950603246312,"forks_count":15.37514976228814,"docker_downloads_count":null,"average":12.686703787341873},"purl":"pkg:pypi/ops-scenario","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/ops-scenario","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/ops-scenario","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/ops-scenario/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-07-10T06:54:55.247Z","issues_count":45,"pull_requests_count":105,"avg_time_to_close_issue":2189014.029411765,"avg_time_to_close_pull_request":1092084.1489361702,"issues_closed_count":34,"pull_requests_closed_count":94,"pull_request_authors_count":8,"issue_authors_count":11,"avg_comments_per_issue":1.2,"avg_comments_per_pull_request":1.342857142857143,"merged_pull_requests_count":88,"bot_issues_count":0,"bot_pull_requests_count":1,"past_year_issues_count":29,"past_year_pull_requests_count":79,"past_year_avg_time_to_close_issue":1387718.7727272727,"past_year_avg_time_to_close_pull_request":1197373.1971830986,"past_year_issues_closed_count":22,"past_year_pull_requests_closed_count":71,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":9,"past_year_avg_comments_per_issue":1.2758620689655171,"past_year_avg_comments_per_pull_request":1.3544303797468353,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":66,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Fops-scenario/issues","maintainers":[{"login":"PietroPasotti","count":88,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/PietroPasotti"},{"login":"tonyandrewmeyer","count":31,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"dimaqq","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dimaqq"},{"login":"beliaev-maksim","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/beliaev-maksim"}],"active_maintainers":[{"login":"PietroPasotti","count":48,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/PietroPasotti"},{"login":"tonyandrewmeyer","count":31,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"dimaqq","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dimaqq"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-scenario/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-scenario/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-scenario/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-scenario/related_packages","maintainers":[{"uuid":"ppasotti","login":"ppasotti","name":null,"email":null,"url":null,"packages_count":3,"html_url":"https://pypi.org/user/ppasotti/","role":null,"created_at":"2023-02-02T09:32:08.983Z","updated_at":"2023-02-02T09:32:08.983Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/ppasotti/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726136,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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":10852418,"name":"py-ops","ecosystem":"spack","description":"The Python library behind great charms\n","homepage":"https://github.com/canonical/operator","licenses":"[]","normalized_licenses":["Other"],"repository_url":"https://github.com/canonical/operator","keywords_array":[],"namespace":null,"versions_count":2,"first_release_published_at":"2024-09-02T07:57:01.990Z","latest_release_published_at":"2024-09-02T07:57:01.990Z","latest_release_number":"2.16.0","last_synced_at":"2025-09-05T11:48:24.678Z","created_at":"2024-09-02T07:57:01.014Z","updated_at":"2025-09-06T05:17:36.078Z","registry_url":"https://packages.spack.io/package.html?name=py-ops","install_command":"spack install py-ops","documentation_url":null,"metadata":{},"repo_metadata":{"id":37458190,"uuid":"212098176","full_name":"canonical/operator","owner":"canonical","description":"Pure Python framework for writing Juju charms","archived":false,"fork":false,"pushed_at":"2025-09-05T09:59:46.000Z","size":6453,"stargazers_count":253,"open_issues_count":81,"forks_count":125,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-09-05T11:31:04.818Z","etag":null,"topics":["charms","juju","python"],"latest_commit_sha":null,"homepage":"https://documentation.ubuntu.com/ops","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-01T13:06:11.000Z","updated_at":"2025-09-04T00:40:28.000Z","dependencies_parsed_at":"2023-10-11T02:50:47.283Z","dependency_job_id":"e00155ad-4dff-4056-bdab-6a81c4c1da97","html_url":"https://github.com/canonical/operator","commit_stats":{"total_commits":517,"total_committers":68,"mean_commits":7.602941176470588,"dds":0.8375241779497099,"last_synced_commit":"790473901224e99ef0e66087f12e6b662c144a69"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/canonical/operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/sbom","scorecard":{"id":264626,"data":{"date":"2025-08-11","repo":{"name":"github.com/canonical/operator","commit":"59856580d90a8f2b705d19ecd755b12d0badda06"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":8.2,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 11 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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yaml:17","Info: found token with 'none' permissions: .github/workflows/charmcraft-pack.yaml:1","Info: found token with 'none' permissions: .github/workflows/db-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/example-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/framework-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/hello-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/integration.yaml:1","Info: found token with 'none' permissions: .github/workflows/observability-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/publish.yaml:1","Info: found token with 'none' permissions: .github/workflows/published-charms-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/sbom-secscan.yaml:1","Info: found token with 'none' permissions: .github/workflows/smoke.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/test-publish.yaml:8","Info: found token with 'none' permissions: .github/workflows/tiobe.yaml:1","Info: found token with 'none' permissions: .github/workflows/update-charm-tests.yaml:1","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/validate-pr-title.yaml:10","Info: found token with 'none' permissions: .github/workflows/zizmor.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/integration.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/observability-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/observability-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/published-charms-tests.yaml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/published-charms-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/smoke.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/smoke.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tiobe.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/tiobe.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-charm-tests.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/update-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:43","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:56","Warn: pipCommand not pinned by hash: .github/workflows/example-charm-tests.yaml:38","Warn: goCommand not pinned by hash: .github/workflows/framework-tests.yaml:92","Warn: pipCommand not pinned by hash: .github/workflows/framework-tests.yaml:123","Warn: pipCommand not pinned by hash: .github/workflows/hello-charm-tests.yaml:44","Warn: pipCommand not pinned by hash: .github/workflows/observability-charm-tests.yaml:37","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:75","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:110","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:159","Warn: pipCommand not pinned by hash: .github/workflows/tiobe.yaml:28","Info:   0 out of  29 GitHub-owned GitHubAction dependencies pinned","Info:  15 out of  17 third-party GitHubAction dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned","Info:   0 out of   1 goCommand 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":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish.yaml:11"],"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":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'allow deletion' disabled on branch '2.23-maintenance'","Info: 'allow deletion' disabled on branch '2.19-maintenance'","Info: 'allow deletion' disabled on branch '2.16-maintenance'","Info: 'force pushes' disabled on branch 'main'","Info: 'force pushes' disabled on branch '2.23-maintenance'","Info: 'force pushes' disabled on branch '2.19-maintenance'","Info: 'force pushes' disabled on branch '2.16-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.23-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.19-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.16-maintenance'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch '2.23-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.19-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.16-maintenance'","Info: required approving review count is 2 on branch 'main'","Info: required approving review count is 2 on branch '2.23-maintenance'","Info: required approving review count is 2 on branch '2.19-maintenance'","Info: required approving review count is 2 on branch '2.16-maintenance'","Warn: codeowners review is not required on branch 'main'","Warn: codeowners review is not required on branch '2.23-maintenance'","Warn: codeowners review is not required on branch '2.19-maintenance'","Warn: codeowners review is not required on branch '2.16-maintenance'","Warn: 'last push approval' is disabled on branch 'main'","Warn: 'last push approval' is disabled on branch '2.23-maintenance'","Warn: 'last push approval' is disabled on branch '2.19-maintenance'","Warn: 'last push approval' is disabled on branch '2.16-maintenance'","Warn: 'up-to-date branches' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Warn: no status checks found to merge onto branch '2.23-maintenance'","Warn: no status checks found to merge onto branch '2.19-maintenance'","Warn: no status checks found to merge onto branch '2.16-maintenance'","Info: PRs are required in order to make changes on branch 'main'","Info: PRs are required in order to make changes on branch '2.23-maintenance'","Info: PRs are required in order to make changes on branch '2.19-maintenance'","Info: PRs are required in order to make changes on branch '2.16-maintenance'"],"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":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (30) 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-17T11:40:05.394Z","repository_id":37458190,"created_at":"2025-08-17T11:40:05.394Z","updated_at":"2025-08-17T11:40:05.394Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273858876,"owners_count":25180772,"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-09-06T02:00:13.247Z","response_time":2576,"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":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":"Canonical","company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1802,"last_synced_at":"2025-05-25T12:10:16.367Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":49667,"followers":2603,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2025-05-25T12:10:16.368Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"tags":[{"name":"3.2.0","sha":"77976ac5b6ec49844deff646cf51697835204acf","kind":"commit","published_at":"2025-08-27T22:24:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.2.0","html_url":"https://github.com/canonical/operator/releases/tag/3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0/manifests"},{"name":"2.23.1","sha":"df1209ddf17eef31634f8f529efe39bd768f3145","kind":"commit","published_at":"2025-07-30T06:25:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1/manifests"},{"name":"3.1.0","sha":"c12daf3cbafd74e169715f33ed6452ce9c805cc3","kind":"commit","published_at":"2025-07-30T02:18:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.1.0","html_url":"https://github.com/canonical/operator/releases/tag/3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0/manifests"},{"name":"3.0.0","sha":"5e0d22b003ce42b32db66aa707b28f58da3d28d2","kind":"commit","published_at":"2025-07-02T10:39:18.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.0.0","html_url":"https://github.com/canonical/operator/releases/tag/3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0/manifests"},{"name":"2.23.0.post1","sha":"af8c84a58f7f142171c71c425675ddd388f061bd","kind":"commit","published_at":"2025-06-30T08:32:02.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0.post1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1/manifests"},{"name":"2.23.0","sha":"ec2dc3f7a650c9aecb41c28cab2423a9ad601979","kind":"commit","published_at":"2025-06-30T07:29:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0/manifests"},{"name":"2.22.0","sha":"e72e9b858be26bf96223354af697b2bc2843b1e2","kind":"commit","published_at":"2025-05-29T04:10:17.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.22.0","html_url":"https://github.com/canonical/operator/releases/tag/2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0/manifests"},{"name":"2.21.1","sha":"8e4877fb2424d0dfe1c701d5f22f5f6f5cf673ce","kind":"commit","published_at":"2025-05-01T02:51:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.1","html_url":"https://github.com/canonical/operator/releases/tag/2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1/manifests"},{"name":"2.21.0","sha":"9ab739ec1f64664b44efb17b7ef7738c06484150","kind":"commit","published_at":"2025-04-30T03:50:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.0","html_url":"https://github.com/canonical/operator/releases/tag/2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0/manifests"},{"name":"scenario-7.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.20.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0/manifests"},{"name":"2.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.20.0","html_url":"https://github.com/canonical/operator/releases/tag/2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0/manifests"},{"name":"scenario-7.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.4","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4/manifests"},{"name":"2.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.4","html_url":"https://github.com/canonical/operator/releases/tag/2.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4/manifests"},{"name":"2.19.3","sha":"43d57a50cdd082ea3586381abb08ba8f7de85ec9","kind":"commit","published_at":"2025-03-10T22:18:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.3","html_url":"https://github.com/canonical/operator/releases/tag/2.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3/manifests"},{"name":"2.19.1","sha":"f65c8a4b928110cc9374ea8663367783be8a3bb8","kind":"commit","published_at":"2025-03-09T22:48:26.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.1","html_url":"https://github.com/canonical/operator/releases/tag/2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1/manifests"},{"name":"2.19.2","sha":"897224d679c67d28ac174ab3acd3c0b00cf17d0f","kind":"commit","published_at":"2025-03-06T04:07:05.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.2","html_url":"https://github.com/canonical/operator/releases/tag/2.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2/manifests"},{"name":"scenario-7.2.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.2.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0/manifests"},{"name":"scenario-7.19.1","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1/manifests"},{"name":"2.19.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.0","html_url":"https://github.com/canonical/operator/releases/tag/2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0/manifests"},{"name":"scenario-7.1.3","sha":"71227208cc1f8d480e2be2dbbc0ed6748f94c452","kind":"commit","published_at":"2025-02-13T02:45:57.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.3","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3/manifests"},{"name":"scenario-7.1.2","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.2","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2/manifests"},{"name":"2.18.1","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.1","html_url":"https://github.com/canonical/operator/releases/tag/2.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1/manifests"},{"name":"scenario-7.1.1","sha":"4911b0641b2c12580f97c22362cc0683dfd9f8a0","kind":"commit","published_at":"2025-01-30T21:54:22.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1/manifests"},{"name":"scenario-7.1.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0/manifests"},{"name":"2.18.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.0","html_url":"https://github.com/canonical/operator/releases/tag/2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0/manifests"},{"name":"2.17.1","sha":"e573f8f39c6b11470dcae3ac94ad798e4655ee91","kind":"commit","published_at":"2024-11-28T06:17:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.1","html_url":"https://github.com/canonical/operator/releases/tag/2.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1/manifests"},{"name":"2.17.0","sha":"05af34fe622b4e54586dbb32f9c3207d7f6d3eb8","kind":"commit","published_at":"2024-09-26T05:11:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.0","html_url":"https://github.com/canonical/operator/releases/tag/2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0/manifests"},{"name":"2.16.1","sha":"1719d1ea2f7faafdd137eed253fb1d2353cc30be","kind":"commit","published_at":"2024-09-05T06:11:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.1","html_url":"https://github.com/canonical/operator/releases/tag/2.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1/manifests"},{"name":"2.16.0","sha":"a5744561d360c4577412a3a4f0619543bb2b2f70","kind":"commit","published_at":"2024-08-29T06:13:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.0","html_url":"https://github.com/canonical/operator/releases/tag/2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0/manifests"},{"name":"2.15.0","sha":"d46f7e960e79acc478a6e6741e4f307013b9e89b","kind":"commit","published_at":"2024-07-22T04:26:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.15.0","html_url":"https://github.com/canonical/operator/releases/tag/2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0/manifests"},{"name":"2.14.1","sha":"5cc221659146d8da355218a3f3992e7941014f91","kind":"commit","published_at":"2024-06-27T03:39:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.1","html_url":"https://github.com/canonical/operator/releases/tag/2.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1/manifests"},{"name":"2.14.0","sha":"6197de962f9a64b00f06c4a647a558bc573275d2","kind":"commit","published_at":"2024-05-29T02:38:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.0","html_url":"https://github.com/canonical/operator/releases/tag/2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0/manifests"},{"name":"2.13.0","sha":"6cbc264a3bba177a34d93e8422e7f9c0807a0961","kind":"commit","published_at":"2024-05-01T07:04:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.13.0","html_url":"https://github.com/canonical/operator/releases/tag/2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0/manifests"},{"name":"2.12.0","sha":"2da708a20b45e6335a98ee1bd01522d617845710","kind":"commit","published_at":"2024-03-28T05:32:01.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.12.0","html_url":"https://github.com/canonical/operator/releases/tag/2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0/manifests"},{"name":"2.11.0","sha":"b601088c976f043e292e64dfbf57243f89c4e6b6","kind":"commit","published_at":"2024-02-29T04:29:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.11.0","html_url":"https://github.com/canonical/operator/releases/tag/2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0/manifests"},{"name":"2.10.0","sha":"3dd462122463bb0f5290e45167185c1e4a54c829","kind":"commit","published_at":"2024-01-31T01:52:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.10.0","html_url":"https://github.com/canonical/operator/releases/tag/2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0/manifests"},{"name":"2.9.0","sha":"18abc170a8179212596be2655b5b49078562bc71","kind":"commit","published_at":"2023-11-29T03:26:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.9.0","html_url":"https://github.com/canonical/operator/releases/tag/2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0/manifests"},{"name":"2.8.0","sha":"790473901224e99ef0e66087f12e6b662c144a69","kind":"commit","published_at":"2023-10-20T04:51:40.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.8.0","html_url":"https://github.com/canonical/operator/releases/tag/2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0/manifests"},{"name":"2.7.0","sha":"a59f50f448943ee64c27f71d6a5739d8f7c21c20","kind":"commit","published_at":"2023-09-28T03:05:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.7.0","html_url":"https://github.com/canonical/operator/releases/tag/2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0/manifests"},{"name":"2.6.0","sha":"c4e3266a6568ba310064ca8b9bff7adb89676224","kind":"commit","published_at":"2023-08-30T19:55:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.6.0","html_url":"https://github.com/canonical/operator/releases/tag/2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0/manifests"},{"name":"2.5.1","sha":"6fd66cc58676d4564d4625891e08145a5db8c71e","kind":"commit","published_at":"2023-08-16T05:43:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.1","html_url":"https://github.com/canonical/operator/releases/tag/2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1/manifests"},{"name":"2.5.0","sha":"ca048720d21329af0953a93f5794bcf8ed4f3db9","kind":"commit","published_at":"2023-07-31T21:49:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.0","html_url":"https://github.com/canonical/operator/releases/tag/2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0/manifests"},{"name":"2.4.1","sha":"eb5795827647390304b6a0c284897c100b1a350d","kind":"commit","published_at":"2023-07-04T04:51:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.1","html_url":"https://github.com/canonical/operator/releases/tag/2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1/manifests"},{"name":"2.4.0","sha":"384ef3adbdc811ccb0a06bfabb40b01e0bce640b","kind":"commit","published_at":"2023-07-04T03:32:48.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.0","html_url":"https://github.com/canonical/operator/releases/tag/2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0/manifests"},{"name":"2.3.0","sha":"b06697c7c769662e56f6b5a06964304921ebbc0d","kind":"commit","published_at":"2023-05-28T22:39:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.3.0","html_url":"https://github.com/canonical/operator/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0/manifests"},{"name":"1.5.5","sha":"5bbc50faa49114cc6c4e0ae2b4b93351c33b6bbd","kind":"commit","published_at":"2023-04-25T10:18:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.5","html_url":"https://github.com/canonical/operator/releases/tag/1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5/manifests"},{"name":"2.2.0","sha":"a8717eadfbf97f001f9b1e06214fa19aa5df6204","kind":"commit","published_at":"2023-03-27T21:13:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.2.0","html_url":"https://github.com/canonical/operator/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0/manifests"},{"name":"2.1.1","sha":"530b55a67f45778d64fadad825de7cba729d67f6","kind":"commit","published_at":"2023-03-01T02:08:52.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.1","html_url":"https://github.com/canonical/operator/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1/manifests"},{"name":"2.1.0","sha":"34e5dfb08251295c96cbfd3976c78b41c991b4ec","kind":"commit","published_at":"2023-02-24T01:03:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.0","html_url":"https://github.com/canonical/operator/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0/manifests"},{"name":"2.0.0rc2","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0rc2","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2/manifests"},{"name":"2.0.0","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0/manifests"},{"name":"1.5.4","sha":"28251faf41868017aec5add2b59a80719f5354db","kind":"commit","published_at":"2022-11-27T21:18:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.4","html_url":"https://github.com/canonical/operator/releases/tag/1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4/manifests"},{"name":"1.5.3","sha":"7b869578342ae9437d2d6abf76b43a1108791f55","kind":"commit","published_at":"2022-10-04T12:26:27.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.3","html_url":"https://github.com/canonical/operator/releases/tag/1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3/manifests"},{"name":"1.5.2","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.2","html_url":"https://github.com/canonical/operator/releases/tag/1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2/manifests"},{"name":"1.5.1","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.1","html_url":"https://github.com/canonical/operator/releases/tag/1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1/manifests"},{"name":"1.5.0","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.0","html_url":"https://github.com/canonical/operator/releases/tag/1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0/manifests"},{"name":"1.5beta1","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5beta1","html_url":"https://github.com/canonical/operator/releases/tag/1.5beta1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5beta1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1/manifests"},{"name":"1.4.0","sha":"ff30d2f4bf0d8e2f24cd11d99e3de67d8e81e3b0","kind":"commit","published_at":"2022-03-25T19:01:21.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.4.0","html_url":"https://github.com/canonical/operator/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0/manifests"},{"name":"1.3.0","sha":"be8c975bb5018183d3be6015c7dc05ffe9888dfa","kind":"commit","published_at":"2021-12-15T14:14:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.3.0","html_url":"https://github.com/canonical/operator/releases/tag/1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0/manifests"},{"name":"1.2.0","sha":"2f0d37113c83b0807ecd1ff5b28e4b3768277ece","kind":"commit","published_at":"2021-04-21T14:47:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.2.0","html_url":"https://github.com/canonical/operator/releases/tag/1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0/manifests"},{"name":"1.1.0","sha":"aa53969ca44073d42d85732ebe0bacf8df646efe","kind":"tag","published_at":"2020-11-30T15:51:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.1.0","html_url":"https://github.com/canonical/operator/releases/tag/1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0/manifests"},{"name":"1.0.1","sha":"8850500c345c7b945836fa3421ea22b053e942ae","kind":"tag","published_at":"2020-11-05T23:21:43.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.1","html_url":"https://github.com/canonical/operator/releases/tag/1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1/manifests"},{"name":"1.0.0","sha":"c36a30db63725413d95b7403415325f11fcba0a7","kind":"tag","published_at":"2020-10-30T17:23:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.0","html_url":"https://github.com/canonical/operator/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0/manifests"},{"name":"0.10.0","sha":"45816c3b01ba088cdc8832e2bdc5a88ee77229a9","kind":"tag","published_at":"2020-09-29T10:55:42.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.10.0","html_url":"https://github.com/canonical/operator/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"cb863a878307b6fabfb96c5ee8a342c38d415234","kind":"tag","published_at":"2020-09-02T08:09:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.9.0","html_url":"https://github.com/canonical/operator/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"16bd1d4e687861e1101ec768bf4682889d0c3f32","kind":"tag","published_at":"2020-08-06T18:30:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.8.0","html_url":"https://github.com/canonical/operator/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"e5dd3074f01bd2aaf33d78af66478fc3cf441ea2","kind":"tag","published_at":"2020-06-30T21:39:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.7.0","html_url":"https://github.com/canonical/operator/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0/manifests"},{"name":"0.6.1","sha":"beca3da58af1485fc1143839ef2caed9fb4afbdb","kind":"commit","published_at":"2020-06-01T21:43:36.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.1","html_url":"https://github.com/canonical/operator/releases/tag/0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1/manifests"},{"name":"0.6.0","sha":"81e5f36571bab0efe315254f60d5a5fcf2693c8e","kind":"commit","published_at":"2020-05-29T15:03:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.0","html_url":"https://github.com/canonical/operator/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-06T05:17:36.078Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":57.69137889398696,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":28.84568944699348},"purl":"pkg:spack/py-ops","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/spack/py-ops","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/spack/py-ops","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/spack/py-ops/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-05T10:59:33.432Z","issues_count":394,"pull_requests_count":1262,"avg_time_to_close_issue":19478224.44890511,"avg_time_to_close_pull_request":643925.9215686275,"issues_closed_count":274,"pull_requests_closed_count":1122,"pull_request_authors_count":40,"issue_authors_count":81,"avg_comments_per_issue":2.9213197969543145,"avg_comments_per_pull_request":1.4920760697305864,"merged_pull_requests_count":975,"bot_issues_count":0,"bot_pull_requests_count":62,"past_year_issues_count":171,"past_year_pull_requests_count":778,"past_year_avg_time_to_close_issue":2166716.7391304346,"past_year_avg_time_to_close_pull_request":551508.2610687023,"past_year_issues_closed_count":69,"past_year_pull_requests_closed_count":655,"past_year_pull_request_authors_count":17,"past_year_issue_authors_count":29,"past_year_avg_comments_per_issue":1.1169590643274854,"past_year_avg_comments_per_pull_request":1.345758354755784,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":31,"past_year_merged_pull_requests_count":576,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/issues","maintainers":[{"login":"benhoyt","count":174,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":59,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"jameinel","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"},{"login":"tmihoc","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"jnsgruk","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jnsgruk"},{"login":"niemeyer","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niemeyer"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"delgod","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/delgod"},{"login":"SimonRichardson","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonRichardson"}],"active_maintainers":[{"login":"benhoyt","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":57,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"tmihoc","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"jameinel","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-ops/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-ops/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-ops/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-ops/related_packages","maintainers":[],"registry":{"name":"spack.io","url":"https://packages.spack.io","ecosystem":"spack","default":true,"packages_count":8772,"maintainers_count":926,"namespaces_count":0,"keywords_count":3681,"github":"spack","metadata":{"funded_packages_count":405},"icon_url":"https://github.com/spack.png","created_at":"2022-04-04T15:19:23.514Z","updated_at":"2025-09-08T06:56:36.288Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/namespaces"}},{"id":2924128,"name":"smooth","ecosystem":"pypi","description":"","homepage":"https://github.com/canonical/operator","licenses":"apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/canonical/operator","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2020-03-10T12:48:21.000Z","latest_release_published_at":"2020-03-10T12:48:21.000Z","latest_release_number":"0.0.1","last_synced_at":"2025-09-05T11:48:24.980Z","created_at":"2022-04-10T12:39:01.858Z","updated_at":"2025-09-06T05:17:36.064Z","registry_url":"https://pypi.org/project/smooth/","install_command":"pip install smooth --index-url https://pypi.org/simple","documentation_url":"https://smooth.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":[],"normalized_name":"smooth","project_status":null},"repo_metadata":{"id":37458190,"uuid":"212098176","full_name":"canonical/operator","owner":"canonical","description":"Pure Python framework for writing Juju charms","archived":false,"fork":false,"pushed_at":"2025-09-05T09:59:46.000Z","size":6453,"stargazers_count":253,"open_issues_count":81,"forks_count":125,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-09-05T11:31:04.818Z","etag":null,"topics":["charms","juju","python"],"latest_commit_sha":null,"homepage":"https://documentation.ubuntu.com/ops","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-01T13:06:11.000Z","updated_at":"2025-09-04T00:40:28.000Z","dependencies_parsed_at":"2023-10-11T02:50:47.283Z","dependency_job_id":"e00155ad-4dff-4056-bdab-6a81c4c1da97","html_url":"https://github.com/canonical/operator","commit_stats":{"total_commits":517,"total_committers":68,"mean_commits":7.602941176470588,"dds":0.8375241779497099,"last_synced_commit":"790473901224e99ef0e66087f12e6b662c144a69"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/canonical/operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/sbom","scorecard":{"id":264626,"data":{"date":"2025-08-11","repo":{"name":"github.com/canonical/operator","commit":"59856580d90a8f2b705d19ecd755b12d0badda06"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":8.2,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 11 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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yaml:17","Info: found token with 'none' permissions: .github/workflows/charmcraft-pack.yaml:1","Info: found token with 'none' permissions: .github/workflows/db-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/example-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/framework-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/hello-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/integration.yaml:1","Info: found token with 'none' permissions: .github/workflows/observability-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/publish.yaml:1","Info: found token with 'none' permissions: .github/workflows/published-charms-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/sbom-secscan.yaml:1","Info: found token with 'none' permissions: .github/workflows/smoke.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/test-publish.yaml:8","Info: found token with 'none' permissions: .github/workflows/tiobe.yaml:1","Info: found token with 'none' permissions: .github/workflows/update-charm-tests.yaml:1","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/validate-pr-title.yaml:10","Info: found token with 'none' permissions: .github/workflows/zizmor.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/integration.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/observability-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/observability-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/published-charms-tests.yaml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/published-charms-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/smoke.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/smoke.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tiobe.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/tiobe.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-charm-tests.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/update-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:43","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:56","Warn: pipCommand not pinned by hash: .github/workflows/example-charm-tests.yaml:38","Warn: goCommand not pinned by hash: .github/workflows/framework-tests.yaml:92","Warn: pipCommand not pinned by hash: .github/workflows/framework-tests.yaml:123","Warn: pipCommand not pinned by hash: .github/workflows/hello-charm-tests.yaml:44","Warn: pipCommand not pinned by hash: .github/workflows/observability-charm-tests.yaml:37","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:75","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:110","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:159","Warn: pipCommand not pinned by hash: .github/workflows/tiobe.yaml:28","Info:   0 out of  29 GitHub-owned GitHubAction dependencies pinned","Info:  15 out of  17 third-party GitHubAction dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned","Info:   0 out of   1 goCommand 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":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish.yaml:11"],"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":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'allow deletion' disabled on branch '2.23-maintenance'","Info: 'allow deletion' disabled on branch '2.19-maintenance'","Info: 'allow deletion' disabled on branch '2.16-maintenance'","Info: 'force pushes' disabled on branch 'main'","Info: 'force pushes' disabled on branch '2.23-maintenance'","Info: 'force pushes' disabled on branch '2.19-maintenance'","Info: 'force pushes' disabled on branch '2.16-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.23-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.19-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.16-maintenance'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch '2.23-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.19-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.16-maintenance'","Info: required approving review count is 2 on branch 'main'","Info: required approving review count is 2 on branch '2.23-maintenance'","Info: required approving review count is 2 on branch '2.19-maintenance'","Info: required approving review count is 2 on branch '2.16-maintenance'","Warn: codeowners review is not required on branch 'main'","Warn: codeowners review is not required on branch '2.23-maintenance'","Warn: codeowners review is not required on branch '2.19-maintenance'","Warn: codeowners review is not required on branch '2.16-maintenance'","Warn: 'last push approval' is disabled on branch 'main'","Warn: 'last push approval' is disabled on branch '2.23-maintenance'","Warn: 'last push approval' is disabled on branch '2.19-maintenance'","Warn: 'last push approval' is disabled on branch '2.16-maintenance'","Warn: 'up-to-date branches' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Warn: no status checks found to merge onto branch '2.23-maintenance'","Warn: no status checks found to merge onto branch '2.19-maintenance'","Warn: no status checks found to merge onto branch '2.16-maintenance'","Info: PRs are required in order to make changes on branch 'main'","Info: PRs are required in order to make changes on branch '2.23-maintenance'","Info: PRs are required in order to make changes on branch '2.19-maintenance'","Info: PRs are required in order to make changes on branch '2.16-maintenance'"],"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":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (30) 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-17T11:40:05.394Z","repository_id":37458190,"created_at":"2025-08-17T11:40:05.394Z","updated_at":"2025-08-17T11:40:05.394Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273858876,"owners_count":25180772,"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-09-06T02:00:13.247Z","response_time":2576,"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":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":"Canonical","company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1802,"last_synced_at":"2025-05-25T12:10:16.367Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":49667,"followers":2603,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2025-05-25T12:10:16.368Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"tags":[{"name":"3.2.0","sha":"77976ac5b6ec49844deff646cf51697835204acf","kind":"commit","published_at":"2025-08-27T22:24:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.2.0","html_url":"https://github.com/canonical/operator/releases/tag/3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0/manifests"},{"name":"2.23.1","sha":"df1209ddf17eef31634f8f529efe39bd768f3145","kind":"commit","published_at":"2025-07-30T06:25:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1/manifests"},{"name":"3.1.0","sha":"c12daf3cbafd74e169715f33ed6452ce9c805cc3","kind":"commit","published_at":"2025-07-30T02:18:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.1.0","html_url":"https://github.com/canonical/operator/releases/tag/3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0/manifests"},{"name":"3.0.0","sha":"5e0d22b003ce42b32db66aa707b28f58da3d28d2","kind":"commit","published_at":"2025-07-02T10:39:18.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.0.0","html_url":"https://github.com/canonical/operator/releases/tag/3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0/manifests"},{"name":"2.23.0.post1","sha":"af8c84a58f7f142171c71c425675ddd388f061bd","kind":"commit","published_at":"2025-06-30T08:32:02.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0.post1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1/manifests"},{"name":"2.23.0","sha":"ec2dc3f7a650c9aecb41c28cab2423a9ad601979","kind":"commit","published_at":"2025-06-30T07:29:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0/manifests"},{"name":"2.22.0","sha":"e72e9b858be26bf96223354af697b2bc2843b1e2","kind":"commit","published_at":"2025-05-29T04:10:17.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.22.0","html_url":"https://github.com/canonical/operator/releases/tag/2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0/manifests"},{"name":"2.21.1","sha":"8e4877fb2424d0dfe1c701d5f22f5f6f5cf673ce","kind":"commit","published_at":"2025-05-01T02:51:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.1","html_url":"https://github.com/canonical/operator/releases/tag/2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1/manifests"},{"name":"2.21.0","sha":"9ab739ec1f64664b44efb17b7ef7738c06484150","kind":"commit","published_at":"2025-04-30T03:50:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.0","html_url":"https://github.com/canonical/operator/releases/tag/2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0/manifests"},{"name":"scenario-7.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.20.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0/manifests"},{"name":"2.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.20.0","html_url":"https://github.com/canonical/operator/releases/tag/2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0/manifests"},{"name":"scenario-7.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.4","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4/manifests"},{"name":"2.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.4","html_url":"https://github.com/canonical/operator/releases/tag/2.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4/manifests"},{"name":"2.19.3","sha":"43d57a50cdd082ea3586381abb08ba8f7de85ec9","kind":"commit","published_at":"2025-03-10T22:18:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.3","html_url":"https://github.com/canonical/operator/releases/tag/2.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3/manifests"},{"name":"2.19.1","sha":"f65c8a4b928110cc9374ea8663367783be8a3bb8","kind":"commit","published_at":"2025-03-09T22:48:26.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.1","html_url":"https://github.com/canonical/operator/releases/tag/2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1/manifests"},{"name":"2.19.2","sha":"897224d679c67d28ac174ab3acd3c0b00cf17d0f","kind":"commit","published_at":"2025-03-06T04:07:05.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.2","html_url":"https://github.com/canonical/operator/releases/tag/2.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2/manifests"},{"name":"scenario-7.2.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.2.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0/manifests"},{"name":"scenario-7.19.1","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1/manifests"},{"name":"2.19.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.0","html_url":"https://github.com/canonical/operator/releases/tag/2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0/manifests"},{"name":"scenario-7.1.3","sha":"71227208cc1f8d480e2be2dbbc0ed6748f94c452","kind":"commit","published_at":"2025-02-13T02:45:57.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.3","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3/manifests"},{"name":"scenario-7.1.2","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.2","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2/manifests"},{"name":"2.18.1","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.1","html_url":"https://github.com/canonical/operator/releases/tag/2.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1/manifests"},{"name":"scenario-7.1.1","sha":"4911b0641b2c12580f97c22362cc0683dfd9f8a0","kind":"commit","published_at":"2025-01-30T21:54:22.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1/manifests"},{"name":"scenario-7.1.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0/manifests"},{"name":"2.18.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.0","html_url":"https://github.com/canonical/operator/releases/tag/2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0/manifests"},{"name":"2.17.1","sha":"e573f8f39c6b11470dcae3ac94ad798e4655ee91","kind":"commit","published_at":"2024-11-28T06:17:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.1","html_url":"https://github.com/canonical/operator/releases/tag/2.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1/manifests"},{"name":"2.17.0","sha":"05af34fe622b4e54586dbb32f9c3207d7f6d3eb8","kind":"commit","published_at":"2024-09-26T05:11:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.0","html_url":"https://github.com/canonical/operator/releases/tag/2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0/manifests"},{"name":"2.16.1","sha":"1719d1ea2f7faafdd137eed253fb1d2353cc30be","kind":"commit","published_at":"2024-09-05T06:11:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.1","html_url":"https://github.com/canonical/operator/releases/tag/2.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1/manifests"},{"name":"2.16.0","sha":"a5744561d360c4577412a3a4f0619543bb2b2f70","kind":"commit","published_at":"2024-08-29T06:13:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.0","html_url":"https://github.com/canonical/operator/releases/tag/2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0/manifests"},{"name":"2.15.0","sha":"d46f7e960e79acc478a6e6741e4f307013b9e89b","kind":"commit","published_at":"2024-07-22T04:26:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.15.0","html_url":"https://github.com/canonical/operator/releases/tag/2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0/manifests"},{"name":"2.14.1","sha":"5cc221659146d8da355218a3f3992e7941014f91","kind":"commit","published_at":"2024-06-27T03:39:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.1","html_url":"https://github.com/canonical/operator/releases/tag/2.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1/manifests"},{"name":"2.14.0","sha":"6197de962f9a64b00f06c4a647a558bc573275d2","kind":"commit","published_at":"2024-05-29T02:38:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.0","html_url":"https://github.com/canonical/operator/releases/tag/2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0/manifests"},{"name":"2.13.0","sha":"6cbc264a3bba177a34d93e8422e7f9c0807a0961","kind":"commit","published_at":"2024-05-01T07:04:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.13.0","html_url":"https://github.com/canonical/operator/releases/tag/2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0/manifests"},{"name":"2.12.0","sha":"2da708a20b45e6335a98ee1bd01522d617845710","kind":"commit","published_at":"2024-03-28T05:32:01.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.12.0","html_url":"https://github.com/canonical/operator/releases/tag/2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0/manifests"},{"name":"2.11.0","sha":"b601088c976f043e292e64dfbf57243f89c4e6b6","kind":"commit","published_at":"2024-02-29T04:29:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.11.0","html_url":"https://github.com/canonical/operator/releases/tag/2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0/manifests"},{"name":"2.10.0","sha":"3dd462122463bb0f5290e45167185c1e4a54c829","kind":"commit","published_at":"2024-01-31T01:52:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.10.0","html_url":"https://github.com/canonical/operator/releases/tag/2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0/manifests"},{"name":"2.9.0","sha":"18abc170a8179212596be2655b5b49078562bc71","kind":"commit","published_at":"2023-11-29T03:26:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.9.0","html_url":"https://github.com/canonical/operator/releases/tag/2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0/manifests"},{"name":"2.8.0","sha":"790473901224e99ef0e66087f12e6b662c144a69","kind":"commit","published_at":"2023-10-20T04:51:40.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.8.0","html_url":"https://github.com/canonical/operator/releases/tag/2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0/manifests"},{"name":"2.7.0","sha":"a59f50f448943ee64c27f71d6a5739d8f7c21c20","kind":"commit","published_at":"2023-09-28T03:05:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.7.0","html_url":"https://github.com/canonical/operator/releases/tag/2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0/manifests"},{"name":"2.6.0","sha":"c4e3266a6568ba310064ca8b9bff7adb89676224","kind":"commit","published_at":"2023-08-30T19:55:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.6.0","html_url":"https://github.com/canonical/operator/releases/tag/2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0/manifests"},{"name":"2.5.1","sha":"6fd66cc58676d4564d4625891e08145a5db8c71e","kind":"commit","published_at":"2023-08-16T05:43:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.1","html_url":"https://github.com/canonical/operator/releases/tag/2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1/manifests"},{"name":"2.5.0","sha":"ca048720d21329af0953a93f5794bcf8ed4f3db9","kind":"commit","published_at":"2023-07-31T21:49:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.0","html_url":"https://github.com/canonical/operator/releases/tag/2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0/manifests"},{"name":"2.4.1","sha":"eb5795827647390304b6a0c284897c100b1a350d","kind":"commit","published_at":"2023-07-04T04:51:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.1","html_url":"https://github.com/canonical/operator/releases/tag/2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1/manifests"},{"name":"2.4.0","sha":"384ef3adbdc811ccb0a06bfabb40b01e0bce640b","kind":"commit","published_at":"2023-07-04T03:32:48.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.0","html_url":"https://github.com/canonical/operator/releases/tag/2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0/manifests"},{"name":"2.3.0","sha":"b06697c7c769662e56f6b5a06964304921ebbc0d","kind":"commit","published_at":"2023-05-28T22:39:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.3.0","html_url":"https://github.com/canonical/operator/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0/manifests"},{"name":"1.5.5","sha":"5bbc50faa49114cc6c4e0ae2b4b93351c33b6bbd","kind":"commit","published_at":"2023-04-25T10:18:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.5","html_url":"https://github.com/canonical/operator/releases/tag/1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5/manifests"},{"name":"2.2.0","sha":"a8717eadfbf97f001f9b1e06214fa19aa5df6204","kind":"commit","published_at":"2023-03-27T21:13:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.2.0","html_url":"https://github.com/canonical/operator/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0/manifests"},{"name":"2.1.1","sha":"530b55a67f45778d64fadad825de7cba729d67f6","kind":"commit","published_at":"2023-03-01T02:08:52.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.1","html_url":"https://github.com/canonical/operator/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1/manifests"},{"name":"2.1.0","sha":"34e5dfb08251295c96cbfd3976c78b41c991b4ec","kind":"commit","published_at":"2023-02-24T01:03:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.0","html_url":"https://github.com/canonical/operator/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0/manifests"},{"name":"2.0.0rc2","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0rc2","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2/manifests"},{"name":"2.0.0","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0/manifests"},{"name":"1.5.4","sha":"28251faf41868017aec5add2b59a80719f5354db","kind":"commit","published_at":"2022-11-27T21:18:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.4","html_url":"https://github.com/canonical/operator/releases/tag/1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4/manifests"},{"name":"1.5.3","sha":"7b869578342ae9437d2d6abf76b43a1108791f55","kind":"commit","published_at":"2022-10-04T12:26:27.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.3","html_url":"https://github.com/canonical/operator/releases/tag/1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3/manifests"},{"name":"1.5.2","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.2","html_url":"https://github.com/canonical/operator/releases/tag/1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2/manifests"},{"name":"1.5.1","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.1","html_url":"https://github.com/canonical/operator/releases/tag/1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1/manifests"},{"name":"1.5.0","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.0","html_url":"https://github.com/canonical/operator/releases/tag/1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0/manifests"},{"name":"1.5beta1","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5beta1","html_url":"https://github.com/canonical/operator/releases/tag/1.5beta1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5beta1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1/manifests"},{"name":"1.4.0","sha":"ff30d2f4bf0d8e2f24cd11d99e3de67d8e81e3b0","kind":"commit","published_at":"2022-03-25T19:01:21.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.4.0","html_url":"https://github.com/canonical/operator/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0/manifests"},{"name":"1.3.0","sha":"be8c975bb5018183d3be6015c7dc05ffe9888dfa","kind":"commit","published_at":"2021-12-15T14:14:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.3.0","html_url":"https://github.com/canonical/operator/releases/tag/1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0/manifests"},{"name":"1.2.0","sha":"2f0d37113c83b0807ecd1ff5b28e4b3768277ece","kind":"commit","published_at":"2021-04-21T14:47:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.2.0","html_url":"https://github.com/canonical/operator/releases/tag/1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0/manifests"},{"name":"1.1.0","sha":"aa53969ca44073d42d85732ebe0bacf8df646efe","kind":"tag","published_at":"2020-11-30T15:51:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.1.0","html_url":"https://github.com/canonical/operator/releases/tag/1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0/manifests"},{"name":"1.0.1","sha":"8850500c345c7b945836fa3421ea22b053e942ae","kind":"tag","published_at":"2020-11-05T23:21:43.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.1","html_url":"https://github.com/canonical/operator/releases/tag/1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1/manifests"},{"name":"1.0.0","sha":"c36a30db63725413d95b7403415325f11fcba0a7","kind":"tag","published_at":"2020-10-30T17:23:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.0","html_url":"https://github.com/canonical/operator/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0/manifests"},{"name":"0.10.0","sha":"45816c3b01ba088cdc8832e2bdc5a88ee77229a9","kind":"tag","published_at":"2020-09-29T10:55:42.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.10.0","html_url":"https://github.com/canonical/operator/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"cb863a878307b6fabfb96c5ee8a342c38d415234","kind":"tag","published_at":"2020-09-02T08:09:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.9.0","html_url":"https://github.com/canonical/operator/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"16bd1d4e687861e1101ec768bf4682889d0c3f32","kind":"tag","published_at":"2020-08-06T18:30:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.8.0","html_url":"https://github.com/canonical/operator/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"e5dd3074f01bd2aaf33d78af66478fc3cf441ea2","kind":"tag","published_at":"2020-06-30T21:39:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.7.0","html_url":"https://github.com/canonical/operator/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0/manifests"},{"name":"0.6.1","sha":"beca3da58af1485fc1143839ef2caed9fb4afbdb","kind":"commit","published_at":"2020-06-01T21:43:36.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.1","html_url":"https://github.com/canonical/operator/releases/tag/0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1/manifests"},{"name":"0.6.0","sha":"81e5f36571bab0efe315254f60d5a5fcf2693c8e","kind":"commit","published_at":"2020-05-29T15:03:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.0","html_url":"https://github.com/canonical/operator/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-06T05:17:36.064Z","dependent_packages_count":0,"downloads":39,"downloads_period":"last-month","dependent_repos_count":3,"rankings":{"downloads":24.60414384777141,"dependent_repos_count":8.969683089519338,"dependent_packages_count":10.09540786432578,"stargazers_count":4.44171324861113,"forks_count":4.41027441834723,"docker_downloads_count":null,"average":10.504244493714978},"purl":"pkg:pypi/smooth","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/smooth","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/smooth","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/smooth/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-05T10:59:33.432Z","issues_count":394,"pull_requests_count":1262,"avg_time_to_close_issue":19478224.44890511,"avg_time_to_close_pull_request":643925.9215686275,"issues_closed_count":274,"pull_requests_closed_count":1122,"pull_request_authors_count":40,"issue_authors_count":81,"avg_comments_per_issue":2.9213197969543145,"avg_comments_per_pull_request":1.4920760697305864,"merged_pull_requests_count":975,"bot_issues_count":0,"bot_pull_requests_count":62,"past_year_issues_count":171,"past_year_pull_requests_count":778,"past_year_avg_time_to_close_issue":2166716.7391304346,"past_year_avg_time_to_close_pull_request":551508.2610687023,"past_year_issues_closed_count":69,"past_year_pull_requests_closed_count":655,"past_year_pull_request_authors_count":17,"past_year_issue_authors_count":29,"past_year_avg_comments_per_issue":1.1169590643274854,"past_year_avg_comments_per_pull_request":1.345758354755784,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":31,"past_year_merged_pull_requests_count":576,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/issues","maintainers":[{"login":"benhoyt","count":174,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":59,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"jameinel","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"},{"login":"tmihoc","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"jnsgruk","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jnsgruk"},{"login":"niemeyer","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niemeyer"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"delgod","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/delgod"},{"login":"SimonRichardson","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonRichardson"}],"active_maintainers":[{"login":"benhoyt","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":57,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"tmihoc","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"jameinel","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/smooth/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/smooth/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/smooth/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/smooth/related_packages","maintainers":[{"uuid":"niemeyer","login":"niemeyer","name":null,"email":null,"url":null,"packages_count":14,"html_url":"https://pypi.org/user/niemeyer/","role":null,"created_at":"2023-02-21T16:18:21.396Z","updated_at":"2023-02-21T16:18:21.396Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/niemeyer/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726136,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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":11426882,"name":"ops-tracing","ecosystem":"pypi","description":"The tracing facility for the Ops library.","homepage":null,"licenses":"apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/canonical/operator","keywords_array":[],"namespace":null,"versions_count":14,"first_release_published_at":"2025-03-12T12:25:49.000Z","latest_release_published_at":"2025-08-27T22:58:36.000Z","latest_release_number":"3.2.0","last_synced_at":"2025-09-05T11:48:24.852Z","created_at":"2025-03-12T12:45:42.330Z","updated_at":"2025-09-06T05:17:36.081Z","registry_url":"https://pypi.org/project/ops-tracing/","install_command":"pip install ops-tracing --index-url https://pypi.org/simple","documentation_url":"https://documentation.ubuntu.com/ops/latest/","metadata":{"funding":null,"documentation":"https://documentation.ubuntu.com/ops/latest/","classifiers":["Development Status :: 5 - Production/Stable","Framework :: OpenTelemetry","Intended Audience :: Developers","Intended Audience :: System Administrators","Natural Language :: English","Operating System :: MacOS :: MacOS X","Operating System :: POSIX :: Linux","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.14","Programming Language :: Python :: Implementation :: CPython","Programming Language :: Python :: Implementation :: PyPy","Topic :: Software Development :: Libraries"],"normalized_name":"ops-tracing","project_status":null},"repo_metadata":{"id":37458190,"uuid":"212098176","full_name":"canonical/operator","owner":"canonical","description":"Pure Python framework for writing Juju charms","archived":false,"fork":false,"pushed_at":"2025-09-05T09:59:46.000Z","size":6453,"stargazers_count":253,"open_issues_count":81,"forks_count":125,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-09-05T11:31:04.818Z","etag":null,"topics":["charms","juju","python"],"latest_commit_sha":null,"homepage":"https://documentation.ubuntu.com/ops","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-01T13:06:11.000Z","updated_at":"2025-09-04T00:40:28.000Z","dependencies_parsed_at":"2023-10-11T02:50:47.283Z","dependency_job_id":"e00155ad-4dff-4056-bdab-6a81c4c1da97","html_url":"https://github.com/canonical/operator","commit_stats":{"total_commits":517,"total_committers":68,"mean_commits":7.602941176470588,"dds":0.8375241779497099,"last_synced_commit":"790473901224e99ef0e66087f12e6b662c144a69"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/canonical/operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/sbom","scorecard":{"id":264626,"data":{"date":"2025-08-11","repo":{"name":"github.com/canonical/operator","commit":"59856580d90a8f2b705d19ecd755b12d0badda06"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":8.2,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 11 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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yaml:17","Info: found token with 'none' permissions: .github/workflows/charmcraft-pack.yaml:1","Info: found token with 'none' permissions: .github/workflows/db-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/example-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/framework-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/hello-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/integration.yaml:1","Info: found token with 'none' permissions: .github/workflows/observability-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/publish.yaml:1","Info: found token with 'none' permissions: .github/workflows/published-charms-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/sbom-secscan.yaml:1","Info: found token with 'none' permissions: .github/workflows/smoke.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/test-publish.yaml:8","Info: found token with 'none' permissions: .github/workflows/tiobe.yaml:1","Info: found token with 'none' permissions: .github/workflows/update-charm-tests.yaml:1","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/validate-pr-title.yaml:10","Info: found token with 'none' permissions: .github/workflows/zizmor.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/integration.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/observability-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/observability-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/published-charms-tests.yaml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/published-charms-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/smoke.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/smoke.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tiobe.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/tiobe.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-charm-tests.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/update-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:43","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:56","Warn: pipCommand not pinned by hash: .github/workflows/example-charm-tests.yaml:38","Warn: goCommand not pinned by hash: .github/workflows/framework-tests.yaml:92","Warn: pipCommand not pinned by hash: .github/workflows/framework-tests.yaml:123","Warn: pipCommand not pinned by hash: .github/workflows/hello-charm-tests.yaml:44","Warn: pipCommand not pinned by hash: .github/workflows/observability-charm-tests.yaml:37","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:75","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:110","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:159","Warn: pipCommand not pinned by hash: .github/workflows/tiobe.yaml:28","Info:   0 out of  29 GitHub-owned GitHubAction dependencies pinned","Info:  15 out of  17 third-party GitHubAction dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned","Info:   0 out of   1 goCommand 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":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish.yaml:11"],"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":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'allow deletion' disabled on branch '2.23-maintenance'","Info: 'allow deletion' disabled on branch '2.19-maintenance'","Info: 'allow deletion' disabled on branch '2.16-maintenance'","Info: 'force pushes' disabled on branch 'main'","Info: 'force pushes' disabled on branch '2.23-maintenance'","Info: 'force pushes' disabled on branch '2.19-maintenance'","Info: 'force pushes' disabled on branch '2.16-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.23-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.19-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.16-maintenance'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch '2.23-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.19-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.16-maintenance'","Info: required approving review count is 2 on branch 'main'","Info: required approving review count is 2 on branch '2.23-maintenance'","Info: required approving review count is 2 on branch '2.19-maintenance'","Info: required approving review count is 2 on branch '2.16-maintenance'","Warn: codeowners review is not required on branch 'main'","Warn: codeowners review is not required on branch '2.23-maintenance'","Warn: codeowners review is not required on branch '2.19-maintenance'","Warn: codeowners review is not required on branch '2.16-maintenance'","Warn: 'last push approval' is disabled on branch 'main'","Warn: 'last push approval' is disabled on branch '2.23-maintenance'","Warn: 'last push approval' is disabled on branch '2.19-maintenance'","Warn: 'last push approval' is disabled on branch '2.16-maintenance'","Warn: 'up-to-date branches' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Warn: no status checks found to merge onto branch '2.23-maintenance'","Warn: no status checks found to merge onto branch '2.19-maintenance'","Warn: no status checks found to merge onto branch '2.16-maintenance'","Info: PRs are required in order to make changes on branch 'main'","Info: PRs are required in order to make changes on branch '2.23-maintenance'","Info: PRs are required in order to make changes on branch '2.19-maintenance'","Info: PRs are required in order to make changes on branch '2.16-maintenance'"],"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":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (30) 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-17T11:40:05.394Z","repository_id":37458190,"created_at":"2025-08-17T11:40:05.394Z","updated_at":"2025-08-17T11:40:05.394Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273858876,"owners_count":25180772,"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-09-06T02:00:13.247Z","response_time":2576,"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":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":"Canonical","company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1802,"last_synced_at":"2025-05-25T12:10:16.367Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":49667,"followers":2603,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2025-05-25T12:10:16.368Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"tags":[{"name":"3.2.0","sha":"77976ac5b6ec49844deff646cf51697835204acf","kind":"commit","published_at":"2025-08-27T22:24:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.2.0","html_url":"https://github.com/canonical/operator/releases/tag/3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0/manifests"},{"name":"2.23.1","sha":"df1209ddf17eef31634f8f529efe39bd768f3145","kind":"commit","published_at":"2025-07-30T06:25:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1/manifests"},{"name":"3.1.0","sha":"c12daf3cbafd74e169715f33ed6452ce9c805cc3","kind":"commit","published_at":"2025-07-30T02:18:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.1.0","html_url":"https://github.com/canonical/operator/releases/tag/3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0/manifests"},{"name":"3.0.0","sha":"5e0d22b003ce42b32db66aa707b28f58da3d28d2","kind":"commit","published_at":"2025-07-02T10:39:18.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.0.0","html_url":"https://github.com/canonical/operator/releases/tag/3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0/manifests"},{"name":"2.23.0.post1","sha":"af8c84a58f7f142171c71c425675ddd388f061bd","kind":"commit","published_at":"2025-06-30T08:32:02.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0.post1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1/manifests"},{"name":"2.23.0","sha":"ec2dc3f7a650c9aecb41c28cab2423a9ad601979","kind":"commit","published_at":"2025-06-30T07:29:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0/manifests"},{"name":"2.22.0","sha":"e72e9b858be26bf96223354af697b2bc2843b1e2","kind":"commit","published_at":"2025-05-29T04:10:17.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.22.0","html_url":"https://github.com/canonical/operator/releases/tag/2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0/manifests"},{"name":"2.21.1","sha":"8e4877fb2424d0dfe1c701d5f22f5f6f5cf673ce","kind":"commit","published_at":"2025-05-01T02:51:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.1","html_url":"https://github.com/canonical/operator/releases/tag/2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1/manifests"},{"name":"2.21.0","sha":"9ab739ec1f64664b44efb17b7ef7738c06484150","kind":"commit","published_at":"2025-04-30T03:50:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.0","html_url":"https://github.com/canonical/operator/releases/tag/2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0/manifests"},{"name":"scenario-7.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.20.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0/manifests"},{"name":"2.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.20.0","html_url":"https://github.com/canonical/operator/releases/tag/2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0/manifests"},{"name":"scenario-7.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.4","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4/manifests"},{"name":"2.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.4","html_url":"https://github.com/canonical/operator/releases/tag/2.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4/manifests"},{"name":"2.19.3","sha":"43d57a50cdd082ea3586381abb08ba8f7de85ec9","kind":"commit","published_at":"2025-03-10T22:18:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.3","html_url":"https://github.com/canonical/operator/releases/tag/2.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3/manifests"},{"name":"2.19.1","sha":"f65c8a4b928110cc9374ea8663367783be8a3bb8","kind":"commit","published_at":"2025-03-09T22:48:26.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.1","html_url":"https://github.com/canonical/operator/releases/tag/2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1/manifests"},{"name":"2.19.2","sha":"897224d679c67d28ac174ab3acd3c0b00cf17d0f","kind":"commit","published_at":"2025-03-06T04:07:05.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.2","html_url":"https://github.com/canonical/operator/releases/tag/2.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2/manifests"},{"name":"scenario-7.2.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.2.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0/manifests"},{"name":"scenario-7.19.1","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1/manifests"},{"name":"2.19.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.0","html_url":"https://github.com/canonical/operator/releases/tag/2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0/manifests"},{"name":"scenario-7.1.3","sha":"71227208cc1f8d480e2be2dbbc0ed6748f94c452","kind":"commit","published_at":"2025-02-13T02:45:57.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.3","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3/manifests"},{"name":"scenario-7.1.2","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.2","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2/manifests"},{"name":"2.18.1","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.1","html_url":"https://github.com/canonical/operator/releases/tag/2.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1/manifests"},{"name":"scenario-7.1.1","sha":"4911b0641b2c12580f97c22362cc0683dfd9f8a0","kind":"commit","published_at":"2025-01-30T21:54:22.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1/manifests"},{"name":"scenario-7.1.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0/manifests"},{"name":"2.18.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.0","html_url":"https://github.com/canonical/operator/releases/tag/2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0/manifests"},{"name":"2.17.1","sha":"e573f8f39c6b11470dcae3ac94ad798e4655ee91","kind":"commit","published_at":"2024-11-28T06:17:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.1","html_url":"https://github.com/canonical/operator/releases/tag/2.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1/manifests"},{"name":"2.17.0","sha":"05af34fe622b4e54586dbb32f9c3207d7f6d3eb8","kind":"commit","published_at":"2024-09-26T05:11:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.0","html_url":"https://github.com/canonical/operator/releases/tag/2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0/manifests"},{"name":"2.16.1","sha":"1719d1ea2f7faafdd137eed253fb1d2353cc30be","kind":"commit","published_at":"2024-09-05T06:11:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.1","html_url":"https://github.com/canonical/operator/releases/tag/2.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1/manifests"},{"name":"2.16.0","sha":"a5744561d360c4577412a3a4f0619543bb2b2f70","kind":"commit","published_at":"2024-08-29T06:13:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.0","html_url":"https://github.com/canonical/operator/releases/tag/2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0/manifests"},{"name":"2.15.0","sha":"d46f7e960e79acc478a6e6741e4f307013b9e89b","kind":"commit","published_at":"2024-07-22T04:26:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.15.0","html_url":"https://github.com/canonical/operator/releases/tag/2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0/manifests"},{"name":"2.14.1","sha":"5cc221659146d8da355218a3f3992e7941014f91","kind":"commit","published_at":"2024-06-27T03:39:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.1","html_url":"https://github.com/canonical/operator/releases/tag/2.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1/manifests"},{"name":"2.14.0","sha":"6197de962f9a64b00f06c4a647a558bc573275d2","kind":"commit","published_at":"2024-05-29T02:38:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.0","html_url":"https://github.com/canonical/operator/releases/tag/2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0/manifests"},{"name":"2.13.0","sha":"6cbc264a3bba177a34d93e8422e7f9c0807a0961","kind":"commit","published_at":"2024-05-01T07:04:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.13.0","html_url":"https://github.com/canonical/operator/releases/tag/2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0/manifests"},{"name":"2.12.0","sha":"2da708a20b45e6335a98ee1bd01522d617845710","kind":"commit","published_at":"2024-03-28T05:32:01.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.12.0","html_url":"https://github.com/canonical/operator/releases/tag/2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0/manifests"},{"name":"2.11.0","sha":"b601088c976f043e292e64dfbf57243f89c4e6b6","kind":"commit","published_at":"2024-02-29T04:29:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.11.0","html_url":"https://github.com/canonical/operator/releases/tag/2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0/manifests"},{"name":"2.10.0","sha":"3dd462122463bb0f5290e45167185c1e4a54c829","kind":"commit","published_at":"2024-01-31T01:52:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.10.0","html_url":"https://github.com/canonical/operator/releases/tag/2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0/manifests"},{"name":"2.9.0","sha":"18abc170a8179212596be2655b5b49078562bc71","kind":"commit","published_at":"2023-11-29T03:26:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.9.0","html_url":"https://github.com/canonical/operator/releases/tag/2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0/manifests"},{"name":"2.8.0","sha":"790473901224e99ef0e66087f12e6b662c144a69","kind":"commit","published_at":"2023-10-20T04:51:40.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.8.0","html_url":"https://github.com/canonical/operator/releases/tag/2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0/manifests"},{"name":"2.7.0","sha":"a59f50f448943ee64c27f71d6a5739d8f7c21c20","kind":"commit","published_at":"2023-09-28T03:05:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.7.0","html_url":"https://github.com/canonical/operator/releases/tag/2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0/manifests"},{"name":"2.6.0","sha":"c4e3266a6568ba310064ca8b9bff7adb89676224","kind":"commit","published_at":"2023-08-30T19:55:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.6.0","html_url":"https://github.com/canonical/operator/releases/tag/2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0/manifests"},{"name":"2.5.1","sha":"6fd66cc58676d4564d4625891e08145a5db8c71e","kind":"commit","published_at":"2023-08-16T05:43:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.1","html_url":"https://github.com/canonical/operator/releases/tag/2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1/manifests"},{"name":"2.5.0","sha":"ca048720d21329af0953a93f5794bcf8ed4f3db9","kind":"commit","published_at":"2023-07-31T21:49:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.0","html_url":"https://github.com/canonical/operator/releases/tag/2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0/manifests"},{"name":"2.4.1","sha":"eb5795827647390304b6a0c284897c100b1a350d","kind":"commit","published_at":"2023-07-04T04:51:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.1","html_url":"https://github.com/canonical/operator/releases/tag/2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1/manifests"},{"name":"2.4.0","sha":"384ef3adbdc811ccb0a06bfabb40b01e0bce640b","kind":"commit","published_at":"2023-07-04T03:32:48.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.0","html_url":"https://github.com/canonical/operator/releases/tag/2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0/manifests"},{"name":"2.3.0","sha":"b06697c7c769662e56f6b5a06964304921ebbc0d","kind":"commit","published_at":"2023-05-28T22:39:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.3.0","html_url":"https://github.com/canonical/operator/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0/manifests"},{"name":"1.5.5","sha":"5bbc50faa49114cc6c4e0ae2b4b93351c33b6bbd","kind":"commit","published_at":"2023-04-25T10:18:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.5","html_url":"https://github.com/canonical/operator/releases/tag/1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5/manifests"},{"name":"2.2.0","sha":"a8717eadfbf97f001f9b1e06214fa19aa5df6204","kind":"commit","published_at":"2023-03-27T21:13:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.2.0","html_url":"https://github.com/canonical/operator/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0/manifests"},{"name":"2.1.1","sha":"530b55a67f45778d64fadad825de7cba729d67f6","kind":"commit","published_at":"2023-03-01T02:08:52.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.1","html_url":"https://github.com/canonical/operator/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1/manifests"},{"name":"2.1.0","sha":"34e5dfb08251295c96cbfd3976c78b41c991b4ec","kind":"commit","published_at":"2023-02-24T01:03:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.0","html_url":"https://github.com/canonical/operator/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0/manifests"},{"name":"2.0.0rc2","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0rc2","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2/manifests"},{"name":"2.0.0","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0/manifests"},{"name":"1.5.4","sha":"28251faf41868017aec5add2b59a80719f5354db","kind":"commit","published_at":"2022-11-27T21:18:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.4","html_url":"https://github.com/canonical/operator/releases/tag/1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4/manifests"},{"name":"1.5.3","sha":"7b869578342ae9437d2d6abf76b43a1108791f55","kind":"commit","published_at":"2022-10-04T12:26:27.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.3","html_url":"https://github.com/canonical/operator/releases/tag/1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3/manifests"},{"name":"1.5.2","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.2","html_url":"https://github.com/canonical/operator/releases/tag/1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2/manifests"},{"name":"1.5.1","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.1","html_url":"https://github.com/canonical/operator/releases/tag/1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1/manifests"},{"name":"1.5.0","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.0","html_url":"https://github.com/canonical/operator/releases/tag/1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0/manifests"},{"name":"1.5beta1","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5beta1","html_url":"https://github.com/canonical/operator/releases/tag/1.5beta1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5beta1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1/manifests"},{"name":"1.4.0","sha":"ff30d2f4bf0d8e2f24cd11d99e3de67d8e81e3b0","kind":"commit","published_at":"2022-03-25T19:01:21.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.4.0","html_url":"https://github.com/canonical/operator/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0/manifests"},{"name":"1.3.0","sha":"be8c975bb5018183d3be6015c7dc05ffe9888dfa","kind":"commit","published_at":"2021-12-15T14:14:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.3.0","html_url":"https://github.com/canonical/operator/releases/tag/1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0/manifests"},{"name":"1.2.0","sha":"2f0d37113c83b0807ecd1ff5b28e4b3768277ece","kind":"commit","published_at":"2021-04-21T14:47:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.2.0","html_url":"https://github.com/canonical/operator/releases/tag/1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0/manifests"},{"name":"1.1.0","sha":"aa53969ca44073d42d85732ebe0bacf8df646efe","kind":"tag","published_at":"2020-11-30T15:51:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.1.0","html_url":"https://github.com/canonical/operator/releases/tag/1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0/manifests"},{"name":"1.0.1","sha":"8850500c345c7b945836fa3421ea22b053e942ae","kind":"tag","published_at":"2020-11-05T23:21:43.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.1","html_url":"https://github.com/canonical/operator/releases/tag/1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1/manifests"},{"name":"1.0.0","sha":"c36a30db63725413d95b7403415325f11fcba0a7","kind":"tag","published_at":"2020-10-30T17:23:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.0","html_url":"https://github.com/canonical/operator/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0/manifests"},{"name":"0.10.0","sha":"45816c3b01ba088cdc8832e2bdc5a88ee77229a9","kind":"tag","published_at":"2020-09-29T10:55:42.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.10.0","html_url":"https://github.com/canonical/operator/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"cb863a878307b6fabfb96c5ee8a342c38d415234","kind":"tag","published_at":"2020-09-02T08:09:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.9.0","html_url":"https://github.com/canonical/operator/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"16bd1d4e687861e1101ec768bf4682889d0c3f32","kind":"tag","published_at":"2020-08-06T18:30:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.8.0","html_url":"https://github.com/canonical/operator/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"e5dd3074f01bd2aaf33d78af66478fc3cf441ea2","kind":"tag","published_at":"2020-06-30T21:39:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.7.0","html_url":"https://github.com/canonical/operator/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0/manifests"},{"name":"0.6.1","sha":"beca3da58af1485fc1143839ef2caed9fb4afbdb","kind":"commit","published_at":"2020-06-01T21:43:36.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.1","html_url":"https://github.com/canonical/operator/releases/tag/0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1/manifests"},{"name":"0.6.0","sha":"81e5f36571bab0efe315254f60d5a5fcf2693c8e","kind":"commit","published_at":"2020-05-29T15:03:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.0","html_url":"https://github.com/canonical/operator/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-06T05:17:36.081Z","dependent_packages_count":0,"downloads":5741,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":53.501535854898286,"dependent_packages_count":9.500664318190129,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":31.501100086544206},"purl":"pkg:pypi/ops-tracing","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/ops-tracing","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/ops-tracing","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/ops-tracing/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-05T10:59:33.432Z","issues_count":394,"pull_requests_count":1262,"avg_time_to_close_issue":19478224.44890511,"avg_time_to_close_pull_request":643925.9215686275,"issues_closed_count":274,"pull_requests_closed_count":1122,"pull_request_authors_count":40,"issue_authors_count":81,"avg_comments_per_issue":2.9213197969543145,"avg_comments_per_pull_request":1.4920760697305864,"merged_pull_requests_count":975,"bot_issues_count":0,"bot_pull_requests_count":62,"past_year_issues_count":171,"past_year_pull_requests_count":778,"past_year_avg_time_to_close_issue":2166716.7391304346,"past_year_avg_time_to_close_pull_request":551508.2610687023,"past_year_issues_closed_count":69,"past_year_pull_requests_closed_count":655,"past_year_pull_request_authors_count":17,"past_year_issue_authors_count":29,"past_year_avg_comments_per_issue":1.1169590643274854,"past_year_avg_comments_per_pull_request":1.345758354755784,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":31,"past_year_merged_pull_requests_count":576,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/issues","maintainers":[{"login":"benhoyt","count":174,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":59,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"jameinel","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"},{"login":"tmihoc","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"jnsgruk","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jnsgruk"},{"login":"niemeyer","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niemeyer"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"delgod","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/delgod"},{"login":"SimonRichardson","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonRichardson"}],"active_maintainers":[{"login":"benhoyt","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":57,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"tmihoc","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"jameinel","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-tracing/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-tracing/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-tracing/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops-tracing/related_packages","maintainers":[{"uuid":"dimaqq","login":"dimaqq","name":null,"email":null,"url":null,"packages_count":14,"html_url":"https://pypi.org/user/dimaqq/","role":"Owner","created_at":"2025-03-12T13:02:23.244Z","updated_at":"2025-03-12T13:02:23.244Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/dimaqq/packages"},{"uuid":"tonyandrewmeyer","login":"tonyandrewmeyer","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/tonyandrewmeyer/","role":null,"created_at":"2025-03-14T02:02:56.464Z","updated_at":"2025-03-14T02:02:56.464Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/tonyandrewmeyer/packages"},{"uuid":"benhoyt","login":"benhoyt","name":null,"email":null,"url":null,"packages_count":11,"html_url":"https://pypi.org/user/benhoyt/","role":null,"created_at":"2025-03-14T02:02:56.368Z","updated_at":"2025-03-14T02:02:56.368Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/benhoyt/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726136,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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":2841286,"name":"ops","ecosystem":"pypi","description":"The Python library behind great charms","homepage":"https://documentation.ubuntu.com/ops/latest/","licenses":"apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/canonical/operator","keywords_array":[],"namespace":null,"versions_count":67,"first_release_published_at":"2010-12-18T19:05:29.000Z","latest_release_published_at":"2025-08-27T22:58:33.000Z","latest_release_number":"3.2.0","last_synced_at":"2025-09-05T11:48:25.445Z","created_at":"2022-04-10T11:57:39.000Z","updated_at":"2025-09-06T05:17:36.075Z","registry_url":"https://pypi.org/project/ops/","install_command":"pip install ops --index-url https://pypi.org/simple","documentation_url":"https://documentation.ubuntu.com/ops/latest/","metadata":{"funding":null,"documentation":"https://documentation.ubuntu.com/ops/latest/","classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","Intended Audience :: System Administrators","Operating System :: MacOS :: MacOS X","Operating System :: POSIX :: Linux","Programming Language :: Python :: 3"],"normalized_name":"ops","project_status":null},"repo_metadata":{"id":37458190,"uuid":"212098176","full_name":"canonical/operator","owner":"canonical","description":"Pure Python framework for writing Juju charms","archived":false,"fork":false,"pushed_at":"2025-09-05T09:59:46.000Z","size":6453,"stargazers_count":253,"open_issues_count":81,"forks_count":125,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-09-05T11:31:04.818Z","etag":null,"topics":["charms","juju","python"],"latest_commit_sha":null,"homepage":"https://documentation.ubuntu.com/ops","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/canonical.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-01T13:06:11.000Z","updated_at":"2025-09-04T00:40:28.000Z","dependencies_parsed_at":"2023-10-11T02:50:47.283Z","dependency_job_id":"e00155ad-4dff-4056-bdab-6a81c4c1da97","html_url":"https://github.com/canonical/operator","commit_stats":{"total_commits":517,"total_committers":68,"mean_commits":7.602941176470588,"dds":0.8375241779497099,"last_synced_commit":"790473901224e99ef0e66087f12e6b662c144a69"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/canonical/operator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","download_url":"https://codeload.github.com/canonical/operator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/sbom","scorecard":{"id":264626,"data":{"date":"2025-08-11","repo":{"name":"github.com/canonical/operator","commit":"59856580d90a8f2b705d19ecd755b12d0badda06"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":8.2,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 11 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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/publish.yaml:17","Info: found token with 'none' permissions: .github/workflows/charmcraft-pack.yaml:1","Info: found token with 'none' permissions: .github/workflows/db-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/example-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/framework-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/hello-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/integration.yaml:1","Info: found token with 'none' permissions: .github/workflows/observability-charm-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/publish.yaml:1","Info: found token with 'none' permissions: .github/workflows/published-charms-tests.yaml:1","Info: found token with 'none' permissions: .github/workflows/sbom-secscan.yaml:1","Info: found token with 'none' permissions: .github/workflows/smoke.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/test-publish.yaml:8","Info: found token with 'none' permissions: .github/workflows/tiobe.yaml:1","Info: found token with 'none' permissions: .github/workflows/update-charm-tests.yaml:1","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/validate-pr-title.yaml:10","Info: found token with 'none' permissions: .github/workflows/zizmor.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/charmcraft-pack.yaml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/charmcraft-pack.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/db-charm-tests.yaml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/db-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/example-charm-tests.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/example-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/framework-tests.yaml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/framework-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hello-charm-tests.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/hello-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/integration.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/observability-charm-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/observability-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/published-charms-tests.yaml:68: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/published-charms-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/sbom-secscan.yaml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/sbom-secscan.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/smoke.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/smoke.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test-publish.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/test-publish.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tiobe.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/tiobe.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-charm-tests.yaml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/update-charm-tests.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/zizmor.yaml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/canonical/operator/zizmor.yaml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:43","Warn: pipCommand not pinned by hash: .github/workflows/db-charm-tests.yaml:56","Warn: pipCommand not pinned by hash: .github/workflows/example-charm-tests.yaml:38","Warn: goCommand not pinned by hash: .github/workflows/framework-tests.yaml:92","Warn: pipCommand not pinned by hash: .github/workflows/framework-tests.yaml:123","Warn: pipCommand not pinned by hash: .github/workflows/hello-charm-tests.yaml:44","Warn: pipCommand not pinned by hash: .github/workflows/observability-charm-tests.yaml:37","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:75","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:110","Warn: pipCommand not pinned by hash: .github/workflows/published-charms-tests.yaml:159","Warn: pipCommand not pinned by hash: .github/workflows/tiobe.yaml:28","Info:   0 out of  29 GitHub-owned GitHubAction dependencies pinned","Info:  15 out of  17 third-party GitHubAction dependencies pinned","Info:   0 out of  10 pipCommand dependencies pinned","Info:   0 out of   1 goCommand 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":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish.yaml:11"],"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":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'allow deletion' disabled on branch '2.23-maintenance'","Info: 'allow deletion' disabled on branch '2.19-maintenance'","Info: 'allow deletion' disabled on branch '2.16-maintenance'","Info: 'force pushes' disabled on branch 'main'","Info: 'force pushes' disabled on branch '2.23-maintenance'","Info: 'force pushes' disabled on branch '2.19-maintenance'","Info: 'force pushes' disabled on branch '2.16-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.23-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.19-maintenance'","Warn: 'branch protection settings apply to administrators' is disabled on branch '2.16-maintenance'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch '2.23-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.19-maintenance'","Warn: 'stale review dismissal' is disabled on branch '2.16-maintenance'","Info: required approving review count is 2 on branch 'main'","Info: required approving review count is 2 on branch '2.23-maintenance'","Info: required approving review count is 2 on branch '2.19-maintenance'","Info: required approving review count is 2 on branch '2.16-maintenance'","Warn: codeowners review is not required on branch 'main'","Warn: codeowners review is not required on branch '2.23-maintenance'","Warn: codeowners review is not required on branch '2.19-maintenance'","Warn: codeowners review is not required on branch '2.16-maintenance'","Warn: 'last push approval' is disabled on branch 'main'","Warn: 'last push approval' is disabled on branch '2.23-maintenance'","Warn: 'last push approval' is disabled on branch '2.19-maintenance'","Warn: 'last push approval' is disabled on branch '2.16-maintenance'","Warn: 'up-to-date branches' is disabled on branch 'main'","Info: status check found to merge onto on branch 'main'","Warn: no status checks found to merge onto branch '2.23-maintenance'","Warn: no status checks found to merge onto branch '2.19-maintenance'","Warn: no status checks found to merge onto branch '2.16-maintenance'","Info: PRs are required in order to make changes on branch 'main'","Info: PRs are required in order to make changes on branch '2.23-maintenance'","Info: PRs are required in order to make changes on branch '2.19-maintenance'","Info: PRs are required in order to make changes on branch '2.16-maintenance'"],"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":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (30) 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-17T11:40:05.394Z","repository_id":37458190,"created_at":"2025-08-17T11:40:05.394Z","updated_at":"2025-08-17T11:40:05.394Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273858876,"owners_count":25180772,"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-09-06T02:00:13.247Z","response_time":2576,"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":"canonical","name":"Canonical","uuid":"53057619","kind":"organization","description":"","email":null,"website":"https://canonical.com","location":"London, UK","twitter":"Canonical","company":null,"icon_url":"https://avatars.githubusercontent.com/u/53057619?v=4","repositories_count":1802,"last_synced_at":"2025-05-25T12:10:16.367Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/canonical","funding_links":[],"total_stars":49667,"followers":2603,"following":0,"created_at":"2022-11-02T16:31:02.954Z","updated_at":"2025-05-25T12:10:16.368Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/canonical/repositories"},"tags":[{"name":"3.2.0","sha":"77976ac5b6ec49844deff646cf51697835204acf","kind":"commit","published_at":"2025-08-27T22:24:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.2.0","html_url":"https://github.com/canonical/operator/releases/tag/3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.2.0/manifests"},{"name":"2.23.1","sha":"df1209ddf17eef31634f8f529efe39bd768f3145","kind":"commit","published_at":"2025-07-30T06:25:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.1/manifests"},{"name":"3.1.0","sha":"c12daf3cbafd74e169715f33ed6452ce9c805cc3","kind":"commit","published_at":"2025-07-30T02:18:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.1.0","html_url":"https://github.com/canonical/operator/releases/tag/3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.1.0/manifests"},{"name":"3.0.0","sha":"5e0d22b003ce42b32db66aa707b28f58da3d28d2","kind":"commit","published_at":"2025-07-02T10:39:18.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/3.0.0","html_url":"https://github.com/canonical/operator/releases/tag/3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/3.0.0/manifests"},{"name":"2.23.0.post1","sha":"af8c84a58f7f142171c71c425675ddd388f061bd","kind":"commit","published_at":"2025-06-30T08:32:02.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0.post1","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0.post1/manifests"},{"name":"2.23.0","sha":"ec2dc3f7a650c9aecb41c28cab2423a9ad601979","kind":"commit","published_at":"2025-06-30T07:29:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.23.0","html_url":"https://github.com/canonical/operator/releases/tag/2.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.23.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.23.0/manifests"},{"name":"2.22.0","sha":"e72e9b858be26bf96223354af697b2bc2843b1e2","kind":"commit","published_at":"2025-05-29T04:10:17.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.22.0","html_url":"https://github.com/canonical/operator/releases/tag/2.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.22.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.22.0/manifests"},{"name":"2.21.1","sha":"8e4877fb2424d0dfe1c701d5f22f5f6f5cf673ce","kind":"commit","published_at":"2025-05-01T02:51:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.1","html_url":"https://github.com/canonical/operator/releases/tag/2.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.1/manifests"},{"name":"2.21.0","sha":"9ab739ec1f64664b44efb17b7ef7738c06484150","kind":"commit","published_at":"2025-04-30T03:50:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.21.0","html_url":"https://github.com/canonical/operator/releases/tag/2.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.21.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.21.0/manifests"},{"name":"scenario-7.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.20.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.20.0/manifests"},{"name":"2.20.0","sha":"150071946e50ea5557cb3d0d6a9676ff1bc75a5c","kind":"commit","published_at":"2025-03-31T20:32:31.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.20.0","html_url":"https://github.com/canonical/operator/releases/tag/2.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.20.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.20.0/manifests"},{"name":"scenario-7.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.4","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.4/manifests"},{"name":"2.19.4","sha":"c80f51aa95188101c49680ef66cc5c74036afe63","kind":"commit","published_at":"2025-03-11T01:28:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.4","html_url":"https://github.com/canonical/operator/releases/tag/2.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.4/manifests"},{"name":"2.19.3","sha":"43d57a50cdd082ea3586381abb08ba8f7de85ec9","kind":"commit","published_at":"2025-03-10T22:18:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.3","html_url":"https://github.com/canonical/operator/releases/tag/2.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.3/manifests"},{"name":"2.19.1","sha":"f65c8a4b928110cc9374ea8663367783be8a3bb8","kind":"commit","published_at":"2025-03-09T22:48:26.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.1","html_url":"https://github.com/canonical/operator/releases/tag/2.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.1/manifests"},{"name":"2.19.2","sha":"897224d679c67d28ac174ab3acd3c0b00cf17d0f","kind":"commit","published_at":"2025-03-06T04:07:05.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.2","html_url":"https://github.com/canonical/operator/releases/tag/2.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.2/manifests"},{"name":"scenario-7.2.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.2.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.2.0/manifests"},{"name":"scenario-7.19.1","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.19.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.19.1/manifests"},{"name":"2.19.0","sha":"842c74f4dfee29c03168b54dba1316040fc3f8d7","kind":"commit","published_at":"2025-02-27T03:32:12.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.19.0","html_url":"https://github.com/canonical/operator/releases/tag/2.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.19.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.19.0/manifests"},{"name":"scenario-7.1.3","sha":"71227208cc1f8d480e2be2dbbc0ed6748f94c452","kind":"commit","published_at":"2025-02-13T02:45:57.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.3","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.3/manifests"},{"name":"scenario-7.1.2","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.2","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.2/manifests"},{"name":"2.18.1","sha":"e311ea3107da557267143f1948aa66dcbe01aae9","kind":"commit","published_at":"2025-02-05T03:44:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.1","html_url":"https://github.com/canonical/operator/releases/tag/2.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.1/manifests"},{"name":"scenario-7.1.1","sha":"4911b0641b2c12580f97c22362cc0683dfd9f8a0","kind":"commit","published_at":"2025-01-30T21:54:22.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.1","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.1/manifests"},{"name":"scenario-7.1.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/scenario-7.1.0","html_url":"https://github.com/canonical/operator/releases/tag/scenario-7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@scenario-7.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/scenario-7.1.0/manifests"},{"name":"2.18.0","sha":"5b13670a92e7ef59cea57e1699763642c18ebe7c","kind":"commit","published_at":"2025-01-30T04:58:07.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.18.0","html_url":"https://github.com/canonical/operator/releases/tag/2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.18.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.18.0/manifests"},{"name":"2.17.1","sha":"e573f8f39c6b11470dcae3ac94ad798e4655ee91","kind":"commit","published_at":"2024-11-28T06:17:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.1","html_url":"https://github.com/canonical/operator/releases/tag/2.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.1/manifests"},{"name":"2.17.0","sha":"05af34fe622b4e54586dbb32f9c3207d7f6d3eb8","kind":"commit","published_at":"2024-09-26T05:11:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.17.0","html_url":"https://github.com/canonical/operator/releases/tag/2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.17.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.17.0/manifests"},{"name":"2.16.1","sha":"1719d1ea2f7faafdd137eed253fb1d2353cc30be","kind":"commit","published_at":"2024-09-05T06:11:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.1","html_url":"https://github.com/canonical/operator/releases/tag/2.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.1/manifests"},{"name":"2.16.0","sha":"a5744561d360c4577412a3a4f0619543bb2b2f70","kind":"commit","published_at":"2024-08-29T06:13:49.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.16.0","html_url":"https://github.com/canonical/operator/releases/tag/2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.16.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.16.0/manifests"},{"name":"2.15.0","sha":"d46f7e960e79acc478a6e6741e4f307013b9e89b","kind":"commit","published_at":"2024-07-22T04:26:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.15.0","html_url":"https://github.com/canonical/operator/releases/tag/2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.15.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.15.0/manifests"},{"name":"2.14.1","sha":"5cc221659146d8da355218a3f3992e7941014f91","kind":"commit","published_at":"2024-06-27T03:39:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.1","html_url":"https://github.com/canonical/operator/releases/tag/2.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.1/manifests"},{"name":"2.14.0","sha":"6197de962f9a64b00f06c4a647a558bc573275d2","kind":"commit","published_at":"2024-05-29T02:38:50.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.14.0","html_url":"https://github.com/canonical/operator/releases/tag/2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.14.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.14.0/manifests"},{"name":"2.13.0","sha":"6cbc264a3bba177a34d93e8422e7f9c0807a0961","kind":"commit","published_at":"2024-05-01T07:04:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.13.0","html_url":"https://github.com/canonical/operator/releases/tag/2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.13.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.13.0/manifests"},{"name":"2.12.0","sha":"2da708a20b45e6335a98ee1bd01522d617845710","kind":"commit","published_at":"2024-03-28T05:32:01.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.12.0","html_url":"https://github.com/canonical/operator/releases/tag/2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.12.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.12.0/manifests"},{"name":"2.11.0","sha":"b601088c976f043e292e64dfbf57243f89c4e6b6","kind":"commit","published_at":"2024-02-29T04:29:44.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.11.0","html_url":"https://github.com/canonical/operator/releases/tag/2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.11.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.11.0/manifests"},{"name":"2.10.0","sha":"3dd462122463bb0f5290e45167185c1e4a54c829","kind":"commit","published_at":"2024-01-31T01:52:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.10.0","html_url":"https://github.com/canonical/operator/releases/tag/2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.10.0/manifests"},{"name":"2.9.0","sha":"18abc170a8179212596be2655b5b49078562bc71","kind":"commit","published_at":"2023-11-29T03:26:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.9.0","html_url":"https://github.com/canonical/operator/releases/tag/2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.9.0/manifests"},{"name":"2.8.0","sha":"790473901224e99ef0e66087f12e6b662c144a69","kind":"commit","published_at":"2023-10-20T04:51:40.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.8.0","html_url":"https://github.com/canonical/operator/releases/tag/2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.8.0/manifests"},{"name":"2.7.0","sha":"a59f50f448943ee64c27f71d6a5739d8f7c21c20","kind":"commit","published_at":"2023-09-28T03:05:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.7.0","html_url":"https://github.com/canonical/operator/releases/tag/2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.7.0/manifests"},{"name":"2.6.0","sha":"c4e3266a6568ba310064ca8b9bff7adb89676224","kind":"commit","published_at":"2023-08-30T19:55:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.6.0","html_url":"https://github.com/canonical/operator/releases/tag/2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.6.0/manifests"},{"name":"2.5.1","sha":"6fd66cc58676d4564d4625891e08145a5db8c71e","kind":"commit","published_at":"2023-08-16T05:43:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.1","html_url":"https://github.com/canonical/operator/releases/tag/2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.1/manifests"},{"name":"2.5.0","sha":"ca048720d21329af0953a93f5794bcf8ed4f3db9","kind":"commit","published_at":"2023-07-31T21:49:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.5.0","html_url":"https://github.com/canonical/operator/releases/tag/2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.5.0/manifests"},{"name":"2.4.1","sha":"eb5795827647390304b6a0c284897c100b1a350d","kind":"commit","published_at":"2023-07-04T04:51:47.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.1","html_url":"https://github.com/canonical/operator/releases/tag/2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.1/manifests"},{"name":"2.4.0","sha":"384ef3adbdc811ccb0a06bfabb40b01e0bce640b","kind":"commit","published_at":"2023-07-04T03:32:48.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.4.0","html_url":"https://github.com/canonical/operator/releases/tag/2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.4.0/manifests"},{"name":"2.3.0","sha":"b06697c7c769662e56f6b5a06964304921ebbc0d","kind":"commit","published_at":"2023-05-28T22:39:19.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.3.0","html_url":"https://github.com/canonical/operator/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.3.0/manifests"},{"name":"1.5.5","sha":"5bbc50faa49114cc6c4e0ae2b4b93351c33b6bbd","kind":"commit","published_at":"2023-04-25T10:18:58.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.5","html_url":"https://github.com/canonical/operator/releases/tag/1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.5/manifests"},{"name":"2.2.0","sha":"a8717eadfbf97f001f9b1e06214fa19aa5df6204","kind":"commit","published_at":"2023-03-27T21:13:38.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.2.0","html_url":"https://github.com/canonical/operator/releases/tag/2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.2.0/manifests"},{"name":"2.1.1","sha":"530b55a67f45778d64fadad825de7cba729d67f6","kind":"commit","published_at":"2023-03-01T02:08:52.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.1","html_url":"https://github.com/canonical/operator/releases/tag/2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.1/manifests"},{"name":"2.1.0","sha":"34e5dfb08251295c96cbfd3976c78b41c991b4ec","kind":"commit","published_at":"2023-02-24T01:03:53.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.1.0","html_url":"https://github.com/canonical/operator/releases/tag/2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.1.0/manifests"},{"name":"2.0.0rc2","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0rc2","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0rc2/manifests"},{"name":"2.0.0","sha":"b5cde989deb7217c50315191e18fe6dec33eddb4","kind":"commit","published_at":"2023-01-12T04:11:06.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/2.0.0","html_url":"https://github.com/canonical/operator/releases/tag/2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/2.0.0/manifests"},{"name":"1.5.4","sha":"28251faf41868017aec5add2b59a80719f5354db","kind":"commit","published_at":"2022-11-27T21:18:24.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.4","html_url":"https://github.com/canonical/operator/releases/tag/1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.4/manifests"},{"name":"1.5.3","sha":"7b869578342ae9437d2d6abf76b43a1108791f55","kind":"commit","published_at":"2022-10-04T12:26:27.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.3","html_url":"https://github.com/canonical/operator/releases/tag/1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.3/manifests"},{"name":"1.5.2","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.2","html_url":"https://github.com/canonical/operator/releases/tag/1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.2/manifests"},{"name":"1.5.1","sha":"ac4dff656fbe980b8fcb2873dbf41a31d9441386","kind":"commit","published_at":"2022-08-18T06:24:51.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.1","html_url":"https://github.com/canonical/operator/releases/tag/1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.1/manifests"},{"name":"1.5.0","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5.0","html_url":"https://github.com/canonical/operator/releases/tag/1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5.0/manifests"},{"name":"1.5beta1","sha":"967d1ed8698d4856297e1ea8779e7ea00b46e3e0","kind":"commit","published_at":"2022-05-26T07:35:03.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.5beta1","html_url":"https://github.com/canonical/operator/releases/tag/1.5beta1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.5beta1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.5beta1/manifests"},{"name":"1.4.0","sha":"ff30d2f4bf0d8e2f24cd11d99e3de67d8e81e3b0","kind":"commit","published_at":"2022-03-25T19:01:21.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.4.0","html_url":"https://github.com/canonical/operator/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.4.0/manifests"},{"name":"1.3.0","sha":"be8c975bb5018183d3be6015c7dc05ffe9888dfa","kind":"commit","published_at":"2021-12-15T14:14:09.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.3.0","html_url":"https://github.com/canonical/operator/releases/tag/1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.3.0/manifests"},{"name":"1.2.0","sha":"2f0d37113c83b0807ecd1ff5b28e4b3768277ece","kind":"commit","published_at":"2021-04-21T14:47:11.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.2.0","html_url":"https://github.com/canonical/operator/releases/tag/1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.2.0/manifests"},{"name":"1.1.0","sha":"aa53969ca44073d42d85732ebe0bacf8df646efe","kind":"tag","published_at":"2020-11-30T15:51:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.1.0","html_url":"https://github.com/canonical/operator/releases/tag/1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.1.0/manifests"},{"name":"1.0.1","sha":"8850500c345c7b945836fa3421ea22b053e942ae","kind":"tag","published_at":"2020-11-05T23:21:43.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.1","html_url":"https://github.com/canonical/operator/releases/tag/1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.1/manifests"},{"name":"1.0.0","sha":"c36a30db63725413d95b7403415325f11fcba0a7","kind":"tag","published_at":"2020-10-30T17:23:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/1.0.0","html_url":"https://github.com/canonical/operator/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/1.0.0/manifests"},{"name":"0.10.0","sha":"45816c3b01ba088cdc8832e2bdc5a88ee77229a9","kind":"tag","published_at":"2020-09-29T10:55:42.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.10.0","html_url":"https://github.com/canonical/operator/releases/tag/0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.10.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.10.0/manifests"},{"name":"0.9.0","sha":"cb863a878307b6fabfb96c5ee8a342c38d415234","kind":"tag","published_at":"2020-09-02T08:09:14.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.9.0","html_url":"https://github.com/canonical/operator/releases/tag/0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.9.0/manifests"},{"name":"0.8.0","sha":"16bd1d4e687861e1101ec768bf4682889d0c3f32","kind":"tag","published_at":"2020-08-06T18:30:28.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.8.0","html_url":"https://github.com/canonical/operator/releases/tag/0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.8.0/manifests"},{"name":"0.7.0","sha":"e5dd3074f01bd2aaf33d78af66478fc3cf441ea2","kind":"tag","published_at":"2020-06-30T21:39:32.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.7.0","html_url":"https://github.com/canonical/operator/releases/tag/0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.7.0/manifests"},{"name":"0.6.1","sha":"beca3da58af1485fc1143839ef2caed9fb4afbdb","kind":"commit","published_at":"2020-06-01T21:43:36.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.1","html_url":"https://github.com/canonical/operator/releases/tag/0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.1/manifests"},{"name":"0.6.0","sha":"81e5f36571bab0efe315254f60d5a5fcf2693c8e","kind":"commit","published_at":"2020-05-29T15:03:45.000Z","download_url":"https://codeload.github.com/canonical/operator/tar.gz/0.6.0","html_url":"https://github.com/canonical/operator/releases/tag/0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/canonical/operator@0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/tags/0.6.0/manifests"}]},"repo_metadata_updated_at":"2025-09-06T05:17:36.075Z","dependent_packages_count":8,"downloads":276086,"downloads_period":"last-month","dependent_repos_count":478,"rankings":{"downloads":1.3831619703817748,"dependent_repos_count":0.6514713840384747,"dependent_packages_count":1.2490873007551335,"stargazers_count":4.44120942356501,"forks_count":4.406448256344679,"docker_downloads_count":1.5921892029907854,"average":2.2872612563459764},"purl":"pkg:pypi/ops","advisories":[{"uuid":"GSA_kwCzR0hTQS1oY212LWptcWgtZmpnbc4AA-FN","url":"https://github.com/advisories/GHSA-hcmv-jmqh-fjgm","title":"ops leaking secrets if `subprocess.CalledProcessError` happens with a `secret-*` CLI command","description":"### Summary\n\nThe issue here is that we pass the secret content as one of the args via CLI. This issue may affect any of our charms that are using: Juju (\u003e=3.0), Juju secrets and not correctly capturing and processing `subprocess.CalledProcessError`.\n\nThere are two points that may log this command, in different files:\n\nFirst, if there is an error during a secret handling, there will be a `subprocess.CalledProcessError`, which will contain the CLI comand + all its args. This is going to be logged in any logging level. This exception, if not caught by the charm, will bubble up to the `/var/log/juju/` logs and syslog journal. Now, on Ubuntu 22.04, these logs are protected with:\n```\n$ juju ssh -m controller 0 -- ls -la /var/log/juju/\ntotal 224\ndrwxr-xr-x 2 syslog adm      4096 Jul 14 10:59 .\ndrwxrwxr-x 9 root   syslog   4096 Jul 14 10:58 ..\n-rw-r----- 1 syslog adm     20124 Jul 14 11:10 audit.log\n-rw-r----- 1 syslog adm    110432 Jul 14 11:10 logsink.log\n-rw-r----- 1 syslog adm     80783 Jul 14 11:06 machine-0.log\n-rw-r----- 1 syslog adm       766 Jul 14 11:10 machine-lock.log\n-rw-r--r-- 1 root   root        0 Jul 14 10:59 slow-query.log\n-rw-r----- 1 syslog adm      3732 Jul 14 11:10 unit-controller-0.log\n```\n\nSecond, certain audit setups may log terminal commands, which would result in this command being logged with its secrets. It is unknown if this is done on ubuntu security benchmarks, such as CIS hardening.\n\nKeep in mind these logs may be copied or even backed up. Which exposes it to more services in the user's environment (e.g. CI runs in GH - although these are dummy password generated per test only).\n\nPassing secrets straight via CLI is not advised. Here are some ways out:\n1) Redacting: which commands and which args represent secrets are known, so they can be redacted. It would also mean capturing a `subprocess.CalledProcessError`, redacting its content and reissuing the same type of exception; this will not cover the case `auditd` is set to log CLI commands, if that is a risk\n2) Temp files: secret-add, for example, can use a secret file instead, [as can be seen here](https://github.com/juju/juju/blob/20b7d944acc985ce91419728529d5fb2abd14d68/cmd/juju/secrets/add.go#L62). However, if ops uses a file, ops will need to be sure to correctly remove it later\n3) stdin: not sure it is accepted by secret-* commands, but generally, secrets are not shown on CLI whilst typing them; auditd may not capture that stdin\n\n### Severity Rationale\n\nThis is a [CWE-532](https://cwe.mitre.org/data/definitions/532.html). Potentially, these secrets can lead to privilege escalation but Ubuntu default is to have logs only accessible to `adm` group users.\n\nMarking this issue as \"Moderate\", as this report is not presenting a clear way on how to get access to the logs themselves: either getting local access to an `adm` group user (e.g. ubuntu) or recovering logs stored on a 3rd party service.\n\n### Details\n```\n2024-07-12T14:27:58.0175389Z unit-opensearch-3: 14:27:53 ERROR unit.opensearch/3.juju-log certificates:11: Uncaught exception while in charm code:\n2024-07-12T14:27:58.0175524Z Traceback (most recent call last):\n2024-07-12T14:27:58.0175957Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/model.py\", line 3180, in _run\n2024-07-12T14:27:58.0176165Z     result = subprocess.run(args, **kwargs)  # type: ignore\n2024-07-12T14:27:58.0176381Z   File \"/usr/lib/python3.10/subprocess.py\", line 526, in run\n2024-07-12T14:27:58.0176561Z     raise CalledProcessError(retcode, process.args,\n2024-07-12T14:27:58.0177749Z subprocess.CalledProcessError: Command '('/var/lib/juju/tools/unit-opensearch-3/secret-add', '--label', 'opensearch:app:app-admin', '--owner', 'application', 'keystore-password-ca=aUE...')' returned non-zero exit status 1.\n2024-07-12T14:27:58.0177765Z\n2024-07-12T14:27:58.0178023Z The above exception was the direct cause of the following exception:\n2024-07-12T14:27:58.0178038Z\n2024-07-12T14:27:58.0178168Z Traceback (most recent call last):\n2024-07-12T14:27:58.0178588Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/./src/charm.py\", line 213, in \u003cmodule\u003e\n2024-07-12T14:27:58.0178724Z     main(OpenSearchOperatorCharm)\n2024-07-12T14:27:58.0179129Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/main.py\", line 548, in main\n2024-07-12T14:27:58.0179237Z     manager.run()\n2024-07-12T14:27:58.0179640Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/main.py\", line 527, in run\n2024-07-12T14:27:58.0179745Z     self._emit()\n2024-07-12T14:27:58.0180150Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/main.py\", line 516, in _emit\n2024-07-12T14:27:58.0180359Z     _emit_charm_event(self.charm, self.dispatcher.event_name)\n2024-07-12T14:27:58.0180840Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/main.py\", line 147, in _emit_charm_event\n2024-07-12T14:27:58.0180974Z     event_to_emit.emit(*args, **kwargs)\n2024-07-12T14:27:58.0181537Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 348, in emit\n2024-07-12T14:27:58.0181656Z     framework._emit(event)\n2024-07-12T14:27:58.0182091Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 860, in _emit\n2024-07-12T14:27:58.0182211Z     self._reemit(event_path)\n2024-07-12T14:27:58.0182659Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 950, in _reemit\n2024-07-12T14:27:58.0182770Z     custom_handler(event)\n2024-07-12T14:27:58.0183492Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/tls_certificates_interface/v3/tls_certificates.py\", line 1811, in _on_relation_changed\n2024-07-12T14:27:58.0183743Z     self.on.certificate_available.emit(\n2024-07-12T14:27:58.0184173Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 348, in emit\n2024-07-12T14:27:58.0184291Z     framework._emit(event)\n2024-07-12T14:27:58.0184717Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 860, in _emit\n2024-07-12T14:27:58.0184887Z     self._reemit(event_path)\n2024-07-12T14:27:58.0186171Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/framework.py\", line 950, in _reemit\n2024-07-12T14:27:58.0186306Z     custom_handler(event)\n2024-07-12T14:27:58.0187043Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_tls.py\", line 209, in _on_certificate_available\n2024-07-12T14:27:58.0187320Z     self.store_new_ca(self.charm.secrets.get_object(scope, cert_type.val))\n2024-07-12T14:27:58.0187942Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_tls.py\", line 444, in store_new_ca\n2024-07-12T14:27:58.0188242Z     self._create_keystore_pwd_if_not_exists(Scope.APP, CertType.APP_ADMIN, \"ca\")\n2024-07-12T14:27:58.0188981Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_tls.py\", line 432, in _create_keystore_pwd_if_not_exists\n2024-07-12T14:27:58.0189119Z     self.charm.secrets.put_object(\n2024-07-12T14:27:58.0189738Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_secrets.py\", line 359, in put_object\n2024-07-12T14:27:58.0189944Z     self._add_or_update_juju_secret(scope, key, value, merge)\n2024-07-12T14:27:58.0190652Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_secrets.py\", line 272, in _add_or_update_juju_secret\n2024-07-12T14:27:58.0190815Z     return self._add_juju_secret(scope, key, value)\n2024-07-12T14:27:58.0191462Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/lib/charms/opensearch/v0/opensearch_secrets.py\", line 228, in _add_juju_secret\n2024-07-12T14:27:58.0191660Z     secret = scope_obj.add_secret(safe_value, label=label)\n2024-07-12T14:27:58.0192110Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/model.py\", line 477, in add_secret\n2024-07-12T14:27:58.0192241Z     id = self._backend.secret_add(\n2024-07-12T14:27:58.0192686Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/model.py\", line 3624, in secret_add\n2024-07-12T14:27:58.0192948Z     result = self._run('secret-add', *args, return_output=True)\n2024-07-12T14:27:58.0193356Z   File \"/var/lib/juju/agents/unit-opensearch-3/charm/venv/ops/model.py\", line 3182, in _run\n2024-07-12T14:27:58.0193489Z     raise ModelError(e.stderr) from e\n2024-07-12T14:27:58.0193685Z ops.model.ModelError: ERROR this unit is not the leader\n2024-07-12T14:27:58.0193692Z\n```\n\nFrom CI: https://github.com/canonical/opensearch-operator/actions/runs/9908987369/job/27376377521?pr=364\n\n### PoC\n1) Deploy anything with juju\n2) Run a dummy secret-add call that will fail\n3) See the uncaught subprocess error\n\n### Impact\nJuju secrets are generally composed of private keys, passwords, etc; generally valuable credentials that, if leaked, will likely allow an attacker to get privileged access to its target or other targets in the environment.\n","origin":"UNSPECIFIED","severity":"MODERATE","published_at":"2024-07-22T17:40:40.000Z","withdrawn_at":null,"classification":"GENERAL","cvss_score":6.9,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","references":["https://github.com/canonical/operator/security/advisories/GHSA-hcmv-jmqh-fjgm","https://nvd.nist.gov/vuln/detail/CVE-2024-41129","https://github.com/canonical/operator/commit/fea6d2072435a62170d4c01272572f1a7e916e61","https://github.com/advisories/GHSA-hcmv-jmqh-fjgm"],"source_kind":"github","identifiers":["GHSA-hcmv-jmqh-fjgm","CVE-2024-41129"],"repository_url":"https://github.com/canonical/operator","blast_radius":18.48805248662362,"packages":[{"versions":[{"first_patched_version":"2.15.0","vulnerable_version_range":"\u003e= 2.0.0, \u003c 2.15.0"}],"ecosystem":"pypi","package_name":"ops"}],"created_at":"2024-07-22T18:05:40.545Z","updated_at":"2025-04-08T01:09:56.989Z","epss_percentage":0.00048,"epss_percentile":0.11868}],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/ops","docker_dependents_count":1,"docker_downloads_count":4331,"usage_url":"https://repos.ecosyste.ms/usage/pypi/ops","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/ops/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-05T10:59:33.432Z","issues_count":394,"pull_requests_count":1262,"avg_time_to_close_issue":19478224.44890511,"avg_time_to_close_pull_request":643925.9215686275,"issues_closed_count":274,"pull_requests_closed_count":1122,"pull_request_authors_count":40,"issue_authors_count":81,"avg_comments_per_issue":2.9213197969543145,"avg_comments_per_pull_request":1.4920760697305864,"merged_pull_requests_count":975,"bot_issues_count":0,"bot_pull_requests_count":62,"past_year_issues_count":171,"past_year_pull_requests_count":778,"past_year_avg_time_to_close_issue":2166716.7391304346,"past_year_avg_time_to_close_pull_request":551508.2610687023,"past_year_issues_closed_count":69,"past_year_pull_requests_closed_count":655,"past_year_pull_request_authors_count":17,"past_year_issue_authors_count":29,"past_year_avg_comments_per_issue":1.1169590643274854,"past_year_avg_comments_per_pull_request":1.345758354755784,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":31,"past_year_merged_pull_requests_count":576,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/issues","maintainers":[{"login":"benhoyt","count":174,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":59,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"jameinel","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"},{"login":"tmihoc","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"jnsgruk","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jnsgruk"},{"login":"niemeyer","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niemeyer"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"delgod","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/delgod"},{"login":"SimonRichardson","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonRichardson"}],"active_maintainers":[{"login":"benhoyt","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":57,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"tmihoc","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"jameinel","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/ops/related_packages","maintainers":[{"uuid":"tonyandrewmeyer","login":"tonyandrewmeyer","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/tonyandrewmeyer/","role":null,"created_at":"2023-11-11T23:11:51.368Z","updated_at":"2023-11-11T23:11:51.368Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/tonyandrewmeyer/packages"},{"uuid":"jameinel","login":"jameinel","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/jameinel/","role":null,"created_at":"2022-12-07T08:41:57.448Z","updated_at":"2022-12-07T08:41:57.448Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jameinel/packages"},{"uuid":"benhoyt","login":"benhoyt","name":null,"email":null,"url":null,"packages_count":11,"html_url":"https://pypi.org/user/benhoyt/","role":null,"created_at":"2022-12-07T08:41:57.442Z","updated_at":"2022-12-07T08:41:57.442Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/benhoyt/packages"},{"uuid":"jnsgruk","login":"jnsgruk","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/jnsgruk/","role":null,"created_at":"2022-12-07T08:41:57.457Z","updated_at":"2022-12-07T08:41:57.457Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jnsgruk/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726136,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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"}}],"commits":{"id":623403,"full_name":"canonical/operator","default_branch":"main","committers":[{"name":"Pietro Pasotti","email":"starfire.daemon@gmail.com","login":"PietroPasotti","count":444},{"name":"Tony Meyer","email":"tony.meyer@canonical.com","login":"tonyandrewmeyer","count":293},{"name":"Ben Hoyt","email":"ben.hoyt@canonical.com","login":"benhoyt","count":129},{"name":"Tiexin Guo","email":"tiexin.guo@canonical.com","login":"IronCore864","count":75},{"name":"chipaca","email":"chipaca","login":"chipaca","count":70},{"name":"Dima Tisnek","email":"dima.tisnek@canonical.com","login":"dimaqq","count":50},{"name":"John Arbash Meinel","email":"john@arbash-meinel.com","login":"jameinel","count":49},{"name":"Dmitrii Shcherbakov","email":"dshcherb","login":"dshcherb","count":44},{"name":"Cory Johns","email":"johnsca@gmail.com","login":"johnsca","count":33},{"name":"James Garner","email":"james.garner@canonical.com","login":"james-garner-canonical","count":33},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":27},{"name":"Dave Wilding","email":"david.wilding@canonical.com","login":"dwilding","count":26},{"name":"Robert Carlsen","email":"robert.carlsen@canonical.com","login":"rwcarlsen","count":21},{"name":"Jon Seager","email":"jon.seager@canonical.com","login":"jnsgruk","count":18},{"name":"Facundo Batista","email":"facundo@taniquetil.com.ar","login":"facundobatista","count":17},{"name":"Ryan Barry","email":"ryan.barry@canonical.com","login":"rbarry82","count":16},{"name":"Gustavo Niemeyer","email":"gustavo@niemeyer.net","login":"niemeyer","count":15},{"name":"Jose C. Massón","email":"jose.masson@canonical.com","login":"Abuelodelanada","count":13},{"name":"Pete Vander Giessen","email":"petevg@gmail.com","login":"pengale","count":12},{"name":"Leon","email":"82407168+sed-i","login":"sed-i","count":9},{"name":"Teodora Mihoc","email":"te.mihoc@gmail.com","login":"tmihoc","count":5},{"name":"Prints Charming","email":"ben.hoyt+prints-charming-bot@canonical.com","login":"prints-charming-bot","count":5},{"name":"Michele Mancioppi","email":"michele.mancioppi@canonical.com","login":null,"count":5},{"name":"Harry Pidcock","email":"harry.pidcock@canonical.com","login":"hpidcock","count":4},{"name":"Paul Goins","email":"general@vultaire.net","login":"Vultaire","count":4},{"name":"Weii Wang","email":"weii.wang@canonical.com","login":"weiiwang01","count":4},{"name":"Balbir Thomas","email":"balbirthomas@hotmail.com","login":"balbirthomas","count":4},{"name":"mthaddon","email":"tom@haddons.net","login":"mthaddon","count":3},{"name":"Yanks Yoon","email":"37652070+yanksyoon","login":"yanksyoon","count":3},{"name":"Harish Navnit","email":"harishnavnit@gmail.com","login":"tinvaan","count":3},{"name":"Ghislain Bourgeois","email":"ghislain.bourgeois@gmail.com","login":"ghislainbourgeois","count":3},{"name":"Dylan Stephano-Shachter","email":"dylan@theone.ninja","login":"dstathis","count":3},{"name":"Amanda H. L. de Andrade Katz","email":"amanda.katz@canonical.com","login":"amandahla","count":2},{"name":"Carl Csaposs","email":"carl.csaposs@canonical.com","login":"carlcsaposs-canonical","count":2},{"name":"markshuttle","email":"mark@ubuntu.com","login":"markshuttle","count":2},{"name":"Judit Novak","email":"judit.novak@canonical.com","login":"juditnovak","count":2},{"name":"Stub","email":"stuart.bishop@canonical.com","login":null,"count":2},{"name":"James Troup","email":"james.troup@canonical.com","login":null,"count":2},{"name":"Tim McNamara","email":"code@timmcnamara.co.nz","login":"timClicks","count":1},{"name":"Theofilos Papapanagiotou","email":"theofilos@gmail.com","login":"theofpa","count":1},{"name":"Simon Deziel","email":"simon.deziel@gmail.com","login":"simondeziel","count":1},{"name":"Sheng Yu","email":"sheng.yu@canonical.com","login":"syu-w","count":1},{"name":"Schiano Grégory","email":"114007538+gregory-schiano","login":"gregory-schiano","count":1},{"name":"Raúl Zamora Martínez","email":"76525382+zmraul","login":"zmraul","count":1},{"name":"Peter Sabaini","email":"peter@sabaini.at","login":"sabaini","count":1},{"name":"Pedro Leão da Cruz","email":"pedroleaoc@gmail.com","login":"pedroleaoc","count":1},{"name":"Paulo Machado","email":"paulo.machado@canonical.com","login":"paulomach","count":1},{"name":"Nishant Dash","email":"nishantdash.3@gmail.com","login":"nishant-dash","count":1},{"name":"Nikita Sobolev","email":"mail@sobolevn.me","login":"sobolevn","count":1},{"name":"Samuel Walladge","email":"samuel@swalladge.net","login":null,"count":1},{"name":"Zack Zehring","email":"zachary.zehring@canonical.com","login":null,"count":1},{"name":"Liam Young","email":"liam.young@canonical.com","login":null,"count":1},{"name":"phvalguima","email":"31036845+phvalguima","login":"phvalguima","count":1},{"name":"Mehdi Bendriss","email":"bendrissmehdi@gmail.com","login":"Mehdi-Bendriss","count":1},{"name":"Matúš Košút","email":"matuskosut","login":"matuskosut","count":1},{"name":"Mattia Sarti","email":"59971270+MattiaSarti","login":"MattiaSarti","count":1},{"name":"Maksim Beliaev","email":"beliaev.m.s@gmail.com","login":"beliaev-maksim","count":1},{"name":"Kenneth Koski","email":"kenneth.koski@canonical.com","login":"knkski","count":1},{"name":"Justin Clark","email":"justinmauriceclark@gmail.com","login":"justinmclark","count":1},{"name":"Evan Hanson","email":"evhan","login":"evhan","count":1},{"name":"Chris Sanders","email":"sanders.chris@gmail.com","login":"chris-sanders","count":1},{"name":"Benjamin Allot","email":"darkalia","login":"darkalia","count":1},{"name":"Alexandre Gomes","email":"alexandre.gomes@canonical.com","login":"alejdg","count":1},{"name":"Alex Batisse","email":"alexandre.batisse@hey.com","login":"Batalex","count":1},{"name":"Ales Stimec","email":"ales.stimec@canonical.com","login":"alesstimec","count":1},{"name":"Adam Dyess","email":"adam.dyess@canonical.com","login":"addyess","count":1},{"name":"Umut Dağ","email":"dagumut604@gmail.com","login":"umtdg","count":1},{"name":"Tom Anderson","email":"tom@ando.gq","login":"andogq","count":1},{"name":"Michael DuBelko","email":"michael.dubelko@gmail.com","login":"medubelko","count":1}],"total_commits":1483,"total_committers":69,"total_bot_commits":27,"total_bot_committers":1,"mean_commits":21.492753623188406,"dds":0.7006068779501011,"past_year_committers":[{"name":"Tony Meyer","email":"tony.meyer@canonical.com","login":"tonyandrewmeyer","count":188},{"name":"Dima Tisnek","email":"dima.tisnek@canonical.com","login":"dimaqq","count":49},{"name":"James Garner","email":"james.garner@canonical.com","login":"james-garner-canonical","count":33},{"name":"Ben Hoyt","email":"ben.hoyt@canonical.com","login":"benhoyt","count":32},{"name":"Dave Wilding","email":"david.wilding@canonical.com","login":"dwilding","count":26},{"name":"Tiexin Guo","email":"tiexin.guo@canonical.com","login":"IronCore864","count":25},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":19},{"name":"Pietro Pasotti","email":"starfire.daemon@gmail.com","login":"PietroPasotti","count":11},{"name":"Prints Charming","email":"ben.hoyt+prints-charming-bot@canonical.com","login":"prints-charming-bot","count":5},{"name":"Teodora Mihoc","email":"te.mihoc@gmail.com","login":"tmihoc","count":3},{"name":"Alex Batisse","email":"alexandre.batisse@hey.com","login":"Batalex","count":1},{"name":"Amanda H. L. de Andrade Katz","email":"amanda.katz@canonical.com","login":"amandahla","count":1},{"name":"Mattia Sarti","email":"59971270+MattiaSarti","login":"MattiaSarti","count":1},{"name":"Michael DuBelko","email":"michael.dubelko@gmail.com","login":"medubelko","count":1},{"name":"Theofilos Papapanagiotou","email":"theofilos@gmail.com","login":"theofpa","count":1},{"name":"Tom Anderson","email":"tom@ando.gq","login":"andogq","count":1}],"past_year_total_commits":397,"past_year_total_committers":16,"past_year_total_bot_commits":19,"past_year_total_bot_committers":1,"past_year_mean_commits":24.8125,"past_year_dds":0.5264483627204031,"last_synced_at":"2025-05-28T16:08:32.021Z","last_synced_commit":"668701b4396098b3e7a93288cd272c11dd2a8af6","created_at":"2023-03-09T08:04:19.980Z","updated_at":"2025-05-28T16:08:32.054Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-26T00:00:11.761Z","repositories_count":5479765,"commits_count":853308191,"contributors_count":31095157,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"canonical/operator","html_url":"https://github.com/canonical/operator","last_synced_at":"2025-09-06T11:02:54.245Z","status":null,"issues_count":394,"pull_requests_count":1263,"avg_time_to_close_issue":19478224.44890511,"avg_time_to_close_pull_request":644610.1843276937,"issues_closed_count":274,"pull_requests_closed_count":1123,"pull_request_authors_count":40,"issue_authors_count":81,"avg_comments_per_issue":2.9213197969543145,"avg_comments_per_pull_request":1.4924782264449723,"merged_pull_requests_count":976,"bot_issues_count":0,"bot_pull_requests_count":62,"past_year_issues_count":171,"past_year_pull_requests_count":773,"past_year_avg_time_to_close_issue":2166716.7391304346,"past_year_avg_time_to_close_pull_request":516644.05222734256,"past_year_issues_closed_count":69,"past_year_pull_requests_closed_count":651,"past_year_pull_request_authors_count":17,"past_year_issue_authors_count":29,"past_year_avg_comments_per_issue":1.1169590643274854,"past_year_avg_comments_per_pull_request":1.3272962483829236,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":31,"past_year_merged_pull_requests_count":572,"created_at":"2023-05-14T19:36:36.729Z","updated_at":"2025-09-06T11:02:54.247Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/canonical%2Foperator/issues","issue_labels_count":{"small item":92,"feature":65,"docs":57,"25.10":39,"bug":36,"needs design":17,"harness":16,"testing":15,"25.04":14,"24.10":14,"24.04":12,"blocked":11,"type hints":10,"ops-next":9,"tests":8,"investigate":8,"low priority":8,"needs spec":7,"roadmap":5,"next release":4,"refactoring":4,"23.10":3,"github_actions":2,"juju change required":2,"python":1},"pull_request_labels_count":{"dependencies":57,"github_actions":14,"type hints":12,"python":9,"docs":6,"bug":6,"feature":6,"harness":2,"small item":2},"issue_author_associations_count":{"CONTRIBUTOR":273,"NONE":56,"COLLABORATOR":54,"MEMBER":11},"pull_request_author_associations_count":{"CONTRIBUTOR":1034,"COLLABORATOR":196,"NONE":21,"MEMBER":12},"issue_authors":{"tonyandrewmeyer":54,"dimaqq":50,"benhoyt":48,"sed-i":40,"PietroPasotti":32,"dwilding":27,"rwcarlsen":9,"stub42":8,"jameinel":7,"james-garner-canonical":7,"pengale":7,"gruyaume":4,"balbirthomas":4,"arturo-seijas":3,"weiiwang01":3,"MichaelThamm":3,"lucabello":3,"facundobatista":3,"yanksyoon":3,"juditnovak":3,"paulomach":3,"shayancanonical":2,"phvalguima":2,"kian99":2,"Abuelodelanada":2,"IronCore864":2,"DnPlas":2,"ghislainbourgeois":2,"dshcherb":2,"Batalex":2,"knkski":2,"skatsaounis":2,"jnsgruk":2,"tizianacatena":2,"justinmclark":1,"silverdrake11":1,"crypticC0der":1,"hemanthnakkina":1,"niemeyer":1,"TheJJ":1,"kaskavel":1,"Perfect5th":1,"tinvaan":1,"jdkandersson":1,"chris-sanders":1,"chanchiwai-ray":1,"Vultaire":1,"rgildein":1,"amandahla":1,"xavpaice":1,"addyess":1,"Gu1nness":1,"erik78se":1,"dparv":1,"gboutry":1,"BalabaDmitri":1,"NucciTheBoss":1,"MiaAltieri":1,"samuelallan72":1,"exceptorr":1,"syu-w":1,"chipaca":1,"mkalcok":1,"DeeKay3":1,"sinapah":1,"lengau":1,"SimonRichardson":1,"skourta":1,"zzehring":1,"dragomirp":1,"nobuto-m":1,"Basdbruijne":1,"umtdg":1,"morphis":1,"marcoppenheimer":1,"ben-ballot":1,"carlcsaposs-canonical":1,"ThiagoSDQ":1,"Kayra1":1,"woutervb":1,"aieri":1},"pull_request_authors":{"tonyandrewmeyer":436,"dimaqq":186,"IronCore864":147,"benhoyt":126,"dwilding":109,"james-garner-canonical":82,"dependabot[bot]":61,"PietroPasotti":34,"prints-charming-bot":16,"tmihoc":8,"sed-i":5,"weiiwang01":4,"jameinel":3,"ghislainbourgeois":3,"carlcsaposs-canonical":3,"yanksyoon":3,"tinvaan":3,"andogq":2,"Batalex":2,"theofpa":2,"amandahla":2,"medubelko":2,"lucabello":2,"skatsaounis":2,"xtrusia":2,"lmlg":2,"addyess":2,"mkalcok":2,"rwcarlsen":1,"rbarry82":1,"sobolevn":1,"syu-w":1,"paulomach":1,"MattiaSarti":1,"Mehdi-Bendriss":1,"delgod":1,"sabaini":1,"ca-scribner":1,"renovate[bot]":1,"niwamo":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:17.013Z","repositories_count":10165670,"issues_count":31989241,"pull_requests_count":100238337,"authors_count":10729070,"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":{"25.10":36,"docs":36,"small item":29,"feature":16,"testing":14,"bug":13,"25.04":10,"tests":8,"ops-next":5,"next release":4,"low priority":4,"needs design":4,"investigate":3,"type hints":3,"24.10":2,"roadmap":2,"refactoring":1,"python":1},"past_year_pull_request_labels_count":{"dependencies":27,"python":2,"github_actions":2},"past_year_issue_author_associations_count":{"CONTRIBUTOR":128,"NONE":21,"COLLABORATOR":20,"MEMBER":2},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":650,"COLLABORATOR":111,"MEMBER":6,"NONE":6},"past_year_issue_authors":{"dimaqq":42,"tonyandrewmeyer":34,"dwilding":27,"benhoyt":16,"PietroPasotti":11,"sed-i":6,"james-garner-canonical":6,"MichaelThamm":3,"lucabello":3,"tizianacatena":2,"skatsaounis":2,"Batalex":2,"aieri":1,"ThiagoSDQ":1,"TheJJ":1,"skourta":1,"sinapah":1,"silverdrake11":1,"shayancanonical":1,"arturo-seijas":1,"samuelallan72":1,"morphis":1,"crypticC0der":1,"DeeKay3":1,"dragomirp":1,"jameinel":1,"IronCore864":1,"ghislainbourgeois":1,"gboutry":1},"past_year_pull_request_authors":{"tonyandrewmeyer":277,"dimaqq":123,"dwilding":109,"james-garner-canonical":77,"IronCore864":69,"benhoyt":42,"dependabot[bot]":31,"prints-charming-bot":16,"PietroPasotti":11,"tmihoc":6,"ghislainbourgeois":2,"lucabello":2,"Batalex":2,"medubelko":2,"andogq":2,"niwamo":1,"MattiaSarti":1},"maintainers":[{"login":"benhoyt","count":174,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":59,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"jameinel","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"},{"login":"tmihoc","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"jnsgruk","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jnsgruk"},{"login":"niemeyer","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niemeyer"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"delgod","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/delgod"},{"login":"SimonRichardson","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonRichardson"}],"active_maintainers":[{"login":"benhoyt","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/benhoyt"},{"login":"tonyandrewmeyer","count":57,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tonyandrewmeyer"},{"login":"prints-charming-bot","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/prints-charming-bot"},{"login":"tmihoc","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tmihoc"},{"login":"TheJJ","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TheJJ"},{"login":"jameinel","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jameinel"}]},"events":null,"keywords":["charms","juju","python"],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-07-12T14:03:39.995Z","updated_at":"2022-07-12T14:03:39.995Z","repository_link":"https://github.com/canonical/operator/blob/main/docs/requirements.txt","dependencies":[{"id":158411313,"package_name":"sphinx","ecosystem":"pypi","requirements":"==3.","direct":true,"kind":"runtime","optional":false},{"id":158411314,"package_name":"sphinx_rtd_theme","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2022-07-12T14:03:40.079Z","updated_at":"2022-07-12T14:03:40.079Z","repository_link":"https://github.com/canonical/operator/blob/main/requirements-dev.txt","dependencies":[{"id":158411531,"package_name":"PyYAML","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":158411535,"package_name":"typing_extensions","ecosystem":"pypi","requirements":"==4.2.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-07-12T14:03:40.224Z","updated_at":"2022-07-12T14:03:40.224Z","repository_link":"https://github.com/canonical/operator/blob/main/requirements.txt","dependencies":[{"id":158412704,"package_name":"PyYAML","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-07-12T14:03:40.314Z","updated_at":"2022-07-12T14:03:40.314Z","repository_link":"https://github.com/canonical/operator/blob/main/setup.py","dependencies":[{"id":158412741,"package_name":"PyYAML","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/charmcraft-pack.yaml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.131Z","updated_at":"2023-09-27T08:05:35.131Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/charmcraft-pack.yaml","dependencies":[{"id":13972401785,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":13972401786,"package_name":"canonical/setup-lxd","ecosystem":"actions","requirements":"ea57509243d3cf39f8ab926e021bb353947b01b5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/db-charm-tests.yaml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.150Z","updated_at":"2023-09-27T08:05:35.150Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/db-charm-tests.yaml","dependencies":[{"id":13972401787,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/framework-tests.yaml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.157Z","updated_at":"2023-09-27T08:05:35.157Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/framework-tests.yaml","dependencies":[{"id":13972401788,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":13972401789,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":13972401790,"package_name":"actions/setup-go","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/hello-charm-tests.yaml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.164Z","updated_at":"2023-09-27T08:05:35.164Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/hello-charm-tests.yaml","dependencies":[{"id":13972401791,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":13972401792,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/observability-charm-tests.yaml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.171Z","updated_at":"2023-09-27T08:05:35.171Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/observability-charm-tests.yaml","dependencies":[{"id":13972401793,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/publish.yml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.176Z","updated_at":"2023-09-27T08:05:35.176Z","repository_link":"https://github.com/canonical/operator/blob/main/.github/workflows/publish.yml","dependencies":[{"id":13972401794,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":13972401795,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":13972401796,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"release/v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"docs/requirements.in","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.182Z","updated_at":"2023-09-27T08:05:35.182Z","repository_link":"https://github.com/canonical/operator/blob/main/docs/requirements.in","dependencies":[{"id":13972401797,"package_name":"sphinx","ecosystem":"pypi","requirements":"==6.2.1","direct":true,"kind":"runtime","optional":false},{"id":13972401798,"package_name":"sphinx-design","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13972401799,"package_name":"furo","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13972401800,"package_name":"sphinx-tabs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13972401801,"package_name":"lxd-sphinx-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13972401802,"package_name":"sphinx-copybutton","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-09-27T08:05:35.211Z","updated_at":"2023-09-27T08:05:35.211Z","repository_link":"https://github.com/canonical/operator/blob/main/pyproject.toml","dependencies":[]}],"score":22.904124381046802,"created_at":"2025-09-08T11:18:32.860Z","updated_at":"2025-10-07T08:24:42.803Z","avatar_url":"https://github.com/canonical.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":379354,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["flexible","interactive","distribution","packaging","alignment","distance","nested","recursive","genomics","observability"],"project_url":"https://science.ecosyste.ms/api/v1/projects/64173","html_url":"https://science.ecosyste.ms/projects/64173"}