Wie stellen Sie mithilfe von setuptools/distutils sicher, dass Ihre Paketdaten sowohl in der Binär- als auch in der Quelldistribution enthalten sind?

Linda Hamilton
Freigeben: 2024-10-31 06:13:02
Original
438 Leute haben es durchsucht

How to Ensure Your Package Data Is Included in Both Binary and Source Distributions Using setuptools/distutils?

Herausforderungen bei der Einbindung von Paketdaten mit setuptools/distutils überwinden

Das Einbinden von Paketdaten in verteilbare Python-Pakete stellt oft eine Herausforderung dar, insbesondere bei der Verwendung von setuptools oder distutils. Trotz herkömmlicher Weisheit haben einige Benutzer Schwierigkeiten, das Installationsprogramm dazu zu bringen, die gewünschten Dateien abzurufen.

Fallstricke von package_data

Die in der Frage bereitgestellte Konfiguration:

<code class="python">setup(
   name='myapp',
   packages=find_packages(),
   package_data={
      'myapp': ['data/*.txt'],
   },
   include_package_data=True,
   zip_safe=False,
   install_requires=['distribute'],
)</code>
Nach dem Login kopieren

erscheint auf der Grundlage der erstellten Dokumentation korrekt. Wie die Antwort jedoch scharfsinnig zeigt, greift dieser Ansatz beim Umgang mit binären Builds (python setup.py bdist ...) zu kurz. Der package_data-Mechanismus wird in diesem Szenario nicht verwendet.

Die Lösung: MANIFEST.in

Um Paketdaten zuverlässig sowohl in Binär- als auch in Quellverteilungen einzuschließen, bietet die Datei MANIFEST.in eine robuste Alternative. MANIFEST.in ist ein anpassbares Manifest, das explizit die Dateien auflistet, die in das Paket integriert werden sollen. Mit dieser Methode können Entwickler sicherstellen, dass in beiden Installationsszenarien alle notwendigen Daten vorhanden sind.

Das obige ist der detaillierte Inhalt vonWie stellen Sie mithilfe von setuptools/distutils sicher, dass Ihre Paketdaten sowohl in der Binär- als auch in der Quelldistribution enthalten sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!