python / python/mypy

Mypy Does Not Return Non-Zero Exit Code for Invalid mypy.ini Values Followed by Comments, including 'strict'

Ouverte
#16,764 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

bug
Langage dominant
Python
Étoiles
20.6k
Forks
3.3k
Merge moyen
1 j 18 h
PR mergées (30 j)
54

Description

Bug Report

Description

When using a comment in an mypy.ini file, it interferes with the parsing of boolean values, leading to unintended behavior. Specifically, if a boolean value is followed by a comment, mypy does not return a non-zero exit code, even if the value is invalid. This can lead to unexpected configuration changes and, in the example provided, turns off the 'strict' mode.

To Reproduce

[mypy]
strict = true # this comment turns strict off

Expected Behavior

Mypy should return a non-zero exit code when encountering invalid configuration values, even if they are followed by a comment.

Actual Behavior

Mypy outputs a warning but does not return a non-zero exit code, allowing the invalid configuration to take effect.

mypy.ini: [mypy]: strict: Not a boolean: true # this comment turns strict off

Your Environment

  • Mypy version used: 1.7.0, 1.8.0
  • Mypy command-line flags: ''
  • Mypy configuration options from mypy.ini (and other config files): n/a
  • Python version used: Python 3.10.11

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 reproduire le comportement avec la configuration mypy.ini fournie et suivez le point d’entrée de l’analyse et de la validation de la configuration de mypy. Ajoutez une couverture pour une valeur booléenne suivie d’un commentaire, et vérifiez que les valeurs invalides produisent un code de sortie différent de zéro tandis que les valeurs valides restent inchangées.

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

Évaluation

Stack technique
python
Domaine
tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
58/100

Recevez les nouvelles issues par e-mail

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