Die Python-doc für „Das Schreiben des Setupscript (http://docs.python.org/2/distutils/setupscript.html) erwähnt, dass Abhängigkeiten unter Abschnitt angegeben werden könnenWie Abhängigkeiten angeben, wenn die setup.py-Datei für ein Python-Paket Erstellen
> 2.4. Relationships between Distributions and Packages
[...] These relationships can be specified using keyword arguments to the distutils.core.setup() function.
Dependencies on other Python modules and packages can be specified by supplying the requires keyword argument to setup(). The value must be a list of strings. Each string specifies a package that is required, and optionally what versions are sufficient.
To specify that any version of a module or package is required, the string should consist entirely of the module or package name. Examples include 'mymodule' and 'xml.parsers.expat'.
[...]
Vor diesem Hintergrund eher spärlich Informationen ohne ein Beispiel, das ich möchte nur sicherstellen, dass ich es richtig machen. Außerdem kann ich finde diese requires
Parameter in der API-Beschreibung So ist es nicht http://docs.python.org/2/distutils/apiref.html#distutils.core.setup
getan wie dies zB
setup(name='MyStuff',
version='1.0',
requires='os, sys, progressbar',
[...]
Ich hoffe, jemand kann mir ein bisschen mehr Einblick geben! Vielen Dank!
EDIT:
die distutils.core zu adressieren, Setuptools Kontroverse, könnte man einfach tun
try:
from setuptools import setup
except ImportError:
from distutils.core import setup
Ist es sinnvoll?
Das gesamte Python-Verpackungssystem ist schlecht dokumentiert, hauptsächlich weil es so viele verschiedene Orte mit zum Teil sehr guten, aber widersprüchlichen Informationen gibt. Ich schaue mir immer bestehende Projekte an. Wenn Sie keine besonderen Bedürfnisse haben, brauchen Sie nur Distutils. Zum Beispiel ist Engpass hat ein gutes Beispiel für eine 'setup.py' Datei, die nur Distutils verwendet: https://github.com/kwwgoodman/bottleneck/blob/master/setup.py –
@ Jan-PhilipGehrcke: Noch' Engpass' versäumt es anzugeben, dass es "numpy" in den Metadaten erfordert. 'setuptools' hat heutzutage viel bessere Dokumentation, dank der' distribute'-Gabel, die zusammengeführt wird: http://pythonhosted.org/setuptools/ –
Richtig du bist, es beginnt sogar mit dem Import von numpy sofort. –