[Bug] Class method 'self' looses special self scope with added type annotation

Abierto
#209 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
javascript, python
Área
tooling

Línea de trabajo

Comienza con el fragmento de Python reproducido e inspecciona los ámbitos de tokens de los parámetros self anotados y no anotados mediante la herramienta de inspección de tokens del desarrollador. Sigue la ruta del resaltado de sintaxis que gestiona los parámetros de los métodos de clase; se considera terminado cuando self: Test conserva los mismos ámbitos especiales de self que self sin anotación.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Got send here from 'vscode-python' https://github.com/microsoft/vscode-python/issues/11593

  • Editor name and version: VS Code version: 1.44.2
  • Platform: Windows_NT x64 10.0.17134
  • Color scheme: Custom (close to Monokai)
  • MagicPython version: Dunno which vscode uses

Without type annotation everything is just fine.
image

When a type annotation is added to the self parameter the special scope for self is missing.
image

Steps to reproduce:

Paste the following code into a *.py file and inspect the self parameter with the developer token inspect tool. Like in the screenshots above.
The self parameter of the bad_func should show the actual scopes and the self parameter of the good_func should show the expected scopes.

class Test:
    def bad_func(self: Test):
        pass
    
    def good_func(self):
        pass
Lenguaje dominante
JavaScript
Estrellas
1.4k
Forks
98
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de MagicStack/MagicPython

Todos los issues de MagicStack/MagicPython

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.