Incompatibility between _decimal and _pydecimal: Context.__hash__
Ouverte
@rhettinger y travaille déjà.
Depuis le 22/6/2022.
extension-modules
type-bug
- Langage dominant
- Python
- Étoiles
- 77.2k
- Forks
- 36k
- Métriques de merge des PR
- Métriques de PR en attente
Description
Bug report
_decimal.Context.__hash__() returns an int value, while _pydecimal.Context.__hash__() is explicitly disabled:
Python 3.10.5 (main, Jun 7 2022, 12:59:15) [GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from _decimal import Context
>>> Context().__hash__()
8743628939711
>>> from _pydecimal import Context
>>> Context().__hash__()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'NoneType' object is not callable
I assume that _decimal just didn't bother to override __hash__ and inherits its implementation from object, but I think the implementations should match.
Your environment
Tested:
- Python 3.10.5 (main, Jun 7 2022, 12:59:15) [GCC 10.2.1 20210110] on linux
- Python 3.9.2 (default, Feb 28 2021, 17:03:44)
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.