{"url":"https://pypi.sbomify.com/package/surge-py/0.1.9","markdown_url":"https://pypi.sbomify.com/package/surge-py/0.1.9.md","name":"surge-py","version":"0.1.9","purl":"pkg:pypi/surge-py@0.1.9","summary":"AC/DC power flow solver for large-scale transmission networks","author":null,"project_urls":{"Bug Tracker":"https://github.com/amptimal/surge/issues","Documentation":"https://github.com/amptimal/surge#readme","Homepage":"https://github.com/amptimal/surge","Repository":"https://github.com/amptimal/surge"},"requires_python":"<3.15,>=3.12","license":"PolyForm Noncommercial 1.0.0","classifiers":["Development Status :: 4 - Beta","Intended Audience :: Developers","Intended Audience :: Science/Research","License :: Other/Proprietary License","Programming Language :: Python :: 3","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.14","Programming Language :: Rust","Topic :: Scientific/Engineering","Topic :: Scientific/Engineering :: Mathematics"],"wheels":[{"filename":"surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","url":"https://files.pythonhosted.org/packages/a4/21/9b8c27256c9aefd117fd7916c89df5467c049fb3c58f9de866d5fad7b369/surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","sboms":[{"artifact_uuid":"fb4c43ce-986b-5789-9fe2-1a7f3e8f51ad","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/fb4c43ce-986b-5789-9fe2-1a7f3e8f51ad/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","url":"https://files.pythonhosted.org/packages/0e/01/a4a64c098c0b9fba3ba980b8170f1ae90e25fc7c7f648c14c0d9de92a482/surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","sboms":[{"artifact_uuid":"e6d6af55-5337-5466-a4be-3df13ec6fc65","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/e6d6af55-5337-5466-a4be-3df13ec6fc65/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"a04030dc-78c7-5fd0-aa00-3bc977df7e20","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/a04030dc-78c7-5fd0-aa00-3bc977df7e20/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","url":"https://files.pythonhosted.org/packages/9d/80/85367a9bdc37cbf4dae14844c2dde13415155d98e155bde3cc425cef90d8/surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","sboms":[{"artifact_uuid":"fe9b349d-46b0-526c-902e-9b38d305d644","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/fe9b349d-46b0-526c-902e-9b38d305d644/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"60543efd-262f-5b88-9a3e-2af78e727be9","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/60543efd-262f-5b88-9a3e-2af78e727be9/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp312-cp312-win_amd64.whl","url":"https://files.pythonhosted.org/packages/0e/ac/9df9ebadaa72f05cf91c4c9db08bf5be382213052b69ecf3a581b57318c4/surge_py-0.1.9-cp312-cp312-win_amd64.whl","sboms":[{"artifact_uuid":"ecce99b9-17c5-526b-8b81-421c33059659","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/ecce99b9-17c5-526b-8b81-421c33059659/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","url":"https://files.pythonhosted.org/packages/8c/02/4440bcdafa68015b76ba9212bd231d1d788c6244d4206cc1b5b21a5b3bd4/surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","sboms":[{"artifact_uuid":"5b59504c-070a-547d-b897-4ea32eb9f5d9","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/5b59504c-070a-547d-b897-4ea32eb9f5d9/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","url":"https://files.pythonhosted.org/packages/dd/f8/c60eb29c501e1da249d5ed76620396b751af5db90e8fc5d67ca1036f45b4/surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","sboms":[{"artifact_uuid":"ca7a2152-5d88-588f-b34c-6995cf5c1828","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/ca7a2152-5d88-588f-b34c-6995cf5c1828/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"766ab5be-ed0c-5ada-aa03-79858369205a","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/766ab5be-ed0c-5ada-aa03-79858369205a/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","url":"https://files.pythonhosted.org/packages/57/aa/57d58741996515f843886c4f392bb15ab8444ccd817ac3045f6b5784beca/surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","sboms":[{"artifact_uuid":"b705b89f-c6f2-5fb9-bd37-6be5d4360e72","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/b705b89f-c6f2-5fb9-bd37-6be5d4360e72/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"d0fc8a7c-d374-52fb-93f2-33e5a5dde2d9","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/d0fc8a7c-d374-52fb-93f2-33e5a5dde2d9/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp313-cp313-win_amd64.whl","url":"https://files.pythonhosted.org/packages/6e/b8/1558eebf521ace720780cbadb385d6b576413c7862e3cfbb21256d854aa4/surge_py-0.1.9-cp313-cp313-win_amd64.whl","sboms":[{"artifact_uuid":"bd81535b-bf53-545c-9592-b7f6e748ffbc","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/bd81535b-bf53-545c-9592-b7f6e748ffbc/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","url":"https://files.pythonhosted.org/packages/f4/8e/e48dfd1b515d929e8c895cef611975cb3190c05fc6b2f276d5c57baec738/surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","sboms":[{"artifact_uuid":"e301676f-2c9a-5874-98c5-50a6a98a7e45","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/e301676f-2c9a-5874-98c5-50a6a98a7e45/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","url":"https://files.pythonhosted.org/packages/19/cb/57301341985f42a64bfaebbdee0fd2ba884b4af40b37389ecdd03a270286/surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","sboms":[{"artifact_uuid":"d1603638-876d-5e11-a9fc-81650cbbb5a8","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/d1603638-876d-5e11-a9fc-81650cbbb5a8/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"29dc8e51-544f-5ff8-8f21-7c8caf71f4e9","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/29dc8e51-544f-5ff8-8f21-7c8caf71f4e9/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","url":"https://files.pythonhosted.org/packages/92/01/f55b612cf71b0077827d3e968fd51cd7b3962043caad35655b3022168c20/surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","sboms":[{"artifact_uuid":"27073583-a13d-5246-80a5-ec2a24bfa47c","path":"surge_py-0.1.9.dist-info/sboms/auditwheel.cdx.json","format":"CycloneDX/1.4","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/27073583-a13d-5246-80a5-ec2a24bfa47c/download","vulnerability_count":0,"scan_error":null},{"artifact_uuid":"3f479c93-a12a-51af-80db-afd81a4ce714","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/3f479c93-a12a-51af-80db-afd81a4ce714/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"surge_py-0.1.9-cp314-cp314-win_amd64.whl","url":"https://files.pythonhosted.org/packages/89/2a/898bf0ba03fc930fe85893bfc6108b3986a2258d807eed2a7ba5fb41d6f5/surge_py-0.1.9-cp314-cp314-win_amd64.whl","sboms":[{"artifact_uuid":"8b8068c8-ae01-561f-be54-032a8c9ae0a7","path":"surge_py-0.1.9.dist-info/sboms/surge-py.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/8b8068c8-ae01-561f-be54-032a8c9ae0a7/download","vulnerability_count":28,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"amptimal/surge","workflow":"build-wheels.yml","environment":"release","predicate_type":"https://docs.pypi.org/attestations/publish/v1","certificate_claims":{"1.3.6.1.4.1.57264.1.8":"https://token.actions.githubusercontent.com","1.3.6.1.4.1.57264.1.9":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.10":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/amptimal/surge","1.3.6.1.4.1.57264.1.13":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.14":"refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.15":"1195631262","1.3.6.1.4.1.57264.1.16":"https://github.com/amptimal","1.3.6.1.4.1.57264.1.17":"262900436","1.3.6.1.4.1.57264.1.18":"https://github.com/amptimal/surge/.github/workflows/build-wheels.yml@refs/tags/v0.1.9","1.3.6.1.4.1.57264.1.19":"7a14e1d0d3afc7ecfcddedf2d599dbb1365108fb","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/amptimal/surge/actions/runs/25338138479/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}}],"formats":["CycloneDX"],"sbom_count":18,"has_attestation":true,"vulnerabilities":[{"id":"CVE-2026-115905","aliases":["GHSA-m665-v7pm-7grj"],"summary":"zip: Critical Parser Differential & Security Control Bypass via Dual-Header Inconsistencies (Zip Cloaking) Leading to Arbitrary File Overwrite & RCE","severity":"critical","score":10.0,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.5"],"url":"https://insights.sbomify.com/CVE-2026-115905/","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0369","aliases":["GHSA-4684-h2q9-2vcp"],"summary":"ZipStreamReader::extract() and ZipArchive::extract() apply Unix permissions through symlinks without confining the target","severity":"critical","score":9.1,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0369","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0176","aliases":["GHSA-36hh-v3qg-5jq4"],"summary":"Out-of-bounds read in `nth` / `nth_back` for `PyList` and `PyTuple` iterators","severity":"high","score":8.7,"package":"pyo3","version":"0.28.2","ecosystem":"crates.io","purl":"pkg:cargo/pyo3@0.28.2","fixed":["0.29.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0176","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0194","aliases":[],"summary":"Quadratic run time when checking a start tag for duplicate attribute names","severity":"high","score":7.5,"package":"quick-xml","version":"0.37.5","ecosystem":"crates.io","purl":"pkg:cargo/quick-xml@0.37.5","fixed":["0.41.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0194","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0195","aliases":[],"summary":"Unbounded namespace-declaration allocation in `NsReader` enables memory-exhaustion denial of service","severity":"high","score":7.5,"package":"quick-xml","version":"0.37.5","ecosystem":"crates.io","purl":"pkg:cargo/quick-xml@0.37.5","fixed":["0.41.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0195","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"CVE-2026-115909","aliases":["GHSA-q7v9-x93c-xqv3","RUSTSEC-2026-0429"],"summary":"zip: `ZipArchive::extract` aborts the process on a symlink entry with a large declared size","severity":"high","score":7.5,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.0"],"url":"https://insights.sbomify.com/CVE-2026-115909/","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0367","aliases":["GHSA-vv5m-jxxh-4627"],"summary":" Insecure Preservation of SUID/SGID Bits during ZIP Extraction Leading to Potential Privilege Escalation","severity":"high","score":7.3,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0367","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"CVE-2026-115906","aliases":["GHSA-8hxf-qr8p-62x4"],"summary":"zip: AES Entry HMAC Authentication Bypass on Premature EOF","severity":"medium","score":6.5,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.0"],"url":"https://insights.sbomify.com/CVE-2026-115906/","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0177","aliases":["GHSA-chgr-c6px-7xpp"],"summary":"Missing `Sync` bound on `PyCFunction::new_closure` closures","severity":"medium","score":6.3,"package":"pyo3","version":"0.28.2","ecosystem":"crates.io","purl":"pkg:cargo/pyo3@0.28.2","fixed":["0.29.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0177","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0190","aliases":[],"summary":"Unsoundness in `Error::downcast_mut()`","severity":"unknown","score":null,"package":"anyhow","version":"1.0.102","ecosystem":"crates.io","purl":"pkg:cargo/anyhow@1.0.102","fixed":["1.0.103"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0190","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0204","aliases":[],"summary":"Invalid pointer dereference in `fmt::Pointer` impl for `Atomic` and `Shared` when the underlying pointer is invalid","severity":"unknown","score":null,"package":"crossbeam-epoch","version":"0.9.18","ecosystem":"crates.io","purl":"pkg:cargo/crossbeam-epoch@0.9.18","fixed":["0.9.20"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0204","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2024-0436","aliases":[],"summary":"paste - no longer maintained","severity":"unknown","score":null,"package":"paste","version":"1.0.15","ecosystem":"crates.io","purl":"pkg:cargo/paste@1.0.15","fixed":[],"url":"https://osv.dev/vulnerability/RUSTSEC-2024-0436","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0097","aliases":["GHSA-cq8v-f236-94qc"],"summary":"Rand is unsound with a custom logger using `rand::rng()`","severity":"unknown","score":null,"package":"rand","version":"0.8.5","ecosystem":"crates.io","purl":"pkg:cargo/rand@0.8.5","fixed":["0.8.6"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0097","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0368","aliases":["GHSA-4v9h-p7m9-rh26"],"summary":"zip: `ZipArchive::extract` creates symbolic links whose attacker-controlled targets are outside the destination directory","severity":"unknown","score":null,"package":"zip","version":"2.4.2","ecosystem":"crates.io","purl":"pkg:cargo/zip@2.4.2","fixed":["9.0.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0368","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0391","aliases":[],"summary":"Data from an abandoned stream leaks into the next stream on a reused context","severity":"unknown","score":null,"package":"zstd","version":"0.13.3","ecosystem":"crates.io","purl":"pkg:cargo/zstd@0.13.3","fixed":["0.13.4"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0391","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0395","aliases":[],"summary":"Use-after-free with `CParameter::StableInBuffer`","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0395","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0396","aliases":[],"summary":"`Seekable` reads a NULL or out-of-bounds seek table","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0396","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0397","aliases":[],"summary":"`OutBuffer::around_pos` exposes uninitialized memory","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0397","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0398","aliases":[],"summary":"`Seekable::decompress` sets a `Vec` length beyond its capacity for offsets past the end","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0398","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0399","aliases":[],"summary":"Use-after-free through `init_using_cdict` and `init_using_ddict`","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0399","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0400","aliases":[],"summary":"Use-after-free of a dictionary after a one-shot call on a context with an open stream","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0400","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0401","aliases":[],"summary":"Out-of-bounds read in `train_from_buffer` when sample sizes overflow","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0401","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0402","aliases":[],"summary":"Heap buffer overflow in `CCtx::try_clone` on a multithreaded context","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0402","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0403","aliases":[],"summary":"Uninitialized memory exposed when streaming decompression of a legacy frame fails","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0403","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0404","aliases":[],"summary":"Double free in `DCtx::try_clone`","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0404","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0405","aliases":[],"summary":"Out-of-bounds read with an out-of-range `InBuffer::pos`","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0405","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0406","aliases":[],"summary":"Use-after-free when changing a multithreaded context with an unfinished frame","severity":"unknown","score":null,"package":"zstd-safe","version":"7.2.4","ecosystem":"crates.io","purl":"pkg:cargo/zstd-safe@7.2.4","fixed":["7.4.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0406","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]},{"id":"RUSTSEC-2026-0410","aliases":[],"summary":"WebAssembly allocator shim corrupts memory on allocation failure","severity":"unknown","score":null,"package":"zstd-sys","version":"2.0.16+zstd.1.5.7","ecosystem":"crates.io","purl":"pkg:cargo/zstd-sys@2.0.16%2Bzstd.1.5.7","fixed":["2.1.2"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0410","wheels":["surge_py-0.1.9-cp312-cp312-macosx_11_0_arm64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp312-cp312-win_amd64.whl","surge_py-0.1.9-cp313-cp313-macosx_11_0_arm64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp313-cp313-win_amd64.whl","surge_py-0.1.9-cp314-cp314-macosx_11_0_arm64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_aarch64.whl","surge_py-0.1.9-cp314-cp314-manylinux_2_28_x86_64.whl","surge_py-0.1.9-cp314-cp314-win_amd64.whl"]}],"vulnerability_scan":{"scanned_sboms":18,"total_sboms":18,"scanned_at":"2026-11-10","scanner":"osv-scanner 2.7.0","severity_counts":{"critical":2,"high":5,"medium":2,"unknown":19}}}