A simple utility to check Conda environments integrity
Project description
ekans
- A simple utility to check Conda environments integrity
ekans
is an simple set of scripts able to perform different checks on
Anaconda environments. This script is mainly thought as an easy way to
substitute the notion of development dependencies, which is lacking in Conda
environments.
Development dependencies are packages that are used during development and that must strictly correlate with the Python version of the project. Some other package managers (like Poetry) are able to define these dependencies to be installed in regular environments but excluded from builds or using flags. This is not possible in Conda: all packages in the declared environment are treated equally, which implies this unwanted dependencies being bundled in production as well. On the other hand, fighting against it makes the environment prone to be non-consistent between production and development.
One way to solve this situation is having two different environments:
env/prod.yml
and env/dev.yml
. ekans
is able to check that all versions
are fixed and that production is a strict subset of development. This results
in the desired scenario: correctly excluding the unwanted dependencies while
ensuring that both environments have the same real dependencies to test
against.
Install
It is possible to install the package from PyPI using pip
:
pip install --user ekans
Usage
To check if an environment can be reproduced correctly, use the fixed
in the
CLI tool. Not passing -f
will cause the command to interactively prompt the
user to enter the path to the file.
ekans fixed [-f path/to/environment.yml]
If you want to check a full setup (env/prod.yml
and env/dev.yml
and their
relation) you can use the command verify
, as seen in this example:
ekans verify [-d path/to/dev.yml] [-p path/to/prod.yml]
If you are running ekans
from the root of your project and your names match
the ones described in this README
, you can omit passing any arguments. There
are also --help
flags available for the commands described above.
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
Built Distribution
File details
Details for the file ekans-0.2.1.tar.gz
.
File metadata
- Download URL: ekans-0.2.1.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Linux/5.6.2-arch1-2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cdfdf818f64c5792a213d2b49c24c6fab1fef922c3b343d26293edaaa6490b2e |
|
MD5 | 69b3b7d6a6ae8d996781bb17c696492b |
|
BLAKE2b-256 | 18605abd630fe9b5e46e18829b80074ccf6de3ab79eba7f3c389741f9a07daa1 |
File details
Details for the file ekans-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: ekans-0.2.1-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Linux/5.6.2-arch1-2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9fb08d8f8a084cb8e7ab32b43e5a2fecc2c51e1d1348f9ac891f99362345991 |
|
MD5 | 79a95cb71b23ea2756bf68198a02816f |
|
BLAKE2b-256 | 87fbf1ad2a766334984798d8c93636bbfa190a2f23ff68b2023d8df1bbcad415 |