python / python/typeshed

dict.__init__() and dict.update() don't match

Abierto
#6,056 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Python
Estrellas
5.1k
Forks
2.1k
Merge medio
1 d 19 h
PR fusionados (30 d)
82

Descripción

https://github.com/python/typeshed/blob/196f69b27e4353b07372a6641903e6d7fe4b330f/stdlib/builtins.pyi#L807-L818

https://github.com/python/typeshed/blob/196f69b27e4353b07372a6641903e6d7fe4b330f/stdlib/builtins.pyi#L824-L829

In stubs, __init__ has 5 overloads and update() has 3 overloads. But at runtime, dict.update() accepts everything that dict.__init__ accepts. For example:

>>> d={}
>>> d.update((s.split('=') for s in ['a=b', 'c=d']), lol='wut')
>>> d
{'a': 'b', 'c': 'd', 'lol': 'wut'}

Guía de contribución

Abrir la guía de contribución

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.

Línea de trabajo

Abre stdlib/builtins.pyi e inspecciona los rangos de sobrecargas vinculados para dict.init() y dict.update(). Reproduce el ejemplo documentado en tiempo de ejecución y compara después las formas de llamada aceptadas; se considera terminado cuando el stub de update() coincide con las formas de inicialización descritas en el issue.

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

Evaluación

Stack tecnológico
python
Área
tooling
Tipo de issue
Error
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bien especificado
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.