Skip to main content

fetter

System-wide Python Package Discovery, Validation, and Allow-Listing

The fetter command-line tool scans and validates Python packages across virtual environments or entire systems, ensuring packages conform to specified requirements or lock files. It identifies unapproved or vulnerable packages, supports continuous integration with 'pre-commit', and offers excellent performance thanks to a multi-threaded Rust implementation.

As an alternative to pip-audit, fetter can lookup vulnerabilities for packages defined in requirements.txt, pyproject.toml, or lock files created by uv, pixi, poetry, pipenv, or pip-tools; further, full vulnerability details, including CVSS scores, are provided.

Additionally, fetter can configure a virtual environment to validate package alignment before every Python run, enforcing a locked and reproducible development environment.

  • 🔎 System Scanning: Finds Python packages across system environments.
  • 🛡️ Vulnerability Audit: Scans defined or installed packages for security vulnerabilities in the Open Source Vulnerability database.
  • ⚖️ Package Validation: Checks installed packages against requirements.txt, pyproject.toml, or lock files created by uv, pixi, poetry, pipenv, or pip-tools that are sourced locally, via URLs, or via git repositories.
  • 🔒 Locked & Reproducible Environments: Automatically validate packages against a lock file before every Python run.
  • ⚙️ CI Integration: Validate and audit with pre-commit hooks.
  • 🚀 Fast: Multi-threaded Rust implementation.
  • 🪢 Bound Requirements: Derive lock-file-like bound requirements from observed system packages.
  • 🧹 Search and Purge: Find and remove packages across environments.
  • 🧩 Flexible Output: Display results in terminal or export to delimited files.

Articles

Installing the fetter Command Line Application

While available as a pure Rust binary (crates), fetter is easily installed via a Python package (pypi):

$ pip install fetter
$ fetter --help

As fetter can operate across multiple virtual environments, installation via pipx might be desirable:

$ pipx install fetter
$ fetter --version

An "ephemeral" fetter installation and run is also possible with uvx:

$ uvx fetter --version

Using fetter to Replace pip-audit

The fetter lookup-bound command can perform numerous operations similar to pip-audit, though with broader file format support and (by using the OSV Database) greater vulnerability details (including CVSS scores).

To audit dependencies for a local Python project:

$ fetter lookup-bound

To audit dependencies for a specified requirements file:

$ fetter lookup-bound --bound requirements.txt

To audit dependencies for a lock file created by uv, pixi, poetry, pipenv, or pip-tools:

$ fetter lookup-bound --bound uv.lock

To audit dependencies defined in an online git repository:

$ fetter lookup-bound --bound git@github.com:psf/clabot.git

The fetter lookup-name command can be used to find vulnerabilities for a single package or version, or multiple versions across a dependency specification.

$ fetter lookup-name "pip>=25"

Using fetter to Scan, Validate, and Audit Packages

For complete command-line documentation, see CLI Documentation.

By default, fetter will search for all packages in site-packages directories discoverable from all Python executables found in the system or user virtual environments. Depending on your system, this command might take several seconds.

$ fetter scan

To limit scanning to site-packages directories associated with a specific Python executable, the --exe (or -e) argument can be supplied.

$ fetter -e python3 scan
Package                   Site
certifi-2024.8.30         ~/.env-wp/lib/python3.12/site-packages
charset_normalizer-3.4.0  ~/.env-wp/lib/python3.12/site-packages
idna-3.10                 ~/.env-wp/lib/python3.12/site-packages
jinja2-3.1.3              ~/.env-wp/lib/python3.12/site-packages
markupsafe-2.1.5          ~/.env-wp/lib/python3.12/site-packages
pip-21.1.1                ~/.env-wp/lib/python3.12/site-packages
requests-2.32.3           ~/.env-wp/lib/python3.12/site-packages
setuptools-56.0.0         ~/.env-wp/lib/python3.12/site-packages
urllib3-2.2.3             ~/.env-wp/lib/python3.12/site-packages
zipp-3.18.1               ~/.env-wp/lib/python3.12/site-packages

This environment was built from this "requirements.txt":

jinja2==3.1.3
zipp==3.18.1
requests==2.32.3

To validate that the installed packages match the packages specified in "requirements.txt", we can use the fetter validate command, again targeting our active Python with -e python3, and providing "requirements.txt" to the --bound argument.

$ fetter -e python3 validate --bound requirements.txt
Package                   Dependency  Explain     Sites
certifi-2024.8.30                     Unrequired  ~/.env-wp/lib/python3.12/site-packages
charset_normalizer-3.4.0              Unrequired  ~/.env-wp/lib/python3.12/site-packages
idna-3.10                             Unrequired  ~/.env-wp/lib/python3.12/site-packages
markupsafe-2.1.5                      Unrequired  ~/.env-wp/lib/python3.12/site-packages
pip-21.1.1                            Unrequired  ~/.env-wp/lib/python3.12/site-packages
setuptools-56.0.0                     Unrequired  ~/.env-wp/lib/python3.12/site-packages
urllib3-2.2.3                         Unrequired  ~/.env-wp/lib/python3.12/site-packages

The --superset command can be provided to accept packages that are not defined in the bound requirements.

$ fetter -e python3 validate --bound requirements.txt --superset

If we update zipp to version 3.20.2 and re-run validation, fetter will report these as "Misdefined" records

$ fetter -e python3 validate --bound requirements.txt --superset
Package      Dependency    Explain     Sites
zipp-3.20.2  zipp==3.18.1  Misdefined  ~/.env-wp/lib/python3.12/site-packages

If we remove the zipp package entirely, fetter identifies this as a "Missing" record:

$ fetter -e python3 validate --bound requirements.txt --superset
Package  Dependency    Explain  Sites
         zipp==3.18.1  Missing

If we want to permit the absence of specified packages, the --subset flag can be used:

$ fetter -e python3 validate --bound requirements.txt --superset --subset

Using the fetter audit command, details are provided for every vulnerability associated with installed packages.

$ fetter -e python3 audit
Package            Vulnerabilities      Attribute  Value
jinja2-3.1.3       GHSA-h75v-3vvj-5mfj  URL        https://osv.dev/vulnerability/GHSA-h75v-3vvj-5mfj
                                        Summary    Jinja vulnerable to HTML attribute injection when passing ...
                                        Reference  https://nvd.nist.gov/vuln/detail/CVE-2024-34064
                                        Severity   CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
pip-21.1.1         GHSA-mq26-g339-26xf  URL        https://osv.dev/vulnerability/GHSA-mq26-g339-26xf
                                        Summary    Command Injection in pip when used with Mercurial
                                        Reference  https://nvd.nist.gov/vuln/detail/CVE-2023-5752
                                        Severity   CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA
                   PYSEC-2023-228       URL        https://osv.dev/vulnerability/PYSEC-2023-228
                                        Reference  https://mail.python.org/archives/list/security-announce@py...
                                        Severity   CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
setuptools-56.0.0  GHSA-cx63-2mw6-8hw5  URL        https://osv.dev/vulnerability/GHSA-cx63-2mw6-8hw5
                                        Summary    setuptools vulnerable to Command Injection via package URL
                                        Reference  https://nvd.nist.gov/vuln/detail/CVE-2024-6345
                                        Severity   CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA
                   GHSA-r9hx-vwmv-q579  URL        https://osv.dev/vulnerability/GHSA-r9hx-vwmv-q579
                                        Summary    pypa/setuptools vulnerable to Regular Expression Denial of...
                                        Reference  https://nvd.nist.gov/vuln/detail/CVE-2022-40897
                                        Severity   CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
                   PYSEC-2022-43012     URL        https://osv.dev/vulnerability/PYSEC-2022-43012
                                        Reference  https://github.com/pypa/setuptools/blob/fe8a98e696241487ba...
zipp-3.18.1        GHSA-jfmj-5v4g-7637  URL        https://osv.dev/vulnerability/GHSA-jfmj-5v4g-7637
                                        Summary    zipp Denial of Service vulnerability
                                        Reference  https://nvd.nist.gov/vuln/detail/CVE-2024-5569
                                        Severity   CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA

Installing Automatic Environment Validation

The fetter site-install command can be used to configure a Python environment to automatically perform pre-run validation against a requirements.txt, pyproject.toml, or lock file created by uv, poetry, pipenv, or pip-tools. Once installed, packages will be validated before every Python execution, warning or optionally exiting if the environment is invalid.

The site-install command takes the same arguments as validate. Automatic validation is implemented by installing a special ".pth" file in the virtual environment associated with the provided Python executable.

For example, the following command will validate packages installed for the currently available python3 against a "requirement.txt" lock file and issue warnings:

$ fetter -e python3 site-install --bound requirements.txt

For stronger control, the exit subcommand can be added to force process termination on validation errors.

$ fetter -e python3 site-install --bound requirements.txt exit

To uninstall automatic environment validation, run site-uninstall with the same Python executable:

$ fetter -e python3 site-uninstall

Using fetter with pre-commit

Two fetter commands can be run via pre-commit hooks for continuous integration of Python package controls.

Running fetter validate with pre-commit.

The fetter validate command permits validating that the actually installed Python packages in the current environment are what are defined to be installed, as specified by a requirements.txt file, a pyproject.toml file, or a lock file produced by uv, poetry, pipenv, or pip-tools.

The fetter validate command takes a required argument, --bound, to specify that path or URL to the file to be used to define the bound requirements. The optional --superset argument permits packages not defined in the bound requirements to be present. The optional --subset argument permits not all packages in the bound requirements to be present.

To run fetter validate with pre-commit, add the following to your .pre-commit-config.yaml.

repos:
- repo: https://github.com/fetter-io/fetter-rs
  rev: v3.1.0
  hooks:
    - id: fetter-validate
      args: [--bound, {FILE}, --superset, --subset, display, --code, 3]

Running fetter audit with pre-commit.

The fetter audit command will check for cybersecurity vulnerabilities issued for all installed Python packages in the current environment. Vulnerabilities are searched for in the Open Source Vulnerability (OSV) database.

To run fetter audit with pre-commit, add the following to your .pre-commit-config.yaml. Note that, as searching vulnerabilities can take time, this hook is likely better deployed as a pre-push rather than a pre-commit hook.

repos:
- repo: https://github.com/fetter-io/fetter-rs
  rev: v3.1.0
  hooks:
    - id: fetter-audit

Command Line Interface Documentation

Global Options

  • --exe, -e <FILES>: Provide zero or more executable paths to derive site package locations. If omitted, all discoverable executables will be used.
  • --quiet, -q: Disable terminal animations.
  • --user_site: Force inclusion of the user site-packages, even if it is not activated. Defaults to only including if the interpreter is configured to use it.
  • --all-users: When searching for all discoverable executables, include all user directories. Otherwise, include only the users home directory.
  • --cache-duration, -c: Create or use a caches that expire after the provided number of seconds. A duration of zero will disable caching.
  • --cache-directory: Provide an explicit directory to be used for storing caches.
  • --log, -l: Enable logging output.
  • --stderr: Force all output to stderr.

Command: fetter scan

  • Description: Scan the environment to report on installed packages.
  • Subcommands
    • display: Show scan results in the terminal.
    • write: Save scan results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter inspect

  • Description: Inspect all sites for code files runnable on interpreter startup.
  • Subcommands
    • display: Show inspect results in the terminal.
    • write: Save inspect results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter search

  • Description: Search the environment to report on installed packages based on a pattern.
  • Options
    • --pattern, -p <STRING>: Specify a glob-like pattern to match packages.
    • --case: Enable case-sensitive pattern matching.
  • Subcommands
    • display: Show search results in the terminal.
    • write: Save search results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter count

  • Description: Count discovered executables, sites, and packages.
  • Subcommands
    • display: Show count results in the terminal.
    • write: Save count results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter derive

  • Description: Derive new requirements from discovered packages.
  • Options
    • --anchor, -a <BOUND>: Set the nature of the bound in the derived requirements. (Use a value from CliAnchor)
  • Subcommands
    • display: Show derived requirements in the terminal.
    • write: Save derived requirements to a file.
      • --output, -o <FILE>: Specify the output file.

Command: fetter validate

  • Description: Validate if packages conform to a specified validation target.
  • Options
    • --bound, -b <FILE>: Path or URL to the file containing bound requirements, which can be a requirements.txt, pyproject.toml or a lock file created by uv, poetry, pipenv, or pip-tools.
    • --bound-options <OPTIONS>: Names of additional optional dependency groups.
    • --ignore <OPTIONS>: Names of packages to be excluded from all evaluation.
    • --subset: Allow the observed packages to be a subset of the bound requirements.
    • --superset: Allow the observed packages to be a superset of the bound requirements.
  • Subcommands
    • display: Show validation results in the terminal.
      • --code, -c <INT>: Optionally specify and exit with an error code (default: 3).
    • json: Print validation results in JSON format.
    • write: Save validation results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).
    • exit: Return an exit code (0 for success, customizable for errors).
      • --code, -c <INT>: Specify the error code (default: 3).

Command: fetter site-install

  • Description: Install automatic validation checks on every Python run.
  • Options
    • --bound, -b <FILE>: Path or URL to the file containing bound requirements, which can be a requirements.txt, pyproject.toml or a lock file created by uv, poetry, pipenv, or pip-tools.
    • --bound-options <OPTIONS>: Names of additional optional dependency groups.
    • --ignore <OPTIONS>: Names of packages to be excluded from all evaluation.
    • --subset: Allow the observed packages to be a subset of the bound requirements.
    • --superset: Allow the observed packages to be a superset of the bound requirements.
  • Subcommands
    • warn: Configure site-install to print warnings on validation errors.
    • exit: Configure site-install to return an exit code on validation errors.
      • --code, -c <INT>: Specify the error code (default: 3).

Command: fetter site-uninstall

  • Description: Uninstall automatic validation checks.

Command: fetter audit

  • Description: Search for security vulnerabilities in packages via the OSV DB.
  • Options
    • --pattern, -p <STRING>: Specify a glob-like pattern to select packages (default: *).
    • --case: Enable case-sensitive pattern matching.
    • --cache-refresh: Ignore any OSV caches and re-fetch vulnerability details
    • --cvss: Filter vulnerabilities to those greater or equal to a provided CVSS score. If no argument is provided, the maximum is reported.
  • Subcommands
    • display: Show audit results in the terminal.
    • json: Print validation results in JSON format.
    • write: Save audit results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).
    • exit: Return an exit code (0 for success, customizable for errors).
      • --code, -c <INT>: Specify the error code (default: 3).

Command: fetter lookup-name

  • Description: Search for security vulnerabilities for a package name or dependency specification via the OSV DB.
  • Options
    • <NAME>: Provide a package name or dependency specification.
    • --limit <INT>: If the package does not specify a version, determine how many recent versions to audit.
    • --retain-passing: Show a record for all packages, even if the package has no vulnerabilities.
    • --cache-refresh: Ignore any OSV caches and re-fetch vulnerability details.
    • --cvss: Filter vulnerabilities to those greater or equal to a provided CVSS score. If no argument is provided, the maximum is reported.
  • Subcommands
    • display: Show lookup results in the terminal.
    • json: Print lookup results in JSON format.
    • write: Save lookup results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).
    • exit: Return an exit code (0 for success, customizable for errors).
      • --code, -c <INT>: Specify the error code (default: 3).

Command: fetter lookup-bound

  • Description: Search for security vulnerabilities for all packages in a bound requirements file via the OSV DB.
  • Options
    • <SOURCE>: Directory, file path, URL, or git repository from which to read bound requirements. The provided file can be requirements.txt, pyproject.toml or a lock file created by uv, poetry, pipenv, or pip-tools. If no argument is provided (or a directory is provided), the current directory is searched for a lock file, requirements.txt, or pyproject.toml.
    • --bound-options <OPTIONS>: Names of additional optional dependency groups.
    • --retain-passing: Show a record for all packages, even if the package has no vulnerabilities.
    • --cache-refresh: Ignore any OSV caches and re-fetch vulnerability details.
    • --cvss: Filter vulnerabilities to those greater or equal to a provided CVSS score. If no argument is provided, the maximum is reported.
  • Subcommands
    • display: Show lookup results in the terminal.
    • json: Print lookup results in JSON format.
    • write: Save lookup results to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).
    • exit: Return an exit code (0 for success, customizable for errors).
      • --code, -c <INT>: Specify the error code (default: 3).

Command: fetter unpack-count

  • Description: Count all installed package artifacts.

  • Options

    • --pattern, -p <STRING>: Specify a glob-like pattern to select packages (default: *).
    • --case: Enable case-sensitive pattern matching.
  • Subcommands

    • display: Show artifact counts in the terminal.
    • write: Save artifact counts to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter unpack-files

  • Description: List the file names of all installed package artifacts.
  • Options
    • --pattern, -p <STRING>: Specify a glob-like pattern to select packages (default: *).
    • --case: Enable case-sensitive pattern matching.
  • Subcommands
    • display: Show artifact file names in the terminal.
    • write: Save artifact file names to a file.
      • --output, -o <FILE>: Specify the output file.
      • --delimiter, -d <char>: Set the delimiter for the file (default: ,).

Command: fetter purge-pattern

  • Description: Purge packages that match a specific pattern.
  • Options
    • --pattern, -p <STRING>: Specify a glob-like pattern to select packages (default: *).
    • --case: Enable case-sensitive pattern matching.

Command: fetter purge-invalid

  • Description: Purge packages that are invalid based on dependency specification.
  • Options
    • --bound, -b <FILE>: Path or URL to the file containing bound requirements, which can be a requirements.txt, pyproject.toml or a lock file created by uv, poetry, pipenv, or pip-tools.
    • --bound-options <OPTIONS>: Names of additional optional dependency groups.
    • --subset: Allow the observed packages to be a subset of the bound requirements.
    • --superset: Allow the observed packages to be a superset of the bound requirements.

What is New in Fetter

4.0.0

Support for Windows added.

3.5.0

Additional robustness in identifying and parsing uv lock files.

3.4.0

Testing and building on Python 3.14

3.3.0

Testing and building on Python 3.14

3.2.0

Extension to the public library interface.

3.1.0

Extended lookup-bound subcommand to, by default, search the current working directory for a bound requirements file; alternatively, a path to a project directory can now be provided.

3.0.0

Added inspect subcommand to display all code files runnable on interpreter startup.

Added lookup-name subcommand to display all vulnerabilities for a single package.

Added lookup-bound subcommand to display all vulnerabilities for all packages in bound requirements, which can be a requirements.txt, pyproject.toml or a lock file created by uv, poetry, pipenv, or pip-tools

2.9.0

Improvements to CacheConfig struct.

2.8.0

Extension to the public library interface.

2.7.0

Extension to the public library interface.

2.6.0

Added all-users command-line flag to expand default search to all users.

Added cache-directory command-line flag to specify cache directory.

2.5.0

Extension to the public library interface.

2.4.0

Extension to the public library interface.

2.3.0

Extension to the public library interface.

2.2.0

Extension to the public library interface.

2.1.0

Extension to the public library interface.

2.0.2

Updated cvss dependency.

2.0.1

Update for CI.

2.0.0

The audit command now features a --cvss flag to filter results be CVSS score.

The audit command now displays CVSS score, severity, and vector.

The --cache-duration parameter is now used to set the cache duration of vulnerabilities per package obtained from the OSV DB.

The audit command is now robust to requests with no packages.

The monitor_scan command now properly identifies duplicated scans.

The monitor_scan command now defaults to a single execution with a --period of zero.

1.22.0

Extension to the public library interface.

1.21.0

Extension to the public library interface.

1.20.0

Added caching of OSV vulnerability data.

Added --cache-refresh parameter to audit command.

Implemented minimization of file path usage in ScanFS JSON representation.

1.19.0

Extension to the public library interface.

1.18.0

Extension to the public library interface.

1.17.0

Extension to the public library interface.

1.16.0

Added tenant argument to monitor-scan.

1.15.0

Extension to the public library interface.

1.14.0

Extension to the public library interface.

1.13.0

SystemTag now properly captures hostname and OS version on MacOS.

1.12.0

Extension to the public library interface.

1.11.0

Extension to the public library interface.

1.10.0

Extension to the public library interface.

1.9.0

Environment markers in Pipfile.lock files are now imported.

Support for lock files created by Pixi.

Added the exit subcommand to the audit command.

Implemented SystemTag

Implemented the monitor-scan command.

1.8.0

Added the --ignore parameter to site-install.

Added the --stderr flag to optionally divert all output to stderr.

Updated site-install to always use --stderr.

1.7.0

Added the --ignore parameter to validate to permit bypassing validation of specified packages. Defaults to ignore pip.

1.6.0

Better file path validation and error reporting.

Limit site-install and site-uninstall to only operate on single-Python environment selections.

Support for nearly all dependency environment markers.

1.5.0

Extended support for lock files provided to --bound to include uv.lock, poetry.lock, Pipfile.lock, as well as lock files produced by uv pip compile and pip-tools.

Improved loading of --bound files sourced from a git repository to find and load various lock file formats as well as pyproject.toml.

Improved loading of --bound files sourced from a URL to support various lock file formats as well as pyproject.toml.

1.4.0

Improved site-install to run in the same parent Python process.

Added code option to display to only optionally return an error code.

1.3.0

Implemented site-install to permit installation of package validation on every Python run.

Implemented site-uninstall to remove installation of package validation.

Added log option to display logging information.

Added support for poetry-style dependency specifications with ^ and ~.

Usage of -S in sub-processed Python calls for better isolation and performance.

1.2.0

Improvements to path expansion.

Implemented cache-duration to permit creating and using a locally stored JSON scan cache for the provided duration.

1.1.0

Implemented bound-options to permit selecting optional dependencies in pyproject.toml files.

1.0.0

Implemented home-path display abbreviation with ~.

Handle combining multiple DepSpec in producing DepManifest.

Added --pattern and --case options to audit.

Added support for creating DepManifest from pyproject.toml.

Permit DepManifest to be retrieved from a URL.

0.13.0

All subcommands now have their output sub-subcommands set to display by default.

The validate and audit subcommands now return a non-zero exit code when items are found.

The CLI now exits for unsupported platforms.

0.12.0

Extended validate and audit commands to return a non-zero error code if display prints records.

0.11.0

Implemented variable-width and colored terminal displays.

Implemented terminal spinner for long-running commands.

Added purge-invalid and purge-pattern commands.

Split unpack command into unpack-count and unpack-files.

Added support to specify --bound with a git repository.

0.10.0

Added --user-site flag to force inclusion of user site packages; otherwise, user site packages are only included if ENABLE_USER_SITE is set.

Reimplemented display and delimited table outputs to use a generic trait implementation.

0.9.0

Support --requirement in requirements files.

0.8.0

Package and DepSpec comparisons now remove user.

Package and DepSpec comparisons now accept matching either on revision or commit_id.

URLs are now shown in DepSpec displays.

Delimited file output no longer pads spaces.

0.7.0

Validate display now shows paths properly.

Updated validate json output to terminate line and flush buffer.

0.6.0

Package and dependency keys are case insensitive.

Improved URL validation between dependency and package by removing user components.

Improved validation JSON output to provided labelled objects.

Improved valiation output to show sorted missing packages.

Renamed validation explain values.

Implemented support for nested requirements.txt.

0.5.0

Implemented search command with basic wildcard matching.

Implemented Arc-wrapped PathBuf for sharable site paths.

Added explanation column to validation results.

Added support for both --subset and --superset validations.

Implemented ValidationDigest for simplified JSON serialization.

Added JSON CLI output option for validation results.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fetter-4.0.0.tar.gz (40.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

fetter-4.0.0-cp314-cp314-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.14Windows x86-64

fetter-4.0.0-cp314-cp314-win32.whl (1.9 MB view details)

Uploaded CPython 3.14Windows x86

fetter-4.0.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

fetter-4.0.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ s390x

fetter-4.0.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ppc64le

fetter-4.0.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (2.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

fetter-4.0.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARMv7l

fetter-4.0.0-cp314-cp314-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

fetter-4.0.0-cp314-cp314-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

fetter-4.0.0-cp313-cp313-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.13Windows x86-64

fetter-4.0.0-cp313-cp313-win32.whl (1.9 MB view details)

Uploaded CPython 3.13Windows x86

fetter-4.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

fetter-4.0.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

fetter-4.0.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

fetter-4.0.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

fetter-4.0.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

fetter-4.0.0-cp313-cp313-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fetter-4.0.0-cp313-cp313-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

fetter-4.0.0-cp312-cp312-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.12Windows x86-64

fetter-4.0.0-cp312-cp312-win32.whl (1.9 MB view details)

Uploaded CPython 3.12Windows x86

fetter-4.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

fetter-4.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

fetter-4.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

fetter-4.0.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

fetter-4.0.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

fetter-4.0.0-cp312-cp312-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fetter-4.0.0-cp312-cp312-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

fetter-4.0.0-cp311-cp311-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.11Windows x86-64

fetter-4.0.0-cp311-cp311-win32.whl (1.9 MB view details)

Uploaded CPython 3.11Windows x86

fetter-4.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

fetter-4.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

fetter-4.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

fetter-4.0.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

fetter-4.0.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

fetter-4.0.0-cp311-cp311-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fetter-4.0.0-cp311-cp311-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

fetter-4.0.0-cp310-cp310-win_amd64.whl (2.3 MB view details)

Uploaded CPython 3.10Windows x86-64

fetter-4.0.0-cp310-cp310-win32.whl (1.9 MB view details)

Uploaded CPython 3.10Windows x86

fetter-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

fetter-4.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

fetter-4.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

fetter-4.0.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

fetter-4.0.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

fetter-4.0.0-cp310-cp310-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fetter-4.0.0-cp310-cp310-macosx_10_12_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file fetter-4.0.0.tar.gz.

File metadata

  • Download URL: fetter-4.0.0.tar.gz
  • Upload date:
  • Size: 40.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0.tar.gz
Algorithm Hash digest
SHA256 c140d510e45cf06ca7c43be2181ca70dfac9bd48ad53acb66f71ee5bb311906f
MD5 19868941258ffa06a291d969eabe22ff
BLAKE2b-256 93a27d606d23f3556f552124e7767cef542f828601e3aa74aa8b4b80fb36d059

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: fetter-4.0.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 f3af9737a3bb602ce0c68b98044b696d4c2448f459f7a35879f4bb2e1fc4e28b
MD5 98040c6cec94398bfe2abae3ac48fae6
BLAKE2b-256 14c029a3916449b30e55e987cd19cdfc5af6482c9ce99e5f628549b5e99a5193

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-win32.whl.

File metadata

  • Download URL: fetter-4.0.0-cp314-cp314-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 24cab2952d4df0bfd62dcc87e5b7fcdef408453273731c606975e2ce3f586ebb
MD5 be59bba6b8d315918fc3d67a8f3302af
BLAKE2b-256 aa29a45e9c1adf5897ba404ce0a0f6879d0b480aa1e187be07bbf8d79bdf421c

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e617cea083ce8b5bcfb0583ac54dc7080ae18c8b2e50fe1b56b775808acde01
MD5 4a239173371f418f71d8b15c3fd7e2c3
BLAKE2b-256 422dfefff218fb2108deb6483981263ed50772ba5a3a937753c3e0b004446db2

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 7202b01a44047a62f997c5fe3460be41364588a2189ae7e21983bb1879e99de5
MD5 80dbe92a6862ba98ee59070e73097496
BLAKE2b-256 186137df0bc45c9d72598dee992ef1eea67193540823d4c00276356112daf97b

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1480d29e0cb7948672a7a2507e99f68e1e98bc60ef5159b9094334359122bc22
MD5 d1b0c2c1d57e4f9d696add768c09ba05
BLAKE2b-256 19ebb8caf13771a1a2b38fef44e03965775d5367ef4c43eacc3edcfb597be739

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ad5cbcdc002ecf852e079d758d6df9f8051d02f6a08c78bbcf387e30475c8bd1
MD5 266b4e7f1bcc9bdb899823e39d353e14
BLAKE2b-256 7454e5b0536f452aab80de8a1926d45e0205f66f34b7a3c77e63319295ce08bd

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9f80ecdb0013f998a199ca629f7b70f2ce61f9adc00c46e9aa1858a40015ad24
MD5 efb2ec2c39473100f124f9d4fc6b9375
BLAKE2b-256 243360a9fe19dd5cc46e499279650c8cc4a7f84881c8f57c83368e6e34a1f8a7

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8df030488b4c31aa5deb0bc1b7568433b866b1c562cdadfa272a2df3e5524a61
MD5 fa533d1018cf29b641ae782fafc10f3e
BLAKE2b-256 18868141cddb43f0e824ae1eff8d0e8cd8e0b80da085ef88052ad1d44c63d993

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a840c5b0379e6a1cb4a34e805c16e5e550d9077332f6f5410156c11dfcde3c51
MD5 832743cfb3dba4b43a549fb988ccef64
BLAKE2b-256 e6b5148377209f6ec20913dd32bb9cead9405eea83f46b1358281c75109fb694

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: fetter-4.0.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 09007898d32e70d236eab883eeb06032453c7910e4fd1332afdee258d00ee759
MD5 0d83cbf5fd30c5ab1a16e7d707358791
BLAKE2b-256 d909f1de65db82e2e361d18777929b744342eae14c94eeaf564c8709b68a2464

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-win32.whl.

File metadata

  • Download URL: fetter-4.0.0-cp313-cp313-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 edb85fec099b134b0bcab5e478c2cfe6736efe60cd3f7594282b456fb701ce94
MD5 f502d17b191b2ff98936ad7fe268a4c6
BLAKE2b-256 a7e127f41a33c5676aad8650f9f07df3a2c65b6d4bf4c60bc2a8572bbeaeb3a5

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ccb9f14ecc7a01a016659bf8e9d3fff3d3c247443c6b807d71ac8032cb262adf
MD5 35c8bd63c7c70000edcfcc66f1e88f15
BLAKE2b-256 021c01bb2667f18ca14e6888155eeb68bbf4a80665dd26fa30775a1b323d99da

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 cd9d90c28ed43dda0461ae2ed4c5b03ffe91ae2400c77009c749811864986687
MD5 40fab885da62e0dc0d03cffc46c7038d
BLAKE2b-256 9b8de29fc9aa9963e7e83d837e3b740ef5d6518d61088c189ba635e954ae6d75

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 da66cb7099f28ab1b0eccb3f19dda999acc3acf495c92ce59ac8875f3e05224a
MD5 559dc1ba37efa80e4aad6995a05498bc
BLAKE2b-256 69fda3c0cd527519a6350f9d0bb9760b6417d639861c09e38dc0c7696960fae7

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d06584b256b1c009c13cb64688e1bd23318a3e76e9f2427b9a91938144e1a320
MD5 60e95b8a6a7672a36aed6d806942e5c1
BLAKE2b-256 3acff67808c9d260cecf3ffa6d6d737f7a212bf99ad2a780c0b091b75853d10c

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 0fb4e210f183d602a2a03a40d47eb3dd692a44d67c9c7b590e04c020fc4ef936
MD5 fce164c22a321cb8f4f2355ed0d3389f
BLAKE2b-256 13c1b8e49524092ad523633b522021cd2e4207547a64ef09023895e832383087

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 375d59a76dd5d8bb6987461552afdc4b5c88784b5fc2c21adbde1fd3f7b8aaad
MD5 6ff311e34433e9bd82cd68ad8f2fbe54
BLAKE2b-256 a96ab19a4ade3cf0385373191580d8c49b07d210bd66fc5886192eca53695ebc

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f4965a7c30bca43b81bd2fb839006845b84f40cea74e25b16d23cd644d649bf2
MD5 cf13dc71cc016ef5c78996b7b130bf6e
BLAKE2b-256 d7451e50ba632179437a75e3799b1a4c2443158c2a61a5d89b2f6348bf52af29

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: fetter-4.0.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e1a077572ef7042bb45ba973833b0972fa8b33e3835bb2662bb78d8fe3333cbd
MD5 4eb1d653267d6356b27a5dec8a4842ee
BLAKE2b-256 7a48eff7ca17cfd30d342dd25079416aed80ce9b1cde40afe66100a977ea8d45

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: fetter-4.0.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 86a0eea481e7cf9bec44af3220a187d71c149e45824377294f999d48e885749f
MD5 d15703485f174f52f6ba9f21a144f7ca
BLAKE2b-256 d2f21451a15afb5bf4a329bd6692f8385e8931ceacb04df9ac8e2cfcb0f8d9d1

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5bc77a147704475b40ed5e9dc6c6f401ae401bef1621bc072d095018eabbfde9
MD5 462fb31ab6287a7b9d7b31d7f6d38ce3
BLAKE2b-256 f092094be234ca5bfbc22e70fede6311a78f3e8d524a3da132418c917543d789

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 1e837dd891d0b165455c708340c2dd3ea6884780a5bf87db36274b7b1b281843
MD5 f6f0780bf35cbcd6f9d31acb72a9777d
BLAKE2b-256 6107e5c9be47ba571e1f66002c1bfe37479c70c1c4d7eafd03133333d6354bc3

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1bff156998886e0df5d6c719fd80a572de7ed2aa88edeac237a96b68ed228bdd
MD5 b266409023b3df3cf7b3f0c419a35c77
BLAKE2b-256 a5ae57f5e9c00b0c8fe47a0c6260ceb7d4b3f20568449933bbeded161601e2bb

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b6de14d77e40049aa4c9161be1ff76c70d656a55547ed3151a57fafb99bcaa64
MD5 c9442182086a494ba70bb0655fc330c6
BLAKE2b-256 fe0545f65d5b3499d22a1d52f95e556fecf306226ca2709d0e57221b0881f5a3

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5f9e15fc047b3f39538a6f471a0f065740da64aa659a0bbd318668aa1c7f262a
MD5 2710af595e223e546a3f3611fccfe85b
BLAKE2b-256 d5a2f9723439fddf92f75ff156f70e5ff4d79f35022fa66448398bc94527ebdf

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8ee4cf6dfcf949ddd64f22bb2879383dc3c442a9f4fe0488df7d7e06305ed7c8
MD5 85aecf8d3d587e287ac846a953893946
BLAKE2b-256 ebc9d9241aa4059e99679a31a577f352dbad1d6a65d9b48c8b498fcd0763b0a0

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9f5ad1b109b3c74cde8e54812e9a4779ee169ed69c04093f5b94c4bdaf49748b
MD5 de4281d64ee99382d69f1ea09fdcf264
BLAKE2b-256 b30175e1d9749667c1b80fb5969268a1f87d82eb78799e3b2c947ebdafff85a8

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: fetter-4.0.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ab597195d1d4b8030d2a6083d7c3c1a66332204cb23caee01cbc142de1b1e1bd
MD5 caa56e7cee12a6fa7e73818d50865e20
BLAKE2b-256 2b7b7689cf92113bf39e4bf0e6fd1de2ae5375ab89a0ab6271f2e9b451f9434e

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: fetter-4.0.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 0f482d6afb5763e6adeafc94346f451077ec9288223459c96261e8725ebb16e5
MD5 20966053076589d05f5ab32ee56eaefc
BLAKE2b-256 5c4ceaf72b15fdda2a778b9a74f1f54e31c44ca36bc372dfd288819d5cba1763

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c0fafbdf1d199d26702d976da8bd3881ed74f381084c2ee3f8ba060122efd9dd
MD5 d08e47bfae4fa82372ecc705335458bf
BLAKE2b-256 75cc5fe87345c4fc81c6e87ccc466de288c4e1974a7e38d0afc8384cbed20159

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 1171cd9e6bf4c9118a974d32b01bd765921a4fcdbfefec6b6da69e1899b091dc
MD5 eb7a3a450cb397f3897969feb74f5510
BLAKE2b-256 40060fd0c55ff1f1a9b30fd0ddf685929cc76ec3bf5830bfdc914a76a99fc15e

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 dbf519bf09fc99afd959545517c8b8e7d87273263521157efcd1af625b18458f
MD5 1b3415fd2447fa13c89af5fcf2d4be30
BLAKE2b-256 5f655a4e99e218c19fa82f3bf3f85f7891ca481e288067255947173a523b2149

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a2072cac26d8b2738f3e148e283a528fa9ba6dc93cc4d9840258c152868fcff2
MD5 3abdf4bf0b460d3cdb93f01d0d582f78
BLAKE2b-256 a5daf164685a964c840f98f0db8b31c0b0131a35c1fac6874ecd73ed9358a49e

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 7382c24998b2aefb4c2d83213244f15a04c7e097a57a38ba21b09d8d91b85acd
MD5 9e59bbaea57bbbf07d284bc73f947542
BLAKE2b-256 a4e6110ebadee0b70f698ba95da1d372ec52804d14d0e0188367be1a7ea7ecaa

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c1455fc930dbc8095d346deef355aac1dde758d8ab0b0395ab7c2088abeec7a
MD5 92de7af32fb2a3e2767d78dd5caa8f7f
BLAKE2b-256 df19320f83cb4f2816ebab6b378747371d805d96b9ebed6fd4934f14cdc73a78

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bab70b723b99b6f65b0a896748cfe5ae6f8957e67580ea31dbd2ab1746a4bf66
MD5 9079dc2f370f93847c68934cfa4d2ebc
BLAKE2b-256 526ffd83557f9058fec661320c07b0348577c12eaa97414949b4eac489e0d824

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: fetter-4.0.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 59f0a4a40ee51696df0907f799b41ecd56e5b198db54213a6a16998e66a517d5
MD5 edf7d927c64023d4c3df6f344c6ea9fe
BLAKE2b-256 ff5495c2e0438871b7387b1b396e966769ffbbf2e054cfcdce2d2a77007f228e

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: fetter-4.0.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for fetter-4.0.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 b5e18fa981446584decd149c9a80dae1dc2d58d409fafcd82b0254f389873170
MD5 43de8ad558451f7997099cec44542e6b
BLAKE2b-256 315a7344da44f68f9c121dc0dd4f4615616bc097fbf9d0492ddc68d58c5be5bb

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ca399ff9ccf9bcea74eab007d3c5406c28eea42bdc77580616d2a0a99741649
MD5 f7a2d8ca85d21dd14541d764e6e16f1f
BLAKE2b-256 224442ae82fdd29b715581209bb9bbf783ec344d173283dd3fc8c696978dc7a4

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 721ee35eb49b92dd280f00b47105e2faa9740c483f9012183b7ff851d4e3b917
MD5 cdddde9f69ae56805d6f50d124918ae3
BLAKE2b-256 1e79149211dd790914a4024d1311bec13ed37908cc5d6f790ac262c17737d97e

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 0772c1206a4e99b95bc65fc6581ad256dad2fb17401b1b125e2f66f32c26b9f5
MD5 285d73bafa931bcd77a7e4eedb0f8e61
BLAKE2b-256 0071df5518809b73b8cc45bc7d1d9438d97babeb70fe1647e554bdaace683305

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8935e15e374bf66be92395fec769e3bfe24698166cb51f66c45f5e9900df06bd
MD5 4d65f8d2b2406e9854069ba4b29c9229
BLAKE2b-256 e94524be56d4b2c5b1fe746244f1e33486945d81c89890f70a9dd13a81b53f64

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 2bb0ef355955e8ba30c935d0aca5d691cf82b9e4c2e05534e6f1b2b3dbb50ac9
MD5 2d286a81f4620011944dbdfa2ff6985c
BLAKE2b-256 4970d07bcaf46824c4425342d44f498c9f8163f1885d18ac5dfbbda6b1fbfd08

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 432b4ea6006b1ff2e49e23092cace7454100bdc69da94e75abceb79f70c2d413
MD5 cb72424324c25dc71f37d787762f73f6
BLAKE2b-256 657627ebf382e63b8f9289ecf9b80a32dbf840d353779ecdfe6e31da71470026

See more details on using hashes here.

File details

Details for the file fetter-4.0.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fetter-4.0.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fd0b54ec08bcc497931e971941fad5a476215584bcb847b748c21ef172a98631
MD5 50fc4cfde3e6b67d0c9674e429a68284
BLAKE2b-256 64f00eba9d5bd6000b1fb8683c6575550b50b7fdbe44ce909adb2107baa50fed

See more details on using hashes here.

Release history Release notifications | RSS feed

4.0.1

46 files

This release

4.0.0 This release

46 files

3.5.0

36 files

3.4.0

36 files

3.3.0

36 files

3.1.0

36 files

2.9.0

36 files

2.6.0

36 files

2.5.0

36 files

2.1.0

36 files

2.0.2

36 files

2.0.1

36 files

1.22.0

36 files

1.19.0

36 files

1.17.0

36 files

1.13.0

36 files

1.9.1

36 files

1.8.0

36 files

1.7.0

36 files

1.6.0

35 files

1.5.0

35 files

1.4.0

35 files

1.3.0

35 files

1.2.0

35 files

1.1.0

37 files

1.0.0

37 files

0.13.1

37 files

0.12.0

39 files

0.11.0

39 files

0.10.0

45 files

0.9.0

45 files

0.8.0

45 files

0.7.0

45 files

0.6.0

45 files

0.5.1

45 files

0.4.0

45 files

0.3.2

45 files

0.3.1

45 files

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