Créer des paquets en Python

Créons, personnalisons et envoyons nos paquets sur PyPI

a marqué ce sujet comme résolu.

Malheureusement, ce tutoriel qui était en bêta a été supprimé par son auteur.

Tout le monde se secoue ! :D

J’ai commencé (mardi 12 janvier 2016 à 10h04) la rédaction d’un tutoriel au doux nom de « Créer des paquets en Python » et j’ai dans l’objectif de proposer en validation un texte aux petits oignons. Je fais donc appel à votre bonté sans limite pour dénicher le moindre pépin, que ce soit à propos du fond ou de la forme. Vous pourrez consulter la bêta à votre guise à l’adresse suivante :

C’est mon premier cours sur Zeste de Savoir, je suis ouvert à toutes critiques, positives ou négatives, que ce soit sur la forme ou le contenu.

Merci d’avance !

+1 -0

L'introduction me semble un peu abrupte. Notamment, ceux ne connaissant pas Pypi risquent d'être largués. Tu pourrais procéder ainsi :

  • Jusqu'à maintenant, vous avez importé des paquets de la bibliothèque standard
  • Puis vous avez installé des paquets depuis Pypi
  • Vous avez également factorisé votre code en modules
  • Maintenant, vous souhaitez partager ces modules
  • Dans ce tutoriel…

Ainsi votre arborescence sera semblable à la suivante :

Le lecteur pourrait se demander pourquoi on ne fait pas comme ça :

1
2
3
4
├── LICENCE.txt
├── README.rst
├── __init__.py
├── ...

Dans l'ensemble, le tutoriel ne me paraît pas assez progressif. Il me semble intéressant de partir de là où en est le lecteur, c'est-à-dire un dossier contenant un fichier __init__.py et quelques autres, puis d'introduire les éléments au fur et à mesure qu'on en a besoin. Actuellement, on a plutôt l'impression de lire une recette de cuisine.

Bon courage. :)

+2 -0

Salut,

En plus de ce qu'a dit Vayel, il y a deux points techniques qui me chiffonnent.

Pourquoi parler de distutils pendant plus qu'une seule ligne ? Pour un tuto qui est principalement orienté vers PyPI, il n'y a strictement aucun intérêt à l'utiliser plutôt que setuptools. Le mentionner pour dire que ça existe, d'accord. En faire plus risque surtout de jeter la confusion. Entre distutils, le vieux distribute et setuptools, le débutant ne sait pas où donner de la tête. Autant éliminer tout doute et utiliser setuptools dès le départ.

Mentionner twine (pas twince d'ailleurs) aussi rapidement comme une simple alternative est aussi plutôt dommage lorsqu'il s'agit de l'option recommandée par la pypa à la place de l'utilisation directe de setup.py.

+0 -0

Merci à vous deux pour ces remarques.

Je pense qu'introduire le processus de paquet avec distuils est une bonne chose car en soit c'est inclus dans Python. Je vais néanmoins réfléchir à ta remarque.

twine (effectivement, merci pour la faut d’inattention) est ultra pratique mais encore une fois je pense que c'est une bonne chose de connaître l'autre manière qui est utilisée dans la très grande majorité des projets.

Question : pensez vous que des ajouts sur la structure des paquets pour vraiment comprendre comment ils fonctionnent est une bonne chose ?

+0 -0

twine (effectivement, merci pour la faut d’inattention) est ultra pratique mais encore une fois je pense que c'est une bonne chose de connaître l'autre manière qui est utilisée dans la très grande majorité des projets.

Note que ce qui me dérange n'est pas que tu présentes la manière dépreciée, mais que tu la présentes comme la bonne manière en mettant de côté la manière qui elle est recommandée (et à toutes les raisons de l'être, ne serait-ce que le fait qu'elle permet le découplage entre création et uploading des distributions).

+0 -0
Ce sujet est verrouillé.