一些有用的
Python包在pypi中被破坏,唯一可接受的版本是版本控制系统中的特定版本.可以在setup.py例如
requires =’svn://example.org/useful.package/trunk@1234’?
解决方法
你需要做两件事情.首先,需要您想要的确切版本,例如:
install_requires = "useful.package==1.9dev-r1234"
然后包含一个dependency_links设置,指定在哪里找到它:
dependency_links = ["svn://example.org/useful.package/trunk@1234#egg=useful.package-1.9dev-r1234"]
请注意,版本#egg = dependency_links URL的一部分必须完全匹配您在install_requires中指定的内容;这是将两件连在一起的东西.
会发生什么是setuptools在链接上看到#egg标签,并将URL保存为该精确版本的包的可用下载URL.然后,当它稍后尝试解决该要求时,应该下载精确的SVN URL.
(请注意,为了真正起作用,目标SVN修订版实际上必须使用该名称和版本构建一个egg,否则,您的依赖关系将在运行时失败!因此,这只有在您依赖的包时才有效在其默认构建版本号中使用SVN修订标记.)