Manage virtual environments
Project description
Dephell VEnvs
Manage Python virtual environments.
Installation
Install from PyPI:
python3 -m pip install --user dephell_venvs
Get venv from manager
from pathlib import Path
from dephell_venvs import VEnv, VEnvs
# pass here path with substitutions:
venvs = VEnvs(path=Path() / '{project}-{digest}' / '{env}')
VEnvs gets argument path that is path to the virtual environment with substitutions:
{project} - last part of the path to the project.
{digest} - short hash of full path to the project to avoid collisions.
{env} - name of sub-environment because most of project need more than one environment. For example, tests, docs, tests-py35.
Ways to get VEnv object from VEnvs:
venvs.get(project_path, env). Pass here path to the project and sub-environment name and DepHell will substitute them is the path template and return VEnv instance for this path.
venvs.get_by_name(name). Pass only name and this will be substituted as {project} and other substitutions ({digest}, {env}) will be just dropped out.
venvs.current – returns current active venv if some venv is active.
Example:
venv = venvs.get(project_path=Path('dephell_venvs'), env='pytest')
# VEnv(path=PosixPath('dephell_venvs/pytest'), project='dephell_venvs', env='pytest')
Manage venv
VEnv can be got from VEnvs ot created manually:
venv = VEnv(path=Path('venv'))
Check existence:
venv.exists()
# False
Create and destroy:
venv.create()
venv.destroy()
Some other useful information:
venv.bin_path
# PosixPath('dephell_venvs-njyT/pytest/bin')
venv.lib_path
# PosixPath('dephell_venvs-njyT/pytest/lib/python3.7/site-packages')
venv.python_path
# PosixPath('dephell_venvs-njyT/pytest/bin/python3.7')
venv.prompt
# 'dephell_venvs/pytest'
venv.python
# Python(path=PosixPath('dephell_venvs-njyT/pytest/bin/python3.7'), version='3.7.0', implementation='python', abstract=False)
For details about Python object see dephell_pythons.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dephell_venvs-0.1.8.tar.gz
.
File metadata
- Download URL: dephell_venvs-0.1.8.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a3e208d7da3d8a93d5c606576e8ee115c330706070ef54e33290c463ad36d7f |
|
MD5 | da5ef972c0f0ada7c77681cde9a08a69 |
|
BLAKE2b-256 | 149d15b8078d5446b2333015d053da6a98b41321235783c007f9558bf167d407 |
File details
Details for the file dephell_venvs-0.1.8-py3-none-any.whl
.
File metadata
- Download URL: dephell_venvs-0.1.8-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a775b15b47327366877333fc3cfb56165d3f1494bfe42f8e414c6074ee76b0a |
|
MD5 | a56a9963b8ae6aa3f1feb62d3bc2aaa0 |
|
BLAKE2b-256 | c0fc2620403832326f2b2f9d1ac76dbd7ac870c11ed7e95f44d26b1ac5b9d40f |