tox插件,提供与conda的集成
项目描述
tox-conda 是一个插件,为 conda 包和环境管理器提供与 tox 自动化工具的集成。它就像既做了蛋糕又吃了它!
默认情况下,tox 使用 virtualenv 创建隔离环境,并从 pip 安装依赖项。
相比之下,当使用 tox-conda 插件时,tox 将使用 conda 创建环境,并将指定的依赖项从 conda 中安装。这对于依赖 conda 进行环境管理和包分发的开发人员来说很有用,但他们想利用 tox 提供的测试自动化功能。
tox-conda 未与低于 4.5 版本的 conda 进行过测试。
入门
tox-conda 可以以两种方式之一使用:全局安装和按项目启用。当插件全局安装时,tox 的默认行为将使用 conda 创建环境。如果要按项目使用,请使用 tox 的自动配置功能来选择性地启用插件。
要默认启用 tox-conda 的使用,请按照 安装 说明操作。要选择性使用插件,不要手动安装,而是通过将 tox-conda 添加为项目 tox 配置的配置要求来启用它。
[tox] requires = tox-conda
有关自动配置的更多信息,请参阅 tox 文档。
安装
tox-conda 包在 pypi 上可用。要安装,只需使用以下命令:
$ pip install tox-conda
要从源安装,首先从 github 克隆项目。
$ git clone https://github.com/tox-dev/tox-conda
然后在您的环境中安装它。
$ cd tox-conda $ pip install .
以开发模式安装 (开发模式)
$ pip install -e .
tox-conda 插件期望 tox 和 conda 已安装并可用在您的开发环境中。
用法
有关 tox 用法的详细信息,请参阅 tox 文档。
启用插件且没有其他更改的情况下,tox-conda 插件将使用 conda 创建环境,并使用 pip 安装在 tox.ini 配置文件中给出的依赖项。
tox-conda 向配置文件的 [testenv] 部分添加了四个附加(可选)设置:
conda_deps,用于配置哪些依赖项从 conda 而不是从 pip 安装。在 conda_deps 中的所有依赖项都将安装在 deps 中的所有依赖项之前。如果没有给出,则不会使用 conda 安装任何依赖项。
conda_channels,指定应使用哪个(些)通道来解析 conda 依赖项。如果没有给出,则只使用 default 通道。
conda_spec,指定一个 conda-spec.txt 文件,其中列出了要安装的 conda 依赖项,并将其与 conda_deps(如果给出)合并。这些依赖项可以是通用形式(例如,numpy>=1.17.5)或显式形式(例如,https://conda.anaconda.org/conda-forge/linux-64/numpy-1.17.5-py38h95a1406_0.tar.bz2),但是,如果 @EXPLICIT 标题出现在 conda-spec.txt 中,则忽略所有通用依赖项,包括在 conda_deps 中给出的依赖项。
conda_env,用于指定一个创建用于测试的基础 conda 环境的 conda-env.yml 文件。该 conda-env.yml 文件是自包含的,如果未指定要使用的 conda 通道,则将使用默认通道。如果 conda-env.yml 指定了一个 Python 版本,则必须与为 tox 环境设置的 basepython 兼容。例如,一个指定 python>=3.8 的 conda-env.yml 可以与设置为 py38、py39 或 py310 的 basepython 一起使用。上述 conda_deps、conda_channels 和 conda_spec 参数,如果与 conda-env.yml 文件一起使用,将在初始环境创建后用于 更新 环境。
conda_create_args,用于传递给 conda create 命令的参数。传递的参数将插入到命令行中的 Python 包之前。例如,传递 --override-channels 将创建更可重复的环境,因为用户 .condarc 中定义的通道不会干扰。
conda_install_args,用于传递给 conda install 命令的参数。传递的参数将插入到命令行中的依赖项之前。例如,传递 --override-channels 将创建更可重复的环境,因为用户 .condarc 中定义的通道不会干扰。
如果 mamba 与 tox 在同一环境中安装,可以通过在调用 tox 的壳中设置环境变量 CONDA_EXE=mamba 来使用它而不是 conda 可执行文件。
以下是一个示例配置文件
[tox] envlist = {py35,py36,py37}-{stable,dev} [testenv] deps= pytest-sugar py35,py36: importlib_resources dev: git+git://github.com/numpy/numpy conda_deps= pytest<=3.8 stable: numpy=1.15 conda_channels= conda-forge conda_install_args= --override-channels commands= pytest {posargs}
有关 tox 配置文件的信息,请参阅 文档。
贡献
欢迎贡献。可以使用 tox 运行测试,请在提交拉取请求之前确保覆盖率至少保持不变。
许可证
根据 MIT 许可证分发,“tox-conda”是免费和开源软件
问题
如果您遇到任何问题,请与一个详细的描述一起在 问题 中提交。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。
源分布
构建发行版
tox_conda-0.10.2.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7011ca43c3f46791e74ba217405e1cba433e7bcc77d26ef3b019340ef020c5e8 |
|
MD5 | 75cd72eb081ffbf2f1ac22b24be58b1f |
|
BLAKE2b-256 | 19dd537cdb8eb0cdaa384f9bd56c8e6e031679ae5c3ca7be8ee32e98e56720f4 |
tox_conda-0.10.2-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b03b0d1ddef2182435a8fd2a84c260deb6f7bf52ed3812b786fec4d86e9c4f0c |
|
MD5 | 87cbb2282dc17155948109cf9e535061 |
|
BLAKE2b-256 | 78fcf54ad9f74ca76e12635df15b6f0d00a725910fddc41f2f359a371e57e5e6 |