Fork me on GitHub

2023-07-28: Node.js v20.5.0, Bun v0.7.0, Redwood v6.0.0

Translator: rewrite0w0 Edit on GitHub See Revisions

JSer.info #653 - Node.js v20.5.0 출시했습니다.

Test Runner에 --test-shard 플래그 추가, node:eventsaddAbortListener 추가, fs.readFileSync에 UTF-8 파일 읽을 때 성능 개선이 있습니다.


Bun v0.7.0 출시했습니다.

Vite 지원, Worker API 지원, structuredClone() 지원, AsyncLocalStorage 지원이 추가되었습니다.
실행할 때 성능을 희생시키지만 메모리 소모량을 억제하는 bun --smol 플러그 지원, bun test --bail=<number> 지원, Node.js와 호환성 개선이 있습니다.


Redwood v6.0.0 출시했습니다.

Vite를 기본적으로 Bundler로 이용할 수 있도록 변경되었으며, 이것에 따른 변경이 많이 포함되었습니다.
변경된 옵션이나 코드는 @redwoodjs/codemods 마이그레이션할 수 있습니다.

그 외에는, Prisma 5으로 업데이트, Storybook 7으로 업데이트, firebase 업데이트가 포함되었습니다.


To support JSer.info


헤드라인


Node v20.5.0 (Current) | Node.js

nodejs.org/en/blog/release/v20.5.0

nodejs ReleaseNote

Node.js v20.5.0 출시.
node:eventsaddAbortListener 추가, fs.readFileSync으로 UTF-8 파일 읽을 때 성능 개선


Bun v0.7.0 | Bun Blog

bun.sh/blog/bun-v0.7.0

Bun ReleaseNote

Bun v0.7.0 출시.
Vite 지원, Worker API 지원, structuredClone() 지원, AsyncLocalStorage 지원.
실행할 때 성능은 희생시키지만 메모리 소비량은 억제하는 bun --smol 플러그 지원, bun test --bail=<number> 지원, Node.js와 호환성 개선


Astro 2.9: View Transitions (experimental) | Astro

astro.build/blog/astro-290/

astro ReleaseNote

Astro 2.9 출시.
실험적으로 View Transitions 지원, Redirects 옵션 지원.
다시 export 하는 라이브러리 bundle를 최적화


Release 3.32.0 - 2023.07.28 · zloirock/core-js

github.com/zloirock/core-js/releases/tag/v3.32.0

JavaScript polyfill ReleaseNote

core-js v3.32.0 출시.
Array grouping, Promise.withResolvers, Set methods, Iterator Helpers의 Stage 변경에 대응.
Stage 3의 Float16Array, Stage 1의 Uint8Clamped 지원


Release Notes for Safari Technology Preview 175 | WebKit

www.webkit.org/blog/14398/release-notes-for-safari-technology-preview-175/

ReleaseNote safari

Safari Technology Preview 175 출시.
Service Workerでrequest를 리다이렉트할 때에 Hash 플래그먼트가 없어지는 문제 수정.
.nodeValue.textContentnull 대입할 때 동작을 다른 브라우저처럼, null를 빈문자 처리되도록 변경


Release v1.19.0 · remix-run/remix

github.com/remix-run/remix/releases/tag/remix%401.19.0

Remix ReleaseNote

Remix 1.19.0 출시.
esbuild의 metafile.*를 빌드 레이아웃 포함되도록, serverNodeBuiltinsPolyfill 옵션 추가


Release v6.0.0 · redwoodjs/redwood

github.com/redwoodjs/redwood/releases/tag/v6.0.0

nodejs esbuild ReleaseNote

Redwood v6.0.0 출시.
Vite 기본적으로 Bundler로 이용하도록 변경, Prisma 5으로 업데이트, Storybook 7으로 업데이트, firebase 업데이트


읽을거리


typescript-eslint v6 업데이트 가이드

zenn.dev/cybozu_frontend/articles/ts-eslint-v6-guide

TypeScript esbuild article

typescript-eslit v6 프레셋 변경에 대하여


ESLint를 사용해 JSDoc / TSDoc 작성 필수화하기

zenn.dev/wakamsha/articles/setup-eslint-plugin-jsdoc

ESLint article

ESLint 규칙으로 JSDoc 표기를 체크할 수 있는 설정에 대하여


ServiceWorker 함정 8선 - Repro Tech Blog

tech.repro.io/entry/2023/07/27/105218

ServiceWorker article JavaScript

Service Worker 라이프사이클, Cache-Control 헤더에서 캐시 동작, 디버그, 버그가 있을 때 정지방법에 대하여


웹사이트, 서비스, 문서


pkg-size | Find the true size of a npm package

pkg-size.dev/

npm webservice performance

WebContainers를 사용해 패키지를 설치, 패키지의 설치 속도나 설치 크기를 체크할 수 있는 서비스


httptoolkit/brotli-wasm: A reliable compressor and decompressor for Brotli, supporting node & browsers via wasm

github.com/httptoolkit/brotli-wasm

WebAssembly JavaScript library

Brotli의 Compress/Decompress를 바루는 라이브러리.
Rust의 Brotli Crate를 WebAssembly으로 컴파일하고 이용한다.


소프트웨어, 도구, 라이브러리


fabian-hiller/valibot: The modular and type safe schema library for validating structural data 🤖

github.com/fabian-hiller/valibot

TypeScript library

zod 라이크한 스키마를 빌더 함수로 조합하여 검증 및 TypeScript 자료형으로 이용할 수 있는 라이브러리.
이용하고 있는 빌더 함수만을 포함하는 Bundle를 만들 수 있도록, 메서드체인이 아니라 함수 조합으로 스키마 정의할 수 있다


Pull Request to this article
JSer.info Slackに参加する