Skip to content

Releases: trailofbits/pypi-attestations

v0.0.23

03 Apr 22:48
22cc304
Compare
Choose a tag to compare

Added

  • The CLI has a new subcommand convert, which takes a Sigstore bundle
    and converts it to a PEP 740 attestation.

Changed

  • The Attestation.verify(...) API has been changed to accept an offline
    parameter that, when True, disables TUF refreshes.
  • The CLI verify commands now also accept an --offline flag that disables
    TUF refreshes. Additionally, when used with the verify pypi subcommand, the
    --offline flag enforces that the distribution and provenance file arguments
    must be local file paths.

Fixed

  • Fixed a bug where GitHubPublisher policy verification would fail
    if the Source Repository Ref or Source Repository Digest claim
    was missing from the attestation's certificate. We require at least
    one of the two claims, but not necessarily both
    (#109)

v0.0.22

04 Mar 19:31
297772d
Compare
Choose a tag to compare

Changed

  • The inspect subcommand now ignores inputs that don't match *.attestation,
    rather than failing on them
    (#93)

Added

  • The CLI subcommand verify attestation now supports .slsa.attestation
    files. When verifying an artifact, both .publish.attestation and
    .slsa.attestation files are used (if present).
  • The CLI subcommand verify pypi now supports a friendlier
    syntax to specify the artifact to verify. The artifact can now be
    specified with a pypi: prefix followed by the filename, e.g:
    pypi:sampleproject-1.0.0.tar.gz. The old way (passing
    the direct URL) is still supported.
  • The CLI subcommand verify pypi now supports passing the local paths
    to the artifact and its provenance file, allowing the user to verify
    files already downloaded from PyPI. The artifact path is passed as
    usual, whereas the provenance file path is passed using the
    --provenance-file option.

v0.0.21

10 Jan 19:16
41584d9
Compare
Choose a tag to compare

Changed

  • The CLI entrypoint is now pypi-attestations
    (#82)
  • The CLI verify subcommand has been changed to verify attestation,
    as in pypi-attestations verify attestation --identity ...
    (#82)

Added

  • The CLI has a new subcommand verify pypi, which takes a URL to a
    PyPI distribution (either a wheel or a source distribution) and a
    GitHub/GitLab repository. The command verifies the distribution by
    downloading it and its provenance from PyPI, verifying them using
    sigstore and checking that the repository matches the one in the
    PyPI provenance file.
    (#82)

v0.0.20

11 Dec 16:58
d612336
Compare
Choose a tag to compare

Changed

  • Explicitly support sigstore-python 3.6
    (#79)

v0.0.19

04 Dec 23:13
08802ef
Compare
Choose a tag to compare

Fixed

  • Corrective release for 0.0.18

v0.0.18

27 Nov 20:52
64fd162
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.0.17...v0.0.18

v0.0.17

19 Nov 22:22
cfb3d4d
Compare
Choose a tag to compare

Fixed

  • The GitLabPublisher policy now takes the workflow file path in order to
    verify attestations, rathen than assuming it will always be gitlab-ci.yml
    (#71).
  • The GitLabPublisher now longer expects claims being passed during construction,
    rather the ref and sha claims are extracted from the certificate's extensions,
    similar to GitHubPublisher's behavior
    (#71).

Changed

  • Publisher classes (GitLabPublisher and GitHubPublisher) no longer take a claims
    dictionary during construction
    (#72).

v0.0.16

07 Nov 22:42
58c872e
Compare
Choose a tag to compare

Added

  • Attestation.statement has been added as a convenience API for accessing
    the attestation's enveloped statement as a dictionary

v0.0.15

06 Nov 22:49
478c93f
Compare
Choose a tag to compare

Full Changelog: v0.0.14...v0.0.15

v0.0.14

06 Nov 22:45
59fc62b
Compare
Choose a tag to compare

What's Changed

  • build(deps): bump actions/checkout from 4.2.1 to 4.2.2 in the actions group by @dependabot in #66
  • build(deps): bump actions/setup-python from 5.2.0 to 5.3.0 in the actions group by @dependabot in #67
  • fix handling of zip sdists by @woodruffw in #68

Full Changelog: v0.0.13...v0.0.14