Bun 1.4.2 erklärt: Elysia-Build und AsyncLocalStorage 2026
Offizieller Bun-Blog am 5. September: v1.4.2 flickt v1.4.1-Regressionen, die Elysia-Builds brachen und AsyncLocalStorage leakten. CMYK-JPEGs und ein WebKit-Sprung stehen auf derselben Seite.
Am 5. September 2026 veröffentlichte der offizielle Bun-Blog v1.4.2. Der Leitsatz nennt zwei Regressionen aus v1.4.1: einen Namenskollision in bun build, der Elysia brach, und ein Leck in AsyncLocalStorage. Dieselbe Seite listet einen Hang in @discordjs/ws, CMYK-JPEG-Dekodierung in Bun.Image, einen seltenen JIT-Absturz und einen GC-Absturz auf musl.
Der Suchbegriff ist die Patch-Nummer. Offiziell: Upgrade mit bun upgrade. Dieser Text prüft nur diesen Blog. Keine Installationsanleitung und nicht die Zig-zu-Rust-Geschichte von 1.4.0 im August.
Was die öffentlichen Texte drucken
| Punkt | Öffentlicher Text | Grenze |
|---|---|---|
| Build | bun build benannte ein verschachteltes var auf ein let im selben Block um | Builds mit Elysia-Import luden nicht |
| Speicher | Timer in exit / verschachteltem run hielten den äußeren Store | getStore() blieb richtig; nur der Speicher wuchs |
| Worker | online kam nicht zuerst; @discordjs/ws verpasste die erste Nachricht | Reihenfolge entspricht jetzt Node.js |
| Engine | Etwa 350 Upstream-WebKit-Commits | Kein neues Laufzeitprodukt |
Diese Ausgabe lesen
- 1
Das ist ein 1.4.1-Patch
Der Offizialtext setzt beide Regressionen in den ersten Satz. Kein erneutes Ausliefern der Zig-zu-Rust-Umstellung von 1.4.0, kein neues Framework.
- 2
Der Build-Fehler ist abgedruckt
Der Blog druckt die kaputte Ausgabe: var exports2 = exports2. Der Fehler ist SyntaxError: Cannot declare a var variable that shadows a let/const/class variable. Derselbe Fehler konnte einem let den Namen eines Parameters oder Catch-Bindings geben und falsche Werte berechnen.
- 3
Das Leck ändert getStore() nicht
Ein Timer, Immediate oder ausstehendes Promise in store.exit() oder einem verschachtelten store.run() hielt den äußeren Store, solange das Handle lebte. Offiziell: der Rückgabewert blieb richtig; nur Speicher blieb gebunden.
- 4
Bilder und Engine teilen die Seite
Bun.Image dekodiert jetzt vierkanalige CMYK- und YCCK-JPEGs und wandelt sie nach RGB; zuvor Image: decode failed. Dieselbe Seite nennt etwa 350 WebKit-Commits: Intl, TypedArray, ein Proxy-Absturz, günstigere Date-Objekte.
Was dieselbe Seite sonst listet
JSON-Fehler wie JSON.parse
.json() auf Response, Blob, Bun.file() oder proc.stdout lehnt ungültiges JSON nicht mehr nur mit Failed to parse JSON ab. Es zeigt den SyntaxError-Text von JSON.parse.
Install und Alpine
bun install und bun add konnten panicen, wenn bun.lockb oder ein gecachtes Manifest einen Paketnamen-Hash speicherte, der nicht zum Namen passte. Auf musl (Alpine) konnten splice, shift oder das Verkürzen von length auf einem Objekt-Array auf einem GC-Thread abstürzen oder während des Markierens hängen.
Linux-Dateideskriptoren
Schlug die epoll-Registrierung eines Bun.file().writer()-FileSink fehl (etwa fs.epoll.max_user_watches erschöpft), konnte der Deskriptor zweimal geschlossen werden.
Grenzen
Die Offizialseite datiert 1.4.3 nicht. Als Nächstes bun.com/blog/bun-v1.4.2. Nur ein kurzes Meeting ohne Kontowand? wbstorm ist eine Browser-Raum-ID — siehe Raum erstellen oder beitreten und Whiteboard-Grundlagen.
# Sources
# bun.com/blog/bun-v1.4.2
# 2026-09-05Ist das die Zig-zu-Rust-Umstellung?
Nein. Dieser Text ist der v1.4.2-Patch. Die 1.4.0-Umschreibgeschichte ist aus dem August und nicht das Datum dieser Seite.
Hat Elysia selbst einen Fehler geliefert?
Offizialtext: v1.4.1 bun build benannte ein verschachteltes var auf ein let im selben Block um. Builds mit Elysia-Import luden danach nicht. Keine Elysia-Release-Notiz.
Ist das eine Produktanleitung?
Nein. Dieser Text prüft nur den Bun-Blog vom 5. September, kein bun-upgrade-Handbuch.