THE PROJECT IS ARCHIVED
Forks: https://github.com/orsinium/forks


DepHell -- project management for Python.
Why it is better than all other tools:
- Format agnostic. You can use DepHell with your favorite format: setup.py, requirements.txt, Pipfile, poetry. DepHell supports them all and much more.
- Use your favorite tool on any project. Want to install a poetry based project, but don't like poetry? Just tell DepHell to convert the project's meta information into a setup.py and install it with pip. Or directly work with the project from DepHell, because DepHell can do everything that you usually want to do with packages.
- DepHell doesn't try to replace your favorite tools. If you use poetry, you have to use poetry's file formats and commands. However, DepHell can be combined with any other tool or can even combine all these tools together by converting formats. You can use DepHell, poetry, and pip all at the same time.
- Easily extendable. DepHell has strong modularity and can be easily extended with new formats and commands.
- Developer friendly. We aren't going to place all of our modules into
_internal. Also, DepHell has a large ecosystem with separated libraries so you can use only the parts of DepHell that you need.
- All-in-one-solution. DepHell can manage dependencies, virtual environments, tests, CLI tools, packages, generate configs, show licenses for dependencies, assist with security audits, get download statistics from PyPI, search packages and much more.
- Smart dependency resolution. Sometimes pip and pipenv fail to lock your dependencies. Try to execute
pipenv install oslo.utils==1.4.0. Pipenv can't handle it, but DepHell can: dephell deps add --from=Pipfile oslo.utils==1.4.0 to add new dependency and dephell deps convert --from=Pipfile --to=Pipfile.lock to lock it.
- Asyncio based. DepHell doesn't support Python 2.7, and that allows us to use modern features to make network and filesystem requests as fast as possible.
- Multiple environments. You can have as many environments for project as you want. Separate sphinx dependencies from your main and dev environment. Other tools like pipenv and poetry don't support this.
Features:
- Manage dependencies: convert between formats, instаll, lock, add new, resolve conflicts.