Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

build_parameters checks the parameter tree root instead of the parameter

Offen Anfängerfreundlich
#3,910 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 3 Tagen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
1/5
Geschätzter Aufwand
Unter einer Stunde
Anfängerfreundlichkeit
82/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
python
Bereich
backend

Rechercherichtung

Der Fehler steckt in PolicyEngineCountry.build_parameters in policyengine_api/country.py. Dort prüft das letzte elif isinstance(parameters, ParameterNode) auf der Wurzel statt auf dem aktuellen parameter. Lies die typbasierte Verzweigung dieser Funktion, um den Namen der Schleifenvariable zu bestätigen, und ändere dann die Bedingung so, dass sie parameter prüft. Fertig ist es, wenn der Zweig den Nachfahren prüft und die bestehenden Tests für build_parameters weiterhin bestehen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

In PolicyEngineCountry.build_parameters (policyengine_api/country.py), the last branch of the type dispatch is:

elif isinstance(parameters, ParameterNode):

parameters is the root tax_benefit_system.parameters, which is always a ParameterNode, so the condition is always true. The intended check is almost certainly isinstance(parameter, ParameterNode) on the current descendant.

Impact

None observed today: every descendant that reaches this branch is a ParameterNode anyway, so the output is the same. But any other descendant type would silently be described as a parameter node instead of being skipped.

Expected

Check parameter, not parameters.

Notes

Found while documenting the code for the ruff docstring rules; behaviour was left unchanged there.

Vorherrschende Sprache
Python
Sterne
18
Forks
33
Ø Merge
2 T. 15 Std.
Gemergte PRs (30 T.)
35

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus PolicyEngine/policyengine-api

Alle Issues in PolicyEngine/policyengine-api

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.