Nächste: , Vorige: , Nach oben: Paketrichtlinien   [Inhalt][Index]


16.4.7 Python-Module

Zurzeit stellen wir ein Paket für Python 2 und eines für Python 3 jeweils über die Scheme-Variablen mit den Namen python-2 und python zur Verfügung, entsprechend der Erklärungen im Abschnitt Versionsnummern. Um Verwirrungen und Namenskollisionen mit anderen Programmiersprachen zu vermeiden, erscheint es als wünschenswert, dass der Name eines Pakets für ein Python-Modul auch das Wort python enthält.

Manche Module sind nur mit einer Version von Python kompatibel, andere mit beiden. Wenn das Paket Foo mit Python 3 kompiliert wird, geben wir ihm den Namen python-foo. Wenn es mit Python 2 kompiliert wird, wählen wir den Namen python2-foo. Pakete sollten dann hinzugefügt werden, wenn sie gebraucht werden. Wir erstellen keine Python-2-Varianten von Paketen, wenn wir sie nicht benutzen wollen.

Wenn ein Projekt bereits das Wort python im Namen hat, lassen wir es weg; zum Beispiel ist das Modul python-dateutil unter den Namen python-dateutil und python2-dateutil verfügbar. Wenn der Projektname mit py beginnt (z.B. pytz), behalten wir ihn bei und stellen das oben beschriebene Präfix voran.

16.4.7.1 Abhängigkeiten angeben

Informationen über Abhängigkeiten von Python-Paketen, welche mal mehr und mal weniger stimmen, finden sich normalerweise im Verzeichnisbaum des Paketquellcodes: in der Datei setup.py, in requirements.txt oder in tox.ini.

Wenn Sie ein Rezept für ein Python-Paket schreiben, lautet Ihr Auftrag, diese Abhängigkeiten auf angemessene Arten von „Eingaben“ abzubilden (siehe Eingaben). Obwohl der pypi-Importer hier normalerweise eine gute Arbeit leistet (siehe Aufruf von guix import), könnten Sie die folgende Prüfliste durchgehen wollen, um zu bestimmen, wo welche Abhängigkeit eingeordnet werden sollte.


Nächste: , Vorige: , Nach oben: Paketrichtlinien   [Inhalt][Index]