Skip to main content

Add your description here

Project description

activate-virtualenv

activate-virtualenv is a Python project that offers a context manager that allows users to easily activate a virtual environments programatically. A virtual environment is an isolated Python environment that allows users to manage and install packages separately from their system Python installation. This project provides a simple and convenient way to activate and (automatically) deactivate a virtual environment and start working within it.

Installation

To install the activate-virtualenv package, you can use pip:

pip install activate-virtualenv

Or rye:

rye install activate-virtualenv

Or anything else that downloads packages from PyPI.

Usage

To use the activate_virtualenv context manager, you'll need to import it into your Python script. Here's how to get started:

  1. Import the activate_virtualenv context manager:
from activate_virtualenv import activate_virtualenv
  1. Create an instance of activate_virtualenv by providing the path to your target virtual environment:
# Replace 'path_to_your_venv' with the actual path to your virtual environment.
with activate_virtualenv('path_to_your_venv'):
# Your code here
# The virtual environment is active within this block.
# The original environment is automatically restored when exiting the 'with' block.

Example

Here's an example of how you can use activate_virtualenv:

from activate_virtualenv import activate_virtualenv

# Specify the path to your virtual environment
venv_path = '/path/to/your/virtualenv'

# Activate the virtual environment temporarily
with activate_virtualenv(venv_path):
    # Your code that requires the virtual environment
    from subscript import function

    # Your dependencies in the specified virtual environment will be used here.
    function()

# Once you exit the 'with' block, you are back to your original environment.
# You can now use the modules and dependencies from your original environment.

How It Works

The activate_virtualenv context manager temporarily modifies environment variables and Python's sys module to activate the specified virtual environment. When you enter the with block, it runs the virtual environment activation script activate_this.py found in the bin directory of the specified virtual environment. This sets up the environment to use the virtual environment's Python interpreter and dependencies. When you exit the with block, it restores the original environment settings by manually undoing the changes made ny the activation script.

Important Notes

  • This script is intended for use in Python 3 environments.
  • Ensure that the virtual environment path you provide is valid. It should be the path to the virtual environment's root directory.
  • Make sure that the virtual environment contains the standard activate_this.py script in the bin directory. This script is required to activate the virtual environment. If you are using poetry, rye or virtualenv to manage your virtual environments, this script should be present by default.

License

This project is licensed under the MIT License. For more information, please refer to the LICENSE file.

Issues and Contributions

If you encounter any issues or have suggestions for improvements, please feel free to open an issue or submit a pull request on the GitHub repository.

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

activate_virtualenv-0.1.4.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file activate_virtualenv-0.1.4.tar.gz.

File metadata

  • Download URL: activate_virtualenv-0.1.4.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for activate_virtualenv-0.1.4.tar.gz
Algorithm Hash digest
SHA256 11f34ca4e8a827f16964e1abd7bc69358d0bb6655fdeb4ab7b9628f7f91983b3
MD5 ddd03d411ee9daeace833cfbcc0d222f
BLAKE2b-256 ded453108a30b5a3867ce6eb9a27e6d290d0dd72b9ef9611127b2a7a614eec21

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