Вы должны сделать две вещи. Во-первых, требуют точную версию вы хотите, например:
install_requires = "useful.package==1.9dev-r1234"
, а затем включить параметр dependency_links
указав, где его найти:
dependency_links = ["svn://example.org/useful.package/[email protected]#egg=useful.package-1.9dev-r1234"]
Обратите внимание, что версия #egg=
часть dependency_links
URL должен точно соответствует тому, что вы указали в install_requires
; это то, что связывает две части вместе.
Что происходит, так это то, что setuptools видит тег #egg в ссылке и сохраняет URL-адрес в качестве доступного URL-адреса для загрузки этой точной версии пакета. Затем, когда он попытается решить это требование позже, он должен загрузить этот точный URL SVN.
(Заметим, однако, что для этого действительно работы, целевой пересмотр SVN должен фактически построить яйцо с этим именем и версии. В противном случае, ваша зависимость потерпит неудачу во время выполнения! Так что, это работает на самом деле, только если пакет, в котором вы зависите, использует теги версии SVN в своих версиях версии по умолчанию.)
Да, это не/действительно/работает в общем случае ... Я просто использую pip сейчас. – joeforker
не должен «find_links» на самом деле быть «dependency_links»? –
Спасибо, Габриэль. Я исправил это. –