Skip to main content

Dephell VEnvs

travis appveyor MIT License

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.

Download files

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

Source Distribution

dephell_venvs-0.1.18.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

dephell_venvs-0.1.18-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file dephell_venvs-0.1.18.tar.gz.

File metadata

  • Download URL: dephell_venvs-0.1.18.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: DepHell/0.8.3

File hashes

Hashes for dephell_venvs-0.1.18.tar.gz
Algorithm Hash digest
SHA256 c7307291b754edba325ab27edeb05d85ee4dd2f1487c48872a1ebfc372bf7a2e
MD5 fdb025b80bed491c652d2df264bc89ea
BLAKE2b-256 7679646c78687f459deb5e7a03568907039cd0c87403540571633b044e53b184

See more details on using hashes here.

File details

Details for the file dephell_venvs-0.1.18-py3-none-any.whl.

File metadata

File hashes

Hashes for dephell_venvs-0.1.18-py3-none-any.whl
Algorithm Hash digest
SHA256 bd3ad440702aa9a9dc21bbab9633537fa395296d40451280d40046d9e3372e6d
MD5 c0e0ff2331b9ebacd15037fe78eca493
BLAKE2b-256 a5faf16607d46e79bed41e6f45c61ab701614a4331c8e104b8d710d1b6ba0869

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.18 This release

2 files

0.1.17

2 files

0.1.16

2 files

0.1.15

2 files

0.1.14

2 files

0.1.13

2 files

0.1.12

2 files

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.1

1 file

Supported by

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