Skip to main content

A development environment management tool for data scientists.

Project description

envd cat wink envd cat wink

Development environment for AI/ML

discord invitation link trackgit-views Python Version all-contributors envd package donwloads continuous integration Coverage Status

explain

explain

What is envd?

envd (ɪnˈvdɪ) is a command-line tool that helps you create the container-based development environment for AI/ML.

Development environments are full of python and system dependencies, CUDA, BASH scripts, Dockerfiles, SSH configurations, Kubernetes YAMLs, and many other clunky things that are always breaking. envd is to solve the problem:

  1. Declare the list of dependencies (CUDA, python packages, your favorite IDE, and so on) in build.envd
  2. Simply run envd up.
  3. Develop in the isolated environment.

Why use envd?

Environments built with envd provide the following features out-of-the-box:

❤️ Knowledge reuse in your team

envd build functions can be reused. Use include function to import any git repositories. No more copy/paste Dockerfile instructions, let's reuse them.

envdlib = include("https://github.com/tensorchord/envdlib")

def build():
    base(os="ubuntu20.04", language="python")
    envdlib.tensorboard(host_port=8888)
envdlib.tensorboard is defined in github.com/tensorchord/envdlib
def tensorboard(
    envd_port=6006,
    envd_dir="/home/envd/logs",
    host_port=0,
    host_dir="/tmp",
):
    """Configure TensorBoard.

    Make sure you have permission for `host_dir`

    Args:
        envd_port (Optional[int]): port used by envd container
        envd_dir (Optional[str]): log storage mount path in the envd container
        host_port (Optional[int]): port used by the host, if not specified or equals to 0,
            envd will randomly choose a free port
        host_dir (Optional[str]): log storage mount path in the host
    """
    install.python_packages(["tensorboard"])
    runtime.mount(host_path=host_dir, envd_path=envd_dir)
    runtime.daemon(
        commands=[
            [
                "tensorboard",
                "--logdir",
                envd_dir,
                "--port",
                str(envd_port),
                "--host",
                "0.0.0.0",
            ],
        ]
    )
    runtime.expose(envd_port=envd_port, host_port=host_port, service="tensorboard")

⏱️ Builtkit native, build up to 6x faster

Buildkit supports parallel builds and software cache (e.g. pip index cache and apt cache). You can enjoy the benefits without knowledge of it.

For example, the PyPI cache is shared across builds and thus the package will be cached if it has been downloaded before.

🐍 One configuration to rule them all

Development environments are full of Dockerfiles, bash scripts, Kubernetes YAML manifests, and many other clunky files that are always breaking. You just need one configuration file build.envd[^1], it works both for local Docker and Kubernetes clusters in the cloud.

envd

[^1]: The build language is starlark, which is a dialect of Python.

✍️ Don't sacrifice your developer experience

SSH is configured for the created environment. You can use vscode-remote, jupyter, pycharm or other IDEs that you love. Besides this, declare the IDE extensions you want, let envd take care of them.

def build():
    install.vscode_extensions([
        "ms-python.python",
    ])

☁️ No polluted environment

Are you working on multiple projects, all of which need different versions of CUDA? envd helps you create isolated and clean environments.

Who should use envd?

We're focused on helping data scientists and teams that develop AI/ML models. And they may suffer from:

  • building the development environments with Python/R/Julia, CUDA, Docker, SSH, and so on. Do you have a complicated Dockerfile or build script that sets up all your dev environments, but is always breaking?
  • Updating the environment. Do you always need to ask infrastructure engineers how to add a new Python/R/Julia package in the Dockerfile?
  • Managing environments and machines. Do you always forget which machines are used for the specific project, because you handle multiple projects concurrently?

Talk with us

💬 Interested in talking with us about your experience building or managing AI/ML applications?

Set up a time to chat!

Getting Started 🚀

Requirements

  • Docker (20.10.0 or above)

Install and bootstrap envd

envd can be installed with pip (only support Python3). After the installation, please run envd bootstrap to bootstrap.

pip3 install --pre --upgrade envd
envd bootstrap

You can add --dockerhub-mirror or -m flag when running envd bootstrap, to configure the mirror for docker.io registry:

envd bootstrap --dockerhub-mirror https://docker.mirrors.sjtug.sjtu.edu.cn

Create an envd environment

Please clone the envd-quick-start:

git clone https://github.com/tensorchord/envd-quick-start.git

The build manifest build.envd looks like:

def build():
    base(os="ubuntu20.04", language="python3")
    # Configure the pip index if needed.
    # config.pip_index(url = "https://pypi.tuna.tsinghua.edu.cn/simple")
    install.python_packages(name = [
        "numpy",
    ])
    shell("zsh")

Note that we use Python here as an example but please check out examples for other languages such as R and Julia here.

Then please run the command below to set up a new environment:

cd envd-quick-start && envd up
$ cd envd-quick-start && envd up
[+]  parse build.envd and download/cache dependencies 2.8s  (finished)
 => download oh-my-zsh                                                    2.8s
[+] 🐋 build envd environment 18.3s (25/25)  (finished)
 => create apt source dir                                                 0.0s
 => local://cache-dir                                                     0.1s
 => => transferring cache-dir: 5.12MB                                     0.1s
...
 => pip install numpy                                                    13.0s
 => copy /oh-my-zsh /home/envd/.oh-my-zsh                                 0.1s
 => mkfile /home/envd/install.sh                                          0.0s
 => install oh-my-zsh                                                     0.1s
 => mkfile /home/envd/.zshrc                                              0.0s
 => install shell                                                         0.0s
 => install PyPI packages                                                 0.0s
 => merging all components into one                                       0.3s
 => => merging                                                            0.3s
 => mkfile /home/envd/.gitconfig                                          0.0s
 => exporting to oci image format                                         2.4s
 => => exporting layers                                                   2.0s
 => => exporting manifest sha256:7dbe9494d2a7a39af16d514b997a5a8f08b637f  0.0s
 => => exporting config sha256:1da06b907d53cf8a7312c138c3221e590dedc2717  0.0s
 => => sending tarball                                                    0.4s
envd-quick-start via Py v3.9.13 via 🅒 envd
⬢ [envd] # You are in the container-based environment!

Set up Jupyter notebook

Please edit the build.envd to enable jupyter notebook:

def build():
    base(os="ubuntu20.04", language="python3")
    # Configure the pip index if needed.
    # config.pip_index(url = "https://pypi.tuna.tsinghua.edu.cn/simple")
    install.python_packages(name = [
        "numpy",
    ])
    shell("zsh")
    config.jupyter()

You can get the endpoint of the running Jupyter notebook via envd envs ls.

$ envd up --detach
$ envd envs ls
NAME                    JUPYTER                 SSH TARGET              CONTEXT                                 IMAGE                   GPU     CUDA    CUDNN   STATUS          CONTAINER ID
envd-quick-start        http://localhost:42779   envd-quick-start.envd   /home/gaocegege/code/envd-quick-start   envd-quick-start:dev    false   <none>  <none>  Up 54 seconds   bd3f6a729e94

More on documentation 📝

See envd documentation.

Roadmap 🗂️

Please checkout ROADMAP.

Contribute 😊

We welcome all kinds of contributions from the open-source community, individuals, and partners.

Open in Gitpod

Contributors ✨

Thanks goes to these wonderful people (emoji key):

 Friends A.
Friends A.

📖 🎨
Aaron Sun
Aaron Sun

📓 💻
Aka.Fido
Aka.Fido

📦 📖 💻
Alex Xi
Alex Xi

💻
Bingyi Sun
Bingyi Sun

💻
Ce Gao
Ce Gao

💻 📖 🎨 📆
Frost Ming
Frost Ming

💻
Guangyang Li
Guangyang Li

💻
Gui-Yue
Gui-Yue

💻
Haiker Sun
Haiker Sun

💻
Ikko Ashimine
Ikko Ashimine

💻
Isaac
Isaac

💻
JasonZhu
JasonZhu

💻
Jian Zeng
Jian Zeng

🎨 🤔 🔬
Jinjing Zhou
Jinjing Zhou

🐛 💻 🎨 📖
Jun
Jun

📦 💻
Keming
Keming

💻 📖 🤔 🚇
Kevin Su
Kevin Su

💻
Ling Jin
Ling Jin

🐛 🚇
Manjusaka
Manjusaka

💻
Nino
Nino

🎨 💻
Pengyu Wang
Pengyu Wang

📖
Sepush
Sepush

📖
Siyuan Wang
Siyuan Wang

💻 🚇 🚧
Suyan
Suyan

📖
To My
To My

📖
Tumushimire Yves
Tumushimire Yves

💻
Wei Zhang
Wei Zhang

💻
Weizhen Wang
Weizhen Wang

💻
XRW
XRW

💻
Xu Jin
Xu Jin

💻
Xuanwo
Xuanwo

💬 🎨 🤔 👀
Yijiang Liu
Yijiang Liu

💻
Yilong Li
Yilong Li

📖 🐛 💻
Yuan Tang
Yuan Tang

💻 🎨 📖 🤔
Yuchen Cheng
Yuchen Cheng

🐛 🚇 🚧 🔧
Yuedong Wu
Yuedong Wu

💻
Yunchuan Zheng
Yunchuan Zheng

💻
Zheming Li
Zheming Li

💻
Zhenguo.Li
Zhenguo.Li

💻 📖
Zhenzhen Zhao
Zhenzhen Zhao

🚇 📓 💻
Zhizhen He
Zhizhen He

💻 📖
cutecutecat
cutecutecat

💻
dqhl76
dqhl76

📖 💻
jimoosciuc
jimoosciuc

📓
kenwoodjw
kenwoodjw

💻
nullday
nullday

🤔 💻
tison
tison

💻
wangxiaolei
wangxiaolei

💻
wyq
wyq

🐛 🎨 💻
xiangtianyu
xiangtianyu

📖
xieydd
xieydd

💻
xing0821
xing0821

🤔 📓 💻
zhyon404
zhyon404

💻
杨成锴
杨成锴

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Star History

Star History Chart

License 📋

Apache 2.0

trackgit-views

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

envd-0.2.5.tar.gz (9.1 MB view details)

Uploaded Source

Built Distributions

envd-0.2.5-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5-cp311-cp311-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

envd-0.2.5-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp311-cp311-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

envd-0.2.5-cp311-cp311-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

envd-0.2.5-cp310-cp310-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

envd-0.2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp310-cp310-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

envd-0.2.5-cp310-cp310-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

envd-0.2.5-cp39-cp39-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

envd-0.2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp39-cp39-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

envd-0.2.5-cp39-cp39-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

envd-0.2.5-cp38-cp38-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

envd-0.2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp38-cp38-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

envd-0.2.5-cp38-cp38-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

envd-0.2.5-cp37-cp37m-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

envd-0.2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp37-cp37m-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

envd-0.2.5-cp36-cp36m-musllinux_1_1_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.6m musllinux: musl 1.1+ x86-64

envd-0.2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

envd-0.2.5-cp36-cp36m-macosx_10_9_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file envd-0.2.5.tar.gz.

File metadata

  • Download URL: envd-0.2.5.tar.gz
  • Upload date:
  • Size: 9.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for envd-0.2.5.tar.gz
Algorithm Hash digest
SHA256 2f766a577f4b66a9746e5c14b2723160c365fe940081d1e273ce78e3ce743310
MD5 39c0bb3b7d4fbeae7a84943f745d3bac
BLAKE2b-256 4863fa51ae6533055e57cb9928ca18f988695f0b804ce6dac9ffc41d92511c12

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 13e69bd8310b48f8ec8e872149d6dd7c8d62e570b13507eef099dd0e90e32469
MD5 d2ca7e23b02479469f1625c20c6ad7b6
BLAKE2b-256 1352aba986bd2716cb31343be86c6f395f8dba4abd836e1c57e99094494728ab

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: PyPy, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2abc816d4258bca7e925fec114b516ebf0e2720e402d7d9b1078714a52b4ec84
MD5 c176b2fcfbb3a1429f9c61bb3f08c5d3
BLAKE2b-256 82e1b1b98bfc0c437ee614048c6fd091e604e64d3ea902ad5c64e8aeac550411

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 63297d1e8a34dd102854fd82c69faa52126308b5cabc37c715731111ce8266e5
MD5 1a42687b95675598df93022ba8a6ea9c
BLAKE2b-256 22c2b2c7820bf24705441dd2adc701e3bc3da159834465f2cc1481e6269a94d6

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: PyPy, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4dc39f55dc735fa6a21b8d6ff6298d119bc872ed9056708aaac1152c32ebdf62
MD5 162bbf7d7c5bdcb797304c3674d41544
BLAKE2b-256 cd4b6f7d9b887eaa2706a39221a026233749e4cc4de8440831f6fd7d27d5da3c

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f134305505e2ca37a6f1fe4a6b5e646ff7a57d9cc7a250622feb97f91810abc6
MD5 3b0f3429a8b7d78ab556ec0b1fec9737
BLAKE2b-256 e7dd2759dd80352480544ffe0547925ea049ca26a9168b84e3a89ccab1557d44

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: PyPy, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b5a85c9c14b812377f6926de224d80f9652cc47a6d07d05a925f9e8a429d2eec
MD5 82cc4de296db5438eec23b5a4a4523a2
BLAKE2b-256 53fe2a77a7031918208196470c825d0d3ac547d652ee0fd52a61ff6303d9d803

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 537b01a33bb296253d63c8705289ea9d9882afc184bd216ade0deae2a19e9a46
MD5 0819a70b59e055ad0ce791e3ab561a1d
BLAKE2b-256 67cd1c1b9a5a988e10007f5d8b5d0e9498ebb2941489e2908730279ae5977edc

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71d0deeba81491c48a0529622e6c5a02e66258a58d03b007dc09628435c169b6
MD5 440d760718a00a3d7dec7a3052ec7440
BLAKE2b-256 33475618472d0b367dd79076d95ddd4af893f76146b4fad8ddd026ac2e162597

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

  • Download URL: envd-0.2.5-cp311-cp311-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.11, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8eb61e746b10b649470ccc6c4c6243687905a91916453efba3d4bb8e0b1f1035
MD5 4f3b1e6b3ae75133040cae237a1c78ef
BLAKE2b-256 253ee66fb15fa7fffbad27cef58b4d3ea8d0fcc23c5a806fbea472e8f40e6d9b

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp311-cp311-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.11, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8eb30f5ae2f7142d14ba21996503e20f49cbac2d811222e5b965889c704f5974
MD5 95e30e9c982dc46f486f6c4332b6c570
BLAKE2b-256 1f61d2e49a73e698265b7eab8834231b9001bc918a502c11049d3e05b303fb2c

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 d46ce7f6ffe5fd17768e0c576aa80c77fc78ad65f1feed23a867152202b3891b
MD5 c031256f0b87a53db6dde82f7d2e39bd
BLAKE2b-256 8a7ca51f560cf2fc5b547b23a1f59b8807b69ce26f0c4421956485a0f8ffca94

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7aa975e81ece44aa24eecf6692beb3aaafa99323bd271cd9298d6d3b3abf90b9
MD5 3fc656e4a05ddecf5a3b75fc1b60487a
BLAKE2b-256 25e18fcd62d89694583ce3f73c0a4dec3af01f3ece0d45247312e204e659aa89

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

  • Download URL: envd-0.2.5-cp310-cp310-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.10, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fed81fa63e37b9b0fc9e5d7e6c079264354b7770bd62bb5dc0e4f8e755384d48
MD5 af0c061171f33c2eb1e4d6d9888e0448
BLAKE2b-256 47d88b84aeda36de5288841aa83bd97d815d0c493ab5c6e8a4386488f25405a7

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp310-cp310-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.10, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 482109c1f4a0ffcef6eacec6898d56d15c1800c863b74438b43e225c21ac6297
MD5 b9af1267a069efae74a3761447899ec4
BLAKE2b-256 073a3beb98413b62ae67926844fb4f44a135f9505cf1787a087bc27bce37ed73

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 84a01b32f14660a56ec9570c6236577e4e52f635086cd940447a1f615145805c
MD5 7541f4fc505235b7df3000c51efc7410
BLAKE2b-256 29e5065fb40820737db2019cbbe233f847a58d4c3f1c006328004656dca8e8e0

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92d497200abdce4285bcff8e5d1fc422a21922c2f800adac057a6d51618d6e47
MD5 56ad8a85134868f82016fca04fd2ae99
BLAKE2b-256 05cdf8aeb99fd459c0445ba94b0f398fb1a521730175bbef87d9b15f6844641f

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: envd-0.2.5-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e6da605273e7827f7e762a87466c5f4231869058946244172888809da4bb529a
MD5 646e21f0bc514268e3cc67d943a6a38d
BLAKE2b-256 5ca83dbac7cf89ae29e238c0f893bd56dfee6fb412eae33801b64412151b13fb

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3826d2b7c949bac9fd284df70c0ccb153b96e5b9c2263008a3d7035588afb5d7
MD5 67679044d11a820885d8828cbeff293c
BLAKE2b-256 9c2139563139b8eaaf5ff9fd18e3d964190dce31cfd37a048997209d52ed9956

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0e1f6728a081309dfaf3bdfe39ccf2ed2f82409a33f2c9c55d9d058a1ed4901f
MD5 220e0998b268c0d1a0ed4bd2b01eb870
BLAKE2b-256 3d74fac94bfc963830132a92906667884e8e8f20ed07935e5d682de87ce6ca1d

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa669de697fd3428c189b6c6d3b1c8c45002d53a7b60b4269aef6608deb4b39d
MD5 739c8c7122413ee4a8e074b7e1b79ab1
BLAKE2b-256 6ccf50965f6f7eb87305e207d3b43d353753384a5879a8412a9ca41caaa0f5ae

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

  • Download URL: envd-0.2.5-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5b26a5e8fa26dc74383699c1b1dec4df7ffb957e1513e9e6b68035cc632d2dbc
MD5 c766a5daee739a3122068090de2440ca
BLAKE2b-256 3e77c0223579b1116b6c9cee0b34483fa780a2b8616b4d7051ab190462fadb78

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 74826a6f566b7dd3c61be0096d529841953566c1d4c8687ed5fc108179a8d6a5
MD5 70ecaee898a3b51237102eb379e34156
BLAKE2b-256 9eea6be955eb80b6ac0334893055e98fe502f2b98a1da5322301ade19dbc9fa0

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 65dbebe8dbef010b5184546b2672285d06b805873cfc6932e4cd3ef2e6958817
MD5 0a69dfd9310da9c15f6f16930029393d
BLAKE2b-256 27b2d5c327f844c69a0fecc66c23196e21995f15bb2f6ce93b5e270408a48b13

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6c2d0ef652a87af2d81aa6e5cdf89e8eaaef4d16ac243284033627c60dea89cb
MD5 6854d7ea5c57bdc70cf69cbff1192c79
BLAKE2b-256 0e302707fc64752f10d262ead92665f3422d832fadebb456cdd367696d4c1fc6

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 67b0074fceed1e86e827c19448a5dca7ce37be48e1d228292952ab93a8ebcd70
MD5 32c23d1371230c0ed7487e9da343d24b
BLAKE2b-256 54c958054f9adf743187020620daa404ede15843eb464e8e3159275e506b79f4

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp36-cp36m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b93c1dcdb34f082927618eb6e8abebffdc8de3c0c78cdea62da1ea07eeeff740
MD5 bf10ee183b09a990c2a813b29b4af13a
BLAKE2b-256 339b716cb1ba770ea2cba3a4449e51f0b90eabc4aca7df3035ba0e0f2a97aafe

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for envd-0.2.5-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5dd5c40940b968c468236169785b290e01b2688453e5ead9d23a96a28ca28a2c
MD5 d9431b538026e57e3a58f048e19acf61
BLAKE2b-256 90d9e7018e66f3d50f13dee59d3c4dae4fef92204ff84f75c0045b624a463dc4

See more details on using hashes here.

Provenance

File details

Details for the file envd-0.2.5-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: envd-0.2.5-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 18.4 MB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/41.2.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18

File hashes

Hashes for envd-0.2.5-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f2bbed3eb46d4e31e8a00275cedafae6a76eea34a5eb6b33f1b90253d3960e8e
MD5 0dd1850bbbc5260eb1a66926b19b512d
BLAKE2b-256 a5a9871f066730110d876c2de3d9a2d5679812258c9cc3ef07a950375436f0c1

See more details on using hashes here.

Provenance

Supported by

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