release:notes: a gh reply over 1 MiB aborts the run with spawnSync ENOBUFS
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
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
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 aspawnthat retries an overflowing call with a larger buffer, so this fix was not required for that release. scripts/lib/sweep.mjs'sgh()helper, used by the sweeps, also callsspawnSyncwith nomaxBuffer. 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
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus modelcontextprotocol/servers
-
enhancement server-everything v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
modelcontextprotocol/servers#5371 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
chore server-filesystem server-memory server-sequentialthinking v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
modelcontextprotocol/servers#5345 ·
Maintainer antworten meist innerhalb von 1 Tag
-
documentation v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
modelcontextprotocol/servers#5343 ·
Maintainer antworten meist innerhalb von 1 Tag
-
chore v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
modelcontextprotocol/servers#5337 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
release skill: link the Prepare Python Release PR to the release issue with addCloseIssueReferencesOffendocumentation v2
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
modelcontextprotocol/servers#5335 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in modelcontextprotocol/servers
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
marmelab/react-admin#11431 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
db-ux-design-system/core-web#8655 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
stripe/react-stripe-js#728 ·
-
[Upload Grade C dataset] the pop-up changes it's size while uploading the document => Jumping effectOffenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
epam/statgpt-admin-frontend#305 ·
Maintainer antworten meist innerhalb von 1 Tag