Allen ein frohes neues Jahr. Ich freue mich darauf, dieses Jahr wieder mit Ihnen zusammenzuarbeiten.
Übrigens wurde am ersten Tag des Jahres 2014 pip 1.5 veröffentlicht.
Diese Version enthält einige Änderungen, die nicht mit früheren Versionen kompatibel sind. Es scheint, dass einige Leute seit Beginn des neuen Jahres darauf reagiert haben und danken Ihnen für Ihre harte Arbeit.
Derzeit ist die in der Python-Umgebung von Travis CI (https://travis-ci.org/) installierte Version von pip 1.4.1, ein Upgrade auf 1.5 ist jedoch nur eine Frage der Zeit.
Das folgende Verfahren ist die Idee, dass es einfacher wäre, zuerst ein Upgrade durchzuführen, da es sowieso aktualisiert wird.
Wenn Sie möchten, können Sie den Zweig "Fix-Requrements" vorab aus dem Zweig "Devel" entfernen.
pip freeze
zum before_script hinzu:
entry of .travis.yml
Der Eintrag "before_script:" ist der Eintrag, der unmittelbar vor dem Eintrag "script:" ausgeführt wird, in dem der Testkörper ausgeführt wird.
Fügen Sie diesem Eintrag pip freeze
hinzu.
yaml:.travis.yml
before_script:
- "pip freeze"
Wenn require.txt
existiert, können Sie pip freeze -r require.txt
schreiben, um die Ausgabe ein wenig übersichtlicher zu gestalten.
Beachten Sie jedoch, dass sich "pip freeze" von "pip install" unterscheidet. Wenn Sie mehrere Dateien mit "-r" angeben, ist nur die zuletzt angegebene Datei gültig.
Der Zweck hierbei besteht darin, die Umgebung aufzuzeichnen, wenn der Test mit dem Standard-Pip im Build-Protokoll bestanden wurde. Es wird daher dringend empfohlen, hier einmal ein Commit durchzuführen.
before_install:
in .travis.yml
before_install:
ist der Eintrag, der unmittelbar vor dem Eintrag install:
ausgeführt wird, der pip install
usw. ausführt.
Fügen Sie diesem Eintrag die folgende Zeile hinzu:
yaml:.travis.yml
before_install:
- "easy_install --version"
- "pip freeze"
- "travis_retry pip install -U setuptools"
- "cd `mktemp -d`"
- "travis_retry wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py"
- "travis_retry python get-pip.py"
- "cd $OLDPWD"
- "pip --version"
- "easy_install --version"
Das Folgende ist eine Liste mit Aufzählungszeichen.
pip freeze
zeigt nicht die Version von setuptools an, also führe easy_install --version
aus.get-pip.py
herunter.travis_retry
aus.Siehe pip Changelog für Änderungen an pip.
Wenn der Test erfolgreich bestanden wurde, sind Sie fertig.
Mit diesen Änderungen werden immer die neuesten Versionen von pip und setuptools (mit Ausnahme der Entwicklungsversion) angewendet.
Gleichzeitig ist jetzt eine Liste der installierten Modulversionen im Erstellungsprotokoll enthalten, was es einfacher machen sollte, als das Protokoll "pip install" zu lesen, wenn ein Test fehlschlägt.
Abgesehen davon scheint es üblich zu sein, "before_script:" bundle show "in Ruby-Projekten auszuführen, aber in Python-Projekten enthält" .travis.yml "" pip freeze "und" pip list ". Ich habe noch nie einen Fall gesehen. (Übrigens 0 Fälle in .travis.yml
von 106 Dateien in 3585 Modulen, die Python 3.X mit PyPI unterstützen)
Travis CI scheint ein Dienst zu sein, dessen Site auf Ruby basiert, daher wird er möglicherweise von Pythonista gemieden.