- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我有一个带有 setup.py 和 extras_requires 的包“A”行如:
extras_require = {
'ssh': ['paramiko'],
},
还有一个依赖于 util 的包“B”:
install_requires = ['A[ssh]']
如果我在包 B 上运行 python setup.py install
,它在后台使用 setuptools.command.easy_install
,则 extras_requires
是正确解析,并且安装了 paramiko。
但是,如果我运行 pip/path/to/B
或 pip hxxp://.../b-version.tar.gz
,包 A 是已安装,但 paramiko 未安装。
因为 pip “从源代码安装”,我不太确定为什么这不起作用。它应该调用 B 的 setup.py,然后解析和安装 B 和 A 的依赖项。
pip 可以做到这一 pip 吗?
最佳答案
我们使用 setup.py
和 pip
来管理我们包的开发依赖项,尽管您需要更新版本的 pip
(我们目前正在使用 1.4.1)。
#!/usr/bin/env python
from setuptools import setup
from myproject import __version__
required = [
'gevent',
'flask',
...
]
extras = {
'develop': [
'Fabric',
'nose',
]
}
setup(
name="my-project",
version=__version__,
description="My awsome project.",
packages=[
"my_project"
],
include_package_data=True,
zip_safe=False,
scripts=[
'runmyproject',
],
install_requires=required,
extras_require=extras,
)
安装包:
$ pip install -e . # only installs "required"
开发:
$ pip install -e .[develop] # installs develop dependencies
关于python - pip 是否处理来自 setuptools/distribute 来源的 extras_requires?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4796936/
我知道我可以通过 extras_require 在 setup.py 中指定可选依赖项: setup( name="Foo", extras_require={ 'bar': ["b
我在 setup.py 中声明了“extras_require”。有没有一种方法可以指定可选功能,例如 python setup.py[extras] install . 我知道pip可以处理可选功能
有没有办法在安装带有附加功能的包时自动处理依赖链接,而无需调用 --process-dependency-links就像 install_requires 的情况一样? pip install -e
Setuptools 可让您列出可选功能的要求 # mypackage 'extras_require' : { 'PDF' : ['reportlab'], 'DOCX' : ['docxlib']
setuptools 30.3.0引入了声明式包配置,允许我们将大部分用于直接传递给 setuptools.setup 的选项放在 setup.cfg 文件中。例如,给定以下 setup.cfg: [
是否可以让 setuptools 的 extras_require 覆盖 install_requires 中的要求集?我的猜测是不,因为 extras_require 是一个 ...dictiona
从 git 存储库安装时,如何使用 pip 安装 extras_requires ? 我知道你可以在项目在 pypi 上时执行 pip install project[extra]。 你必须为 git
我有一个带有 setup.py 和 extras_requires 的包“A”行如: extras_require = { 'ssh': ['paramiko'], }, 还有一个依赖于 u
我试图了解 setup.py 中 extras_require() 和 install_requires() 之间的区别,但无法理解。两者都是用来安装Python依赖的,但是它们有什么区别呢? 最佳答
我正在编写一个使用 py.test 进行测试的 python 程序,现在一个测试也依赖于 numpy。我应该在 setup.py 的哪个位置添加这些依赖项? 目前我的 setup.py 的相关部分如下
我使用 pip-tools管理我的依赖项和环境,它完美地为我的包生成一个 requirements.txt 文件,该文件由一个 setup.py 组成,如下所示: #! /usr/bin/env py
我使用 pip-tools管理我的依赖项和环境,它完美地为我的包生成一个 requirements.txt 文件,该文件由一个 setup.py 组成,如下所示: #! /usr/bin/env py
我是一名优秀的程序员,十分优秀!