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

💻 📖 🎨 📆
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

🤔 💻
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.5a8.tar.gz (264.3 kB view details)

Uploaded Source

Built Distributions

envd-0.2.5a8-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.5a8-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp311-cp311-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp310-cp310-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp39-cp39-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp38-cp38-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp37-cp37m-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

envd-0.2.5a8-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.5a8-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.5a8-cp36-cp36m-macosx_10_9_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: envd-0.2.5a8.tar.gz
  • Upload date:
  • Size: 264.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for envd-0.2.5a8.tar.gz
Algorithm Hash digest
SHA256 424ee3a26b91058df3ffdcf033a4fe3b4613ca6ec2a392085bb1c2b1fb903be9
MD5 57fb4f5177a0197851ceef951089c23c
BLAKE2b-256 444def7bf017314b0ce10ab5a202e38d4a84b13d4838788837476d5f8961409b

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4ca52f7777f12156a99a31c0fab89d2e57c3476fb5e5129b9d1bf375b479a906
MD5 c4726015ec89e4f3c2438e32e147e4eb
BLAKE2b-256 95b5e9d0f0b2c0b0d4ffedf4c429e543255ef7ad94177a8bd461b599a0cf1ea9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 755f0bfa0e404d57a4caf3ceceff7a959a0281d0c34e0314f482cbac1a35a380
MD5 b15bcefff36739c15a8e65fd9e054fe0
BLAKE2b-256 5532b72edb6c0b1447a27e0e6e132a9cbaa7c0350824b37a011fee00e40690f1

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f013bd91c2f707569e8ee56ce60398496efae80dd5d1481e298b9ab93ee82a05
MD5 820d32c990ac35c8d0fca1527921d063
BLAKE2b-256 d4033f3d541d52e66c6580cb4421e8cbfaca4e25c20cf37057a1985ea3f6eecb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e47ba5f0f805407f01870b8a3459c88d356990010e8f3eda907a9caaa234283b
MD5 2346d053a8375d6d1c492cffdf444a62
BLAKE2b-256 408b25869587c8066e0246ed3641ffac6e11c5c917a9bf4b050a0e126e9228ae

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7a927d7dacc8ad48b323aef2f1750460064bda27aa56c00aa787c27527ba2f4
MD5 d67d45a4c4031ba92b1f69a1f0644271
BLAKE2b-256 0d70a2a26cf4f74850715db38a5ddfe60c52d24fdad6540a607205fa7124e0be

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 18b38b7541a0fa33508dca129c81005ea7cde8c37c5052bc5452c69b3597d60a
MD5 4b3539a759f94bac8e281028a62760b0
BLAKE2b-256 41759e48598d4032647dd9b3e5cae5a7f3285f9293025039c07e41146803980f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 f1bf62fc10f1287865696f405257e9124e1a5bdd529fb897c34e8a649832adf5
MD5 0b922a2c4a677f5a6f082b7a00e110ad
BLAKE2b-256 06fc5b2520b8ee23acc6ddbe1014583caa51a7e60ab087bbb964f8a08e8c1c31

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b33e2206b9d2879d6940cf800732959c13907621a05b320964f6623df853d95b
MD5 3cf4fbf7ca8ff31c1e9165692617e52c
BLAKE2b-256 b29ae3b3febf83b49aff39e16414f6ef553be4f5cf2ecddae3462ded8638b73a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp311-cp311-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4cbb0e44425a24f5c7b05e8a82be48fcddf8bc28fd2a6d3b743844dee500d028
MD5 571a5b30ded666be4edf6a98936af5f3
BLAKE2b-256 bf2aafec634b2a16a415cc05705a7c2c9e4c4faab4ef39d7245e144a04e80773

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0febd73079f039ef5b64377a2a25c042289a144bc9a85e32f98998181b035b51
MD5 44c99ffac7f73d41ee5333e4e4edbf2d
BLAKE2b-256 9e409fa68a0edd041ebe48e03eba9da9994778fb0c0051d9166938a840cddce8

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d8e60bb7d88f54841f542a27b0e47c99e22d676d573310ac8ca62638b33c1db2
MD5 2533bbd3b195f2328830094a1da9d3b9
BLAKE2b-256 26cbb3f2c0e6898bc685e351b35662a1f04534ac934a2ba45b8756df0453532a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp310-cp310-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1a02f6916512d497394c67cc1bed650e4cb4f19054efb5e93b075105f82ea50b
MD5 6d0a4f92b7b3dd8f4b8ffa7173db6430
BLAKE2b-256 bf04e19a8ee19df519dd2468f7888b45b1391ca99df2a719b35797bb164ed2b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 cffdc7dc7ab7845f533363df2409df1f0501317bc21040e6d341b42d357ed0c4
MD5 3bb1b8c6502025bdf864dc180e7698ec
BLAKE2b-256 9759ca66b0802950439e808e854c24eb54edbdd4506613d98e74f40136359ee9

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec9722d269c41e758e7aa9b844d48c0c8364172a455b18922c0ca222d6c1bf82
MD5 bae4490c72f5f97b734e068b11042794
BLAKE2b-256 f508f66ad498dc072902f6aab516ee95536f10751a456d7431bdac857ea82e45

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 32c309d52ba59a09a4e63d05f3f062f43e870e627c728668c5d7ffdede090fd0
MD5 51bbff18e67c8c7932ef685c40d4313b
BLAKE2b-256 1a6c31ef709cc70666608c781b4d9fdf3562901fc9a24b1ed4a384ba56a9d46b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 21dfdb7842e5430ad338931d42716eddef824c19cc16557df49756bba4dc6528
MD5 11e29a10862c455fa52113ecf85f22ff
BLAKE2b-256 373556d1922116b547d0b3f52b088f60c4e39cfa5f8fd8486e2911a3a95006b9

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e262d895e890cc52e25dfcbdf82b185dfdcd2a237f08313d546275b139c56979
MD5 e0ac65a2a20f50ce714e07652b91b53f
BLAKE2b-256 4f30a0164fd6882440bef7abc9b2eb920fd11455d80b9453b0f46fc2b14fcf39

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8ac2796538683ea76e1e74924bf4b19f947090d33d044f8bd1674cfb089e4eae
MD5 78c959ce67568064a12a25866bf7b1f8
BLAKE2b-256 7e52901cf5714846ca67dccf596f1702335ef8d32e4ba80b4d1bbb9b45b752b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 8f7335cd378463e5a114a30b3de7b1ed3d8c3623a17f7a960b9c45b55d5d3de1
MD5 59aeed3b69442819a8defd8e08cc3541
BLAKE2b-256 9fe11ce704851416f258f6d2d870bbd7677799eedb752e34f04aa217f85513c9

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1ac8d2c92f7b9bb9a4428288eadda6de3e3df31f64fdcb1dce78168c66b0210
MD5 e6ac3957e67379193e1e07bd0e50006c
BLAKE2b-256 1712f83a3448268fd44388707272dc7fa41f7dcbac01868ed68eeb40a2a3ff09

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 86ec6ed40bf9af58831ccbfb0e00c219a76645afe36786bd65caf7751ce26371
MD5 8f3a8b668e828a0253aafa40ad456c5c
BLAKE2b-256 3342893cb04ce4db08d5f3951b059bc74ad9d6dafcf21482d6e3d3a91ef81f8d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for envd-0.2.5a8-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 38bbad42f58c0483baad1c4f54cc698b9ce9f807a9d7d00642788a3c87b62986
MD5 3fbe46d80d1721f8473899e58edf698c
BLAKE2b-256 3fdb6bd43f99f0d1d16c9d2cb1e726102c940cb79a0d5e20f8b712d66c1c60a8

See more details on using hashes here.

File details

Details for the file envd-0.2.5a8-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.5a8-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ebfeddc00532a076f9df53b7b160260a7909c52681fc61c34bfeb4cdbed3c41
MD5 522448f01cae62c0e49309b0cc4cde8b
BLAKE2b-256 ee80db8e713680217e3ea028a8aede4b806a8c04e50a80f76bd3dec97eea9275

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envd-0.2.5a8-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 9.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.5a8-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 942929d850dba90db99013a6e84b6d43e7c6fc7522394b4cf9c9b0cda72850f4
MD5 ca00524ba3f1eb690c1531710c7ffc68
BLAKE2b-256 111a2bef4f18281de1ea19dfcf747baa42d638d8eddbd619c0b784dc3051b1b2

See more details on using hashes here.

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