python / python/cpython

Extend operator-typo SyntaxError suggestions (`=<`, `=>`, `=!`) to `if/while` other conditions

Ouverte
#154,970 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

interpreter-core type-feature
Langage dominant
Python
Étoiles
77.2k
Forks
35.9k
Métriques de merge des PR
Métriques de PR en attente

Description

Follow-up #151375

In that PR we added helpful SyntaxError messages for common operator typos: =< suggests <=, => suggests >=, and =! suggests !=.

These suggestions currently only work when the typo appears in a plain statement. like

'a => b' invalid syntax. Maybe you meant '>=' instead of '=>'?

So this is for extending in if, while, or other conditions:

These only fire for bare statements, so if a => b: still gives the generic error, no? That is probably fine for a first iteration (the = < tokenization makes it look like an assignment), but maybe we should add a test documenting it or a follow-up issue for the if/while case.

Originally posted by @pablogsal in https://github.com/python/cpython/pull/151375#discussion_r3683730462

I'm planning to work on this and submit a PR shortly after the follow up merged, please avoid PR in this

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par lire PR #151375 et l’implémentation existante des suggestions de SyntaxError afin de comprendre comment les fautes de frappe d’opérateurs sont détectées pour les instructions isolées. Étendez le comportement à if, while et aux autres cas de conditions, puis ajoutez ou mettez à jour les tests couvrant ces formes et vérifiez les messages suggérés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
compilers
Type d'issue
Fonctionnalité
Difficulté
3/5
Temps estimé
1-2 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.