Skip to main content

Python dependency resolver

Project description

python-resolver

A Python dependency resolver.

Issues

  • Only supports wheels (no sdists!)

Usage

Python library

import packaging.requirements
import resolvelib
import resolver


resolver = resolvelib.Resolver(
    resolver.Provider(),
    resolvelib.BaseReporter(),
)
resolver.resolve({
    packaging.requirements.Requirement('trampolim==0.0.2'),
})

Resolver CLI

$ python -m resolver build
--- Pinned Candidates ---
build: build 0.3.1.post1
pep517: pep517 0.10.0
toml: toml 0.10.2
packaging: packaging 20.9
pyparsing: pyparsing 2.4.7

--- Dependency Graph ---
pep517 -> toml
(root) -> build
build -> pep517, toml, packaging
pyparsing ->
toml ->
packaging -> pyparsing

mindeps CLI

resolver.mindeps will resolve the dependency tree for the minimum supported version. This is useful when you want to for eg. test your software against the minimum version of the dependencies that it claims to support.

It can work on projects directly, or on requirement strings, like the normal CLI. If no argument is provided, it will try to resolve the dependencies for the current project. If arguments are provided, it will treat them as requirement strings and resolve them instead, like the normal CLI. Unlike the normal CLI, the output will be a list of requirement strings that pins the dependency versions.

For resolving the current project, the python-resolver[mindeps] extra needs to be installed.

$ python -m resolver.mindeps
resolvelib==0.7.0
importlib-metadata==3.2.0
mousebender==2.0.0
zipp==0.5.0
attrs==19.3.0
packaging==20.3
pyparsing==2.0.3
six==1.5.0
$ python -m resolver.mindeps build==0.3.0
build==0.3.0
pep517==0.9.1
toml==0.9.6
packaging==14.0

Project details


Download files

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

Source Distribution

python_resolver-0.0.1.1.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

python_resolver-0.0.1.1-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file python_resolver-0.0.1.1.tar.gz.

File metadata

  • Download URL: python_resolver-0.0.1.1.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for python_resolver-0.0.1.1.tar.gz
Algorithm Hash digest
SHA256 9a0204ece7c36370a390245f92ffd4d7b1353fcf8cdab0f808db9345ab260eda
MD5 bd566d8a5fa5931fd737b08491afab5d
BLAKE2b-256 1b16f8863a99a04517adaa8b600607e4e69bf21438b71482e9460e99295fa103

See more details on using hashes here.

Provenance

File details

Details for the file python_resolver-0.0.1.1-py3-none-any.whl.

File metadata

  • Download URL: python_resolver-0.0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for python_resolver-0.0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 775131e35f76f122d9286a57b40d95d820af587e9c19df13219a37977f41c68e
MD5 bfb1ebd41b992def789edfe5b956de8d
BLAKE2b-256 f4d89eb558bd34d3f5aa91ddb011e2a0673c2177d4426ac6c973f7ae9acffbab

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page