An open API service providing repository metadata for many open source software ecosystems.

GitHub / pythonnet / pythonnet

Python for .NET is a package that gives Python programmers nearly seamless integration with the .NET Common Language Runtime (CLR) and provides a powerful application scripting tool for .NET developers.

JSON API: http://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythonnet%2Fpythonnet
PURL: pkg:github/pythonnet/pythonnet

Stars: 5,295
Forks: 768
Open issues: 172

License: mit
Language: C#
Size: 9.56 MB
Dependencies parsed at: Pending

Created at: almost 12 years ago
Updated at: 7 days ago
Pushed at: 15 days ago
Last synced at: 6 days ago

Commit Stats

Commits: 1696
Authors: 110
Mean commits per author: 15.42
Development Distribution Score: 0.746
More commit stats: https://commits.ecosyste.ms/hosts/GitHub/repositories/pythonnet/pythonnet

Topics: clr, csharp, dotnet, ffi, hacktoberfest, mono, python, pythonnet

OpenSSF Scorecard report

4

Overall Score

10/10 Critical Risk
22/60 High Risk
10/50 Medium Risk
10/20 Low Risk
Generated on August 11, 2025 | Scorecard vv5.2.1-40-gf6ed084d
Security Checks
10/10
Binary-Artifacts
High Risk

no binaries found in the repo

Determines if the project has generated executable (binary) artifacts in the source repository.

10/10
Dangerous-Workflow
Critical Risk

no dangerous workflow patterns detected

Determines if the project's GitHub Action workflows avoid dangerous patterns.

10/10
License
Low Risk

license file detected

Determines if the project has defined a license.

Show details
ℹ️ Info: project has a license file: LICENSE:0
ℹ️ Info: FSF or OSI recognized license: MIT License: LICENSE:0
10/10
Packaging
Medium Risk

packaging workflow detected

Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.

Show details
ℹ️ Info: Project packages its releases by way of GitHub Actions.: .github/workflows/nuget-preview.yml:9
5/10
Maintained
High Risk

0 commit(s) and 6 issue activity found in the last 90 days -- score normalized to 5

Determines if the project is "actively maintained".

4/10
Vulnerabilities
High Risk

6 existing vulnerabilities detected

Determines if the project has open, known unfixed vulnerabilities.

Show details
⚠️ Warn: Project is vulnerable to: PYSEC-2021-140 / GHSA-9w8r-397f-prfh
⚠️ Warn: Project is vulnerable to: PYSEC-2023-117 / GHSA-mrwq-x4v8-fh7p
⚠️ Warn: Project is vulnerable to: PYSEC-2021-141 / GHSA-pq64-v7f5-gqh8
⚠️ Warn: Project is vulnerable to: PYSEC-2022-238 / GHSA-h3qr-fjhm-jphw
⚠️ Warn: Project is vulnerable to: PYSEC-2019-41 / GHSA-qfc5-mcwq-26q8
⚠️ Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6
3/10
Code-Review
High Risk

Found 5/14 approved changesets -- score normalized to 3

Determines if the project requires human code review before pull requests (aka merge requests) are merged.

0/10
CII-Best-Practices
Low Risk

no effort to earn an OpenSSF best practices badge detected

Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.

0/10
Fuzzing
Medium Risk

project is not fuzzed

Determines if the project uses fuzzing.

Show details
⚠️ Warn: no fuzzer integrations found
0/10
Pinned-Dependencies
Medium Risk

dependency not pinned by hash detected -- score normalized to 0

Determines if the project has declared and pinned the dependencies of its build process.

Show details
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ARM.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/ARM.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ARM.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/ARM.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/docs.yml/master?enable=pin
⚠️ Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/docs.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/docs.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/docs.yml/master?enable=pin
⚠️ Warn: third-party GitHubAction not pinned by hash: .github/workflows/main.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/main.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/main.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/main.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/main.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nuget-preview.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/nuget-preview.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nuget-preview.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/nuget-preview.yml/master?enable=pin
⚠️ Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nuget-preview.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/pythonnet/pythonnet/nuget-preview.yml/master?enable=pin
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/docs.yml:17
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/main.yml:68
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/main.yml:69
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/main.yml:73
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/main.yml:113
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/nuget-preview.yml:39
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/nuget-preview.yml:40
⚠️ Warn: pipCommand not pinned by hash: .github/workflows/nuget-preview.yml:44
ℹ️ Info: 0 out of 11 GitHub-owned GitHubAction dependencies pinned
ℹ️ Info: 0 out of 2 third-party GitHubAction dependencies pinned
ℹ️ Info: 0 out of 8 pipCommand dependencies pinned
0/10
SAST
Medium Risk

SAST tool is not run on all commits -- score normalized to 0

Determines if the project uses static code analysis.

Show details
⚠️ Warn: 0 commits out of 24 are checked with a SAST tool
0/10
Security-Policy
Medium Risk

security policy file not detected

Determines if the project has published a security policy.

Show details
⚠️ Warn: no security policy file detected
⚠️ Warn: no security file to analyze
⚠️ Warn: no security file to analyze
⚠️ Warn: no security file to analyze
0/10
Signed-Releases
High Risk

Project has not signed or included provenance with any releases.

Determines if the project cryptographically signs release artifacts.

Show details
⚠️ Warn: release artifact v3.0.1 not signed: https://api.github.com/repos/pythonnet/pythonnet/releases/81887659
⚠️ Warn: release artifact v3.0.1 does not have provenance: https://api.github.com/repos/pythonnet/pythonnet/releases/81887659
0/10
Token-Permissions
High Risk

detected GitHub workflow tokens with excessive permissions

Determines if the project's workflows follow the principle of least privilege.

Show details
ℹ️ Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs.yml:30
⚠️ Warn: no topLevel permission defined: .github/workflows/ARM.yml:1
⚠️ Warn: no topLevel permission defined: .github/workflows/docs.yml:1
⚠️ Warn: no topLevel permission defined: .github/workflows/main.yml:1
⚠️ Warn: no topLevel permission defined: .github/workflows/nuget-preview.yml:1
ℹ️ Info: no jobLevel write permissions found
N/A
Branch-Protection
Not Applicable

internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration

Determines if the default and release branches are protected with GitHub's branch protection settings.