Generic class with broken `__eq__` cannot be specialized
Ouverte
@JelleZijlstra y travaille déjà.
Depuis le 3/6/2024.
3.12
3.13
3.14
topic-typing
type-bug
- Langage dominant
- Python
- Étoiles
- 77.2k
- Forks
- 35.9k
- Métriques de merge des PR
- Métriques de PR en attente
Description
Bug report
Bug description:
This test case currently fails:
def test_buggy_eq(self):
class BrokenEq(abc.ABCMeta):
def __eq__(self, other):
raise TypeError("I'm broken")
class G(Generic[T], metaclass=BrokenEq):
pass
alias = G[int]
self.assertIs(get_origin(alias), G)
self.assertEqual(get_args(alias), (int,))
See python/typing_extensions#422 for a real-world example.
CPython versions tested on:
CPython main branch
Operating systems tested on:
macOS
Linked PRs
- gh-119973
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Évaluation
Cette issue n'a pas encore été évaluée.