Skip to main content

An easy way to manage development and procution dependecies.

Project description

Dependency Manager

current :green_heart: license python

:heart_eyes: First full released version is finally here! :heart_eyes:

Dependency Manager comes to resolve the lack of a good development/production dependency management in python pip daily use.

With this tool you're gonna be able to add development and production dependencies to your project in separeted. Once the package can exports all requirements to a file in particular without losing any compatibility with who only use pip. Also it differentiates packages which your project is directly dependent on, from its dependency tree.

Getting Started

# you can install it globaly
sudo pip install dependencymanager
## this way you're gonna have dependencymanager globaly to use in all your projects

# or

# localy, but remembet to add it as development dependency ;)
pip install virtualenv
virtualenv --python=python3 .virenv
source .virenv/bin/activate

pip install dependencymanager
python -m dependecymanager init
python -m dependecymanager move --name=dependencymanager
python -m dependecymanager export
## this way dependency manager will be contained in a specify project,
## and will be installed only in development environment.
## if you want it not to stay in production, just do execute the 'move' command.

Comands:

List
Command Description
init create DM environment tree from existente installed
i - install Install the project or an specific dependecy
u - uninstall Uninstall required package and its dependency. Maintaining possible cross dependencies with other packages, moving them if necessary, and updating the tree.
f - info Get info about the requested pack.
m - move Move package between environments, production for developer and vice versa.
mh - makehead Make the given package head. That is, the project is now directly dependent on this package.
ex - export Export requirements files.
Flags
Command Flag Description
install with no flag install the dev or prod tree: according to --dev flag.
install -n --name name of the package to install.
install -v --version version to install. leave empty for latest.
install -d --dev Install as dev dependency? Default is False.
uninstall -n --name name of the package to uninstall.
info -n --name name of the package to get info.
info -e --extra Brings all information available about the package, including disponible versions.
move -n --name name of the package to move.
makehead -n --name name of the package to make head.
makehead -rm --remove "Undead" the given pack, removing the 'head' status from it. Default is False.

WARNING:

As the package is still not fully released there are two things you might want to consider:

  • Dependency Manager still does not supports locally installed packages. It's a rare but possible case of use for pip. So if you, for any reason, need to deal with this kind of approach in your project, Dependency Manager is still not the tool for you. Although adding such support is fairly easy from the point we are, and this will be present in a future full release version.
  • The package craetes 3 files in you'r current directory: dmtree.json, requirements.txt and dev_requirements.txt. There's still not how to custom these names, Although adding such feature is fairly easy too, and will be present in a future full release.
see the release note here.
See also
  • Varenv project: A simple way to mock your environment variables during development.
  • SimplestRPC project: A simple RPC for python - study project.

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

dependencymanager-1.0.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

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

dependencymanager-1.0.0-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file dependencymanager-1.0.0.tar.gz.

File metadata

  • Download URL: dependencymanager-1.0.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2

File hashes

Hashes for dependencymanager-1.0.0.tar.gz
Algorithm Hash digest
SHA256 bd91e93eb2320fb4c6b71641ce69645feaef203f59197ccf75d6596bcab3c14b
MD5 0ca8eda86ff13d76d184de25bb344ad3
BLAKE2b-256 6a999fa59ed482eb52c9310b0e7829de424a183e9c126865b70013775a92c4ff

See more details on using hashes here.

File details

Details for the file dependencymanager-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dependencymanager-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2

File hashes

Hashes for dependencymanager-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1bf983a4000d208015e8cef43619ccec3fb62656547a5e4cb6db34d058877128
MD5 d77682bf5a188aeb3c1085d5ea37363e
BLAKE2b-256 568cf6ca58c94cfe864557db4dcc8a54cfb9bccef2dba22216280b3dcb6c2d48

See more details on using hashes here.

Supported by

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