JSer.info #616 - Node.js 18 버전의 LTS(Long Term Support)가 되는 Node.js 18.12.0가 릴리스 됐다.
Node.js 18의 LTS는 2023년 10월 18일 부터 2025년 4월 30일 까지 지원될 예정이다.
또, Node.js 16 LTS는 OpenSSL의 라이프사이클 관련 문제로 평소보다 짧은 2023년 9월 11일까지 지원된다.
Babel 7.20.0이 릴리스 됐다.
현재 RC인 TypeScript 4.9 지원, @babel/preset-env
의 targets
으로 Deno를 지정할 수 있다.
이와 함께 babel-loader 9.0.0을 릴리스 하고 webpack5 미만, Node.js 12 이하 지원을 종료했다.
TypeScript 4.9 RC가 릴리스 됐다.
타입 캐스트 없이 타입 일치를 체크할 수 있는
satisfies
연산자 추가in
연산자에서 타입 추론 영역 개선accessor
키워드 지원== NaN
을 컴파일 에러로 감지하도록 변경--watch
시의 파일 감지 방식을 기본적으로useFsEvents
으로 변경exports
필드와typeVersions
필드의 우선도 수정
RC 릴리스에 맞춰 다음 버전인 5.0과 관련된 일정도 다음 이슈를 통해 논의 되고 있다.
5.0에서는 주로 다음과 같은 제안 및 개선이 이뤄질 전망이다.
- ECMAScript Stage 3의 Decorator 지원
- Numeric enum과 Literal enum 통합
- Module Resolutions과 관련 제안 진행
- .ts 접미사를 붙여도 import 가능하도록 개선
- .js 이외 파일에 대해서도 .d.ts 지원
- tsconfig.json의
extends
를 배열로 지정할 수 있도록 개선 // @ts-option
으로 파일 별로 TS를 설정할 수 있도록 지원
헤드라인
Node v18.12.0 (LTS) | Node.js
nodejs.org/en/blog/release/v18.12.0/
Node.js 18의 LTS 버전인 Node.js v18.12.0 릴리스.
Node.js 18의 LTS는 2025년 4월 까지 유지보수 될 예정.
vite/CHANGELOG.md at main · vitejs/vite
github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#320-2022-10-26
Vite 3.2.0 릴리스.
Library Mode에서 여러개의 엔트리 포인트 지원, build.modulePreload
옵션 추가, ErrorOverlay 스타일을 커스터 마이징 할 수 있게 개선.
7.20.0 Released: Deno target and TypeScript 4.9 · Babel
babeljs.io/blog/2022/10/27/7.20.0
Babel v7.20.0 릴리스.
TypeScript 4.9 지원, @babel/preset-env
의 targets
으로 Deno를 지정할 수 있다.
이와 함께 babel-loader 9.0.0이 릴리스 됐으며 webpack 5 미만 버전과 Node.js 12 이하 버전이 지원 종료 됐다.
Deno 1.27: Major IDE Improvements
Deno v1.27 릴리스.
npm 패키지의 @types
를 이용할 수 있도록 개선, Node-API 지원, Lock 파일 포멧 변경.
navigator.language
Web API 구현, V8 10.8으로 갱신.
Release v7.0.0 · pixijs/pixijs
github.com/pixijs/pixijs/releases/tag/v7.0.0
PixiJS v7.0.0 릴리스.
IE 지원 종료, polyfill 삭제, InteractionManager를 삭제하고 EventSystem을 기본 사용, peerDependencies
를 이용하지 않도록 변경.
Release v3.0.279 · mozilla/pdf.js
github.com/mozilla/pdf.js/releases/tag/v3.0.279
pdf.js v3.0.279 릴리스.
메이저 업데이트 릴리스이며 Editor mode가 추가 됐고, 비권장 API가 삭제 됐다.
Release v1.9.0-rc.0 · reduxjs/redux-toolkit
github.com/reduxjs/redux-toolkit/releases/tag/v1.9.0-rc.0
Redux Toolkit v1.9.0-rc.0 릴리스.
autoBatchEnhancer
추가, fetchBaseQuery
에서 global option을 전달할 수 있도록 개선.
Announcing TypeScript 4.9 RC - TypeScript
devblogs.microsoft.com/typescript/announcing-typescript-4-9-rc/
TypeScript 4.9 RC 릴리스.
- 타입 캐스트 없이 타입 일치를 체크할 수 있는
satisfies
연산자 추가 in
연산자에서 타입 추론 영역 개선accessor
키워드 지원== NaN
을 컴파일 에러로 감지하도록 변경--watch
시의 파일 감지 방식을 기본적으로useFsEvents
으로 변경exports
필드와typeVersions
필드의 우선도 수정
Mixing It Up: Remix Joins Shopify to Push the Web Forward — Development (2022)
shopify.engineering/remix-joins-shopify
Shopify가 Remix를 인수했다. Remix는 Shopify의 하위 체제로 개발을 이어간다.
Shopify의 Hydrogen에 Remix의 data loading 패턴을 통합하는 등의 작업도 이어질 예정.
덧붙여 Vanilla Extract의 Creator인 Mark Dalgleish도 Remix에 참여할 것으로 보인다.
- Remixing Shopify | Remix
- Roadmap • Hydrogen: Shopify’s headless commerce framework
- 🧁 Mark Dalgleish on Twitter: "I'm super excited to announce that next week I'm joining the @remix_run team at @Shopify." / Twitter
아티클
Why We're Breaking Up with CSS-in-JS - DEV Community 👩💻👨💻
dev.to/srmagura/why-were-breaking-up-wiht-css-in-js-4g9b
CSS-in-JS의 런타임 성능 문제를 주제로 한 글. 성능 문제가 있었던 부분을 CSS(Sass modules)로 대체하면서 오버헤드가 48%나 감소하는 측정 값을 보여준다. 따라서 성능 문제를 회피하기 위해 Sass modules 또는 유틸리티 클래스(Bootstrap, Tailwind) 프레임워크를 제안한다. 컴파일 타임 CSS-in-JS도 대안이 될 수 있지만 Sass modules와 비교해 여전히 단점이 존재한다고도 언급하고 있다.
Airbnb's Trip to Linaria | The Airbnb Tech Blog
medium.com/airbnb-engineering/airbnbs-trip-to-linaria-dc169230bd12
Airbnb에서 CSS-in-JS 도구로 react-with-styles를 개발하고 사용하고 있었으나 성능과 유지보수성 문제로 인해 Linaria로 이전한다. react-with-styles는 개발을 중단하고 유지보수를 당분간은 유지할 예정이며 때문에 다른 도구로 이전 하기를 권고하고 있다.
【탈 런타임 CSS in JS】 styled-components를 다른 CSS in JS 도구로 자동 치환하는 CLI 도구 개발(일본어)
zenn.dev/yukiyada/articles/0ac6ef8d566b96
styled-components를 linaria나 vanilla-extract로 이전하는 도구와 구조 등을 소개하는 글.
사이트, 서비스, 문서
sqlite3 wasm docs: About the sqlite3 WASM/JS Subproject
sqlite.org/wasm/doc/trunk/about.md
sqlite3를 WebAssembly와 JavaScript를 사용해 브라우저에서 동작 시키는 것을 목표로 하는 공식 프로젝트.
소프트웨어, 도구, 라이브러리
dudykr/stc: Speedy TypeScript type checker
Rust로 작성한 TypeScript 타입 체커.
도서
Fluent React [Book]
www.oreilly.com/library/view/fluent-react/9781098138707/
2024년 3월 출간 예정인 React를 주제로 한 도서.
JSX 구문, 고급 패턴, 최적화 기술 등을 폭넓게 다룰 예정.