{"id":69940,"name":"pydot","description":"Python interface to Graphviz's Dot language","url":"https://github.com/pydot/pydot","last_synced_at":"2025-09-08T14:58:38.850Z","repository":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274202740,"owners_count":25240370,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"packages":[{"id":2869834,"name":"pydot","ecosystem":"pypi","description":"Python interface to Graphviz's Dot","homepage":"https://github.com/pydot/pydot","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pydot/pydot","keywords_array":["graphviz","dot","graphs","visualization"],"namespace":null,"versions_count":29,"first_release_published_at":"2016-05-10T23:56:36.000Z","latest_release_published_at":"2025-06-17T20:09:55.000Z","latest_release_number":"4.0.1","last_synced_at":"2025-09-08T01:01:24.285Z","created_at":"2022-04-10T12:11:59.036Z","updated_at":"2025-09-08T01:01:24.285Z","registry_url":"https://pypi.org/project/pydot/","install_command":"pip install pydot --index-url https://pypi.org/simple","documentation_url":"https://pydot.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","Intended Audience :: Science/Research","Natural Language :: English","Operating System :: OS Independent","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Topic :: Scientific/Engineering :: Visualization","Topic :: Software Development :: Libraries :: Python Modules"],"normalized_name":"pydot","project_status":null},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274027662,"owners_count":25209916,"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-07T02:00:09.463Z","response_time":67,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-07T11:26:53.517Z","dependent_packages_count":399,"downloads":13258891,"downloads_period":"last-month","dependent_repos_count":11166,"rankings":{"downloads":0.1407052459605869,"dependent_repos_count":0.08403229967090607,"dependent_packages_count":0.060386001391418545,"stargazers_count":2.1778045291455284,"forks_count":4.022177576960961,"docker_downloads_count":0.38068585990447673,"average":1.1442985855056462},"purl":"pkg:pypi/pydot","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pydot","docker_dependents_count":979,"docker_downloads_count":169633707,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-05T10:58:03.785Z","issues_count":117,"pull_requests_count":314,"avg_time_to_close_issue":53002994.30136986,"avg_time_to_close_pull_request":6137941.286738351,"issues_closed_count":73,"pull_requests_closed_count":279,"pull_request_authors_count":26,"issue_authors_count":80,"avg_comments_per_issue":3.4786324786324787,"avg_comments_per_pull_request":2.105095541401274,"merged_pull_requests_count":235,"bot_issues_count":0,"bot_pull_requests_count":74,"past_year_issues_count":20,"past_year_pull_requests_count":110,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":506447.11235955055,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":89,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":2.65,"past_year_avg_comments_per_pull_request":2.4909090909090907,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":35,"past_year_merged_pull_requests_count":69,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":118,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":43,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":60,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":13,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pydot/related_packages","maintainers":[{"uuid":"ero","login":"ero","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/ero/","role":null,"created_at":"2022-12-05T15:38:28.696Z","updated_at":"2022-12-05T15:38:28.696Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/ero/packages"},{"uuid":"peternowee","login":"peternowee","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/peternowee/","role":null,"created_at":"2022-12-05T15:38:28.715Z","updated_at":"2022-12-05T15:38:28.715Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/peternowee/packages"},{"uuid":"lkk7","login":"lkk7","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/lkk7/","role":null,"created_at":"2023-12-22T20:43:13.429Z","updated_at":"2023-12-22T20:43:13.429Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/lkk7/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726167,"maintainers_count":308804,"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":6204067,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2020-07-21T19:34:26.000Z","latest_release_published_at":"2020-07-21T19:34:26.000Z","latest_release_number":"1.4.1-r2","last_synced_at":"2025-09-01T11:09:24.058Z","created_at":"2023-02-01T02:21:05.899Z","updated_at":"2025-09-01T12:28:19.900Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.13/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.900Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":19.522199035763112,"stargazers_count":5.7350507303734615,"forks_count":6.317910340361229,"average":7.893790026624451},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":1,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-02-06T16:06:16.679Z","updated_at":"2023-02-06T16:06:16.679Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.13","url":"https://pkgs.alpinelinux.org/packages?branch=v3.13","ecosystem":"alpine","default":false,"packages_count":13897,"maintainers_count":231,"namespaces_count":2,"keywords_count":1890,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":587},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.734Z","updated_at":"2025-09-07T05:11:47.762Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.13/namespaces"}},{"id":11139792,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:30.336Z","created_at":"2024-12-07T13:03:23.456Z","updated_at":"2025-09-01T12:28:19.902Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2025-01-08T01:29:54.869Z","updated_at":"2025-01-08T01:29:54.869Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25393,"maintainers_count":413,"namespaces_count":2,"keywords_count":2766,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1060},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2025-09-08T06:51:38.309Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":11139800,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:32.987Z","created_at":"2024-12-07T13:03:24.291Z","updated_at":"2025-09-01T12:28:19.903Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2025-01-07T23:51:20.792Z","updated_at":"2025-01-07T23:51:20.792Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25393,"maintainers_count":413,"namespaces_count":2,"keywords_count":2766,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1060},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2025-09-08T06:51:38.309Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":6175389,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2021-08-27T02:29:32.000Z","latest_release_published_at":"2021-08-27T02:29:32.000Z","latest_release_number":"1.4.2-r0","last_synced_at":"2025-09-01T11:09:33.366Z","created_at":"2023-02-01T00:21:36.750Z","updated_at":"2025-09-01T12:28:19.892Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.15/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.892Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":25.58491517941603,"stargazers_count":6.4009585671943,"forks_count":6.546004918963234,"average":9.632969666393391},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":4,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-02-03T13:16:33.759Z","updated_at":"2023-02-03T13:16:33.759Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.15","url":"https://pkgs.alpinelinux.org/packages?branch=v3.15","ecosystem":"alpine","default":false,"packages_count":15857,"maintainers_count":287,"namespaces_count":2,"keywords_count":2456,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":780},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.684Z","updated_at":"2025-09-08T06:51:45.631Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.15/namespaces"}},{"id":8677723,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_number":"1.4.2-r3","last_synced_at":"2025-09-01T11:09:32.997Z","created_at":"2023-12-20T10:29:29.392Z","updated_at":"2025-09-01T11:09:32.997Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2024-08-25T19:49:36.298Z","updated_at":"2024-08-25T19:49:36.298Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":376,"namespaces_count":2,"keywords_count":2627,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":711},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2025-09-08T06:55:50.087Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":7779686,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_number":"1.4.2-r3","last_synced_at":"2025-09-01T11:09:33.496Z","created_at":"2023-05-22T14:36:03.613Z","updated_at":"2025-09-01T12:28:19.902Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":8.997057503366415,"forks_count":8.797566206174254,"docker_downloads_count":null,"average":4.448655927385167},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-05-23T07:21:26.970Z","updated_at":"2023-05-23T07:21:26.970Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3625,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1084},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2025-09-07T07:26:06.804Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":6084330,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2021-12-15T19:17:48.000Z","latest_release_published_at":"2021-12-15T19:17:48.000Z","latest_release_number":"1.4.2-r1","last_synced_at":"2025-09-01T11:09:33.325Z","created_at":"2023-01-31T20:03:39.227Z","updated_at":"2025-09-01T12:28:19.901Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.17/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.901Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":27.253845290221175,"stargazers_count":8.622431795217246,"forks_count":8.470865611316942,"average":11.08678567418884},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":6,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-02-01T05:06:32.064Z","updated_at":"2023-02-01T05:06:32.064Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.17","url":"https://pkgs.alpinelinux.org/packages?branch=v3.17","ecosystem":"alpine","default":false,"packages_count":17817,"maintainers_count":352,"namespaces_count":2,"keywords_count":3362,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1026},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.642Z","updated_at":"2025-09-07T07:26:12.220Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/namespaces"}},{"id":11766408,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:31.817Z","created_at":"2025-06-07T18:45:02.707Z","updated_at":"2025-09-01T12:28:19.902Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2025-06-08T16:22:34.043Z","updated_at":"2025-06-08T16:22:34.043Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26315,"maintainers_count":422,"namespaces_count":2,"keywords_count":4641,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1614},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2025-09-08T05:33:01.089Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":5284653,"name":"pydot","ecosystem":"conda","description":"This module provides with a full interface to create handle modify and process graphs in Graphviz’s dot language.","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":null,"versions_count":6,"first_release_published_at":"2017-12-01T17:30:56.000Z","latest_release_published_at":"2025-02-07T17:59:18.000Z","latest_release_number":"3.0.4","last_synced_at":"2025-09-01T11:09:34.589Z","created_at":"2022-10-03T15:41:08.906Z","updated_at":"2025-09-01T12:28:19.903Z","registry_url":"https://anaconda.org/anaconda/pydot","install_command":"conda install -c anaconda pydot","documentation_url":null,"metadata":{},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.903Z","dependent_packages_count":3,"downloads":null,"downloads_period":null,"dependent_repos_count":180,"rankings":{"downloads":null,"dependent_repos_count":14.881865602945687,"dependent_packages_count":9.3893832463946,"stargazers_count":25.80546179809758,"forks_count":26.695305308376803,"docker_downloads_count":null,"average":19.193003988953667},"purl":"pkg:conda/pydot","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/pydot/related_packages","maintainers":[],"registry":{"name":"anaconda.org","url":"https://anaconda.org","ecosystem":"conda","default":true,"packages_count":4329,"maintainers_count":0,"namespaces_count":0,"keywords_count":2929,"github":"Anaconda","metadata":{"kind":"anaconda","key":"Main","api":"https://repo.ananconda.com","funded_packages_count":613},"icon_url":"https://github.com/Anaconda.png","created_at":"2022-10-03T15:37:08.736Z","updated_at":"2025-09-08T06:52:46.830Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/namespaces"}},{"id":10345310,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"1.4.2-r4","last_synced_at":"2025-09-01T11:09:36.808Z","created_at":"2024-06-11T10:24:38.399Z","updated_at":"2025-09-01T12:28:19.905Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.905Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2024-06-12T01:27:19.209Z","updated_at":"2024-06-12T01:27:19.209Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4237,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1365},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2025-09-08T06:55:59.303Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":11766410,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:38.665Z","created_at":"2025-06-07T18:45:07.525Z","updated_at":"2025-09-01T12:28:19.905Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.905Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2025-06-08T16:22:33.035Z","updated_at":"2025-06-08T16:22:33.035Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26315,"maintainers_count":422,"namespaces_count":2,"keywords_count":4641,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1614},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2025-09-08T05:33:01.089Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":6135424,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2021-12-15T19:17:48.000Z","latest_release_published_at":"2021-12-15T19:17:48.000Z","latest_release_number":"1.4.2-r1","last_synced_at":"2025-09-01T11:09:32.016Z","created_at":"2023-01-31T22:23:55.246Z","updated_at":"2025-09-01T12:28:19.902Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.16/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":27.31114632857897,"stargazers_count":6.955449903151964,"forks_count":6.791101719786348,"average":10.264424487879321},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":5,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-02-01T12:24:05.161Z","updated_at":"2023-02-01T12:24:05.161Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.16","url":"https://pkgs.alpinelinux.org/packages?branch=v3.16","ecosystem":"alpine","default":false,"packages_count":17040,"maintainers_count":328,"namespaces_count":2,"keywords_count":2845,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":915},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.662Z","updated_at":"2025-09-08T06:51:50.317Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.16/namespaces"}},{"id":6056340,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":5,"first_release_published_at":"2022-11-22T19:33:35.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:53.358Z","created_at":"2023-01-31T18:52:07.058Z","updated_at":"2025-09-01T12:28:21.493Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:21.492Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":14.64073262366938,"stargazers_count":10.500156543519099,"forks_count":9.760488415779585,"average":8.725344395742017},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":32,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-01-31T23:23:24.936Z","updated_at":"2023-01-31T23:23:24.936Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":37130,"maintainers_count":822,"namespaces_count":3,"keywords_count":6489,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2647},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2025-09-08T05:01:36.044Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":7779687,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_number":"1.4.2-r3","last_synced_at":"2025-09-01T11:09:37.292Z","created_at":"2023-05-22T14:36:03.843Z","updated_at":"2025-09-01T12:28:19.901Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.901Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":8.997057503366415,"forks_count":8.797566206174254,"docker_downloads_count":null,"average":4.448655927385167},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":9,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-05-23T07:21:24.562Z","updated_at":"2023-05-23T07:21:24.562Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3625,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1084},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2025-09-07T07:26:06.804Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":7646371,"name":"py3-pydot-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-pydot","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":4,"first_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_published_at":"2024-11-25T18:34:33.000Z","latest_release_number":"3.0.2-r0","last_synced_at":"2025-09-01T11:09:38.336Z","created_at":"2023-04-26T03:24:53.616Z","updated_at":"2025-09-01T12:28:19.900Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/community/x86_64/py3-pydot-pyc","install_command":"apk add py3-pydot-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.899Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":13.38644564324247,"stargazers_count":10.84634346754314,"forks_count":10.12468293380015,"average":8.58936801114644},"purl":"pkg:apk/alpine/py3-pydot-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-pydot-pyc/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":32,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-04-29T07:23:02.282Z","updated_at":"2023-04-29T07:23:02.282Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":37130,"maintainers_count":822,"namespaces_count":3,"keywords_count":6489,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2647},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2025-09-08T05:01:36.044Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":4109916,"name":"github.com/pydot/pydot","ecosystem":"go","description":"","homepage":null,"licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"github.com/pydot","versions_count":19,"first_release_published_at":"2016-05-11T00:34:59.000Z","latest_release_published_at":"2025-06-17T20:09:35.000Z","latest_release_number":"v4.0.1+incompatible","last_synced_at":"2025-09-01T11:09:27.549Z","created_at":"2022-04-12T14:01:20.059Z","updated_at":"2025-09-01T12:28:19.901Z","registry_url":"https://pkg.go.dev/github.com/pydot/pydot","install_command":"go get github.com/pydot/pydot","documentation_url":"https://pkg.go.dev/github.com/pydot/pydot#section-documentation","metadata":{},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.901Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":9.345852080216646,"dependent_packages_count":6.999148183520997,"stargazers_count":null,"forks_count":null,"average":8.172500131868823},"purl":"pkg:golang/github.com/pydot/pydot","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/pydot/pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/pydot/pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/pydot/pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpydot%2Fpydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpydot%2Fpydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpydot%2Fpydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fpydot%2Fpydot/related_packages","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":1954234,"maintainers_count":0,"namespaces_count":741771,"keywords_count":109320,"github":"golang","metadata":{"funded_packages_count":49342},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2025-09-08T05:47:38.872Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":8677722,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_published_at":"2023-04-25T07:00:46.000Z","latest_release_number":"1.4.2-r3","last_synced_at":"2025-09-01T11:09:34.976Z","created_at":"2023-12-20T10:29:29.272Z","updated_at":"2025-09-01T11:09:34.976Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-pydot/related_packages","maintainers":[],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":376,"namespaces_count":2,"keywords_count":2627,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":711},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2025-09-08T06:55:50.087Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":10345309,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"1.4.2-r4","last_synced_at":"2025-09-01T11:09:45.793Z","created_at":"2024-06-11T10:24:34.624Z","updated_at":"2025-09-01T12:28:19.906Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.906Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":7,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2024-06-12T01:27:19.185Z","updated_at":"2024-06-12T01:27:19.185Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4237,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1365},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2025-09-08T06:55:59.303Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":6197854,"name":"py3-pydot","ecosystem":"alpine","description":"Python interface to Graphviz's Dot language","homepage":"https://github.com/pydot/pydot","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pydot/pydot","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2021-04-05T18:18:45.000Z","latest_release_published_at":"2021-04-05T18:18:45.000Z","latest_release_number":"1.4.1-r3","last_synced_at":"2025-09-01T11:09:33.694Z","created_at":"2023-02-01T01:53:00.606Z","updated_at":"2025-09-01T12:28:19.902Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.14/community/x86_64/py3-pydot","install_command":"apk add py3-pydot","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":30323619,"uuid":"33875901","full_name":"pydot/pydot","owner":"pydot","description":"Python interface to Graphviz's Dot language","archived":false,"fork":false,"pushed_at":"2025-08-18T21:25:17.000Z","size":1762,"stargazers_count":962,"open_issues_count":60,"forks_count":165,"subscribers_count":24,"default_branch":"main","last_synced_at":"2025-09-01T10:37:28.980Z","etag":null,"topics":["dot-language","graphviz","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://pypi.python.org/pypi/pydot","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pydot.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSES/MIT.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-13T15:14:44.000Z","updated_at":"2025-08-30T02:18:46.000Z","dependencies_parsed_at":"2022-07-18T08:17:19.743Z","dependency_job_id":"bea7d167-8b9d-4253-be70-753fd90af740","html_url":"https://github.com/pydot/pydot","commit_stats":{"total_commits":238,"total_committers":23,"mean_commits":"10.347826086956522","dds":"0.47478991596638653","last_synced_commit":"90936e75462c7b0e4bb16d97c1ae7efdf04e895c"},"previous_names":["erocarrera/pydot"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/pydot/pydot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/sbom","scorecard":{"id":751297,"data":{"date":"2025-08-17T15:34:40Z","repo":{"name":"github.com/pydot/pydot","commit":"18eb8e9669490e1f3eb33bbcb50f9c0dfa80d672"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":6.9,"checks":[{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disable on branch 'main'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"23 out of 23 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":6,"reason":"Found 17/25 approved changesets -- score normalized to 6","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 32 contributing companies or organizations","details":["Info: python contributor org/company found, nordsoftware contributor org/company found, python-humanize contributor org/company found, fatiando contributor org/company found, citybikes contributor org/company found, NaNoGenMo contributor org/company found, termcolor contributor org/company found, flake8-implicit-str-concat contributor org/company found, nextcloud contributor org/company found, kuralabs contributor org/company found, GSConnect contributor org/company found, EuroPython contributor org/company found, pytest-dev contributor org/company found, NaPoGenMo contributor org/company found, python-twitter-tools contributor org/company found, pydata-helsinki contributor org/company found, pydot contributor org/company found, mobbler contributor org/company found, WahKazoo contributor org/company found, python-docs-translations contributor org/company found, unitedstates contributor org/company found, whyaretheflagsup contributor org/company found, cycle148hki contributor org/company found, endoflife-date contributor org/company found, helsinki-python contributor org/company found, prettytable contributor org/company found, python-pillow contributor org/company found, PyConFI contributor org/company found, sovereigntech contributor org/company found, pylast contributor org/company found, jazzband contributor org/company found, ultrajson contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSES/MIT.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSES/MIT.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":7,"reason":"5 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":4,"reason":"dependency not pinned by hash detected -- score normalized to 4","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/CI.yml:140: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/CI.yml:146: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/CI.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/coverage.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/coverage.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/reuse.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/reuse.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pydot/pydot/reuse.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/CI.yml:129","Info:  13 out of  16 GitHub-owned GitHubAction dependencies pinned","Info:   2 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/CI.yml:117","Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:33","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/coverage.yml:24","Info: jobLevel 'actions' permission set to 'read': .github/workflows/coverage.yml:28","Info: topLevel 'contents' permission set to 'read': .github/workflows/CI.yml:27","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:25","Warn: no topLevel permission defined: .github/workflows/coverage.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/label-conflicts.yml:20","Warn: no topLevel permission defined: .github/workflows/reuse.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-22T20:28:07.447Z","repository_id":30323619,"created_at":"2025-08-22T20:28:07.447Z","updated_at":"2025-08-22T20:28:07.447Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273122182,"owners_count":25049539,"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-01T02:00:09.058Z","response_time":120,"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":"pydot","name":"pydot","uuid":"11192979","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/11192979?v=4","repositories_count":2,"last_synced_at":"2024-04-20T00:12:24.396Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pydot","funding_links":[],"total_stars":858,"followers":7,"following":0,"created_at":"2022-11-11T14:16:45.405Z","updated_at":"2024-04-20T00:12:24.404Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pydot/repositories"},"tags":[{"name":"v4.0.0","sha":"b7b5ea7599f115ecda3efbf42a7be654544f4b97","kind":"tag","published_at":"2025-05-04T11:11:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v4.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v4.0.0/manifests"},{"name":"v3.0.4","sha":"6e1bc6a4bc54fc468da00554bb6708bf2cb134ee","kind":"tag","published_at":"2025-01-05T16:17:48.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"c254ceef8faace4778150e024c48f9c07e2bb09c","kind":"tag","published_at":"2024-11-30T21:20:36.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.3","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"754f3e8ace78706371490ece5af2eda4ded2e31f","kind":"tag","published_at":"2024-09-25T19:19:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"0daa0b4bb22748b65dc0ab3cadcf37aa5bc0afc8","kind":"tag","published_at":"2024-07-16T13:25:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.1","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"84113fff774776a679d17fc900383c1fba87167b","kind":"tag","published_at":"2024-07-15T21:49:25.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v3.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v3.0.0/manifests"},{"name":"v2.0.0","sha":"85a756ef8f342f9cb369fbccc586d3f03fcc64fb","kind":"tag","published_at":"2023-12-30T19:12:00.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v2.0.0","html_url":"https://github.com/pydot/pydot/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v2.0.0/manifests"},{"name":"v1.4.2","sha":"cb7c3845bb899acbe6547b3b1871580463cd7b3b","kind":"tag","published_at":"2021-02-15T16:34:28.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e47837efc7a401386a0853da639d3b57373b9e28","kind":"tag","published_at":"2018-12-12T20:58:51.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.1","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"0e5ad9d32760d8ae2a129a973d3cdb2c3e193b65","kind":"tag","published_at":"2018-12-01T20:57:18.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.4.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"f3d98858d06fd567182529c8659b80e03971c4dd","kind":"tag","published_at":"2018-11-19T08:00:05.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.3.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.3.0/manifests"},{"name":"v1.2.4","sha":"a8d40a508ab28bb64431db161e94afed2644936a","kind":"tag","published_at":"2017-12-25T16:45:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.4","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.4/manifests"},{"name":"v1.2.3","sha":"ae51c606731cebfe5cddc13528f65acd3ceea9f6","kind":"tag","published_at":"2016-10-06T08:39:43.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.3","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.3/manifests"},{"name":"v1.2.2","sha":"46b57dd4b56e803ff039c40ad9f187b87924ceed","kind":"tag","published_at":"2016-07-02T03:26:13.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.2","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.2/manifests"},{"name":"v1.2.0","sha":"14b7bc2d7b6a1a6b68504bb0b3a30846b975ab7c","kind":"tag","published_at":"2016-07-02T03:03:57.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.2.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"752046b0a70df7134162539542677f56916644fe","kind":"tag","published_at":"2016-05-24T01:52:40.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.1.0","html_url":"https://github.com/pydot/pydot/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.1.0/manifests"},{"name":"v1.0.29","sha":"e80f9055d19c630cd21b6cffb900f92a3a477a0f","kind":"tag","published_at":"2016-05-17T03:42:50.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.29","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.29","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.29","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.29/manifests"},{"name":"v1.0.28","sha":"8ca3077ece8be35bc1ba528a1d52bcc0a218fc5c","kind":"tag","published_at":"2016-05-11T00:44:26.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/v1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/v1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@v1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/v1.0.28/manifests"},{"name":"pydot-1.0.28","sha":"ec21a1167b2032ee263ff05406a19fd980313942","kind":"commit","published_at":"2012-01-03T00:15:07.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.28","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.28","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.28","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.28/manifests"},{"name":"pydot-1.0.25","sha":"ab17f0b1e203e6bdc9441cf24084bd686d3aa80f","kind":"commit","published_at":"2011-04-10T15:55:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.25","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.25","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.25","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.25/manifests"},{"name":"pydot-1.0.4","sha":"55f827e3aeee509e7349f82563292cb66c03eade","kind":"commit","published_at":"2010-12-31T15:58:59.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.4","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.4/manifests"},{"name":"pydot-1.0.2","sha":"eb00301cca14c51c7309d6f672722e5b54224e79","kind":"commit","published_at":"2008-02-14T22:32:14.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-1.0.2","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-1.0.2/manifests"},{"name":"pydot-0.9.10","sha":"16f0bd2effc78cb4fe4ec4879f437cff837cc3ef","kind":"commit","published_at":"2008-02-14T22:22:30.000Z","download_url":"https://codeload.github.com/pydot/pydot/tar.gz/pydot-0.9.10","html_url":"https://github.com/pydot/pydot/releases/tag/pydot-0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pydot/pydot@pydot-0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/tags/pydot-0.9.10/manifests"}]},"repo_metadata_updated_at":"2025-09-01T12:28:19.902Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":21.680705976734856,"stargazers_count":5.909881000133708,"forks_count":6.270891830458618,"average":8.465369701831795},"purl":"pkg:apk/alpine/py3-pydot?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-pydot","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-pydot","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-pydot/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T08:25:59.533Z","issues_count":111,"pull_requests_count":209,"avg_time_to_close_issue":56083268.89855073,"avg_time_to_close_pull_request":6512317.614583333,"issues_closed_count":69,"pull_requests_closed_count":192,"pull_request_authors_count":25,"issue_authors_count":77,"avg_comments_per_issue":4.054054054054054,"avg_comments_per_pull_request":2.4401913875598087,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":49,"past_year_issues_count":20,"past_year_pull_requests_count":93,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":522669.3164556962,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":79,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":3.0,"past_year_avg_comments_per_pull_request":2.5268817204301075,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":33,"past_year_merged_pull_requests_count":60,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","maintainers":[{"login":"ferdnyc","count":81,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":46,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/packages/py3-pydot/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/packages/py3-pydot/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/packages/py3-pydot/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/packages/py3-pydot/related_packages","maintainers":[{"uuid":"russ@rw.id.au","login":null,"name":"Russ Webber","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","packages_count":4,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Russ Webber","role":null,"created_at":"2023-02-06T16:06:10.158Z","updated_at":"2023-02-06T16:06:10.158Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/maintainers/russ@rw.id.au/packages"}],"registry":{"name":"alpine-v3.14","url":"https://pkgs.alpinelinux.org/packages?branch=v3.14","ecosystem":"alpine","default":false,"packages_count":14958,"maintainers_count":258,"namespaces_count":2,"keywords_count":2173,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":671},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.706Z","updated_at":"2025-09-06T05:02:18.055Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.14/namespaces"}}],"commits":{"id":3459,"full_name":"pydot/pydot","default_branch":"master","committers":[{"name":"Ioannis Filippidis","email":"jfilippidis@gmail.com","login":null,"count":125},{"name":"Peter Nowee","email":"peter@peternowee.com","login":null,"count":35},{"name":"Frank Dana","email":"ferdnyc@gmail.com","login":null,"count":27},{"name":"Sebastian Kalinowski","email":"sebastian@kalinowski.eu","login":null,"count":23},{"name":"Łukasz","email":"lukaszlapinski7@gmail.com","login":null,"count":21},{"name":"ero.carrera@gmail.com","email":"ero.carrera@gmail.com@06aa9b79-7134-0410-ae7e-c1cd3e483e87","login":null,"count":14},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":11},{"name":"Lance Hepler","email":"nlhepler@gmail.com","login":null,"count":10},{"name":"Hugo","email":"hugovk","login":"hugovk","count":6},{"name":"Carlos Miguel Jenkins Perez","email":"carlos.jenkins@hp.com","login":null,"count":5},{"name":"ero.carrera","email":"ero.carrera@06aa9b79-7134-0410-ae7e-c1cd3e483e87","login":null,"count":4},{"name":"brlam","email":"temp42704@gmail.com","login":null,"count":2},{"name":"Julian Jarecki","email":"julian.jarecki@gmail.com","login":null,"count":2},{"name":"StepSecurity Bot","email":"bot@stepsecurity.io","login":null,"count":1},{"name":"Peter Cock","email":"p.j.a.cock@googlemail.com","login":null,"count":1},{"name":"Chris Burr","email":"chrisburr","login":"chrisburr","count":1},{"name":"Johan-Martijn ten Hove","email":"49524464+hoverjmt","login":"hoverjmt","count":1},{"name":"kg","email":"kg86","login":"kg86","count":1},{"name":"leycec","email":"leycec@gmail.com","login":"leycec","count":1},{"name":"Paolo Melchiorre","email":"paolo@melchiorre.org","login":null,"count":1},{"name":"Nigel Bosch","email":"pnigelb@gmail.com","login":null,"count":1},{"name":"Nanno Langstraat","email":"langstr+gh@gmail.com","login":null,"count":1},{"name":"Leonard","email":"leonard.gerard@sri.com","login":null,"count":1},{"name":"Hrishikesh Terdalkar","email":"hrishirt@cse.iitk.ac.in","login":null,"count":1},{"name":"Gustav Larsson","email":"gustav.m.larsson@gmail.com","login":null,"count":1},{"name":"Daniel Chimeno","email":"daniel.chimenosantiago@telefonica.com","login":null,"count":1},{"name":"Clinale","email":"2362465844@qq.com","login":null,"count":1},{"name":"Ashafix","email":"maximili.peters@mail.huji.ac.il","login":null,"count":1},{"name":"Alexander Dokuchaev","email":"alexander.dokuchaev@intel.com","login":null,"count":1}],"total_commits":301,"total_committers":29,"total_bot_commits":11,"total_bot_committers":1,"mean_commits":10.379310344827585,"dds":0.584717607973422,"past_year_committers":[{"name":"Frank Dana","email":"ferdnyc@gmail.com","login":null,"count":27},{"name":"Łukasz","email":"lukaszlapinski7@gmail.com","login":null,"count":21},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":11},{"name":"Alexander Dokuchaev","email":"alexander.dokuchaev@intel.com","login":null,"count":1},{"name":"Peter Nowee","email":"peter@peternowee.com","login":null,"count":1},{"name":"StepSecurity Bot","email":"bot@stepsecurity.io","login":null,"count":1},{"name":"kg","email":"kg86","login":"kg86","count":1}],"past_year_total_commits":63,"past_year_total_committers":7,"past_year_total_bot_commits":11,"past_year_total_bot_committers":1,"past_year_mean_commits":9.0,"past_year_dds":0.5714285714285714,"last_synced_at":"2024-06-26T12:25:11.252Z","last_synced_commit":"b97c4df88f3989b65ccb6ccf2b41b033f3b3d235","created_at":"2023-03-07T09:17:51.548Z","updated_at":"2024-06-26T12:25:11.252Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-06T00:00:13.651Z","repositories_count":5480019,"commits_count":853389126,"contributors_count":31098155,"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":"pydot/pydot","html_url":"https://github.com/pydot/pydot","last_synced_at":"2025-09-05T10:58:03.785Z","status":null,"issues_count":117,"pull_requests_count":314,"avg_time_to_close_issue":53002994.30136986,"avg_time_to_close_pull_request":6137941.286738351,"issues_closed_count":73,"pull_requests_closed_count":279,"pull_request_authors_count":26,"issue_authors_count":80,"avg_comments_per_issue":3.4786324786324787,"avg_comments_per_pull_request":2.105095541401274,"merged_pull_requests_count":235,"bot_issues_count":0,"bot_pull_requests_count":74,"past_year_issues_count":20,"past_year_pull_requests_count":110,"past_year_avg_time_to_close_issue":593666.2727272727,"past_year_avg_time_to_close_pull_request":506447.11235955055,"past_year_issues_closed_count":11,"past_year_pull_requests_closed_count":89,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":2.65,"past_year_avg_comments_per_pull_request":2.4909090909090907,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":35,"past_year_merged_pull_requests_count":69,"created_at":"2023-05-10T11:03:14.296Z","updated_at":"2025-09-05T10:58:03.787Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pydot%2Fpydot/issues","issue_labels_count":{"bug":29,"api":16,"quoting":14,"dot-language":13,"discussion":10,"question":8,"enhancement":8,"parser":8,"duplicate":6,"graphviz":4,"details-needed":3,"documentation":3,"internals":2,"output":2,"conda":2,"dependencies":1,"auto-migrated":1,"logging":1,"performance":1,"ci":1},"pull_request_labels_count":{"dependencies":79,"github_actions":75,"conflicts":14,"enhancement":12,"api":6,"legacy-pr-to-consider":5,"bug":5,"documentation":5,"internals":5,"tests":3,"graphviz":3,"dot-language":2,"ci":2,"logging":2,"packaging":1,"output":1,"conda":1},"issue_author_associations_count":{"NONE":87,"MEMBER":20,"CONTRIBUTOR":9,"COLLABORATOR":1},"pull_request_author_associations_count":{"MEMBER":154,"CONTRIBUTOR":128,"NONE":24,"COLLABORATOR":8},"issue_authors":{"ferdnyc":14,"GoogleCodeExporter":8,"peternowee":5,"johnyf":4,"2br-2b":4,"sandrotosi":3,"lkk7":3,"cheikhnadiouf":2,"wildoranges":2,"StevanWhite":2,"Veek":1,"goerz":1,"thomasvengal":1,"iamaziz":1,"Lucas-C":1,"Shamalau":1,"qinyeli":1,"angelotc":1,"jokoon":1,"xmo-code":1,"iseletsk":1,"Sandy4321":1,"josch":1,"Claygirl":1,"AceKickAss":1,"arik-v":1,"mbprend":1,"HJX-zhanS":1,"loonatick-src":1,"brando90":1,"dsantiago":1,"tetron":1,"Peiffap":1,"francescofuggitti":1,"vikram-nunna":1,"rex4539":1,"hrishikeshrt":1,"shakedbr":1,"MelissaBain":1,"stefanv":1,"domik82":1,"PandaDrunkard":1,"juusomer":1,"liusy58":1,"florian0410":1,"sasrazor":1,"JonisK":1,"MarcCote":1,"SreeVathsan32":1,"pratapan9":1,"dulinriley":1,"amar-laksh":1,"acsor":1,"radoering":1,"jschueller":1,"parthi2929":1,"roiDaniela":1,"amirebrahimi":1,"audreyseo":1,"vahanhov":1,"SHuang-Broad":1,"ankostis":1,"ghostogay":1,"mmalcomson":1,"julianfortune":1,"sys-walker":1,"leek2":1,"ainterr":1,"srujithpoondla03":1,"micahcochran":1,"MaxHorwood":1,"hzyrc6011":1,"QingGo":1,"NeuralNetwork":1,"sbalabanov-zz":1,"Welgriv":1,"phwuil":1,"MarcelWilson":1,"kasium":1,"tusharsadhwani":1},"pull_request_authors":{"ferdnyc":147,"dependabot[bot]":74,"lkk7":40,"peternowee":17,"tusharsadhwani":5,"juusomer":4,"SagaraBattousai":2,"step-security-bot":2,"henrywu2019":2,"johnyf":2,"AlexanderDokuchaev":2,"davidweichiang":2,"chrizzFTD":2,"qinyeli":1,"mathstuf":1,"ankostis":1,"ansonmiu0214":1,"hzyrc6011":1,"asellappen":1,"2br-2b":1,"kg86":1,"hrishikeshrt":1,"MaxHorwood":1,"hoverjmt":1,"blshkv":1,"eumiro":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:17.013Z","repositories_count":10167544,"issues_count":32012554,"pull_requests_count":100260947,"authors_count":10729845,"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":{"bug":2,"quoting":1,"parser":1},"past_year_pull_request_labels_count":{"dependencies":35,"github_actions":35,"conflicts":2},"past_year_issue_author_associations_count":{"MEMBER":9,"NONE":8,"CONTRIBUTOR":3},"past_year_pull_request_author_associations_count":{"MEMBER":64,"CONTRIBUTOR":41,"NONE":5},"past_year_issue_authors":{"ferdnyc":8,"cheikhnadiouf":2,"amar-laksh":1,"dulinriley":1,"juusomer":1,"lkk7":1,"loonatick-src":1,"MarcelWilson":1,"Peiffap":1,"tusharsadhwani":1,"wildoranges":1,"xmo-code":1},"past_year_pull_request_authors":{"ferdnyc":52,"dependabot[bot]":35,"lkk7":12,"juusomer":4,"tusharsadhwani":3,"davidweichiang":2,"chrizzFTD":2},"maintainers":[{"login":"ferdnyc","count":118,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":43,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"},{"login":"peternowee","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/peternowee"}],"active_maintainers":[{"login":"ferdnyc","count":60,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ferdnyc"},{"login":"lkk7","count":13,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/lkk7"}]},"events":{"total":{"IssuesEvent":29,"WatchEvent":43,"DeleteEvent":18,"IssueCommentEvent":217,"PushEvent":86,"PullRequestReviewEvent":70,"PullRequestReviewCommentEvent":58,"PullRequestEvent":94,"ForkEvent":10,"CreateEvent":27},"last_year":{"IssuesEvent":29,"WatchEvent":43,"DeleteEvent":18,"IssueCommentEvent":217,"PushEvent":86,"PullRequestReviewEvent":70,"PullRequestReviewCommentEvent":58,"PullRequestEvent":94,"ForkEvent":10,"CreateEvent":27}},"keywords":["dot-language","graphviz","hacktoberfest","python"],"dependencies":[{"ecosystem":"pypi","filepath":"requirements-conda.txt","sha":null,"kind":"manifest","created_at":"2022-07-18T08:17:19.157Z","updated_at":"2022-07-18T08:17:19.157Z","repository_link":"https://github.com/pydot/pydot/blob/main/requirements-conda.txt","dependencies":[{"id":246263382,"package_name":"graphviz","ecosystem":"pypi","requirements":"\u003e=2.38.0","direct":true,"kind":"runtime","optional":false},{"id":246263383,"package_name":"pyparsing","ecosystem":"pypi","requirements":"\u003e=2.0.1","direct":true,"kind":"runtime","optional":false},{"id":246263384,"package_name":"chardet","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-07-18T08:17:19.281Z","updated_at":"2022-07-18T08:17:19.281Z","repository_link":"https://github.com/pydot/pydot/blob/main/requirements.txt","dependencies":[{"id":246264198,"package_name":"chardet","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-07-18T08:17:19.605Z","updated_at":"2022-07-18T08:17:19.605Z","repository_link":"https://github.com/pydot/pydot/blob/main/setup.py","dependencies":[{"id":246265756,"package_name":"pyparsing","ecosystem":"pypi","requirements":"\u003e=2.1.4","direct":true,"kind":"runtime","optional":false}]}],"score":29.321291849826736,"created_at":"2025-09-08T11:19:05.172Z","updated_at":"2025-10-07T08:25:51.176Z","avatar_url":"https://github.com/pydot.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":13258891,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["distributed","graph-generation","graph-analysis","complex-networks","graph-algorithms","graph-theory","genomics","graph-visualization","tensor","autograd"],"project_url":"https://science.ecosyste.ms/api/v1/projects/69940","html_url":"https://science.ecosyste.ms/projects/69940"}