Fork me on GitHub

2023-03-22のJS: Firefox 111、react.dev、TypeScript 5

Edit on GitHub 編集履歴を見る

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からmoduleに移行し、パフォーマンス/メモリ/パッケージサイズの改善されています。
namespaceからの以降については記事も公開されています。

古くなった--target ES3--outなどのオプションを非推奨に変更し、--forceConsistentCasingInFileNamesをデフォルトでtrueに変更するといった変更も含まれています。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub Sponsorsとして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を作成して利用する方法について


この記事へ修正リクエストをする
JSer.info Slackに参加する