mypy does not recognize tuple unpacking syntax for TypeVars.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 20.6k
- Forks
- 3.3k
- Métricas de merge de PR
- Métricas de PR pendientes
Descripción
Bug Report
This is really a minor issue, but if you declare multiple TypeVar variables in one line, mypy does not seem to recognize them as type variables. For example,
from typing import TypeVar, Generic
T1, T2 = TypeVar('T1'), TypeVar('T2')
class Container(Generic[T1]):
class Item(Generic[T2]):
pass
To Reproduce
- Declare more than one TypeVars in one line. (See the example code above.)
- Run mypy check on this script.
Expected Behavior
The T1 and T2 in the example above should be recognized as type variables.
They should pass mypy check.
Actual Behavior
Errors:
$ mypy typevar.py
typevar.py:5: error: Free type variable expected in Generic[...]
typevar.py:6: error: Free type variable expected in Generic[...]
Found 2 errors in 1 file (checked 1 source file)
Your Environment
- Mypy version used: 0.910
- Mypy command-line flags: none
- Mypy configuration options from
mypy.ini(and other config files): none - Python version used: 3.10.0
- Operating system and version: Ubuntu 20.04
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Reproduce el problema con el fragmento de Python proporcionado y el comando mypy typevar.py; después, sigue cómo se reconocen los TypeVars asignados mediante una tupla antes de comprobar Generic[...]. La tarea estará terminada cuando tanto T1 como T2 se acepten como variables de tipo y el ejemplo pase mypy sin errores.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- devtools
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100