Fork me on GitHub

2023-03-22: Firefox 111, react.dev, TypeScript 5

Translator: rewrite0w0(Oh TaeJun) Edit on GitHub See Revisions

JSer.info #636 - Firefox 111가 출시되었습니다.

HTML translate 속성 지원, CSS color functions를 플러그로 지원합니다.
또, Safari와 같이 File System Access API Origin private file system (OPFS)를 지원합니다.


React 새로운 문서 사이트 react.dev 가 공개되었습니다.

도메인이 react.dev이 되었으며, React Hooks이 기본으로 되어, 튜토리얼이나 API 가이드도 새로 작성되었습니다.
또한, 이전 문서는 https://legacy.reactjs.org/에 공개되어 있습니다.


TypeScript 5.0가 정식 출시되었습니다.

TypeScript는 semver는 아니지만, 메이저 업데이트라 할 정도로 큰 변경이 포함되어 있습니다.

지금까지는 ECMAScript Stage 1 Decorator이었지만, Stage 3 Decorator으로 지원됩니다.
const type parameter 추가, tsconfig.json로 다수 extends에 대응, enum과 union 자료형 개선도 행해졌습니다.

또한, --moduleResolution bundler 추가와 관련한 옵션 추가, exports 필드 Condition를 지정할 수 있는 --customConditions 추가.
import할 때 type 수식자를 삭제하고 그 외를 남기는 --verbatimModuleSyntax 옵션 추가, JSDoc에서 @satisfies를 지원 등도 포함되어 있습니다.

TypeScript의 내부적 변경으로 TypeScript 코드베이스를 namespace에서 moudle로 이행, 또한, TypeScript의 코드베이스를 namespace에서 moudle로 이행, 퍼포먼스 / 메모리 / 패키지 크기 개선했습니다.
namespace 관련해서는 글도 공개되어 있습니다.

낡아진 --target ES3이나 --out 등 옵션도 비권장으로 변경했으며, --forceConsistentCasingInFileNames 를 기본적으로 true로 변경하는 변경도 포함되어 있습니다.


To support JSer.info


헤드라인


Firefox 111.0, See All New Features, Updates and Fixes

www.mozilla.org/en-US/firefox/111.0/releasenotes/

Firefox ReleaseNote

Firefox 111 출시.
HTML translate 속성 지원, CSS color functions를 플러그로 지원.
File System Access API Origin private file system (OPFS) 지원 등


Node v19.8.0 (Current) | Node.js

nodejs.org/en/blog/release/v19.8.0

node.js ReleaseNote

Node.js v19.8.0 출시.
Buffer.copyBytesFrom() 추가, AsyncLocalStorage.bind()AsyncLocalStorage.snapshot() 추가.
fs.openAsBlob() 추가, URLSearchParamssize getter 추가, WASI에 version를 추가 등


vite/CHANGELOG.md at main · vitejs/vite

github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#420-2023-03-16

vite ReleaseNote

Vite 4.2.0 출시.
HTML 파일 내에서 %ENV_NAME%로 환경 변수 치환 가능, Source Maps 개선, exports 필드의 Subpath imports에 대응.
TypeScript 5 지원과 esbuild 0.17으로 업데이트 등


Introducing react.dev – React

react.dev/blog/2023/03/16/introducing-react-dev

React document news

React 새로운 문서 사이트 react.dev 가 공개되었다.
도메인이 react.dev가 되었으며, React Hooks가 기본이 되었다. 튜토리얼, API 가이드도 새로 작성되었다.


Announcing TypeScript 5.0 - TypeScript

devblogs.microsoft.com/typescript/announcing-typescript-5-0/

TypeScript ReleaseNote

TypeScript 5.0 출시.
ECMAScript Stage 3 Decorator 구현, const type perameter 추가, tsconfig.json으로 다수 extends 대응, enum과 union 자료형 개선.
--moduleResolution bundler의 추가와 관련한 옵션 추가, exports 필드 Condition를 지정할 수 있는 --customConditions 추가.
import할 땨 type 수식자 삭제하고 그 외를 남기는 --verbatimModuleSyntax 옵션 추가, JSDoc에서 @satisfies를 지원 등.
또한, TypeScript의 코드베이스를 namespace에서 moudle로 이행, 퍼포먼스 / 메모리 / 패키지 크기 개선.
--target ES3이나 --out 등 옵션을 비권장으로 변경, --forceConsistentCasingInFileNames를 기본값으로 true로 변경하는 변경 등이 포함되어있다.


styled-components/xstyled: A utility-first CSS-in-JS framework built for React. 💅👩‍🎤⚡️

github.com/styled-components/xstyled

JavaScript CSS news

xstyled가 styled-components organization으로 이관되었다


읽을거리


Introducing "safe npm", a Socket npm Wrapper - Socket

socket.dev/blog/introducing-safe-npm

npm article security

npmnpx에 alias해서 이용할 수 있는 커맨드.
설치할 때 패키지가 멀웨어인가, 설치시점에 스크립트 실행하는가 등 확인하며 설치할 수 있다


npm install와 npm ci 동작 확인을 간단히 해보았다. - Mitsuyuki.Shiiba

bufferings.hatenablog.com/entry/2023/03/21/145023

npm article CI

npm install와 npm ci와 캐시에 관련한 글.
npm installnode_modules/를 재이용할 수 있지만, 안전하지 않은 경우도 있다.
npm cinode_modules/를 삭제하기 위해 ~/.npm를 캐시로 사용할 필요가 있다는 내용.


웹사이트, 서비스, 문서


lagonapp/lagon: Deploy Serverless Functions at the Edge. Current status: Dev

github.com/lagonapp/lagon

V8 Rust JavaScript OpenSource

V8와 Rust로 작성된 JavaScript 런타임.


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


total-typescript/ts-reset: A 'CSS reset' for TypeScript, improving types for common JavaScript API's

github.com/total-typescript/ts-reset

TypeScript library

TypeScript의 libs의 자료형 정의를 덮어쓰는 자료형 정의 라이브러리.
JSON.parseany가 아니라 unknown를 반환하도록 변경되거나, .includes().has()의 자료형을 엄밀하게 하는 등의 동작


anymaniax/orval: orval is able to generate client with appropriate type-signatures (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats. 🍺

github.com/anymaniax/orval

OpenAPI TypeScript React Tools library

OpenAPI Spec에서 API 클라이언트나 목 서버 등의 코드 생성하는 도구.


gajus/turbowatch: Extremely fast file change detector and task orchestrator for Node.js.

github.com/gajus/turbowatch

node.js library

파일 변경을 감시해서, 프로세스를 재기동하는 라이브러리, 도구


Transformers.js

xenova.github.io/transformers.js/

browser JavaScript library MachineLearning

브라우저에서 동작하는 Transformers 라이브러리.
HuggingFace Hub에서 모델 다운로드할 수 있도록 되어있어, BERT 같은 다양한 모델에서 태스크 실행 가능


도서


Practical WebAssembly [Book]

www.oreilly.com/library/view/practical-webassembly/9781098142513/

WebAssembly book

2024년 5월 발매
WebAssembly 관련 도서.
Rust와 AssemblyScript으로 Wasm를 작성해 이용하는 방법을 다룬다


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