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.2

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.2
File Size Uploaded
crate_ingredients-0.3.2.tar.gz 59.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for crate-ingredients 0.3.2
File
crate_ingredients-0.3.2-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.2-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.2-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.2-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details

Total release size: 17.8 MB

Release files / crate_ingredients-0.3.2.tar.gz

Download URL crate_ingredients-0.3.2.tar.gz
Size 59.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5d378786a8aa098a1585e050063a99a5a93f4c7e1d1432a2d7842f6cf649708b
BLAKE2b-256 checksum
How to use checksums
fdee2bdb303b7ca831e237b0abcd68e8060c45c687e8fc7f2128ecb67d22d699
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.2-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.2-cp314-cp314-manylinux_2_39_x86_64.whl
Size 4.4 MB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
bcb88f3c02b3ba0ece283d3887c2133a9a9baf939bf88ed4ddc1d2d7291c3833
BLAKE2b-256 checksum
How to use checksums
34e45231479d99d4dd1c056a3a61fd38b11389e31e7c0f701584098addbd6431
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.2-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.2-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
827f81dcc3c43428b1be7c876dda2aaa9268922b30b82531f9d5ea53691afa57
BLAKE2b-256 checksum
How to use checksums
fc46ab77a0b62c332f749832563f822a97d7328e52a5682b209b091164c7a763
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.2-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.2-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
cba62200a9eea35a69712056843668c340e5eae49b9eedcaefbbb0222764d302
BLAKE2b-256 checksum
How to use checksums
865abd236b6190ed75162d0ff557fb2a13e767c70ca93498386845d73a2b0b40
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.2-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL crate_ingredients-0.3.2-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
ac7996a24f820bd9f64eaadf1379affa9585c7622d13953ac6f005bc9e4742ce
BLAKE2b-256 checksum
How to use checksums
8c7b103d5681debc28a83eea436b767e18d93d73c7522257d3359474d641223f
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

This release

0.3.2 This release

5 release files

0.3.1

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