Fork me on GitHub

2022-10-05のJS: Deno 1.26、axios v1.0.0、Optimize long tasks

Edit on GitHub 編集履歴を見る

JSer.info #612 - Deno 1.26がリリースされました。

Cache APIのサポート、新しいパーミッションとして--allow-sysフラグが追加されています。
また、node_modulesディレクトリを扱う--node-modules-dirフラグの追加し、Node.jsとの互換モードであった--compatフラグを削除しています。
compat modeはnpm:識別子によって置き換えられた形になります。

またNode.jsコアモジュールへの互換性の改善、Deno.serve() APIなどパフォーマンス改善、TypeScrtipt 4.8へのアップデートなども含まれています。


HTTPクライアントライブラリのaxios v1.0.0がリリースされました。

複数の大きな変更はないとのことですが、まだ詳しいマイグレーションガイドはリリースされていません。


Optimize long tasksという記事では、処理に50ms以上かかるlong taskをどのように最適化するかについて書かれています。

long taskがあると、taskであるユーザーの入力や表示の更新をブロックする場合があります。
そのため、タスクの分解とnavigator.scheduling.isInputPending()での実行タイミングの判定、schedulerpostTask APIについて紹介されています。


ヘッドライン


Deno 1.26 Release Notes

deno.com/blog/v1.26

deno ReleaseNote

Deno 1.26リリース。
Cache APIのサポート、--allow-sysフラグの追加、node_modulesディレクトリを扱う--node-modules-dirフラグの追加し--compatフラグを削除。
またNode.jsコアモジュールへの互換性の改善、Deno.serve() APIなどパフォーマンス改善、TypeScrtipt 4.8へのアップデートなど


Astro 1.4.0 Release | Astro

astro.build/blog/astro-140/

astro ReleaseNote

Astro 1.4.0リリース。
Astro.cookiesの追加、pnpmの対応改善、CSSの詳細度がpublic/import/styleタグで同じ場合の優先度の決定。
VueでのJSXのサポートなど


watch: add initial implementation for `node --watch` by MoLow · Pull Request #44366 · nodejs/node

github.com/nodejs/node/pull/44366

node.js issue

Node.jsに--watchフラグが追加された。
nodemonのようにファイルが変更されたらプロセスを再起動する


Release v9.0.0-pre.3 · npm/cli

github.com/npm/cli/releases/tag/v9.0.0-pre.3

npm ReleaseNote

npm v9.0.0-pre.3リリース。
package.jsonfilesがある場合に、npm packはrootにあるgitignoreとnpmignoreを無視するように変更など


tools/CHANGELOG.md at main · rome/tools

github.com/rome/tools/blob/main/CHANGELOG.md#0100

JavaScript Tools ReleaseNote

Rome 0.10.0リリース。
パフォーマンスの改善、ignoreにGlobを利用できるように、FormatterとLinterの対応ルールの追加など


Release v1.0.0 · axios/axios

github.com/axios/axios/releases/tag/v1.0.0

JavaScript library HTTP

axios v1.0.0リリース。


Node v18.10.0 (Current) | Node.js

nodejs.org/en/blog/release/v18.10.0/

node.js ReleaseNote

Node.js v18.10.0リリース。
ReadableByteStream.tee()の追加など


Electron 21.0.0 | Electron

www.electronjs.org/blog/electron-21-0

Electron ReleaseNote

Electron 21.0.0リリース。
Chromium 106、Node.js 16.16.0、V8 10.6へのアップデート。
webFrameMain.originWebContents.ipcの追加、NSPanelライクな動作のサポートなど。
またV8 Memory Cageが有効化され、off-heapを示すArrayBuffersは許可されなくなった。


アーティクル


Ten Years of TypeScript - TypeScript

devblogs.microsoft.com/typescript/ten-years-of-typescript/

TypeScript article

TypeScript10周年の記事。
TypeScriptが誕生してから10年が経過した。


Optimize long tasks

web.dev/optimize-long-tasks/

JavaScript browser performance article

50ms以上かかるlong tasksを分解し、ユーザーの入力と表示の更新を妨げないように最適化する方法についての記事。
タスクの分解とnavigator.scheduling.isInputPending()での実行タイミングの判定、schedulerpostTask APIについて


Postgres WASM by Snaplet and Supabase

supabase.com/blog/postgres-wasm

PostgreSQL WebAssembly article

PostgreSQLのWebAssemblyビルドについて
PostgreSQLそのものをWasmへとビルドするのは難しかったため、VMを作りそれをx86エミュレータで実行する。
また、WebSocketsを使ったProxyや起動時間の最適化やイメージサイズの削減についてなど


Client-side WebAssembly WordPress with no server – Make WordPress Core

make.wordpress.org/core/2022/09/23/client-side-webassembly-wordpress-with-no-server/

wordpress WebAssembly article

WordPressのWebAssemblyビルドについて。
PHPをWasmにビルドしWordpressを実行する。
ブラウザからのリクエストはService WorkerでProxyする。
WordPressをブラウザで確認できるので、WordPressの開発や確認がしやすくなる目的


Type-Level TypeScript — Introduction

type-level-typescript.com/

TypeScript tutorial

TypeScriptの型に関するチュートリアル。
型について解説と各チャプターで練習問題が用意されている。


Closing a 30 pixel gap between native and web - Microsoft Edge Blog

blogs.windows.com/msedgedev/2022/09/27/closing-pixel-gap-native-web-window-controls-overlay/

Chrome MSEdge UI browser article

Window Controls Overlayについて。
ブラウザウィンドウのタイトルバーの領域もPWAアプリで利用できる仕組み


サイト、サービス、ドキュメント


Learn Accessibility

web.dev/learn/accessibility/

HTML accessibility tutorial

ウェブアクセシビリティについて学べるチュートリアル


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