首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在包含需求和设置的现有python包中使用tox

如何在包含需求和设置的现有python包中使用tox
EN

Stack Overflow用户
提问于 2021-11-08 18:45:38
回答 1查看 444关注 0票数 0

我有一个python/django应用程序。

我确实有这样的requirements.txt,requirements_dev.txt和setup.py:

requirements.txt

代码语言:javascript
复制
a_package_from_our_pypi_server
django~=2.2.3
django-filter
djangorestframework~=3.10.1
django-restql==0.13.1
requests==2.24.0
Pillow~=8.2

requirements_dev.txt

代码语言:javascript
复制
-r requirements.txt

coverage==5.2.1
factory-boy==3.2.0
# Syntax and style checkers
black==20.8b1
isort==5.8.0
pre-commit==2.12.1

setup.py

代码语言:javascript
复制
#!/usr/bin/env python
from setuptools import find_packages, setup

import mypackage
requirements = open('requirements.txt').readlines()

setup(
    name='mypackage',
    install_requires=requirements,

    . . . a lot of other parameters
)

  1. --使用tox测试不同的python、Django和Django Rest框架版本的方法是什么?

  1. 在对版本进行测试之后,在setup.py中的install_requires中需要哪些包版本?

如何在requirements.txt?和

  1. 中定义install_requires

我遇到的问题是,这个包是一个API,所以我确实有一些需要安装的包,而不是像我在很多包中看到的那样,只有一两个包。这就是为什么我有install_requires=requirements in setup.py的原因。我想继续使用这样的实践,并且不需要在需求和设置上同步很多包。

EN

回答 1

Stack Overflow用户

发布于 2021-11-09 06:59:29

广告1)正如我已经提到的,你需要在毒理中使用各种因素。

特别是Django社区经常使用这一特性,例如:

https://github.com/jazzband/django-auditlog/blob/3dee9f1555239ae9c4a50afeaa487547247d2d96/tox.ini

下面是与毒理文档相关部分的链接:

https://tox.wiki/en/latest/config.html?highlight=factors#factors-and-factor-conditional-settings

为了在GitHub上测试这个矩阵,我建议使用这个tox插件。

https://github.com/ymyzk/tox-gh-actions

广告2)和广告3)关于setup.pyrequirements.txt有很多混淆。其中一个原因是你需要区分你是有一个库还是一个应用程序。

应用程序应该始终与pip install -r requirements.txt一起安装,使用pip install library调用setup.py的库。

install-requires中,您只输入依赖项的名称,而不是版本号,即

install_requires=["django", "django-filters", ...]

为了获得requirements.txt的确切版本号,您可以使用像pip-tools这样的工具来携带pip-compile

使用pip-compile,您将生成一个具有所有直接和间接依赖项的requirements.txt。

您应该使用requirements.txt进行测试,并不时通过pip-compile对其进行更新。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69888445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档