JSer.info #589 - Redux 4.2.0이 릴리스 됐다.
기능 추가는 없으며 createStore
를 비권장하고 legacy_createStore
라는 createStore
의 alias를 추가하는 변경이 포함됐다.
이 변경의 의도는 Redux의 메인테이너가 개발하고 있는 Redux Toolkit 사용을 장려하는데 있는 것 같다.
자세한 내용은 아래 Issue와 문서에 작성돼 있으니 참고 바란다.
- Mark
createStore
as deprecated · Issue #4325 · reduxjs/redux - Why Redux Toolkit is How To Use Redux Today | Redux
Node.js 18이 릴리스 됐다.
- Node.js 18 is now available! | Node.js
- Release 2022-04-19, Version 18.0.0 (Current), @BethGriggs · nodejs/node
2022년 10월에 LTS가 될 예정인 메이저 버전이다.
fetch
API, Web Streams API, Blob
/ broadcastChannel
API 등 웹 표준을 지원한다.
또, node:test
모듈 추가, --node-snapshot-main
추가, V8 10.1로 갱신 등도 함께 이뤄졌다.
비호환 변경으로 server.headersTimeout
와 server.requestTimeout
의 기본값이 변경 됐다. 관련 기능을 사용하는 분은 추가로 확인.
Jest 28가 릴리스 됐다.
- Jest 28: Shedding weight and improving compatibility 🫶 · Jest
- jest/CHANGELOG.md at main · facebook/jest
테스트를 분할하여 실행할 수 있는 --shard
옵션 추가, exports
필드 대응, fakeTimers 개선, GitHub Actions의 reporters 지원 등이 추가됐다.
testEnvironmentOptions
를 인라인 주석으로 정의할 수 있는 기능 추가, fetch
등의 전역 환경 대응, ESM 대응 개선 등도 포함됐다.
이전 가이드도 함께 공개됐으니 참고 바란다.
헤드라인
WebAssembly 2.0 First Public Working Drafts | W3C News
www.w3.org/blog/news/archives/9509
WebAssembly 2.0 First Public Working Draft가 공개됐다.
Release v7.0.0 · inikulin/parse5
github.com/inikulin/parse5/releases/tag/v7.0.0
HTML 파서 parse5 7.0.0 릴리스.
ESM 모듈화, TypeScript로 재작성하고 타입 정의를 패키지에 포함하도록 개선, parse5-serializer-stream
삭제.
또, 성능 개선도 함께 이뤄졌다.
Release [email protected] · milesj/packemon
github.com/milesj/packemon/releases/tag/packemon%402.0.0
라이브러리 용 모듈 번들러인 packemon 2.0.0 릴리스.
IE 용 빌드 삭제, Node 14 미만 지원 종료, SWC 지원.
Release 3.12.0 · prisma/prisma
github.com/prisma/prisma/releases/3.12.0
Prisma 3.12.0 릴리스.
MongoDB가 Generally Available이 됐다.
Release v4.2.0 · reduxjs/redux
github.com/reduxjs/redux/releases/tag/v4.2.0
Redux v4.2.0 릴리스.
@reduxjs/toolkit
로의 이전을 촉진하기 위해 createStore
API를 비권장하고 대신에 legacy_createStore
API를 추가했다.
- Mark `createStore` as deprecated · Issue #4325 · reduxjs/redux
- Why Redux Toolkit is How To Use Redux Today | Redux
Deno 1.21 Release Notes
Deno 1.21 릴리스.
명시적으로 타입을 검사하는 deno check
명령어를 추가했으며 다음 릴리스에서 deno run
을 이용한 타입 검사 방식은 기본적으로 비활성화 할 예정.
globalThis.reportError
와 error
이벤트 지원, deno repl
에 --eval-file
플래그 추가.
deno fmt
와 deno lint
가 기본적으로 캐시 되도록 변경.
불안정(unstable) API로서 Deno.spawn
/ Deno.spawnChild
/ Deno.spawnSync
추가.
deno test
에 BDD 스타일의 describe
와 it
등의 메서드 추가, STD에 spy
/ stub
/ assertSnapshot
/ FakeTime
추가.
Release v2.5.0 · parcel-bundler/parcel
github.com/parcel-bundler/parcel/releases/tag/v2.5.0
Parcel v2.5.0 릴리스.
WebExtension Manifest v3 지원, __dirname
과 __filename
변환 방식 수정, in
연산자를 process.env
에 대해 사용할 수 있도록 지원.
Node.js 18 is now available! | Node.js
nodejs.org/en/blog/announcements/v18-release-announce/
Node.js 18.0.0 릴리스.
2022년 10월에 LTS가 예정 된 메이저 버전.
fetch
API, Web Streams API, Blob
/ broadcastChannel
API 등 웹 표준 API 지원.
node:test
모듈 추가, --node-snapshot-main
추가, V8 10.1으로 업데이트.
또, server.headersTimeout
과 server.requestTimeout
의 기본값이 변경 됐다.
- Release 2022-04-19, Version 18.0.0 (Current), @BethGriggs · nodejs/node
- Node.js v18의 주요 변경점 - 뱔로 힘들지 않은 블로그(일본어)
Nuxt - Announcing Nuxt 3 Release Candidate
nuxtjs.org/announcements/nuxt3-rc/
Nuxt 3 RC 릴리스.
Vue 3, TypeScript, Vite 지원.
서버 엔진을 Nitro 기반으로 개선, 포터블 번들링 대응.
Jest 28: Shedding weight and improving compatibility 🫶 · Jest
jestjs.io/blog/2022/04/25/jest-28
Jest 28 릴리스.
테스트를 분할하여 실행할 수 있는 --shard
옵션 추가, exports
필드 대응, fakeTimers 개선, GitHub Actions의 reporters 지원.
testEnvironmentOptions
를 인라인 주석으로 설정 할 수 있도로 개선, fetch
등 전역 환경 지원, ESM 지원 등 다양한 개선이 이뤄졌다.
아티클
How Jotai Specifies Package Entry Points · Daishi Kato's blog
blog.axlight.com/posts/how-jotai-specifies-package-entry-points/
exports
필드를 소개하는 글.
default
와 import
를 사용한 ESM과 CJS 대응, 일부 도구를 위한 package.json
이나 module
지정 fallback 처리, TypeScript의 .d.ts
대응 방법 등 소개.
How We Migrated from Javascript and Flow to TypeScript at Osome - DEV Community 👩💻👨💻
dev.to/frolovdev/how-we-migrated-from-javascript-and-flow-to-typescript-at-osome-4661
JavaScript과 FlowType 환경에서 TypeScript로 이전한 이야기.
depcruise로 의존 그래프 체크, Flow to TS와 TS Migrate를 사용, 타입이 적용된 코드의 커버리지를 측정할 수 있는 도구 활용.
소프트웨어, 도구, 라이브러리
unjs/nitro: ⚗️ Build and deploy universal JavaScript servers
Nuxt 3에서 사용하고 있는 서버 엔진.
디렉터리 기반 라우팅, Vercel / AWS Lambada / Cloudflare Workers 등의 프로바이더에 디플로이 할 수 있는 서버 코드를 생성할 수 있다.
plantain-00/type-coverage: A CLI tool to check type coverage for typescript code
github.com/plantain-00/type-coverage
타입이 적용(any
는 제외)된 TypeScript 코드 커버리지를 측정할 수 있는 도구.
eolme/i18nano: Lightweight translation module with functionality similar to react-i18next
React 용 i18n 컴포넌트.
언어 별 파일을 Dynamic Import로 가져올 수 있는 구조를 제공한다.