Incompatibility between _decimal and _pydecimal: Context.__hash__
Offen
@rhettinger arbeitet bereits daran.
Seit 22.6.2022.
extension-modules
type-bug
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 36k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
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)
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Bewertung
Dieses Issue wurde noch nicht bewertet.