{"url":"https://pypi.sbomify.com/package/nofuture/1.2.1","markdown_url":"https://pypi.sbomify.com/package/nofuture/1.2.1.md","name":"nofuture","version":"1.2.1","purl":"pkg:pypi/nofuture@1.2.1","summary":"NoFuture: explicit Maybe and Result types. No futures. No exceptions.","author":null,"project_urls":{"Changelog":"https://framagit.org/aristofor/nofuture/-/blob/main/CHANGELOG.md","Homepage":"https://framagit.org/aristofor/nofuture","Issues":"https://framagit.org/aristofor/nofuture/-/issues","License":"https://framagit.org/aristofor/nofuture/-/blob/main/LICENSE"},"requires_python":">=3.12","license":null,"classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)","Operating System :: OS Independent","Programming Language :: Python :: 3","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.12","Programming Language :: Rust","Topic :: Software Development :: Libraries"],"wheels":[{"filename":"nofuture-1.2.1-cp312-abi3-macosx_10_12_x86_64.whl","url":"https://files.pythonhosted.org/packages/ff/9a/7b1074b63b4d3e454712e109ef19c75f2fea06b8ba33cdd3fd339efb13c3/nofuture-1.2.1-cp312-abi3-macosx_10_12_x86_64.whl","sboms":[{"artifact_uuid":"a3db777c-8ebd-580e-8b70-2fb3ee880b7a","path":"nofuture-1.2.1.dist-info/sboms/nofuture.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/a3db777c-8ebd-580e-8b70-2fb3ee880b7a/download","vulnerability_count":2,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"aristofor/nofuture","workflow":"publish.yml","environment":"pypi","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/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.10":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/aristofor/nofuture","1.3.6.1.4.1.57264.1.13":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.14":"refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.15":"1120752278","1.3.6.1.4.1.57264.1.16":"https://github.com/aristofor","1.3.6.1.4.1.57264.1.17":"465515","1.3.6.1.4.1.57264.1.18":"https://github.com/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.19":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/aristofor/nofuture/actions/runs/26698867592/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"nofuture-1.2.1-cp312-abi3-macosx_11_0_arm64.whl","url":"https://files.pythonhosted.org/packages/8f/00/ce1c747ee0dfa41884dc16757a0a8d5b3851107a4bcbc7137620fd1c6207/nofuture-1.2.1-cp312-abi3-macosx_11_0_arm64.whl","sboms":[{"artifact_uuid":"d7d367fc-fd7a-5fe5-af41-c05f3522852e","path":"nofuture-1.2.1.dist-info/sboms/nofuture.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/d7d367fc-fd7a-5fe5-af41-c05f3522852e/download","vulnerability_count":2,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"aristofor/nofuture","workflow":"publish.yml","environment":"pypi","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/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.10":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/aristofor/nofuture","1.3.6.1.4.1.57264.1.13":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.14":"refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.15":"1120752278","1.3.6.1.4.1.57264.1.16":"https://github.com/aristofor","1.3.6.1.4.1.57264.1.17":"465515","1.3.6.1.4.1.57264.1.18":"https://github.com/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.19":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/aristofor/nofuture/actions/runs/26698867592/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"nofuture-1.2.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl","url":"https://files.pythonhosted.org/packages/69/5c/286ff7d083e066e848afd9bd13beddd3b00ebd7c9687b4e5bea99d193ffa/nofuture-1.2.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl","sboms":[{"artifact_uuid":"d9d99c5b-d706-5e2a-853e-5950e32264c1","path":"nofuture-1.2.1.dist-info/sboms/nofuture.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/d9d99c5b-d706-5e2a-853e-5950e32264c1/download","vulnerability_count":2,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"aristofor/nofuture","workflow":"publish.yml","environment":"pypi","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/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.10":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/aristofor/nofuture","1.3.6.1.4.1.57264.1.13":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.14":"refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.15":"1120752278","1.3.6.1.4.1.57264.1.16":"https://github.com/aristofor","1.3.6.1.4.1.57264.1.17":"465515","1.3.6.1.4.1.57264.1.18":"https://github.com/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.19":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/aristofor/nofuture/actions/runs/26698867592/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}},{"filename":"nofuture-1.2.1-cp312-abi3-win_amd64.whl","url":"https://files.pythonhosted.org/packages/03/90/8b98016b2e3ca417d4c4191153beafc8499a81cbccc84eb060a37d5ec47e/nofuture-1.2.1-cp312-abi3-win_amd64.whl","sboms":[{"artifact_uuid":"8f7f1e2f-6096-5bb8-a8ee-161fe1f6d77e","path":"nofuture-1.2.1.dist-info/sboms/nofuture.cyclonedx.json","format":"CycloneDX/1.5","format_family":"CycloneDX","valid":true,"media_type":"application/vnd.cyclonedx+json","download_url":"https://pypi.sbomify.com/artifact/8f7f1e2f-6096-5bb8-a8ee-161fe1f6d77e/download","vulnerability_count":2,"scan_error":null}],"attestation":{"status":"verified","publisher_kind":"GitHub","repository":"aristofor/nofuture","workflow":"publish.yml","environment":"pypi","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/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.10":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.11":"github-hosted","1.3.6.1.4.1.57264.1.12":"https://github.com/aristofor/nofuture","1.3.6.1.4.1.57264.1.13":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.14":"refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.15":"1120752278","1.3.6.1.4.1.57264.1.16":"https://github.com/aristofor","1.3.6.1.4.1.57264.1.17":"465515","1.3.6.1.4.1.57264.1.18":"https://github.com/aristofor/nofuture/.github/workflows/publish.yml@refs/tags/v1.2.1","1.3.6.1.4.1.57264.1.19":"f6988ccf4fcd1922e642f76b43bc303082cb2ee3","1.3.6.1.4.1.57264.1.20":"push","1.3.6.1.4.1.57264.1.21":"https://github.com/aristofor/nofuture/actions/runs/26698867592/attempts/1","1.3.6.1.4.1.57264.1.22":"public"}}}],"formats":["CycloneDX"],"sbom_count":4,"has_attestation":true,"vulnerabilities":[{"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.3","ecosystem":"crates.io","purl":"pkg:cargo/pyo3@0.28.3","fixed":["0.29.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0176","wheels":["nofuture-1.2.1-cp312-abi3-macosx_10_12_x86_64.whl","nofuture-1.2.1-cp312-abi3-macosx_11_0_arm64.whl","nofuture-1.2.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl","nofuture-1.2.1-cp312-abi3-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.3","ecosystem":"crates.io","purl":"pkg:cargo/pyo3@0.28.3","fixed":["0.29.0"],"url":"https://osv.dev/vulnerability/RUSTSEC-2026-0177","wheels":["nofuture-1.2.1-cp312-abi3-macosx_10_12_x86_64.whl","nofuture-1.2.1-cp312-abi3-macosx_11_0_arm64.whl","nofuture-1.2.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl","nofuture-1.2.1-cp312-abi3-win_amd64.whl"]}],"vulnerability_scan":{"scanned_sboms":4,"total_sboms":4,"scanned_at":"2026-11-09","scanner":"osv-scanner 2.7.0","severity_counts":{"high":1,"medium":1}}}