配置 setup.py 以从存储库 URL 安装要求
Configure setup.py to install requirement from repository URL
我正在创建一个模块,需要准备我的 setup.py
文件以满足一些要求。要求之一是 PyPI 中已有的一个包的分支,因此我想直接引用我的 GitHub 存储库。
我尝试了两种配置,第一种是:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement', # The dependency name
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement', # This is my repository location
]
)
我使用 python setup.py sdist
创建了我的模块的本地分发,当我 运行 pip install path/to/module/dist/mymodule-0.1.tar.gz
它最终在 PyPI 而不是我的存储库上安装了版本。
其他配置,我尝试更改需求名称以强制搜索依赖项 link,如下所示:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement_alt', # The dependency name with a suffix
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt', # This is my repository location
]
)
但是有了这个,我最终只得到一个错误,即找不到 myrequirement_alt
...
所以我问,在不使用 PyPI 的情况下实现此目标的正确方法是什么?
要使依赖链接起作用,您需要将包的版本号添加到 https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt
。
否则它将不知道要安装什么。
例如:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement', # The dependency name
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt-1.3' # Link with version at the end
]
)
请注意,我根本不建议使用依赖链接,因为它们已被弃用。相反,您应该使用需求文件。
我正在创建一个模块,需要准备我的 setup.py
文件以满足一些要求。要求之一是 PyPI 中已有的一个包的分支,因此我想直接引用我的 GitHub 存储库。
我尝试了两种配置,第一种是:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement', # The dependency name
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement', # This is my repository location
]
)
我使用 python setup.py sdist
创建了我的模块的本地分发,当我 运行 pip install path/to/module/dist/mymodule-0.1.tar.gz
它最终在 PyPI 而不是我的存储库上安装了版本。
其他配置,我尝试更改需求名称以强制搜索依赖项 link,如下所示:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement_alt', # The dependency name with a suffix
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt', # This is my repository location
]
)
但是有了这个,我最终只得到一个错误,即找不到 myrequirement_alt
...
所以我问,在不使用 PyPI 的情况下实现此目标的正确方法是什么?
要使依赖链接起作用,您需要将包的版本号添加到 https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt
。
否则它将不知道要安装什么。
例如:
setup(
'name': 'mymodule',
# other arguments
install_requires=[
'myrequirement', # The dependency name
],
dependency_links=[
'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt-1.3' # Link with version at the end
]
)
请注意,我根本不建议使用依赖链接,因为它们已被弃用。相反,您应该使用需求文件。