-
Notifications
You must be signed in to change notification settings - Fork 1
Outillage : ajoute pyupgrade comme git hook #41
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Même s'il n'était pas forcément prévu de faire des noms d'objets avec des accents, quel est l'intérêt de ne pas forcer l'encodage UTF-8 ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parce-que c'est l'encodage par défaut du langage donc ça ne présente pas beaucoup d'intérêt de le spécifier donc autant ne pas le mettre ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pour le coup j'ai du le rajouter à d'autres endroits (pour l'écriture de descripteur) justement parce que mes accents ne passaient pas sinon. Le côté explicite me rassure j'avoue 😇
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tiens, c'est étonnant. Je suis preneur d'un échange avec un jeu de données exemple sur ce cas-là. En général, s'il s'agit d'écrire dans un fichier, c'est au niveau du flux i/o qu'on spécifie l'encodage.
Typiquement :
from pathlib import Path
with Path("fichier.json").open(mode="w", encoding="utf-8") as f:
f.write("ma chaïne de caractères @!")Mais je réponds sans avoir de setup sous les yeux ni même l'endroit du code où cela a un impact.
Ce serait dommage de se priver de ce git hook qui fait un travail automatique à haute valeur ajoutée !
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C'est pyupgrade qui vire l'encodage ou le mode ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pyupgrade
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
À surveiller...
pyupgrade est un git hook développé par l'auteur de pre-commit (et dév de pytest/flake8 par ailleurs) qui permet d'utiliser la syntaxe sur la base à une version minimale de Python.
Cela permet de mettre à jour son code "automatiquement" au regard des pratiques du langage (f-string, etc.) et souvent d'en alléger la syntaxe.
Cette PR ajoute le git hook à la config (en utilisant Python 3.8) et l'applique à la base de code.
PR liée à #36