Skip to main content

crate-ingredients

This package contains Python bindings for the ingredients crate, which implements checks for the contents ("ingredients") of published Rust crates.

Both comparing contents of published crates to the state of the upstream project repository at a specific point in time ("report" mode) and comparing two different, published versions of the same crate with each other ("diff" mode) are implemented.

The Python API provided by crate-ingredients is intended to match the Rust API provided by the ingredients crate, wherever possible and reasonable.

report mode

Example using the Python API:

from crate_ingredients import RegistryClient

registry = RegistryClient.crates_io(user_agent = "crate_ingredients")
crate = registry.download("syn", "2.0.111")

report = crate.report()
print(report)

diff mode

Example using the Python API:

from crate_ingredients import RegistryClient

registry = RegistryClient.crates_io(user_agent = "crate_ingredients")

old = registry.download("syn", "2.0.110")
new = registry.download("syn", "2.0.111")

diff = old.diff(new)
print(diff)

Installation

From PyPI: pip install crate-ingredients

External dependencies

Building:

  • cargo (refer to package.rust-version in Cargo.toml for the minimum supported Rust version)
  • openssl development headers must be available (for reqwest/native-tls)

Runtime:

  • cargo must be available in $PATH
  • git must be available in $PATH when calling Crate.report

Funding

This project is funded through NGI Zero Core, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.

NLnet foundation logo NGI Zero Logo

Metadata

Release files for crate-ingredients 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for crate-ingredients 0.3.1
File Size Uploaded
crate_ingredients-0.3.1.tar.gz 58.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for crate-ingredients 0.3.1
File
crate_ingredients-0.3.1-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
crate_ingredients-0.3.1-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
crate_ingredients-0.3.1-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
crate_ingredients-0.3.1-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details

Total release size: 36.2 MB

Release files / crate_ingredients-0.3.1.tar.gz

Download URL crate_ingredients-0.3.1.tar.gz
Size 58.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8cf3d74da4ea7165020dd7156d0e51f3c98ec65d66739a5e88b580ee0e195c19
BLAKE2b-256 checksum
How to use checksums
7a93fc88333e8cdd463df6b3d1bf94edf7aea6fe7a95f96c004e4bf7bad8014c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / crate_ingredients-0.3.1-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.1-cp314-cp314-manylinux_2_39_x86_64.whl
Size 22.8 MB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
9542ae2e2ef1534cdd5ceca88bfaf279d7c1da8c9ec7c1f2ab09a2d4fe872c6b
BLAKE2b-256 checksum
How to use checksums
4c5c3fe9596b105138e4346359246419c44f601452423871e5ff4f7795ac94b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / crate_ingredients-0.3.1-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.1-cp313-cp313-manylinux_2_39_x86_64.whl
Size 4.4 MB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
8880acb3fb352aff5a468d20de8c82ec16440c7bf7a76873f9e85891cc7d4538
BLAKE2b-256 checksum
How to use checksums
f7723656200dff834ddae495c26004772b43675731fe0e1c6fafeda2c2246812
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.15

Release files / crate_ingredients-0.3.1-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.1-cp312-cp312-manylinux_2_39_x86_64.whl
Size 4.4 MB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
df093fa3bbd8cb3608655289205af80020ffd3e255f6ebf9934c41732f29846e
BLAKE2b-256 checksum
How to use checksums
99671c2c11bc64c04707fb955a8fff9948e42c46e3760f96683d318a99309873
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / crate_ingredients-0.3.1-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.1-cp311-cp311-manylinux_2_39_x86_64.whl
Size 4.4 MB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
a4745cbefad8890ef26da182ffedb86b3731375d39afb667100d68c274f6c8ed
BLAKE2b-256 checksum
How to use checksums
f4e3ec90808b2980fcb9d8fb6feedbc7f21cd9468ea9237b134ef661b7409d0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

0.3.2

5 release files

This release

0.3.1 This release

5 release files

0.3.0

1 release file

0.2.2

1 release file

0.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page