--Lorsque j'essaye d'enregistrer ma propre bibliothèque (mong) dans pypi, la description du paquet (README.md) ) Était en colère contre une erreur de format
--long_description_content_type
est reconnu comme reStructuredText même s'il est spécifié
--Dans setup.py
, utilisez setuptools.setup
au lieu de distutils.core.setup
Quand j'ai remarqué, la solution était instantanée. Je n'ai pas beaucoup de chances de créer setup.py à partir de zéro, donc je l'enregistrerai pour référence future. (Je suis une autre personne après 3 jours)
J'ai toujours eu peur que la description de pypi dans mong soit rompue. Il n'était pas reconnu comme Markdown, et même si long_description_content_type =" text / markdown "
était spécifié dans l'argument de setup ()
, je pensais que c'était un type. Depuis qu'un nouveau nom a été ajouté par le chef de famille, nous avons décidé de mettre à niveau et nous nous sommes attaqués à ce problème qui avait été reporté.
twine check
Au début, je testais avec test.pypi, mais en cours de route, j'ai réalisé que je pouvais utiliser twine check
pour le vérifier à portée de main. Cela accélère le cycle de vérification.
Le résultat de la vérification dans la ficelle est le suivant, et il sort également si long_description_content_type
n'est pas spécifié.
% twine check dist/mong-0.0.1.tar.gz
Checking dist/mong-0.0.1.tar.gz: FAILED
`long_description` has syntax errors in markup and would not be rendered on PyPI.
line 13: Warning: Inline literal start-string without end-string.
warning: `long_description_content_type` missing. defaulting to `text/x-rst`.
J'ai vérifié les éléments suivants un par un. Après tout, cela n'avait pas d'importance du tout, mais j'ai eu une meilleure compréhension de PyPI
et des packages. La description semble avoir été générée en regardant «mong-00.1 / PKG-INFO».
--typo: Exemple de document officiel Python n'a pas pu être copié, donc cela semble différent.
45.2.0
Donc, quand j'ai regardé le début du code, je n'ai pas utilisé setuptools
en premier lieu. C'est complètement inattendu (même si c'est mon code) que j'utilise l'ancien distutils
.
https://github.com/toshihikoyanase/mong/blob/v0.0.1/setup.py#L1
from distutils.core import setup
Vous devriez le remplacer par setuptools
.
https://github.com/toshihikoyanase/mong/blob/v0.0.2/setup.py#L1
from setuptools import setup
Vous pouvez être assuré que la description sera rendue dans Markdown. Nous avons également publié la v0.0.2.