Ich muss Python-Pakete über öffentliche Github-Repositorys zusammen mit meinem Python (2.7) -Paket enthalten. Mein Paket sollte über pip
unter Verwendung von setup.py
installierbar sein.Wie git Abhängigkeiten in setup.py für Pip-Installation enthalten
Bisher werden könnte dies mit dependency_links
in der setup.py
Datei getan:
setuptools.setup(
name="my_package",
version="1.0",
install_requires=[
"other_package==1.2"
],
dependency_links=[
"https://github.com/user/other_package/tarball/master#egg=other_package-1.2"
]
)
Dies funktioniert nach wie vor, wenn das Paket mit der --process-dependency-links
Flagge installiert wird, aber die dependency_links
Funktionalität scheint veraltet zu sein, da:
pip install git+https://github.com/user/[email protected]#egg=my_package-1.0 --process-dependency-links
gibt mir die folgende Warnung:
DEPRECATION: Dependency Links processing has been deprecated and will be removed in a future release.
Gibt es eine alternative Möglichkeit, git
Abhängigkeiten in die Datei setup.py
mit Unterstützung für Pip-Installation aufzunehmen?
Edit (2016.10.17) mein Anwendungsfall zu klären:
Lassen Sie uns sagen, dass ich einen Fehler in other_package
finden. Ich gabel das entsprechende Repo auf Github, behebe den Bug und mache eine Pull-Anfrage. Meine Pull-Anfrage wird nicht sofort akzeptiert (oder wird nie sein, weil das Paket nicht mehr aktiv gepflegt wird). Ich möchte my_package
gemeinsam mit meinem Fork other_package
verteilen und möchten, dass Benutzer my_package
pip installieren können ohne weitere Kenntnisse über die Details dieser Anforderung und ohne zusätzliche Flags bei der Installation bereitzustellen. Benutzer von my_package
sollten außerdem in der Lage sein, my_package
als eine Anforderung in ihren eigenen benutzerdefinierten Paketen aufzunehmen.
Wie kann dies erreicht werden, kompatibel mit verschiedenen Arten der Installation (Räder, Eier, entwickeln, ...) im Auge?