Add structured version info for decimal
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 35.9k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Feature or enhancement
decimal.__libmpdec_version__ (from mpd_version()) is the only information about the libmpdec library, and it only describes the library loaded at runtime. The version of the library that the module was built against is not exposed, although it can differ now that only a system libmpdec is used.
libmpdec provides MPD_VERSION, MPD_MAJOR_VERSION, MPD_MINOR_VERSION and MPD_MICRO_VERSION at compile time, and mpd_version() at runtime.
Add decimal.LIBMPDEC_VERSION and decimal.LIBMPDEC_VERSION_INFO for the build-time version, decimal.libmpdec_version as an alias of __libmpdec_version__, and decimal.libmpdec_version_info for the runtime version.
These names are specific to the C implementation and are not added to _pydecimal; the test which checks that both implementations expose the same names has to exclude them.
Linked PRs
- gh-157476
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.
Rechercherichtung
Beginne damit, die C-Implementierung von decimal und die _pydecimal-Implementierung zu lokalisieren, und untersuche anschließend die vorhandene Behandlung von mpd_version() und libmpdec_version. Überprüfe den Test, der verlangt, dass beide Implementierungen dieselben Namen bereitstellen; fertig ist die Aufgabe, wenn die angeforderten Build-Zeit- und Laufzeitnamen von der C-Implementierung bereitgestellt werden und der Paritätstest sie ausschließt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c, python
- Bereich
- backend
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 30/100