Skip to main content

Dependency resolution for Python

Project description

DepHell

Dependency resolution for Python.

Installation

sudo pip3 install dephell

CLI usage

With arguments:

python3 -m dephell convert \
    --from-format=pip --from-path=requirements.in \
    --to-format=piplock --to-path=requirements.txt

With config:

python3 -m dephell convert --config=pyproject.toml --env=main

Mix config and arguments:

python3 -m dephell convert --config=pyproject.toml \
    --to-format=piplock --to-path=requirements.txt

Available formats:

  1. pip -- pip's requirements file.
  2. piplock -- locked pip's requirements file.
  3. pipfile -- not locked Pipfile
  4. pipfilelock -- locked Pipfile

Python lib usage

from dephell import PIPConverter, Requirement

loader = PIPConverter(lock=False)
resolver = loader.load_resolver(path='requirements.in')

resolver.resolve()
reqs = Requirement.from_graph(resolver.graph, lock=True)

dumper = PIPConverter(lock=True)
dumper.dump(reqs=reqs, path='requirements.txt')

TODO

  1. Python version
  2. Hashes load
  3. Zero release (compatible with any constraints)
  4. right version to tag mapping for git

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

dephell-0.3.0.tar.gz (7.6 kB view hashes)

Uploaded Source

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