python / python/typeshed

Possibility to type `tuple.__hash__` to only accept hashable items

Abierto
#15,851 2 comentarios 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

If a tuple contains unhashable entries, hashing it would raise TypeError. Is this possible to type? Currently, tuple.__hash__ is just a regular method that returns int.

This initial idea comes to mind, but on second thought, it would likely break a lot of code:

class tuple(Sequence[_T_co]):
    def __hash__(self: tuple[Hashable, ...]) -> int: ...

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

Comienza con la definición de typeshed de la clase tuple y su método tuple.hash, tal como se describe en el issue. Investiga si restringir el hashing a tuplas de elementos Hashable es correcto sin romper el código existente; después, documenta un enfoque de tipado decidido y valídalo frente al comportamiento relevante de comprobación de tipos.

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

Evaluación

Stack tecnológico
python
Área
developer-experience
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.