{"id":906,"name":"Pylinac","description":"Pylinac: Image analysis for routine quality assurance in radiotherapy - Published in JOSS (2023)","url":"https://github.com/jrkerns/pylinac","last_synced_at":"2025-09-04T16:11:25.228Z","repository":{"id":21848066,"uuid":"25171290","full_name":"jrkerns/pylinac","owner":"jrkerns","description":"An image analysis library for medical physics","archived":false,"fork":false,"pushed_at":"2025-09-03T15:48:35.000Z","size":1262051,"stargazers_count":176,"open_issues_count":97,"forks_count":114,"subscribers_count":26,"default_branch":"master","last_synced_at":"2025-09-04T06:42:57.441Z","etag":null,"topics":["image-analysis","image-processing","medical-physics","python","radiation-oncology"],"latest_commit_sha":null,"homepage":"https://pylinac.readthedocs.io/en/latest/","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/jrkerns.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-10-13T18:17:21.000Z","updated_at":"2025-09-03T15:48:38.000Z","dependencies_parsed_at":"2023-09-30T07:18:16.965Z","dependency_job_id":"224c04ef-372c-4f5f-ad04-b100512d3f88","html_url":"https://github.com/jrkerns/pylinac","commit_stats":{"total_commits":1563,"total_committers":16,"mean_commits":97.6875,"dds":"0.24568138195777356","last_synced_commit":"6fc6c43c124ecd5be405ac4a4c02e71db4893688"},"previous_names":[],"tags_count":70,"template":false,"template_full_name":null,"purl":"pkg:github/jrkerns/pylinac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/sbom","scorecard":{"id":536848,"data":{"date":"2025-08-11","repo":{"name":"github.com/jrkerns/pylinac","commit":"ccaece9057f130f0e25346ebe731e4668fa576ae"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","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":"Maintained","score":10,"reason":"30 commit(s) and 0 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":"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":"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/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/codacy_coverage.yml:1","Warn: no topLevel permission defined: .github/workflows/pypi_upload.yml:1","Warn: no topLevel permission defined: .github/workflows/python-publish.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":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":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.5.0.1 not signed: https://api.github.com/repos/jrkerns/pylinac/releases/2845796","Warn: release artifact v1.4.0 not signed: https://api.github.com/repos/jrkerns/pylinac/releases/2635089","Warn: release artifact v1.5.0.1 does not have provenance: https://api.github.com/repos/jrkerns/pylinac/releases/2845796","Warn: release artifact v1.4.0 does not have provenance: https://api.github.com/repos/jrkerns/pylinac/releases/2635089"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"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/codacy_coverage.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/codacy_coverage.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/codacy_coverage.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/codacy_coverage.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/python-publish.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-publish.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/python-publish.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/python-publish.yml:25","Warn: pipCommand not pinned by hash: .github/workflows/python-publish.yml:26","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'","Warn: branch protection not enabled for branch 'release-v3.17'"],"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"}}]},"last_synced_at":"2025-08-20T07:12:06.345Z","repository_id":21848066,"created_at":"2025-08-20T07:12:06.345Z","updated_at":"2025-08-20T07:12:06.345Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273596633,"owners_count":25134259,"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-04T02:00:08.968Z","response_time":61,"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":"jrkerns","name":"James Kerns","uuid":"4803336","kind":"user","description":"Tech Lead, Software Developer","email":"","website":null,"location":"Houston, TX","twitter":null,"company":"Radformation","icon_url":"https://avatars.githubusercontent.com/u/4803336?u=a07dc5354679887a6b97a52bf798b6876db483ed\u0026v=4","repositories_count":3,"last_synced_at":"2023-02-26T11:25:20.709Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/jrkerns","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-09T23:03:47.876Z","updated_at":"2023-02-26T11:25:20.730Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns/repositories"},"packages":[{"id":2875075,"name":"pylinac","ecosystem":"pypi","description":"A toolkit for performing TG-142 QA-related tasks on a linear accelerator","homepage":null,"licenses":"MIT License","normalized_licenses":["MIT"],"repository_url":"https://github.com/jrkerns/pylinac","keywords_array":["TG-142","analysis","image","medical","physics"],"namespace":null,"versions_count":133,"first_release_published_at":"2014-10-19T02:46:26.000Z","latest_release_published_at":"2025-08-19T14:44:06.000Z","latest_release_number":"3.36.0","last_synced_at":"2025-09-03T20:05:39.012Z","created_at":"2022-04-10T12:14:36.835Z","updated_at":"2025-09-04T06:29:32.874Z","registry_url":"https://pypi.org/project/pylinac/","install_command":"pip install pylinac --index-url https://pypi.org/simple","documentation_url":"https://pylinac.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Intended Audience :: Developers","Intended Audience :: Healthcare Industry","Intended Audience :: Science/Research","License :: OSI Approved :: MIT License","Natural Language :: English","Programming Language :: Python","Programming Language :: Python :: 3","Topic :: Scientific/Engineering :: Image Recognition","Topic :: Scientific/Engineering :: Medical Science Apps.","Topic :: Scientific/Engineering :: Physics","Topic :: Software Development :: Libraries"],"normalized_name":"pylinac","project_status":null},"repo_metadata":{"id":21848066,"uuid":"25171290","full_name":"jrkerns/pylinac","owner":"jrkerns","description":"An image analysis library for medical physics","archived":false,"fork":false,"pushed_at":"2025-08-27T20:58:17.000Z","size":1261574,"stargazers_count":175,"open_issues_count":97,"forks_count":114,"subscribers_count":26,"default_branch":"master","last_synced_at":"2025-08-27T23:54:15.579Z","etag":null,"topics":["image-analysis","image-processing","medical-physics","python","radiation-oncology"],"latest_commit_sha":null,"homepage":"https://pylinac.readthedocs.io/en/latest/","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/jrkerns.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-10-13T18:17:21.000Z","updated_at":"2025-08-27T20:58:21.000Z","dependencies_parsed_at":"2023-09-30T07:18:16.965Z","dependency_job_id":"224c04ef-372c-4f5f-ad04-b100512d3f88","html_url":"https://github.com/jrkerns/pylinac","commit_stats":{"total_commits":1563,"total_committers":16,"mean_commits":97.6875,"dds":"0.24568138195777356","last_synced_commit":"6fc6c43c124ecd5be405ac4a4c02e71db4893688"},"previous_names":[],"tags_count":70,"template":false,"template_full_name":null,"purl":"pkg:github/jrkerns/pylinac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/sbom","scorecard":{"id":536848,"data":{"date":"2025-08-11","repo":{"name":"github.com/jrkerns/pylinac","commit":"ccaece9057f130f0e25346ebe731e4668fa576ae"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","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":"Maintained","score":10,"reason":"30 commit(s) and 0 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":"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":"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/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/codacy_coverage.yml:1","Warn: no topLevel permission defined: .github/workflows/pypi_upload.yml:1","Warn: no topLevel permission defined: .github/workflows/python-publish.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":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":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: MIT License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.5.0.1 not signed: https://api.github.com/repos/jrkerns/pylinac/releases/2845796","Warn: release artifact v1.4.0 not signed: https://api.github.com/repos/jrkerns/pylinac/releases/2635089","Warn: release artifact v1.5.0.1 does not have provenance: https://api.github.com/repos/jrkerns/pylinac/releases/2845796","Warn: release artifact v1.4.0 does not have provenance: https://api.github.com/repos/jrkerns/pylinac/releases/2635089"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"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/codacy_coverage.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/codacy_coverage.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/codacy_coverage.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/codacy_coverage.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pypi_upload.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/pypi_upload.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/python-publish.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-publish.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/jrkerns/pylinac/python-publish.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/python-publish.yml:25","Warn: pipCommand not pinned by hash: .github/workflows/python-publish.yml:26","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'","Warn: branch protection not enabled for branch 'release-v3.17'"],"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"}}]},"last_synced_at":"2025-08-20T07:12:06.345Z","repository_id":21848066,"created_at":"2025-08-20T07:12:06.345Z","updated_at":"2025-08-20T07:12:06.345Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273501981,"owners_count":25117095,"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-03T02:00:09.631Z","response_time":76,"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":"jrkerns","name":"James Kerns","uuid":"4803336","kind":"user","description":"Tech Lead, Software Developer","email":"","website":null,"location":"Houston, TX","twitter":null,"company":"Radformation","icon_url":"https://avatars.githubusercontent.com/u/4803336?u=a07dc5354679887a6b97a52bf798b6876db483ed\u0026v=4","repositories_count":3,"last_synced_at":"2023-02-26T11:25:20.709Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/jrkerns","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-09T23:03:47.876Z","updated_at":"2023-02-26T11:25:20.730Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrkerns/repositories"},"tags":[{"name":"v3.17","sha":"086688d88a34914d387a772df75882d120a7f166","kind":"commit","published_at":"2023-11-14T22:19:49.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v3.17","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v3.17","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v3.17","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v3.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v3.17/manifests"},{"name":"v3.0rc1","sha":"5062c647d5ad67e042d1ad59c24df19b0010bd42","kind":"commit","published_at":"2021-06-09T21:23:05.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v3.0rc1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v3.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v3.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v3.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v3.0rc1/manifests"},{"name":"v2.5.1","sha":"4a876cdde914fc145e24212bcd1c8eb31c155f46","kind":"commit","published_at":"2021-05-12T16:27:36.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.5.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.5.1/manifests"},{"name":"v2.4.0.3","sha":"ff7fbe8c33b55fe65dd84398c24fd91f5c30c251","kind":"commit","published_at":"2021-02-12T00:13:31.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.4.0.3","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.3/manifests"},{"name":"v2.4.0.4","sha":"ff7fbe8c33b55fe65dd84398c24fd91f5c30c251","kind":"commit","published_at":"2021-02-12T00:13:31.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.4.0.4","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.4.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.4.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.4/manifests"},{"name":"v2.4.0.2","sha":"06a48d97e3650923e0f5929ae1dcb72c1562f958","kind":"commit","published_at":"2020-12-10T23:31:32.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.4.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.2/manifests"},{"name":"2.4.0.1","sha":"49848d476bf9dff090a891837038bf586ce6cdfa","kind":"commit","published_at":"2020-12-03T01:13:15.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/2.4.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/2.4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@2.4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.4.0.1/manifests"},{"name":"v2.4.0.0","sha":"94e264261df5dadc3ab66cdcc7e470fb7ceb083f","kind":"commit","published_at":"2020-11-29T15:23:56.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.4.0.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.4.0.0/manifests"},{"name":"v2.3.1.2-qat","sha":"fc504b2c9fbab89ca6832bf227663832bb1cb609","kind":"tag","published_at":"2020-08-06T04:00:06.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.3.1.2-qat","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.3.1.2-qat","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.3.1.2-qat","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1.2-qat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1.2-qat/manifests"},{"name":"v2.3.1.1-qat","sha":"bc77780ed1d35b17cb84a8951737e8dd25170cf7","kind":"tag","published_at":"2020-08-06T03:32:04.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.3.1.1-qat","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.3.1.1-qat","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.3.1.1-qat","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1.1-qat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1.1-qat/manifests"},{"name":"v2.3.2","sha":"689d7c13b78c6796e917a9be91c63a64c935b37e","kind":"commit","published_at":"2020-05-11T21:08:38.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.3.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.2/manifests"},{"name":"v2.3.1","sha":"458b29733a2ac6198bfadab904609398ef30c3cb","kind":"commit","published_at":"2020-05-06T01:18:42.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.3.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"199e05f2382f7eeca17ffd696f902cdb50233be3","kind":"commit","published_at":"2020-05-01T17:03:38.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.3.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.3.0/manifests"},{"name":"v2.2.8","sha":"ad10a4835580a9e8e177962254d277e44ec078dc","kind":"commit","published_at":"2020-04-09T00:36:30.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.8","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.8/manifests"},{"name":"v2.2.7","sha":"5702bb0b67acb8216ec2cf5ea78dbb5e20fa3069","kind":"commit","published_at":"2019-09-06T00:06:30.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.7","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.7/manifests"},{"name":"v2.2.6","sha":"95d3ea6b8f853beb4c9729f36b5451bbc4e7e2a7","kind":"commit","published_at":"2019-03-21T15:10:13.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.6","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.6/manifests"},{"name":"v2.2.5.1","sha":"1c090fc9170e900ac7ccd12284201d1e611bc762","kind":"commit","published_at":"2019-03-17T04:18:25.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.5.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.5.1/manifests"},{"name":"v2.2.5","sha":"cba27a69da4fbc33c68eaec2668f40537c6849c5","kind":"commit","published_at":"2019-03-17T03:25:34.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.5","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.5/manifests"},{"name":"v2.2.4","sha":"157bf2be171a125859503d6c45a439105dc464dd","kind":"commit","published_at":"2019-03-10T00:25:04.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.4","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.4/manifests"},{"name":"v2.2.3.1","sha":"5fce2634a74a6f1bf49ccddffc869ec7c98ae99c","kind":"commit","published_at":"2019-02-26T00:43:57.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.3.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.3.1/manifests"},{"name":"v2.2.2","sha":"27f8177ae49b2164fa185e28e3166f511dea9ddf","kind":"commit","published_at":"2019-02-25T01:25:10.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"a4bb9d0a89860c2957ce9a00267832383d944d84","kind":"commit","published_at":"2018-11-16T03:43:27.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.1/manifests"},{"name":"v2.2.0.0","sha":"6d7c7b3f5be83334efea5a19acc493441b0f05e6","kind":"commit","published_at":"2018-10-25T01:04:51.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.2.0.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.2.0.0/manifests"},{"name":"2.1.0.2","sha":"eaca1c4291aeb1a5675d895c24dba22ff22de58b","kind":"commit","published_at":"2018-10-20T02:10:27.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/2.1.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/2.1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@2.1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.1.0.2/manifests"},{"name":"v2.1.0.1","sha":"5d545a2a4111dc7944d6b4285dc97f0024cc2173","kind":"commit","published_at":"2018-06-01T14:43:45.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.1.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.1.0.1/manifests"},{"name":"2.1.0.1","sha":"5d545a2a4111dc7944d6b4285dc97f0024cc2173","kind":"commit","published_at":"2018-06-01T14:43:45.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/2.1.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/2.1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@2.1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/2.1.0.1/manifests"},{"name":"v2.0.2","sha":"d68b03a4734986a26157a85d79464fa2e4aab2ba","kind":"commit","published_at":"2017-05-31T11:42:14.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"3ecc90f7a314f4f6ce860196250c3d7aefd4afa2","kind":"commit","published_at":"2017-04-23T23:20:17.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"f12a7f7d9f7d320f7949b31591ad9a278d83661b","kind":"commit","published_at":"2017-04-23T21:36:58.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v2.0.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v2.0.0/manifests"},{"name":"v1.9.0","sha":"26607926c9d7115163ffb3fffa37e9383f855ce8","kind":"commit","published_at":"2017-02-15T03:04:42.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.9.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.9.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.9.0/manifests"},{"name":"v1.8.0","sha":"708bd1c063a459d7d3e37ec543f8997c347cf218","kind":"commit","published_at":"2017-01-07T23:05:24.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.8.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.8.0/manifests"},{"name":"v1.7.2","sha":"9525a578ade9802df880c893b67b96e945c7bb7e","kind":"commit","published_at":"2016-12-05T03:02:28.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.7.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.7.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.2/manifests"},{"name":"v1.7.1.1","sha":"da7d30f4fc87b3e5da42e866a2361a82c2825ebb","kind":"commit","published_at":"2016-10-13T22:35:16.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.7.1.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.1.1/manifests"},{"name":"v1.7.1","sha":"5804f182033310799e08fd835d87117021d35c96","kind":"commit","published_at":"2016-10-13T16:30:44.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.7.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.7.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.1/manifests"},{"name":"v1.7.0","sha":"49511dfa7f70b15531faed000299fabee7917c5f","kind":"commit","published_at":"2016-10-09T11:59:40.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.7.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.7.0/manifests"},{"name":"v1.5.5.0","sha":"917559b6b70ac9d8f228491fd118ad60e8082601","kind":"commit","published_at":"2016-04-18T19:26:16.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.5.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.5.0/manifests"},{"name":"v1.5.4.0","sha":"1212deb6a3e4391fa230f5e592b12ee3d6c582c3","kind":"commit","published_at":"2016-04-17T19:33:49.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.4.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.4.0/manifests"},{"name":"v1.5.3.2","sha":"4ed1b40b990d44d3dcb385b49084e0ecb19c2c15","kind":"commit","published_at":"2016-04-12T16:33:43.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.3.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3.2/manifests"},{"name":"v1.5.3.1","sha":"a83255d570893dee7ea068d59a4c53909ab2eda8","kind":"commit","published_at":"2016-04-12T16:23:17.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.3.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3.1/manifests"},{"name":"v1.5.3","sha":"175b40b30ba4b023972a61a08d1f43289d750fb6","kind":"commit","published_at":"2016-04-08T06:32:23.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.3","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.3/manifests"},{"name":"v1.5.1.0","sha":"1fb8e7a433f3f9c53f33caf9b4db52c8a7065553","kind":"commit","published_at":"2016-04-08T03:56:30.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.1.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.1.0/manifests"},{"name":"v1.5.0.2","sha":"7eba16fdeb04bb0551ab74d8b2fcac5f713974a6","kind":"commit","published_at":"2016-03-19T06:06:46.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0.2/manifests"},{"name":"v1.5.0.1","sha":"2aa7f478e0ae11b816137d81e3272e71f7d52ca4","kind":"commit","published_at":"2016-03-19T05:42:33.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0.1/manifests"},{"name":"v1.5.0","sha":"3ce4f2dbc523f081183a3bead9cb913441340cc3","kind":"commit","published_at":"2016-03-19T04:53:11.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.5.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.5.0/manifests"},{"name":"v1.4.1.1","sha":"afaa77808aac9b80ad47f66e87f21a330f67d985","kind":"commit","published_at":"2016-03-04T03:12:19.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.1.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1.1/manifests"},{"name":"v1.4.1final","sha":"87fd9a274dc66bda38dbaeb4ee459d0fb06f5413","kind":"commit","published_at":"2016-03-04T02:53:18.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.1final","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.1final","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.1final","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1final","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1final/manifests"},{"name":"v1.4.1b","sha":"84cde99bfedf09055eaca0395b8526cbde5bab55","kind":"commit","published_at":"2016-03-04T02:47:11.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.1b","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.1b","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.1b","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1b","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1b/manifests"},{"name":"v1.4.1","sha":"84cde99bfedf09055eaca0395b8526cbde5bab55","kind":"commit","published_at":"2016-03-04T02:47:11.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"5e3130ce006ca8b4290472818436c5e402c4ac04","kind":"commit","published_at":"2016-02-17T19:55:56.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.0/manifests"},{"name":"v1.4.0.1","sha":"5be2d44701bf5361788d572ff098d6e3cf91541a","kind":"commit","published_at":"2016-02-17T19:55:04.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.4.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.4.0.1/manifests"},{"name":"v1.3.2","sha":"1f8ddbe104936643441b120463a4d4f785fc2f84","kind":"commit","published_at":"2016-02-06T16:42:06.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.3.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.3.2/manifests"},{"name":"v1.3.0","sha":"93c0d5cb4ae559dbb3d93220a24c44fec143acea","kind":"commit","published_at":"2015-12-22T22:17:36.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.3.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.3.0/manifests"},{"name":"v1.2.2","sha":"c6e5ddb80955f2f3eb20d89969f90f2e605d991a","kind":"commit","published_at":"2015-12-11T23:03:11.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.2.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.2.2/manifests"},{"name":"v1.2.1","sha":"324c5e120f657f33cb53bf0ed2fca20f1eaec8ba","kind":"commit","published_at":"2015-12-11T03:14:46.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.2.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.2.1/manifests"},{"name":"v1.1.0","sha":"1d9e1308553c5903265f8909bdc4eb0e7b2b7489","kind":"commit","published_at":"2015-11-10T01:38:14.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.1.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.1.0/manifests"},{"name":"v1.0.3","sha":"b5828e71de3d9aff9abbafc6b119085f03755735","kind":"commit","published_at":"2015-11-04T16:07:25.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.0.3","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"37f3f67e930f81af0d28f0dc9fe23c3af383c8e9","kind":"commit","published_at":"2015-10-16T23:14:04.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.2/manifests"},{"name":"v1.0.0","sha":"d11574980febad6582e46aa6ebdbb555417e5d18","kind":"commit","published_at":"2015-10-10T20:26:49.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v1.0.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v1.0.0/manifests"},{"name":"v0.8.0","sha":"864dd84ae2e6b8cf9e1f621e85faa1252dd6f08f","kind":"commit","published_at":"2015-07-28T18:11:24.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.8.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.8.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.8.0/manifests"},{"name":"v0.6.0.6","sha":"ec645ff87b21d57772e5e14a40ab1621bfb98796","kind":"commit","published_at":"2015-06-17T15:41:48.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.6.0.6","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.6.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.6.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.6.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.6.0.6/manifests"},{"name":"v0.5.0.2","sha":"e92d5edc4a5894cb9c19fedc664bc63aaa4c4a1b","kind":"commit","published_at":"2015-04-06T22:26:45.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.5.0.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.5.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.5.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.5.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.5.0.2/manifests"},{"name":"v0.5.0.1","sha":"040e43a70c63311a5eee0f5ab2f759dd5eb6f569","kind":"commit","published_at":"2015-04-06T22:11:38.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.5.0.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.5.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.5.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.5.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.5.0.1/manifests"},{"name":"v0.4.1","sha":"adca1f0e29c7ff3ab92bb70fc15d21efc015096d","kind":"commit","published_at":"2015-03-14T18:36:53.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.4.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.4.1/manifests"},{"name":"v0.4.0a","sha":"5aca3f311574e121b72a8cc841e6aa8bf5dfe451","kind":"commit","published_at":"2015-02-18T22:04:27.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.4.0a","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.4.0a","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.4.0a","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.4.0a","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.4.0a/manifests"},{"name":"0.3.0","sha":"45f9627e14402e0be70f94277ee8e57dd27eee7a","kind":"commit","published_at":"2015-02-11T21:39:31.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/0.3.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/0.3.0/manifests"},{"name":"v0.2.1","sha":"90358af93d26db543fd3883d4bfa1143ae80884a","kind":"commit","published_at":"2015-02-02T21:14:01.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.2.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"827a8eda5eb971cf5e639461f6412fad13738c49","kind":"commit","published_at":"2015-01-21T20:39:15.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.2.0","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.2.0/manifests"},{"name":"v0.1.3","sha":"0b9005435e0a3a410d19292178ce66804eed3af0","kind":"commit","published_at":"2014-11-12T19:59:34.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.1.3","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"55f76dbbbb18326b182a8ef4c2b5a3d3df99c8c7","kind":"commit","published_at":"2014-11-01T17:16:04.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.1.2","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"5b5bc2149da65b2d4aa68df98abef9f9ec86c452","kind":"commit","published_at":"2014-10-24T23:39:45.000Z","download_url":"https://codeload.github.com/jrkerns/pylinac/tar.gz/v0.1.1","html_url":"https://github.com/jrkerns/pylinac/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/jrkerns/pylinac@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/tags/v0.1.1/manifests"}]},"repo_metadata_updated_at":"2025-09-04T06:29:32.874Z","dependent_packages_count":2,"downloads":3825,"downloads_period":"last-month","dependent_repos_count":9,"rankings":{"downloads":6.527262259616802,"dependent_repos_count":4.9459965098181025,"dependent_packages_count":3.257152291327626,"stargazers_count":6.327576822791301,"forks_count":4.9464854487971746,"docker_downloads_count":null,"average":5.200894666470202},"purl":"pkg:pypi/pylinac","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pylinac","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pylinac","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pylinac/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T10:50:54.819Z","issues_count":141,"pull_requests_count":89,"avg_time_to_close_issue":12948080.392857144,"avg_time_to_close_pull_request":8126414.4,"issues_closed_count":84,"pull_requests_closed_count":65,"pull_request_authors_count":24,"issue_authors_count":75,"avg_comments_per_issue":2.1702127659574466,"avg_comments_per_pull_request":1.7865168539325842,"merged_pull_requests_count":44,"bot_issues_count":0,"bot_pull_requests_count":5,"past_year_issues_count":36,"past_year_pull_requests_count":28,"past_year_avg_time_to_close_issue":1886864.857142857,"past_year_avg_time_to_close_pull_request":4615308.166666667,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":12,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":23,"past_year_avg_comments_per_issue":1.25,"past_year_avg_comments_per_pull_request":1.2142857142857142,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":8,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/issues","maintainers":[{"login":"jrkerns","count":24,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jrkerns"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pylinac/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pylinac/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pylinac/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pylinac/related_packages","maintainers":[{"uuid":"JKerns","login":"JKerns","name":null,"email":null,"url":null,"packages_count":3,"html_url":"https://pypi.org/user/JKerns/","role":null,"created_at":"2023-01-03T18:09:23.776Z","updated_at":"2023-01-03T18:09:23.776Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/JKerns/packages"},{"uuid":"randlet","login":"randlet","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/randlet/","role":null,"created_at":"2023-01-03T18:09:23.780Z","updated_at":"2023-01-03T18:09:23.780Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/randlet/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":724708,"maintainers_count":308189,"namespaces_count":0,"keywords_count":237984,"github":"pypi","metadata":{"funded_packages_count":50481},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-04T05:23:51.177Z","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":637946,"full_name":"jrkerns/pylinac","default_branch":"master","committers":[{"name":"James Kerns","email":"jkerns100@gmail.com","login":"jrkerns","count":2339},{"name":"alanphys","email":"alanphys@yahoo.co.uk","login":"alanphys","count":28},{"name":"Randy Taylor","email":"randle.taylor@gmail.com","login":"randlet","count":12},{"name":"Luis Alfonso Olivares Jiménez","email":"alfonso.cucei.udg@gmail.com","login":"LuisOlivaresJ","count":7},{"name":"Cody Crewson","email":"6089951+crcrewso","login":"crcrewso","count":6},{"name":"Michel DAmours","email":"micheldamours@gmail.com","login":"midamo","count":5},{"name":"Hasan Ammar","email":"hammar@radformation.com","login":null,"count":4},{"name":"purepani","email":"pani0028@umn.edu","login":"purepani","count":4},{"name":"Marc Chamberland","email":"marc.chamberland@uvmhealth.org","login":"mchamberland","count":3},{"name":"Joseph Madamesila","email":"jmadamesila@gmail.com","login":"jmadamesila","count":3},{"name":"Jonathan Martens","email":"jonathan@snetram.nl","login":"jmartens","count":3},{"name":"alanphys","email":"alanphys@VMSTBOX.ONCOLOGY.COM","login":null,"count":2},{"name":"Stephen Terry","email":"flounder.sdt@gmail.com","login":"StephenTerry","count":2},{"name":"Aditya Panchal","email":"apanchal@bastula.org","login":"bastula","count":2},{"name":"Quantified Code","email":"cody@quantifiedcode.com","login":"quantifiedcode-bot","count":2},{"name":"Safir","email":"42492568+SafirZouzout","login":"SafirZouzout","count":2},{"name":"Chris Williams","email":"37885668+ckswilliams","login":"ckswilliams","count":2},{"name":"ethanio12345","email":"43536119+ethanio12345","login":"ethanio12345","count":2},{"name":"Keith Offer","email":"keithoffer@gmail.com","login":"keithoffer","count":1},{"name":"The Gitter Badger","email":"badger@gitter.im","login":"gitter-badger","count":1},{"name":"anmcgrath","email":"34253568+anmcgrath","login":"anmcgrath","count":1},{"name":"gdrosos","email":"t8180024@aueb.gr","login":"gdrosos","count":1},{"name":"Milo Vermeulen","email":"milovermeulen@me.com","login":"mivermeu","count":1}],"total_commits":2433,"total_committers":23,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":105.78260869565217,"dds":0.03863542951089194,"past_year_committers":[{"name":"James Kerns","email":"jkerns@radformation.com","login":"jrkerns","count":349},{"name":"purepani","email":"pani0028@umn.edu","login":"purepani","count":4},{"name":"Safir","email":"42492568+SafirZouzout","login":"SafirZouzout","count":2},{"name":"alanphys","email":"alanphys@yahoo.co.uk","login":"alanphys","count":2},{"name":"Luis Alfonso Olivares Jiménez","email":"41806420+LuisOlivaresJ","login":"LuisOlivaresJ","count":1},{"name":"Jonathan Martens","email":"jonathan.martens@maastro.nl","login":"jmartens","count":1},{"name":"Milo Vermeulen","email":"milovermeulen@me.com","login":"mivermeu","count":1}],"past_year_total_commits":360,"past_year_total_committers":7,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":51.42857142857143,"past_year_dds":0.030555555555555558,"last_synced_at":"2025-04-11T16:13:39.969Z","last_synced_commit":"3165ae3b12672a8bc4595a500dee9cafa089a407","created_at":"2023-03-09T08:43:25.441Z","updated_at":"2025-08-06T05:44:13.651Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-28T00:00:20.468Z","repositories_count":5479765,"commits_count":853309695,"contributors_count":31095220,"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":"jrkerns/pylinac","html_url":"https://github.com/jrkerns/pylinac","last_synced_at":"2025-08-31T10:50:54.819Z","status":null,"issues_count":141,"pull_requests_count":89,"avg_time_to_close_issue":12948080.392857144,"avg_time_to_close_pull_request":8126414.4,"issues_closed_count":84,"pull_requests_closed_count":65,"pull_request_authors_count":24,"issue_authors_count":75,"avg_comments_per_issue":2.1702127659574466,"avg_comments_per_pull_request":1.7865168539325842,"merged_pull_requests_count":44,"bot_issues_count":0,"bot_pull_requests_count":5,"past_year_issues_count":36,"past_year_pull_requests_count":28,"past_year_avg_time_to_close_issue":1886864.857142857,"past_year_avg_time_to_close_pull_request":4615308.166666667,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":12,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":23,"past_year_avg_comments_per_issue":1.25,"past_year_avg_comments_per_pull_request":1.2142857142857142,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":8,"created_at":"2023-05-14T21:24:59.273Z","updated_at":"2025-09-03T06:44:34.364Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrkerns%2Fpylinac/issues","issue_labels_count":{},"pull_request_labels_count":{"dependencies":9},"issue_author_associations_count":{"NONE":85,"CONTRIBUTOR":42,"OWNER":10},"pull_request_author_associations_count":{"CONTRIBUTOR":59,"NONE":27,"OWNER":14},"issue_authors":{"jrkerns":10,"crcrewso":10,"randlet":9,"LuisOlivaresJ":6,"mitch-1211":6,"alanphys":4,"keithoffer":4,"purepani":4,"djp82645":3,"mchamberland":3,"tbezo":3,"bearner-hca":3,"Rahul-py-linac":3,"SimonBiggs":3,"peterg1t":2,"StephenTerry":2,"mivermeu":2,"llorens99":2,"smedphys":2,"t-milan":2,"adamblais":2,"seandomal":2,"RS14678":1,"Zarita78":1,"sarytky":1,"arai0101":1,"ekamperi":1,"AlainSottiaux":1,"joecastelo":1,"jc5678":1,"gbaltz":1,"Kiragroh":1,"ruipe90":1,"Quantico-Bullet":1,"wuyangzz":1,"angioedema":1,"drmichaeldouglass":1,"bozhikovstanislav":1,"caro314":1,"giubenez":1,"AivenJC":1,"callumgillies":1,"brjdenis":1,"bp-mp":1,"msae":1,"alexandrefortin":1,"AnthEspin":1,"runphym974":1,"zism":1,"Phillip-Duncan":1,"TysonReimer":1,"ethanio12345":1,"jmbm94":1,"SafirZouzout":1,"chg0901":1,"scaramallion":1,"taconi23":1,"JianJuly":1,"effelle":1,"TammoGitHub":1,"ThirumuruganE":1,"morganHealy":1,"yang-6256922":1,"toddzilla1":1,"YuryKirpichev":1,"poderj":1,"wwdongcoder":1,"jrenegar":1,"bratr101":1,"EricLessard":1,"JustinThymePhysics":1,"mhinse":1},"pull_request_authors":{"jrkerns":14,"crcrewso":11,"alanphys":11,"dependabot[bot]":9,"LuisOlivaresJ":7,"purepani":7,"SafirZouzout":6,"ethanio12345":5,"jmartens":4,"jlleongarcia":4,"mivermeu":4,"randlet":3,"TysonReimer":2,"StephenTerry":2,"t-milan":2,"djp82645":2,"kkkkwan":1,"mchamberland":1,"keithoffer":1,"brianmanderson":1,"mitcgs":1,"inamoto85":1,"ckswilliams":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10064235,"issues_count":31125951,"pull_requests_count":94623210,"authors_count":10686933,"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":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":21,"CONTRIBUTOR":14},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":19,"NONE":10},"past_year_issue_authors":{"mitch-1211":5,"purepani":4,"crcrewso":3,"alanphys":2,"mivermeu":2,"LuisOlivaresJ":2,"mchamberland":2,"YuryKirpichev":1,"TysonReimer":1,"tbezo":1,"scaramallion":1,"runphym974":1,"Phillip-Duncan":1,"mhinse":1,"llorens99":1,"keithoffer":1,"joecastelo":1,"giubenez":1,"drmichaeldouglass":1,"bozhikovstanislav":1,"alexandrefortin":1,"AivenJC":1},"past_year_pull_request_authors":{"purepani":7,"alanphys":6,"jlleongarcia":4,"mivermeu":4,"crcrewso":3,"TysonReimer":2,"jmartens":2,"brianmanderson":1},"maintainers":[{"login":"jrkerns","count":24,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jrkerns"}],"active_maintainers":[]},"events":{"total":{"IssuesEvent":34,"WatchEvent":18,"IssueCommentEvent":60,"PushEvent":80,"PullRequestReviewCommentEvent":1,"PullRequestEvent":25,"ForkEvent":17,"CreateEvent":2},"last_year":{"IssuesEvent":34,"WatchEvent":18,"IssueCommentEvent":60,"PushEvent":80,"PullRequestReviewCommentEvent":1,"PullRequestEvent":25,"ForkEvent":17,"CreateEvent":2}},"keywords":["image-analysis","image-processing","medical-physics","python","radiation-oncology"],"dependencies":[{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2022-07-20T00:16:49.371Z","updated_at":"2022-07-20T00:16:49.371Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/poetry.lock","dependencies":[{"id":271022796,"package_name":"alabaster","ecosystem":"pypi","requirements":"0.7.12","direct":false,"kind":"develop","optional":false},{"id":271022797,"package_name":"argcomplete","ecosystem":"pypi","requirements":"1.12.3","direct":false,"kind":"develop","optional":false},{"id":271022798,"package_name":"argue","ecosystem":"pypi","requirements":"0.3.1","direct":false,"kind":"runtime","optional":false},{"id":271022799,"package_name":"atomicwrites","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":271022800,"package_name":"attrs","ecosystem":"pypi","requirements":"21.4.0","direct":false,"kind":"develop","optional":false},{"id":271022801,"package_name":"babel","ecosystem":"pypi","requirements":"2.10.3","direct":false,"kind":"develop","optional":false},{"id":271022802,"package_name":"bump2version","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"develop","optional":false},{"id":271022803,"package_name":"cached-property","ecosystem":"pypi","requirements":"1.5.2","direct":false,"kind":"runtime","optional":false},{"id":271022804,"package_name":"cachetools","ecosystem":"pypi","requirements":"5.2.0","direct":false,"kind":"develop","optional":false},{"id":271022805,"package_name":"certifi","ecosystem":"pypi","requirements":"2022.6.15","direct":false,"kind":"develop","optional":false},{"id":271022806,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"2.0.12","direct":false,"kind":"develop","optional":false},{"id":271022807,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.5","direct":false,"kind":"runtime","optional":false},{"id":271022808,"package_name":"colorlog","ecosystem":"pypi","requirements":"6.6.0","direct":false,"kind":"develop","optional":false},{"id":271022809,"package_name":"cycler","ecosystem":"pypi","requirements":"0.11.0","direct":false,"kind":"runtime","optional":false},{"id":271022810,"package_name":"dataclasses","ecosystem":"pypi","requirements":"0.8","direct":false,"kind":"runtime","optional":false},{"id":271022811,"package_name":"distlib","ecosystem":"pypi","requirements":"0.3.4","direct":false,"kind":"develop","optional":false},{"id":271022812,"package_name":"docutils","ecosystem":"pypi","requirements":"0.18.1","direct":false,"kind":"develop","optional":false},{"id":271022813,"package_name":"execnet","ecosystem":"pypi","requirements":"1.9.0","direct":false,"kind":"develop","optional":false},{"id":271022814,"package_name":"filelock","ecosystem":"pypi","requirements":"3.4.1","direct":false,"kind":"develop","optional":false},{"id":271022815,"package_name":"future","ecosystem":"pypi","requirements":"0.18.2","direct":false,"kind":"runtime","optional":false},{"id":271022816,"package_name":"google-api-core","ecosystem":"pypi","requirements":"2.8.2","direct":false,"kind":"develop","optional":false},{"id":271022817,"package_name":"google-auth","ecosystem":"pypi","requirements":"2.9.0","direct":false,"kind":"develop","optional":false},{"id":271022818,"package_name":"google-cloud-core","ecosystem":"pypi","requirements":"2.3.1","direct":false,"kind":"develop","optional":false},{"id":271022819,"package_name":"google-cloud-storage","ecosystem":"pypi","requirements":"2.4.0","direct":false,"kind":"develop","optional":false},{"id":271022820,"package_name":"google-crc32c","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"develop","optional":false},{"id":271022821,"package_name":"google-resumable-media","ecosystem":"pypi","requirements":"2.3.3","direct":false,"kind":"develop","optional":false},{"id":271022822,"package_name":"googleapis-common-protos","ecosystem":"pypi","requirements":"1.56.3","direct":false,"kind":"develop","optional":false},{"id":271022823,"package_name":"idna","ecosystem":"pypi","requirements":"3.3","direct":false,"kind":"develop","optional":false},{"id":271022824,"package_name":"imageio","ecosystem":"pypi","requirements":"2.19.3","direct":false,"kind":"runtime","optional":false},{"id":271022825,"package_name":"imagesize","ecosystem":"pypi","requirements":"1.4.1","direct":false,"kind":"develop","optional":false},{"id":271022826,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"4.8.3","direct":false,"kind":"develop","optional":false},{"id":271022827,"package_name":"importlib-resources","ecosystem":"pypi","requirements":"5.4.0","direct":false,"kind":"runtime","optional":false},{"id":271022828,"package_name":"iniconfig","ecosystem":"pypi","requirements":"1.1.1","direct":false,"kind":"develop","optional":false},{"id":271022829,"package_name":"jinja2","ecosystem":"pypi","requirements":"3.0.3","direct":false,"kind":"develop","optional":false},{"id":271022830,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"1.3.1","direct":false,"kind":"runtime","optional":false},{"id":271022831,"package_name":"livereload","ecosystem":"pypi","requirements":"2.6.3","direct":false,"kind":"develop","optional":false},{"id":271022832,"package_name":"markupsafe","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"develop","optional":false},{"id":271022833,"package_name":"matplotlib","ecosystem":"pypi","requirements":"3.3.4","direct":false,"kind":"runtime","optional":false},{"id":271022834,"package_name":"networkx","ecosystem":"pypi","requirements":"2.6.3","direct":false,"kind":"runtime","optional":false},{"id":271022835,"package_name":"nox","ecosystem":"pypi","requirements":"2022.1.7","direct":false,"kind":"develop","optional":false},{"id":271022836,"package_name":"numpy","ecosystem":"pypi","requirements":"1.19.5","direct":false,"kind":"runtime","optional":false},{"id":271022837,"package_name":"packaging","ecosystem":"pypi","requirements":"21.3","direct":false,"kind":"runtime","optional":false},{"id":271022838,"package_name":"pillow","ecosystem":"pypi","requirements":"8.4.0","direct":false,"kind":"runtime","optional":false},{"id":271022839,"package_name":"platformdirs","ecosystem":"pypi","requirements":"2.4.0","direct":false,"kind":"develop","optional":false},{"id":271022840,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"develop","optional":false},{"id":271022841,"package_name":"protobuf","ecosystem":"pypi","requirements":"4.21.2","direct":false,"kind":"develop","optional":false},{"id":271022842,"package_name":"py","ecosystem":"pypi","requirements":"1.11.0","direct":false,"kind":"develop","optional":false},{"id":271022843,"package_name":"py-linq","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":271022844,"package_name":"pyasn1","ecosystem":"pypi","requirements":"0.4.8","direct":false,"kind":"develop","optional":false},{"id":271022845,"package_name":"pyasn1-modules","ecosystem":"pypi","requirements":"0.2.8","direct":false,"kind":"develop","optional":false},{"id":271022846,"package_name":"pydicom","ecosystem":"pypi","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":271022847,"package_name":"pygments","ecosystem":"pypi","requirements":"2.12.0","direct":false,"kind":"develop","optional":false},{"id":271022848,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.0.7","direct":false,"kind":"runtime","optional":false},{"id":271022849,"package_name":"pytest","ecosystem":"pypi","requirements":"7.1.2","direct":false,"kind":"develop","optional":false},{"id":271022850,"package_name":"pytest-forked","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":271022851,"package_name":"pytest-xdist","ecosystem":"pypi","requirements":"2.5.0","direct":false,"kind":"develop","optional":false},{"id":271022852,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.8.2","direct":false,"kind":"runtime","optional":false},{"id":271022853,"package_name":"pytz","ecosystem":"pypi","requirements":"2022.1","direct":false,"kind":"develop","optional":false},{"id":271022854,"package_name":"pywavelets","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":271022855,"package_name":"reportlab","ecosystem":"pypi","requirements":"3.6.8","direct":false,"kind":"runtime","optional":false},{"id":271022856,"package_name":"requests","ecosystem":"pypi","requirements":"2.27.1","direct":false,"kind":"develop","optional":false},{"id":271022857,"package_name":"rsa","ecosystem":"pypi","requirements":"4.8","direct":false,"kind":"develop","optional":false},{"id":271022858,"package_name":"scikit-image","ecosystem":"pypi","requirements":"0.19.3","direct":false,"kind":"runtime","optional":false},{"id":271022859,"package_name":"scipy","ecosystem":"pypi","requirements":"1.5.4","direct":false,"kind":"runtime","optional":false},{"id":271022860,"package_name":"six","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":271022861,"package_name":"snowballstemmer","ecosystem":"pypi","requirements":"2.2.0","direct":false,"kind":"develop","optional":false},{"id":271022862,"package_name":"sphinx","ecosystem":"pypi","requirements":"5.0.2","direct":false,"kind":"develop","optional":false},{"id":271022863,"package_name":"sphinx-autobuild","ecosystem":"pypi","requirements":"2021.3.14","direct":false,"kind":"develop","optional":false},{"id":271022864,"package_name":"sphinxcontrib-applehelp","ecosystem":"pypi","requirements":"1.0.2","direct":false,"kind":"develop","optional":false},{"id":271022865,"package_name":"sphinxcontrib-devhelp","ecosystem":"pypi","requirements":"1.0.2","direct":false,"kind":"develop","optional":false},{"id":271022866,"package_name":"sphinxcontrib-htmlhelp","ecosystem":"pypi","requirements":"2.0.0","direct":false,"kind":"develop","optional":false},{"id":271022867,"package_name":"sphinxcontrib-jsmath","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"develop","optional":false},{"id":271022868,"package_name":"sphinxcontrib-qthelp","ecosystem":"pypi","requirements":"1.0.3","direct":false,"kind":"develop","optional":false},{"id":271022869,"package_name":"sphinxcontrib-serializinghtml","ecosystem":"pypi","requirements":"1.1.5","direct":false,"kind":"develop","optional":false},{"id":271022870,"package_name":"tifffile","ecosystem":"pypi","requirements":"2021.11.2","direct":false,"kind":"runtime","optional":false},{"id":271022871,"package_name":"tomli","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"develop","optional":false},{"id":271022872,"package_name":"tornado","ecosystem":"pypi","requirements":"6.1","direct":false,"kind":"develop","optional":false},{"id":271022873,"package_name":"tqdm","ecosystem":"pypi","requirements":"4.64.0","direct":false,"kind":"runtime","optional":false},{"id":271022874,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.1.1","direct":false,"kind":"develop","optional":false},{"id":271022875,"package_name":"urllib3","ecosystem":"pypi","requirements":"1.26.9","direct":false,"kind":"develop","optional":false},{"id":271022876,"package_name":"virtualenv","ecosystem":"pypi","requirements":"20.15.1","direct":false,"kind":"develop","optional":false},{"id":271022877,"package_name":"zipp","ecosystem":"pypi","requirements":"3.6.0","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2022-07-20T00:16:49.882Z","updated_at":"2022-07-20T00:16:49.882Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/pyproject.toml","dependencies":[{"id":271027566,"package_name":"nox","ecosystem":"pypi","requirements":"^2022.1.7","direct":true,"kind":"develop","optional":false},{"id":271027551,"package_name":"python","ecosystem":"pypi","requirements":"^3.6.1","direct":true,"kind":"runtime","optional":false},{"id":271027552,"package_name":"scikit-image","ecosystem":"pypi","requirements":"---\n- !ruby/hash:ActiveSupport::HashWithIndifferentAccess\n  version: \"\u003c=0.17.2\"\n  python: \"\u003c=3.6\"\n- !ruby/hash:ActiveSupport::HashWithIndifferentAccess\n  version: \"\u003e=0.17.3\"\n  python: \"^3.7\"\n","direct":true,"kind":"runtime","optional":false},{"id":271027553,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=0.16","direct":true,"kind":"runtime","optional":false},{"id":271027554,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.1","direct":true,"kind":"runtime","optional":false},{"id":271027555,"package_name":"tqdm","ecosystem":"pypi","requirements":"\u003e=3.8","direct":true,"kind":"runtime","optional":false},{"id":271027556,"package_name":"Pillow","ecosystem":"pypi","requirements":"\u003e=4.0","direct":true,"kind":"runtime","optional":false},{"id":271027557,"package_name":"argue","ecosystem":"pypi","requirements":"^0.3.1","direct":true,"kind":"runtime","optional":false},{"id":271027558,"package_name":"py-linq","ecosystem":"pypi","requirements":"^1.3.0","direct":true,"kind":"runtime","optional":false},{"id":271027559,"package_name":"cached-property","ecosystem":"pypi","requirements":"~1.5.2","direct":true,"kind":"runtime","optional":false},{"id":271027560,"package_name":"reportlab","ecosystem":"pypi","requirements":"\u003e=3.3","direct":true,"kind":"runtime","optional":false},{"id":271027561,"package_name":"pydicom","ecosystem":"pypi","requirements":"\u003e=2.0","direct":true,"kind":"runtime","optional":false},{"id":271027562,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=2.0","direct":true,"kind":"runtime","optional":false},{"id":271027563,"package_name":"dataclasses","ecosystem":"pypi","requirements":"^0.8","direct":true,"kind":"runtime","optional":false},{"id":271027564,"package_name":"pytest","ecosystem":"pypi","requirements":"^7.1.2","direct":true,"kind":"develop","optional":false},{"id":271027565,"package_name":"bump2version","ecosystem":"pypi","requirements":"^1.0.1","direct":true,"kind":"develop","optional":false},{"id":271027567,"package_name":"pytest-xdist","ecosystem":"pypi","requirements":"^2.5.0","direct":true,"kind":"develop","optional":false},{"id":271027568,"package_name":"google-cloud-storage","ecosystem":"pypi","requirements":"^2.4.0","direct":true,"kind":"develop","optional":false},{"id":271027569,"package_name":"sphinx-autobuild","ecosystem":"pypi","requirements":"^2021.3.14","direct":true,"kind":"develop","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2022-07-20T00:16:50.163Z","updated_at":"2022-07-20T00:16:50.163Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/requirements-dev.txt","dependencies":[{"id":271029635,"package_name":"pytest","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029636,"package_name":"bump2version","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029637,"package_name":"nox","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029638,"package_name":"pytest-xdist","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029639,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"==3.0.0","direct":true,"kind":"development","optional":false},{"id":271029640,"package_name":"google-cloud-storage","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029641,"package_name":"sphinx-autobuild","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":271029642,"package_name":"twine","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-ram.txt","sha":null,"kind":"manifest","created_at":"2022-07-20T00:16:50.309Z","updated_at":"2022-07-20T00:16:50.309Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/requirements-ram.txt","dependencies":[{"id":271029689,"package_name":"argcomplete","ecosystem":"pypi","requirements":"==1.12.3","direct":true,"kind":"runtime","optional":false},{"id":271029690,"package_name":"argue","ecosystem":"pypi","requirements":"==0.3.1","direct":true,"kind":"runtime","optional":false},{"id":271029691,"package_name":"atomicwrites","ecosystem":"pypi","requirements":"==1.4.0","direct":true,"kind":"runtime","optional":false},{"id":271029692,"package_name":"attrs","ecosystem":"pypi","requirements":"==21.4.0","direct":true,"kind":"runtime","optional":false},{"id":271029693,"package_name":"bleach","ecosystem":"pypi","requirements":"==5.0.0","direct":true,"kind":"runtime","optional":false},{"id":271029694,"package_name":"bump2version","ecosystem":"pypi","requirements":"==1.0.1","direct":true,"kind":"runtime","optional":false},{"id":271029695,"package_name":"cached-property","ecosystem":"pypi","requirements":"==1.5.2","direct":true,"kind":"runtime","optional":false},{"id":271029696,"package_name":"certifi","ecosystem":"pypi","requirements":"==2022.6.15","direct":true,"kind":"runtime","optional":false},{"id":271029697,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"==2.0.12","direct":true,"kind":"runtime","optional":false},{"id":271029698,"package_name":"colorama","ecosystem":"pypi","requirements":"==0.4.4","direct":true,"kind":"runtime","optional":false},{"id":271029699,"package_name":"colorlog","ecosystem":"pypi","requirements":"==6.6.0","direct":true,"kind":"runtime","optional":false},{"id":271029700,"package_name":"commonmark","ecosystem":"pypi","requirements":"==0.9.1","direct":true,"kind":"runtime","optional":false},{"id":271029701,"package_name":"cycler","ecosystem":"pypi","requirements":"==0.11.0","direct":true,"kind":"runtime","optional":false},{"id":271029702,"package_name":"distlib","ecosystem":"pypi","requirements":"==0.3.4","direct":true,"kind":"runtime","optional":false},{"id":271029703,"package_name":"docutils","ecosystem":"pypi","requirements":"==0.18.1","direct":true,"kind":"runtime","optional":false},{"id":271029704,"package_name":"filelock","ecosystem":"pypi","requirements":"==3.6.0","direct":true,"kind":"runtime","optional":false},{"id":271029705,"package_name":"fonttools","ecosystem":"pypi","requirements":"==4.28.5","direct":true,"kind":"runtime","optional":false},{"id":271029706,"package_name":"future","ecosystem":"pypi","requirements":"==0.18.2","direct":true,"kind":"runtime","optional":false},{"id":271029707,"package_name":"idna","ecosystem":"pypi","requirements":"==3.3","direct":true,"kind":"runtime","optional":false},{"id":271029708,"package_name":"imageio","ecosystem":"pypi","requirements":"==2.13.5","direct":true,"kind":"runtime","optional":false},{"id":271029709,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"==4.11.4","direct":true,"kind":"runtime","optional":false},{"id":271029710,"package_name":"iniconfig","ecosystem":"pypi","requirements":"==1.1.1","direct":true,"kind":"runtime","optional":false},{"id":271029711,"package_name":"keyring","ecosystem":"pypi","requirements":"==23.6.0","direct":true,"kind":"runtime","optional":false},{"id":271029712,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"==1.3.2","direct":true,"kind":"runtime","optional":false},{"id":271029713,"package_name":"matplotlib","ecosystem":"pypi","requirements":"==3.5.1","direct":true,"kind":"runtime","optional":false},{"id":271029714,"package_name":"networkx","ecosystem":"pypi","requirements":"==2.6.3","direct":true,"kind":"runtime","optional":false},{"id":271029715,"package_name":"nox","ecosystem":"pypi","requirements":"==2022.1.7","direct":true,"kind":"runtime","optional":false},{"id":271029716,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.22.1","direct":true,"kind":"runtime","optional":false},{"id":271029717,"package_name":"packaging","ecosystem":"pypi","requirements":"==21.3","direct":true,"kind":"runtime","optional":false},{"id":271029718,"package_name":"Pillow","ecosystem":"pypi","requirements":"==9.0.0","direct":true,"kind":"runtime","optional":false},{"id":271029719,"package_name":"pkginfo","ecosystem":"pypi","requirements":"==1.8.3","direct":true,"kind":"runtime","optional":false},{"id":271029720,"package_name":"platformdirs","ecosystem":"pypi","requirements":"==2.5.2","direct":true,"kind":"runtime","optional":false},{"id":271029721,"package_name":"pluggy","ecosystem":"pypi","requirements":"==1.0.0","direct":true,"kind":"runtime","optional":false},{"id":271029722,"package_name":"py","ecosystem":"pypi","requirements":"==1.11.0","direct":true,"kind":"runtime","optional":false},{"id":271029723,"package_name":"py-linq","ecosystem":"pypi","requirements":"==1.3.0","direct":true,"kind":"runtime","optional":false},{"id":271029724,"package_name":"pydicom","ecosystem":"pypi","requirements":"==2.2.2","direct":true,"kind":"runtime","optional":false},{"id":271029725,"package_name":"Pygments","ecosystem":"pypi","requirements":"==2.12.0","direct":true,"kind":"runtime","optional":false},{"id":271029726,"package_name":"pyparsing","ecosystem":"pypi","requirements":"==3.0.6","direct":true,"kind":"runtime","optional":false},{"id":271029727,"package_name":"pytest","ecosystem":"pypi","requirements":"==7.1.2","direct":true,"kind":"runtime","optional":false},{"id":271029728,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"==2.8.2","direct":true,"kind":"runtime","optional":false},{"id":271029729,"package_name":"PyWavelets","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":271029730,"package_name":"pywin32-ctypes","ecosystem":"pypi","requirements":"==0.2.0","direct":true,"kind":"runtime","optional":false},{"id":271029731,"package_name":"readme-renderer","ecosystem":"pypi","requirements":"==35.0","direct":true,"kind":"runtime","optional":false},{"id":271029732,"package_name":"reportlab","ecosystem":"pypi","requirements":"==3.6.5","direct":true,"kind":"runtime","optional":false},{"id":271029733,"package_name":"requests","ecosystem":"pypi","requirements":"==2.28.0","direct":true,"kind":"runtime","optional":false},{"id":271029734,"package_name":"requests-toolbelt","ecosystem":"pypi","requirements":"==0.9.1","direct":true,"kind":"runtime","optional":false},{"id":271029735,"package_name":"rfc3986","ecosystem":"pypi","requirements":"==2.0.0","direct":true,"kind":"runtime","optional":false},{"id":271029736,"package_name":"rich","ecosystem":"pypi","requirements":"==12.4.4","direct":true,"kind":"runtime","optional":false},{"id":271029737,"package_name":"scikit-image","ecosystem":"pypi","requirements":"==0.19.1","direct":true,"kind":"runtime","optional":false},{"id":271029738,"package_name":"scipy","ecosystem":"pypi","requirements":"==1.7.3","direct":true,"kind":"runtime","optional":false},{"id":271029739,"package_name":"six","ecosystem":"pypi","requirements":"==1.16.0","direct":true,"kind":"runtime","optional":false},{"id":271029740,"package_name":"tifffile","ecosystem":"pypi","requirements":"==2021.11.2","direct":true,"kind":"runtime","optional":false},{"id":271029741,"package_name":"tomli","ecosystem":"pypi","requirements":"==2.0.1","direct":true,"kind":"runtime","optional":false},{"id":271029742,"package_name":"tqdm","ecosystem":"pypi","requirements":"==4.62.3","direct":true,"kind":"runtime","optional":false},{"id":271029743,"package_name":"twine","ecosystem":"pypi","requirements":"==4.0.1","direct":true,"kind":"runtime","optional":false},{"id":271029744,"package_name":"urllib3","ecosystem":"pypi","requirements":"==1.26.9","direct":true,"kind":"runtime","optional":false},{"id":271029745,"package_name":"virtualenv","ecosystem":"pypi","requirements":"==20.14.1","direct":true,"kind":"runtime","optional":false},{"id":271029746,"package_name":"webencodings","ecosystem":"pypi","requirements":"==0.5.1","direct":true,"kind":"runtime","optional":false},{"id":271029747,"package_name":"zipp","ecosystem":"pypi","requirements":"==3.8.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-07-20T00:16:50.398Z","updated_at":"2022-07-20T00:16:50.398Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/requirements.txt","dependencies":[{"id":271031722,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=1.16","direct":true,"kind":"runtime","optional":false},{"id":271031723,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.1","direct":true,"kind":"runtime","optional":false},{"id":271031724,"package_name":"pydicom","ecosystem":"pypi","requirements":"\u003e=2.0","direct":true,"kind":"runtime","optional":false},{"id":271031725,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=2.0","direct":true,"kind":"runtime","optional":false},{"id":271031726,"package_name":"scikit-image","ecosystem":"pypi","requirements":"\u003e=0.17","direct":true,"kind":"runtime","optional":false},{"id":271031727,"package_name":"Pillow","ecosystem":"pypi","requirements":"\u003e=4.0","direct":true,"kind":"runtime","optional":false},{"id":271031728,"package_name":"tqdm","ecosystem":"pypi","requirements":"\u003e=3.8","direct":true,"kind":"runtime","optional":false},{"id":271031729,"package_name":"reportlab","ecosystem":"pypi","requirements":"\u003e=3.3","direct":true,"kind":"runtime","optional":false},{"id":271031730,"package_name":"argue","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":271031731,"package_name":"py-linq","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":271031732,"package_name":"dataclasses","ecosystem":"pypi","requirements":"\u003e=0.8","direct":true,"kind":"runtime","optional":false},{"id":271031733,"package_name":"cached-property","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/codacy_coverage.yml","sha":null,"kind":"manifest","created_at":"2023-09-30T07:18:14.877Z","updated_at":"2023-09-30T07:18:14.877Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/.github/workflows/codacy_coverage.yml","dependencies":[{"id":14021905518,"package_name":"actions/checkout","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false},{"id":14021905519,"package_name":"codacy/codacy-coverage-reporter-action","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pypi_upload.yml","sha":null,"kind":"manifest","created_at":"2023-09-30T07:18:15.327Z","updated_at":"2023-09-30T07:18:15.327Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/.github/workflows/pypi_upload.yml","dependencies":[{"id":14021906875,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":14021906876,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":14021906877,"package_name":"casperdcl/deploy-pypi","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/python-publish.yml","sha":null,"kind":"manifest","created_at":"2023-09-30T07:18:15.492Z","updated_at":"2023-09-30T07:18:15.492Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/.github/workflows/python-publish.yml","dependencies":[{"id":14021906935,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":14021906936,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-rtd.txt","sha":null,"kind":"manifest","created_at":"2023-09-30T07:18:15.647Z","updated_at":"2023-09-30T07:18:15.647Z","repository_link":"https://github.com/jrkerns/pylinac/blob/master/requirements-rtd.txt","dependencies":[{"id":14021907733,"package_name":"furo","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14021907943,"package_name":"sphinx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14021907944,"package_name":"sphinx-copybutton","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]}],"score":16.997672687681753,"created_at":"2025-09-04T09:17:41.044Z","updated_at":"2025-10-07T08:04:28.300Z","avatar_url":"https://github.com/jrkerns.png","language":"Python","category":"Scientific Software","sub_category":"Peer-reviewed","monthly_downloads":3825,"funding_links":[],"readme_doi_urls":["https://doi.org/10.21105/joss.06001","http://dx.doi.org/10.1118/1.1755491"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/906","html_url":"https://science.ecosyste.ms/projects/906"}