{"id":358427,"url":"https://github.com/imr-framework/pypulseq","last_synced_at":"2026-06-23T01:30:27.963Z","repository":{"id":37412978,"uuid":"176641044","full_name":"imr-framework/pypulseq","owner":"imr-framework","description":"Pulseq in Python","archived":false,"fork":false,"pushed_at":"2026-06-01T16:25:17.000Z","size":3238,"stargazers_count":205,"open_issues_count":37,"forks_count":89,"subscribers_count":13,"default_branch":"master","last_synced_at":"2026-06-09T19:04:29.971Z","etag":null,"topics":["mri","mri-sequences","pulse-sequences","pulseq","python"],"latest_commit_sha":null,"homepage":"https://pypulseq.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/imr-framework.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-20T02:58:46.000Z","updated_at":"2026-06-02T04:34:07.000Z","dependencies_parsed_at":"2023-01-29T16:31:19.267Z","dependency_job_id":"3950d31a-ff38-438c-8488-81e58d8a9f55","html_url":"https://github.com/imr-framework/pypulseq","commit_stats":{"total_commits":213,"total_committers":16,"mean_commits":13.3125,"dds":0.5023474178403755,"last_synced_commit":"c246ff9ff0018ab9b5a6b4add3850f068f61b034"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/imr-framework/pypulseq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/sbom","scorecard":{"id":486293,"data":{"date":"2025-08-11","repo":{"name":"github.com/imr-framework/pypulseq","commit":"fdd029031dd1b8f50b8ccc28ff60e5485d689f37"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"9 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/publish-to-pypi.yml:66","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest.yml:15","Info: jobLevel 'actions' permission set to 'read': .github/workflows/report_pytest.yml:16","Info: jobLevel 'actions' permission set to 'read': .github/workflows/report_pytest.yml:75","Warn: no topLevel permission defined: .github/workflows/pre-commit.yml:1","Warn: no topLevel permission defined: .github/workflows/publish-to-pypi.yml:1","Warn: no topLevel permission defined: .github/workflows/pytest.yml:1","Warn: no topLevel permission defined: .github/workflows/report_pytest.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:86: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/publish-to-pypi.yml:21","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:29","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:31","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:36","Info:   0 out of  11 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   6 third-party GitHubAction dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU Affero General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":1,"reason":"branch protection is not maximal on development and all release branches","details":["Warn: branch protection not enabled for branch 'dev'","Info: 'allow deletion' disabled on branch 'master'","Info: 'force pushes' disabled on branch 'master'","Info: 'branch protection settings apply to administrators' is required to merge on branch 'master'","Warn: 'stale review dismissal' is disabled on branch 'master'","Warn: required approving review count is 1 on branch 'master'","Warn: codeowners review is not required on branch 'master'","Warn: 'last push approval' is disabled on branch 'master'","Warn: no status checks found to merge onto branch 'master'","Info: PRs are required in order to make changes on branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish-to-pypi.yml:35"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T17:54:22.931Z","repository_id":37412978,"created_at":"2025-08-19T17:54:22.931Z","updated_at":"2025-08-19T17:54:22.931Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34381762,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"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":"imr-framework","name":"iMR Framework","uuid":"37110500","kind":"user","description":"","email":"","website":null,"location":"New York","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/37110500?u=4717e450ed21e62c233d764cc195e8bdfdaf43ea\u0026v=4","repositories_count":12,"last_synced_at":"2023-03-01T16:05:15.230Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/imr-framework","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-12T12:50:53.132Z","updated_at":"2023-03-01T16:05:15.247Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework/repositories"},"packages":[{"id":2880355,"name":"pypulseq","ecosystem":"pypi","description":"Pulseq in Python","homepage":"https://github.com/imr-framework/pypulseq","licenses":"MIT License","normalized_licenses":["MIT"],"repository_url":"https://github.com/imr-framework/pypulseq","keywords_array":[],"namespace":null,"versions_count":14,"first_release_published_at":"2019-07-16T19:55:40.000Z","latest_release_published_at":"2026-01-16T10:56:32.000Z","latest_release_number":"1.5.0","last_synced_at":"2026-06-11T20:02:27.940Z","created_at":"2022-04-10T12:17:15.182Z","updated_at":"2026-06-11T20:03:36.152Z","registry_url":"https://pypi.org/project/pypulseq/","install_command":"pip install pypulseq --index-url https://pypi.org/simple","documentation_url":"https://pypulseq.readthedocs.io/en/latest/","metadata":{"funding":null,"documentation":"https://pypulseq.readthedocs.io/en/latest/","classifiers":["License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python :: 3"],"normalized_name":"pypulseq","project_status":null},"repo_metadata":{"id":37412978,"uuid":"176641044","full_name":"imr-framework/pypulseq","owner":"imr-framework","description":"Pulseq in Python","archived":false,"fork":false,"pushed_at":"2026-06-01T16:25:17.000Z","size":3238,"stargazers_count":205,"open_issues_count":37,"forks_count":89,"subscribers_count":13,"default_branch":"master","last_synced_at":"2026-06-09T19:04:29.971Z","etag":null,"topics":["mri","mri-sequences","pulse-sequences","pulseq","python"],"latest_commit_sha":null,"homepage":"https://pypulseq.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/imr-framework.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-20T02:58:46.000Z","updated_at":"2026-06-02T04:34:07.000Z","dependencies_parsed_at":"2023-01-29T16:31:19.267Z","dependency_job_id":"3950d31a-ff38-438c-8488-81e58d8a9f55","html_url":"https://github.com/imr-framework/pypulseq","commit_stats":{"total_commits":213,"total_committers":16,"mean_commits":13.3125,"dds":0.5023474178403755,"last_synced_commit":"c246ff9ff0018ab9b5a6b4add3850f068f61b034"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/imr-framework/pypulseq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/sbom","scorecard":{"id":486293,"data":{"date":"2025-08-11","repo":{"name":"github.com/imr-framework/pypulseq","commit":"fdd029031dd1b8f50b8ccc28ff60e5485d689f37"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"9 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/publish-to-pypi.yml:66","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest.yml:15","Info: jobLevel 'actions' permission set to 'read': .github/workflows/report_pytest.yml:16","Info: jobLevel 'actions' permission set to 'read': .github/workflows/report_pytest.yml:75","Warn: no topLevel permission defined: .github/workflows/pre-commit.yml:1","Warn: no topLevel permission defined: .github/workflows/publish-to-pypi.yml:1","Warn: no topLevel permission defined: .github/workflows/pytest.yml:1","Warn: no topLevel permission defined: .github/workflows/report_pytest.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pre-commit.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-to-pypi.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/publish-to-pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pytest.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/report_pytest.yml:86: update your workflow using https://app.stepsecurity.io/secureworkflow/imr-framework/pypulseq/report_pytest.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/publish-to-pypi.yml:21","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:29","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:31","Warn: pipCommand not pinned by hash: .github/workflows/pytest.yml:36","Info:   0 out of  11 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   6 third-party GitHubAction dependencies pinned","Info:   0 out of   4 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU Affero General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":1,"reason":"branch protection is not maximal on development and all release branches","details":["Warn: branch protection not enabled for branch 'dev'","Info: 'allow deletion' disabled on branch 'master'","Info: 'force pushes' disabled on branch 'master'","Info: 'branch protection settings apply to administrators' is required to merge on branch 'master'","Warn: 'stale review dismissal' is disabled on branch 'master'","Warn: required approving review count is 1 on branch 'master'","Warn: codeowners review is not required on branch 'master'","Warn: 'last push approval' is disabled on branch 'master'","Warn: no status checks found to merge onto branch 'master'","Info: PRs are required in order to make changes on branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/publish-to-pypi.yml:35"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-19T17:54:22.931Z","repository_id":37412978,"created_at":"2025-08-19T17:54:22.931Z","updated_at":"2025-08-19T17:54:22.931Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34215254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"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":"imr-framework","name":"iMR Framework","uuid":"37110500","kind":"user","description":"","email":"","website":null,"location":"New York","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/37110500?u=4717e450ed21e62c233d764cc195e8bdfdaf43ea\u0026v=4","repositories_count":12,"last_synced_at":"2023-03-01T16:05:15.230Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/imr-framework","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-12T12:50:53.132Z","updated_at":"2023-03-01T16:05:15.247Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imr-framework/repositories"},"tags":[{"name":"v1.4.2.post2","sha":"fe14c885e34ddf84c913533bbd1ae6e1976b0a3e","kind":"commit","published_at":"2026-03-05T13:09:16.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.4.2.post2","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.4.2.post2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.4.2.post2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2.post2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2.post2/manifests"},{"name":"v1.5.0.post1","sha":"9acd4f02fc7fcb2277721a49186bd5628dddbb6a","kind":"commit","published_at":"2026-01-29T13:42:10.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.5.0.post1","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.5.0.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.5.0.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.5.0.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.5.0.post1/manifests"},{"name":"v1.5.0","sha":"5f65fd2c8999655613d2cd6725437c9f0c7f994e","kind":"commit","published_at":"2026-01-16T10:03:19.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.5.0","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.5.0/manifests"},{"name":"v1.4.2.post1","sha":"234f4210773016d3ba996d2cb6e4527abcd32e52","kind":"commit","published_at":"2025-03-21T14:35:40.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.4.2.post1","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.4.2.post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.4.2.post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2.post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2.post1/manifests"},{"name":"v1.4.2","sha":"ff4f01fe6c072a5dbe22af0556efb25e128da13b","kind":"commit","published_at":"2024-06-21T08:22:22.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.4.2","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.4.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.4.2/manifests"},{"name":"1.4.0","sha":"67d999410acd6e2cf780d365b63dc31a67f54500","kind":"commit","published_at":"2023-03-03T14:57:18.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.4.0","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.4.0/manifests"},{"name":"1.3.1post1","sha":"cc9ccfb55f3d22ed54ca5a8608b21ca70e698c86","kind":"commit","published_at":"2021-05-03T15:57:15.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.3.1post1","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.3.1post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.3.1post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.3.1post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.3.1post1/manifests"},{"name":"1.3.1","sha":"c7b763cbbc368df2de2c7f05719f6c11c830932c","kind":"commit","published_at":"2021-04-12T17:39:00.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.3.1","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.3.1/manifests"},{"name":"1.2.0post4","sha":"ebe1fa2a1358ff0028535c227906722ae484a1ec","kind":"commit","published_at":"2021-01-12T17:58:22.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.2.0post4","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.2.0post4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.2.0post4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.2.0post4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.2.0post4/manifests"},{"name":"v.1.2.0.post3","sha":"d69f300c11f55e908160a3bbc7a60f6690c4a726","kind":"commit","published_at":"2020-06-16T17:15:05.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v.1.2.0.post3","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v.1.2.0.post3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v.1.2.0.post3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v.1.2.0.post3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v.1.2.0.post3/manifests"},{"name":"1.2.0.post2","sha":"95071a7da2513cb09eaceb9a3f3d2680f8117ac4","kind":"commit","published_at":"2020-06-16T11:37:47.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.2.0.post2","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.2.0.post2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.2.0.post2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.2.0.post2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.2.0.post2/manifests"},{"name":"v1.2.0post1","sha":"595351bc38ed0b57a359c4aa12d6b38c5b88f6d0","kind":"commit","published_at":"2020-03-09T01:07:38.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.2.0post1","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.2.0post1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.2.0post1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.2.0post1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.2.0post1/manifests"},{"name":"1.0.0","sha":"8173fe1a4a115c28f49081af86b31e61901378e9","kind":"commit","published_at":"2019-04-18T00:05:15.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/1.0.0","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/1.0.0/manifests"},{"name":"v1.0.0","sha":"8173fe1a4a115c28f49081af86b31e61901378e9","kind":"commit","published_at":"2019-04-18T00:05:15.000Z","download_url":"https://codeload.github.com/imr-framework/pypulseq/tar.gz/v1.0.0","html_url":"https://github.com/imr-framework/pypulseq/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/imr-framework/pypulseq@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2026-06-11T20:03:36.151Z","dependent_packages_count":4,"downloads":6312,"downloads_period":"last-month","dependent_repos_count":5,"rankings":{"downloads":10.411846279153607,"dependent_repos_count":6.622164055524607,"dependent_packages_count":1.8608537720730758,"stargazers_count":7.296206926150941,"forks_count":5.9116279247212145,"docker_downloads_count":null,"average":6.420539791524689},"purl":"pkg:pypi/pypulseq","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pypulseq","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pypulseq","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pypulseq/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-10T12:00:24.060Z","issues_count":127,"pull_requests_count":250,"avg_time_to_close_issue":12289216.453608247,"avg_time_to_close_pull_request":1987713.6770833333,"issues_closed_count":97,"pull_requests_closed_count":192,"pull_request_authors_count":40,"issue_authors_count":55,"avg_comments_per_issue":3.133858267716535,"avg_comments_per_pull_request":2.18,"merged_pull_requests_count":170,"bot_issues_count":0,"bot_pull_requests_count":22,"past_year_issues_count":18,"past_year_pull_requests_count":42,"past_year_avg_time_to_close_issue":2510151.8571428573,"past_year_avg_time_to_close_pull_request":998902.0588235294,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":17,"past_year_pull_request_authors_count":13,"past_year_issue_authors_count":11,"past_year_avg_comments_per_issue":3.2777777777777777,"past_year_avg_comments_per_pull_request":1.7380952380952381,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":8,"past_year_merged_pull_requests_count":13,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/issues","maintainers":[{"login":"schuenke","count":69,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schuenke"},{"login":"btasdelen","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/btasdelen"},{"login":"bilal-tasdelen","count":19,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bilal-tasdelen"},{"login":"sairamgeethanath","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sairamgeethanath"},{"login":"FrankZijlstra","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/FrankZijlstra"},{"login":"sravan953","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sravan953"},{"login":"mcencini","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mcencini"},{"login":"schmidtijoe","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schmidtijoe"},{"login":"imr-framework","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/imr-framework"},{"login":"LeoMcBills","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/LeoMcBills"}],"active_maintainers":[{"login":"schuenke","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schuenke"},{"login":"mcencini","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mcencini"},{"login":"btasdelen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/btasdelen"},{"login":"LeoMcBills","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/LeoMcBills"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pypulseq/codemeta","maintainers":[{"uuid":"imr-framework","login":"imr-framework","name":null,"email":null,"url":null,"packages_count":4,"html_url":"https://pypi.org/user/imr-framework/","role":null,"created_at":"2023-02-25T05:09:04.469Z","updated_at":"2023-02-25T05:09:04.469Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/imr-framework/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":886227,"maintainers_count":379497,"namespaces_count":0,"keywords_count":289179,"github":"pypi","metadata":{"funded_packages_count":54301},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-06-10T05:13:28.296Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":639897,"full_name":"imr-framework/pypulseq","default_branch":"master","total_commits":454,"total_committers":31,"total_bot_commits":20,"total_bot_committers":2,"mean_commits":14.64516129032258,"dds":0.6585903083700441,"past_year_total_commits":70,"past_year_total_committers":12,"past_year_total_bot_commits":11,"past_year_total_bot_committers":2,"past_year_mean_commits":5.833333333333333,"past_year_dds":0.6,"last_synced_at":"2026-06-14T14:01:11.466Z","last_synced_commit":"f5160a23e70fecf654df35bda9b5108585e7912d","created_at":"2023-03-09T08:49:58.638Z","updated_at":"2026-06-14T13:59:31.671Z","committers":[{"name":"Keerthi Sravan Ravi","email":"ks3621@columbia.edu","login":"sravan953","count":155},{"name":"Frank Zijlstra","email":"22915457+FrankZijlstra","login":"FrankZijlstra","count":63},{"name":"Patrick Schuenke","email":"37338697+schuenke","login":"schuenke","count":48},{"name":"Bilal Taşdelen","email":"bilaltasdelen@windowslive.com","login":"btasdelen","count":48},{"name":"mcencini","email":"matteo.cencini@gmail.com","login":"mcencini","count":30},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":17},{"name":"Sairam Geethanath","email":"30870273+sairamgeethanath","login":"sairamgeethanath","count":16},{"name":"veldmannm","email":"marten.veldmann@dzne.de","login":"mavel101","count":14},{"name":"iMR Framework","email":"37110500+imr-framework","login":"imr-framework","count":11},{"name":"wtclarke","email":"william.clarke@ndcn.ox.ac.uk","login":"wtclarke","count":10},{"name":"Helge Herthum","email":"115626510+h3lg3","login":"h3lg3","count":8},{"name":"Joseph G. Woods","email":"62885897+JosephGWoods","login":"JosephGWoods","count":4},{"name":"Gehua Tong","email":"31249056+tonggehua","login":"tonggehua","count":3},{"name":"gabuzi","email":"15203081+gabuzi","login":"gabuzi","count":3},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":3},{"name":"Christoph Kolbitsch","email":"christoph.kolbitsch@ptb.de","login":"ckolbPTB","count":3},{"name":"mzaiss","email":"mzaiss","login":"mzaiss","count":2},{"name":"Tyler Blazey","email":"blazey@wustl.edu","login":"tblazey","count":2},{"name":"Olesya Melnichenko","email":"31867007+olesya13","login":"olesya13","count":2},{"name":"Peng Yu","email":"peng.montreal@gmail.com","login":null,"count":1},{"name":"Andrew Dupuis","email":"andrew.dupuis@case.edu","login":"Andrew-Dupuis","count":1},{"name":"Felix","email":"fzimmermann89@gmail.com","login":"fzimmermann89","count":1},{"name":"Felix Landmeyer","email":"f.landmeyer@fz-juelich.de","login":"felixlandmeyer","count":1},{"name":"John Christensen","email":"Johnedchristensen@gmail.com","login":"JohnEdChristensen","count":1},{"name":"Lorena A. Barba","email":"labarba@gwu.edu","login":"labarba","count":1},{"name":"Luke Edwards","email":"lukejoele+github@gmail.com","login":"lukeje","count":1},{"name":"Rik K","email":"ritika.khot05@gmail.com","login":"RikRolling","count":1},{"name":"Yaroslav Halchenko","email":"debian@onerussian.com","login":"yarikoptic","count":1},{"name":"jbbacon","email":"125661487+jbbacon","login":"jbbacon","count":1},{"name":"nnmurthy","email":"nnmurthy@umich.edu","login":"nnmurthy","count":1},{"name":"skarrea","email":"56844686+skarrea","login":"skarrea","count":1}],"past_year_committers":[{"name":"mcencini","email":"matteo.cencini@gmail.com","login":"mcencini","count":28},{"name":"Patrick Schuenke","email":"37338697+schuenke","login":"schuenke","count":15},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":9},{"name":"Joseph G. Woods","email":"62885897+JosephGWoods","login":"JosephGWoods","count":4},{"name":"Christoph Kolbitsch","email":"christoph.kolbitsch@ptb.de","login":"ckolbPTB","count":3},{"name":"mzaiss","email":"mzaiss","login":"mzaiss","count":2},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":2},{"name":"Olesya Melnichenko","email":"31867007+olesya13","login":"olesya13","count":2},{"name":"Bilal Taşdelen","email":"tasdelen@usc.edu","login":"btasdelen","count":2},{"name":"Yaroslav Halchenko","email":"debian@onerussian.com","login":"yarikoptic","count":1},{"name":"Rik K","email":"ritika.khot05@gmail.com","login":"RikRolling","count":1},{"name":"Luke Edwards","email":"lukejoele+github@gmail.com","login":"lukeje","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-15T00:00:11.107Z","repositories_count":6260144,"commits_count":882523366,"contributors_count":35090036,"owners_count":1166912,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"imr-framework/pypulseq","html_url":"https://github.com/imr-framework/pypulseq","last_synced_at":"2026-06-11T20:01:24.242Z","status":"active","issues_count":127,"pull_requests_count":252,"avg_time_to_close_issue":12289216.453608247,"avg_time_to_close_pull_request":1987713.6770833333,"issues_closed_count":97,"pull_requests_closed_count":192,"pull_request_authors_count":41,"issue_authors_count":55,"avg_comments_per_issue":3.133858267716535,"avg_comments_per_pull_request":2.1785714285714284,"merged_pull_requests_count":170,"bot_issues_count":0,"bot_pull_requests_count":22,"past_year_issues_count":18,"past_year_pull_requests_count":43,"past_year_avg_time_to_close_issue":2510151.8571428573,"past_year_avg_time_to_close_pull_request":991605.9375,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":16,"past_year_pull_request_authors_count":14,"past_year_issue_authors_count":11,"past_year_avg_comments_per_issue":3.2777777777777777,"past_year_avg_comments_per_pull_request":1.7674418604651163,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":8,"past_year_merged_pull_requests_count":13,"created_at":"2023-05-14T21:44:15.049Z","updated_at":"2026-06-11T20:01:24.242Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/imr-framework%2Fpypulseq/issues","issue_labels_count":{"table":{"bug":37,"enhancement":11,"help wanted":1,"documentation":1,"question":1}},"pull_request_labels_count":{"table":{"bug-fix":25,"enhancement":24,"release":3,"github_actions":2,"documentation":2,"dependencies":2,"bug":1}},"issue_author_associations_count":{"table":{"NONE":63,"CONTRIBUTOR":35,"COLLABORATOR":28,"OWNER":1}},"pull_request_author_associations_count":{"table":{"COLLABORATOR":116,"CONTRIBUTOR":106,"NONE":30}},"issue_authors":{"table":{"schuenke":14,"h3lg3":8,"tonggehua":7,"sairamgeethanath":6,"conveyanand":6,"wtclarke":5,"mavel101":5,"pcasl":4,"KerstinKaspar":3,"Mmj94":3,"tblazey":3,"Nikbert":3,"felixlandmeyer":3,"fzimmermann89":3,"shenzhouxiaohao-cpu":3,"gabuzi":3,"ZhengguoTan":2,"zhengliuer":2,"jweine":2,"schmidtijoe":2,"bilal-tasdelen":2,"btasdelen":2,"rextlfung":2,"mcencini":2,"ritagnunes":2,"Michaelsqj":1,"ckolbPTB":1,"FrankZijlstra":1,"mkulam":1,"ZemaTimoteo":1,"asgaspar":1,"imr-framework":1,"M4a1x":1,"joergfelder":1,"sravan953":1,"SimoneHufnagel":1,"ShannonZ":1,"schote":1,"lukas-k":1,"turbotage":1,"L2roche":1,"nathanielatom":1,"J-Endres":1,"timnotavailable":1,"hfahad":1,"snawarhussain":1,"opennog":1,"tarantimofey":1,"grlee77":1,"ThanasisCH01":1,"maddin200":1,"magdamd":1,"dornstto":1,"curtcorum":1,"pkash16":1}},"pull_request_authors":{"table":{"schuenke":55,"FrankZijlstra":27,"btasdelen":20,"pre-commit-ci[bot]":20,"mcencini":19,"h3lg3":19,"bilal-tasdelen":17,"mavel101":12,"wtclarke":7,"sairamgeethanath":6,"Nikbert":3,"sravan953":3,"yarikoptic":3,"fzimmermann89":3,"BenWilhelmUniklinikFreiburg":2,"SherineBrahma":2,"albertx-wang":2,"tonggehua":2,"ckolbPTB":2,"jbbacon":2,"felixlandmeyer":2,"dependabot[bot]":2,"gabuzi":2,"JohnEdChristensen":2,"tblazey":2,"nnmurthy":1,"Moji3h":1,"dabosch":1,"labarba":1,"skarrea":1,"Imraj-Singh":1,"Happinessjump":1,"mzaiss":1,"markus-zimmermann":1,"Andrew-Dupuis":1,"calderds":1,"joshjon":1,"yupbank":1,"Cwis":1,"LeoMcBills":1,"alice-carre":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-15T00:00:22.443Z","repositories_count":14809212,"issues_count":33147154,"pull_requests_count":109361927,"authors_count":11307313,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{"bug-fix":1,"enhancement":1}},"past_year_issue_author_associations_count":{"table":{"NONE":15,"COLLABORATOR":2,"CONTRIBUTOR":1}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":24,"COLLABORATOR":11,"NONE":7}},"past_year_issue_authors":{"table":{"conveyanand":6,"shenzhouxiaohao-cpu":3,"ckolbPTB":1,"J-Endres":1,"M4a1x":1,"mcencini":1,"nathanielatom":1,"pcasl":1,"schuenke":1,"ShannonZ":1,"tarantimofey":1}},"past_year_pull_request_authors":{"table":{"mcencini":15,"pre-commit-ci[bot]":8,"schuenke":4,"btasdelen":3,"albertx-wang":2,"ckolbPTB":2,"dabosch":1,"Happinessjump":1,"Imraj-Singh":1,"LeoMcBills":1,"mavel101":1,"Moji3h":1,"mzaiss":1,"yarikoptic":1}},"maintainers":[{"table":{"login":"schuenke","count":69,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schuenke"}},{"table":{"login":"btasdelen","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/btasdelen"}},{"table":{"login":"bilal-tasdelen","count":19,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bilal-tasdelen"}},{"table":{"login":"sairamgeethanath","count":12,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sairamgeethanath"}},{"table":{"login":"FrankZijlstra","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/FrankZijlstra"}},{"table":{"login":"sravan953","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sravan953"}},{"table":{"login":"mcencini","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mcencini"}},{"table":{"login":"schmidtijoe","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schmidtijoe"}},{"table":{"login":"imr-framework","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/imr-framework"}},{"table":{"login":"LeoMcBills","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/LeoMcBills"}}],"active_maintainers":[{"table":{"login":"schuenke","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/schuenke"}},{"table":{"login":"mcencini","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mcencini"}},{"table":{"login":"btasdelen","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/btasdelen"}},{"table":{"login":"LeoMcBills","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/LeoMcBills"}}]}},"events":{"total":{"ReleaseEvent":1,"DeleteEvent":20,"MemberEvent":2,"PullRequestEvent":120,"ForkEvent":16,"DiscussionEvent":1,"IssuesEvent":70,"WatchEvent":59,"IssueCommentEvent":314,"PushEvent":156,"PullRequestReviewCommentEvent":47,"PullRequestReviewEvent":112,"CreateEvent":27},"last_year":{"DeleteEvent":6,"MemberEvent":1,"PullRequestEvent":28,"ForkEvent":4,"DiscussionEvent":1,"IssuesEvent":24,"WatchEvent":19,"IssueCommentEvent":119,"PushEvent":53,"PullRequestReviewCommentEvent":24,"PullRequestReviewEvent":45,"CreateEvent":9}},"keywords":["mri","mri-sequences","pulse-sequences","pulseq","python"],"dependencies":[{"ecosystem":"pypi","filepath":"doc/readthedocs_requirements.txt","sha":null,"kind":"manifest","created_at":"2023-01-29T16:31:19.157Z","updated_at":"2023-01-29T16:31:19.157Z","repository_link":"https://github.com/imr-framework/pypulseq/blob/master/doc/readthedocs_requirements.txt","dependencies":[{"id":7227322428,"package_name":"furo","ecosystem":"pypi","requirements":"==2021.4.11b34","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2023-01-29T16:31:19.190Z","updated_at":"2023-01-29T16:31:19.190Z","repository_link":"https://github.com/imr-framework/pypulseq/blob/master/setup.py","dependencies":[{"id":7227322448,"package_name":"coverage","ecosystem":"pypi","requirements":"\u003e=6.2","direct":true,"kind":"runtime","optional":false},{"id":7227322449,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=3.5.2","direct":true,"kind":"runtime","optional":false},{"id":7227322450,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=1.19.5","direct":true,"kind":"runtime","optional":false},{"id":7227322451,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.8.1","direct":true,"kind":"runtime","optional":false},{"id":7227322452,"package_name":"sigpy","ecosystem":"pypi","requirements":"==0.1.23","direct":true,"kind":"runtime","optional":false}]}],"score":17.674715823417397,"created_at":"2025-04-11T10:22:44.177Z","updated_at":"2026-06-23T01:30:27.963Z","avatar_url":"https://github.com/imr-framework.png","language":"Python","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/358427","html_url":"https://summary.ecosyste.ms/projects/358427"}