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

release:notes: a gh reply over 1 MiB aborts the run with spawnSync ENOBUFS

Offen Anfängerfreundlich
#5,339 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
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
82/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
github, node.js, typescript
Bereich
cli, release

Rechercherichtung

Beginne mit run() in scripts/release-notes.mjs und prüfe dessen spawnSync-Optionen; sieh dir dann den gh()-Helper in scripts/lib/sweep.mjs an, auf den der Issue ebenfalls hinweist. Ergänze Tests, die zeigen, dass eine Antwort mit mehr als 1 MiB erfolgreich verarbeitet wird und ein echter Spawn-Fehler erneut ausgelöst wird. Fertig ist die Arbeit, wenn der Release-Notes-Befehl die gemeldete Antwortgröße verarbeitet und die Tests beide Fälle abdecken.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

chore v2

Problem

npm run release:notes aborts with release-notes: spawnSync gh ENOBUFS when any gh reply is larger than 1 MiB. run() in scripts/release-notes.mjs calls spawnSync with no maxBuffer, so Node's default of 1 MiB applies, and an overflow throws before any notes are produced. The preview and --draft both fail.

It first happened on the v2.2.0 release (#5330). The GraphQL query that lists the tree under src/ at the merge commit (expr=<merge-sha>:src) returned 1,087,532 bytes for 60200eb7. v2.1.0's tree was under the limit. The tree only grows, so every later release fails the same way.

Reproduce

npm run --silent release:notes -- --milestone v2.2.0 \
  --merge-sha 60200eb73634fd2c611f60ea5bc5801d19325c89 \
  --merge-branch v2/chore/5330-release-v2.2.0 --ledger-url https://example.invalid
# release notes: v2.1.0 → v2.2.0
# release-notes: spawnSync gh ENOBUFS

Expected

The run completes. run() passes a maxBuffer large enough for any reply the script reads, for example 256 MiB. A test should show that a reply over 1 MiB gets through, and that a genuine spawn error is still rethrown.

Notes

  • For v2.2.0, the maintainer authorized drafting through a driver that calls the script's own main() with a spawn that retries an overflowing call with a larger buffer, so this fix was not required for that release.
  • scripts/lib/sweep.mjs's gh() helper, used by the sweeps, also calls spawnSync with no maxBuffer. Check whether any of its calls can grow past 1 MiB.
Vorherrschende Sprache
TypeScript
Sterne
91.6k
Forks
11.9k
Ø Merge
4 Std. 38 Min.
Gemergte PRs (30 T.)
241

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 modelcontextprotocol/servers

Alle Issues in modelcontextprotocol/servers

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

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