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

Validator crashes on valid JSON with unexpected shapes

Offen
#80 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
45/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
python
Bereich
testing, tooling

Rechercherichtung

Start by reading scripts/validate.py and trace how it handles parsed marketplace JSON, plugin entries, and manifest fields. Reproduce the crash with the top-level [] case, then check the listed shape and scalar cases. Done means each invalid input exits with status 1 and identifies the file or field without a traceback; the issue says regression coverage is needed, but tests are excluded by the intake policy.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Problem

python3 scripts/validate.py assumes that parsed JSON values and marketplace plugin entries are objects. Syntactically valid JSON with another shape can therefore terminate with an AttributeError or TypeError instead of reporting a validation error.

Examples include:

  • a top-level array, string, number, or null in marketplace.json;
  • a non-object entry inside marketplace.json.plugins;
  • a top-level non-object value in a plugin manifest;
  • non-string values for fields later passed to regex or path operations.

Expected behavior

The validator should exit with status 1 and identify the invalid file or field, without a Python traceback.

Reproduction

  1. Replace the top-level object in a checkout copy of marketplace.json with [].
  2. Run python3 scripts/validate.py.
  3. The validator reaches object-only operations on the parsed value and crashes.

A complete defensive implementation and regression coverage for arrays, strings, numbers, null, malformed plugin entries, and scalar field mismatches were prepared in #78. The external intake policy does not allow changes to scripts/ or tests/, so that PR is being closed and this issue records the reproducible maintainer-owned fix instead.

Vorherrschende Sprache
Python
Sterne
95
Forks
57
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

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 zai-org/zcode-plugins

Alle Issues in zai-org/zcode-plugins

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

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