Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Trying to simplify the Makefile #1499

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 24 commits into from
Jan 27, 2021

Conversation

JulienPalard
Copy link
Member

C'est une tentative de simplifier le Makefile pour le rendre plus maintenable.

Alors forcément il fait un peu moins de choses, il n'essaye pas de tout automatiser et laisse par exemple au soin de l'utilisateur de créer son venv (comme il le souhaite, c'est pas plus mal) et d'y installer les dépendances.

Pour ce faire, le Makefile l'aide quand même :

$ make
You're missing dependencies, please enable a venv and install:

  python -m pip install -r requirements.txt -r ../cpython//Doc/requirements.txt
make: *** [Makefile:85: ensure_prerequisites] Error 1

La grosse partie supprimée est surtout la gestion des worktree, ça m'a probablement semblé une bonne idée le jour où j'ai fait ça, mais c'était probablement trop complexe pour être maintenu surtout dans un repo de trad'.

Mon envie de simplifier ce Makefile vient d'une erreur d'un membre de l'équipe qui, face a un bug dans le Makefile, à voulu exécuter les commandes à la main, et a copié collé :

rm -fr $(WORKTREES)/$(BRANCH)

Sauf qu'il n'avait pas déclaré la variable WORKTREES ni la variable BRANCH (et puis c'est de la syntaxe Makefile, pas bash), il a donc eu :

$ rm -fr $(WORKTREES)/$(BRANCH)
bash: WORKTREES: command not found
bash: BRANCH: command not found

(qui exécute quand même rm -fr / derrière, et sur sa distrib il n'y a pas de --preserve-root par défaut)

RIP son home.

@@ -688,7 +688,7 @@ msgstr "``n`` (:class:`int`) [``Py_ssize_t``]"

#: c-api/arg.rst:292
msgid "Convert a Python integer to a C :c:type:`Py_ssize_t`."
msgstr "Convertit un entier Python en un :c:type:`short int` C."
msgstr "Convertit un entier Python en un :c:type:`Py_ssize_t`."
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spotted this one while playing with the Makefile.

@JulienPalard JulienPalard requested a review from awecx December 11, 2020 13:06
@JulienPalard JulienPalard added the 🤖 automerge The PR will be auto merged label Dec 11, 2020
@PyDocTeur
Copy link

Plus que la relecture, et si c'est bon, je merge !


Disclaimer

Je suis un robot fait par l'équipe de l'AFPy et de Traduction
sur leur temps libre. Je risque de dire des bétises. Ne me blâmez pas, blamez les développeurs.

Code source

I'm a bot made by the Translation and AFPy teams on their free
time. I might say or do dumb things sometimes. Don't blame me, blame the developer !

Source code

(state: automerge)
PyDocTeur v1.8.6

@christopheNan
Copy link
Contributor

(qui exécute quand même rm -fr / derrière, et sur sa distrib il n'y a pas de --preserve-root par défaut)

RIP son home.

Oui, là c'est ballot 😢 ! Il devrait mettre un set -u dans son ~/.bashrc …
Ça forge l'expérience, j'espère pour lui qu'il avait une sauvegarde récente.

Makefile Outdated
$(MODE)
# Cleanup
git -C $(CPYTHON_PATH) checkout -
rm -fr $(CPYTHON_PATH)/locales/
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sûr ? On perd l'intérêt du cp -u au-dessus si on recrée le dossier à chaque fois.
Ou bien le make doc se base sur la date de la dernière modification du fichier (nouvellement copié ou pas) et dans ce cas c'est le -u qui devient superflu ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je rejoins @awecx : je souhaite garder l'arborescence.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'entend.

J'ai poussé une nouvelle proposition qui évite d'avoir a supprimer locales/ tout en évitant de 'poluer" l'arborescence du checkout de cpython, ça simplifie le git status ! cool.

@awecx awecx self-requested a review January 27, 2021 18:23
@awecx awecx merged commit 5a4372b into python:3.9 Jan 27, 2021
@JulienPalard JulienPalard deleted the julienpalard/simplify-makefile branch January 27, 2021 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🤖 automerge The PR will be auto merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants