diff --git a/content/afpy-janvier-2019.md b/content/afpy-lyon-2019-01-django-off-oc.md similarity index 100% rename from content/afpy-janvier-2019.md rename to content/afpy-lyon-2019-01-django-off-oc.md index b68c127..6bdfcf7 100644 --- a/content/afpy-janvier-2019.md +++ b/content/afpy-lyon-2019-01-django-off-oc.md @@ -1,6 +1,6 @@ Title: Histoires d'un étudiant perfectionniste sous pression -Date: 2019-01-21 19:48 Category: Conférences +Date: 2019-01-21 19:48 Status: published Summary: Ma 1ère présentation publique : La découverte de Django en jouant avec l'API OpenFoodFacts Tags: afpy, talk, django, lyon, python, openfoodfacts, api-rest diff --git a/content/afpy-lyon-novembre-2019.md b/content/afpy-lyon-2019-11-devel-orga.md similarity index 99% rename from content/afpy-lyon-novembre-2019.md rename to content/afpy-lyon-2019-11-devel-orga.md index 7238064..11ffac8 100644 --- a/content/afpy-lyon-novembre-2019.md +++ b/content/afpy-lyon-2019-11-devel-orga.md @@ -1,10 +1,11 @@ Title: Histoires d'un salarié perfectionniste sous pression -Date: 2019-10-23 19:00 Category: Conférences +Date: 2019-10-23 19:00 Status: published Summary: Mes 7 premiers mois à la découverte de la vie professionnelle d'un développeur Tags: afpy, talk, git, gitlab, devops, django, lyon, dev, admin, python + Démarrer une activité de développement dans une TPE est une aventure où tout est possible, mais quand, en plus, on est _junior_ les choix d'organisations et d'outils deviennent moins évident. Dans cette présentation je reviens sur l'expérience de mes 7 premiers mois de développeur junior où j'ai essayé de ne pas me perdre entre le code, la documentation, les déploiements et la communication. diff --git a/content/afpy-lyon-novembre-2021-pdf.md b/content/afpy-lyon-2021-11-pdf-manipulation.md similarity index 65% rename from content/afpy-lyon-novembre-2021-pdf.md rename to content/afpy-lyon-2021-11-pdf-manipulation.md index defc9d6..e8d1c36 100644 --- a/content/afpy-lyon-novembre-2021-pdf.md +++ b/content/afpy-lyon-2021-11-pdf-manipulation.md @@ -1,20 +1,20 @@ Title: Manipuler des PDF en Python -Date: 2021-11-25 19:00 -Summary: Tour des outils python permettant de manipuler du PDF dans différentes situations. Category: Bloc-notes -Tags: talk, afpy, lyon, pdf, dev -Status: Published +Date: 2021-11-25 19:00 +Status: published +Summary: Tour des outils python permettant de manipuler du PDF dans différentes situations. +Tags: talk, afpy, lyon, pdf, dev, python, cli -Par [Guillaume Ayoub][author] ([1][authorgl], [2][authorgh]), organisé par l'[AFPy][afpy] (via [Meetup][meetup]). +Par [Guillaume Ayoub][author] ([1][authorgl], [2][authorgh]), organisé par [CourtBouillon][cbouillon], [Stella][stella] et l'[AFPy][afpy]. (via [Meetup][meetup]). _**Support**: sur [`courtbouillon.org`][support] ou [archive][support-local]_ -Il existe de nombreuses bibliothèques pour créer et modifier des documents PDF en Python, et il est parfois difficile de savoir quel outil choisir. Comme souvent, la réponse dépend de ce que l’on veut faire ! - -Nous ferons un petit tour des différents besoins que vous pourriez avoir concernant la manipulation des PDF, que ce soit pour créer des documents simples ou complexes, apporter des modifications à des PDF existants, ou accéder à certaines informations de leur contenu. Et bien sûr, nous découvrirons également des outils adaptés à la résolution de ces problèmes. - -Si vous cherchez l’inspiration pour automatiser certaines tâches (pas particulièrement joyeuses…) que vous faites à la main sur vos documents, vous pourriez découvrir deux ou trois solutions qui pourraient bien vous faire gagner du temps ! +> Il existe de nombreuses bibliothèques pour créer et modifier des documents PDF en Python, et il est parfois difficile de savoir quel outil choisir. Comme souvent, la réponse dépend de ce que l’on veut faire ! +> +> Nous ferons un petit tour des différents besoins que vous pourriez avoir concernant la manipulation des PDF, que ce soit pour créer des documents simples ou complexes, apporter des modifications à des PDF existants, ou accéder à certaines informations de leur contenu. Et bien sûr, nous découvrirons également des outils adaptés à la résolution de ces problèmes. +> +> Si vous cherchez l’inspiration pour automatiser certaines tâches (pas particulièrement joyeuses…) que vous faites à la main sur vos documents, vous pourriez découvrir deux ou trois solutions qui pourraient bien vous faire gagner du temps ! --- @@ -49,3 +49,5 @@ Notes personnelles [pypdf2]: https://pypdf2.readthedocs.io/en/latest/index.html [support]: https://www.courtbouillon.org/static/presentations/Manipuler%20des%20PDF%20en%20Python.pdf [support-local]: {attach}/pdf/20211125-manipuler_des_pdf_en_python.pdf +[cbouillon]: https://www.courtbouillon.org/ +[stella]: https://stella.coop/ diff --git a/content/afpy-lyon-2022-05-packaging-python.md b/content/afpy-lyon-2022-05-packaging-python.md new file mode 100644 index 0000000..6039926 --- /dev/null +++ b/content/afpy-lyon-2022-05-packaging-python.md @@ -0,0 +1,71 @@ +Title: L’enfer du packaging Python +Category: Bloc-notes +Date: 2022-05-18 19:00 +Status: published +Summary: Mais pourquoi diable est-ce l’enfer de créer et partager des paquets Python ?  +Tags: talk, lyon, afpy, dev, packaging, python + + +Par [Guillaume Ayoub][author] ([1][authorgl], [2][authorgh]), organisé par [CourtBouillon][cbouillon], [Stella][stella] et l'[AFPy][afpy]. (via [Meetup][meetup]). + +_**Support**: sur [`courtbouillon.org`][support] ou [archive][support-local]_ + +> Ce mois-ci, Guillaume vient nous parler de packaging Python ! +> +> 🔥🎁🔥 +> +> Écrire du code en Python, c’est sympa. Vous êtes là, vous devez donc être un petit peu d’accord avec cela. Mais si, passée votre timidité, vous avez le courage de partager votre code avec les autres, alors vous voilà face à un problème de taille : le packaging. Vous cherchez tant bien que mal la documentation associée, vous trouvez nombre d’informations contradictoires, vous finissez après des heures d’effort sur d’obscurs forums au fin fond de la toile… 😢 +> +> 👿 Mais pourquoi diable est-ce l’enfer de créer et partager des paquets Python ? 👿 +> +> Nous parlerons durant cette présentation de l’histoire du packaging Python, des nombreux problèmes rencontrés au fil de son existence, et des manières récentes et agréables de faire des paquets avec le sourire. 😁 + +--- + +Notes personnelles +================== + +- la méthode: usage des wheels + * code source => wheel (zip) +- PEP: + * [PEP 427 – The Wheel Binary Package Format 1.0][pep-0427] + * [PEP 517 – A build-system independent format for source trees (architecture des pacquets)][pep-0517] + * [PEP 518 – Specifying Minimum Build System Requirements for Python Projects (`pyproject.toml`)][pep-0518] + * [PEP 621 – Storing project metadata in `pyproject.toml`][pep-0621] + * [PEP 660 – Editable installs for pyproject.toml based builds (wheel based) (intallation éditable)][pep-0660] +- outillage de base + * adieu `distutils` + * `setuptools` pour quelques rares cas particuliers + - `wheel` (pacquet) + * `build` peut utiliser des constructeurs de wheel + * `pip` + * WIP: `installer` (lire la wheel) hors BS, pour se passer + * `installer` + * `twine` pour publier sur PyPI +- Outillage avancé + * `flit` moins vaste (juste des wheels) utilise tout les fichiers versionnés + * `poetry` très vaste + * `… +- Condition un `pip` récent + +**Bonus :** Origine du nom _wheel_ + +* [Where the name “Wheel” comes from? - python.org](https://discuss.python.org/t/where-the-name-wheel-comes-from/6708) +* [Cheese Shop sketch](https://en.wikipedia.org/wiki/Cheese_Shop_sketch) + + +[afpy]: https://www.afpy.org/ +[authorgh]: https://github.com/liZe +[authorgl]: https://www.afpy.org/ +[author]: https://yabz.fr/ +[cbouillon]: https://www.courtbouillon.org/ +[ghostscript]: https://www.ghostscript.com/ +[meetup]: https://www.meetup.com/fr-FR/Python-AFPY-Lyon/events/285563922/ +[pep-0427]: https://peps.python.org/pep-0427/ +[pep-0517]: https://peps.python.org/pep-0517/ +[pep-0518]: https://peps.python.org/pep-0518/ +[pep-0621]: https://peps.python.org/pep-0621/ +[pep-0660]: https://peps.python.org/pep-0660/ +[stella]: https://stella.coop/ +[support]: https://www.courtbouillon.org/static/presentations/L%E2%80%99enfer%20du%20packaging.pdf +[support-local]: {attach}/pdf/20220518-afpy-lyon-enfer_packaging-python.pdf diff --git a/content/pdf/20220518-afpy-lyon-enfer_packaging-python.pdf b/content/pdf/20220518-afpy-lyon-enfer_packaging-python.pdf new file mode 100644 index 0000000..adaf1aa Binary files /dev/null and b/content/pdf/20220518-afpy-lyon-enfer_packaging-python.pdf differ diff --git a/content/tuto-script-durable-python-stdlib.md b/content/tuto-script-durable-python-stdlib.md index 13cd252..734e11d 100644 --- a/content/tuto-script-durable-python-stdlib.md +++ b/content/tuto-script-durable-python-stdlib.md @@ -46,7 +46,7 @@ _Vincent Bernat_ pour son billet de blog dont je me suis complètement inspiré -[meetup-forga]: {filename}/afpy-lyon-novembre-2019.md +[meetup-forga]: {filename}/afpy-lyon-2019-11-devel-orga.md [forga-emb]: https://gitlab.com/forga/process/fr/embarquement [pysdur-issue]: https://gitlab.com/forga/process/fr/embarquement/-/issues/6 [pysdur-commit]: https://gitlab.com/free_zed/mypsb/-/commits/tuto-pysdur diff --git a/requirements.txt b/requirements.txt index 04bf493..f40f889 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,2 @@ -pelican==4.7.1 +pelican==4.8 Markdown==3.3.6