JSer.info #513 - Socket.IO 3.0.0がリリースされています。
Socket.IO 3 Release | Socket.IOのリリース記事では、
現在ではWebSocketsのfallbackとしてのSocket.IOの機能はそこまで重要ではありませんが、auto-reconnectionような機能などには引き続き価値があるという話が書かれています。
2.xから3.0.0への変更点やマイグレーションについては次のページにまとめられています。
Engine.IO 4へのアップデートも含まれています。
破壊的な変更として、maxHttpBufferSize
が100MBから1MBに変更、CORSの設定方法の変更、Cookieをデフォルトでは使わないように、APIの変更などが含まれています。
また、コードベースをTypeScriptで書き直し、onAny
/offAny
の追加、socket.io-msgpack-parserを同梱されるといった変更も含まれています。
polyfillライブラリであるcore-js 3.7.0がリリースされています。
しばらくの間、仕様変更の追従などのアップデートは止まっていましたが、作者が復帰したためメンテナンスが再開されています。
3.7.xではECMAScript/Proposalの仕様に準拠した変更、Node.jsでのqueueMicroTask
の実行順序の問題を修正、一部環境でのバグを修正などが含まれています。
What's the deal with SvelteKit?という記事では、Svelte Summit 2020で発表があったSvelteKitについて書かれています。
Svelte上に作られているNext.jsライクなSapperがSvelte自体に統合されSvelteKitとなる予定について書かれています。
RollupとSnowpackを使ったモジュール単位のビルド方式となり、Adaptorによって各種プラットフォームに対応した形でアプリを生成できる用になる予定となっています。
現時点では開発中であるためリポジトリはオープンになっていませんが、今後公開する予定とのことです。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Announcing TypeScript 4.1 RC | TypeScript
devblogs.microsoft.com/typescript/announcing-typescript-4-1-rc/
TypeScript 4.1 RCリリース。
Template Literal Types、Mapped TypesでKeyのRemappingをサポート、再帰的なConditional Typesのサポート。 インデックスアクセス時にundefined
となる可能性を考慮するnoUncheckedIndexedAccess
オプションの追加。
baseUrl
なしでpaths
オプションが利用可能に、checkJs
は暗黙的にallowJs
を有効化するように、新しいJSXの変換に対応。
破棄的な変更としてPromise
のresolve
の引数がオプショナルではなくなるなど
Release 3.7.0 - 2020.11.06 · zloirock/core-js
github.com/zloirock/core-js/releases/tag/v3.7.0
core-js 3.7.0リリース。
ECMAScript/Proposalの仕様に準拠した変更、Node.jsでのqueueMicroTask
の実行順序の問題を修正、一部環境でのバグを修正など
Node v15.1.0 (Current) | Node.js
nodejs.org/en/blog/release/v15.1.0/
Node v15.1.0リリース。
診断ツール向けのdiagnostics_channel
モジュールを実験的に追加、spawn
イベントの追加。
dns
モジュールにsetLocalAddress
の追加v8
モジュールにtakeCoverage
とstopCoverage
の追加など
Release 3.0.0 · socketio/socket.io-client
github.com/socketio/socket.io-client/releases/tag/3.0.0
Socket.IO 3.0リリース。
maxHttpBufferSize
が100MBから1MBに変更、CORSの設定方法の変更、Cookieをデフォルトでは使わないように、APIの変更など。
またコードベースをTypeScriptで書き直し、onAny
/offAny
の追加、socket.io-msgpack-parserを同梱など
アーティクル
Tracing TypeScript Compiler. はじめに | by Yosuke Kurami | Oct, 2020 | Medium
quramy.medium.com/tracing-typescript-compiler-4dcb96ab54e1
TypeScriptのコンパイルパフォーマンスの調査方法について。
4.1で追加される--generateTrace
を使ったプロファイルデータの読み方について
What's the deal with SvelteKit?
svelte.dev/blog/whats-the-deal-with-sveltekit
Svelte上に作られているNext.jsライクなSapperがSvelte自体に統合されSvelteKitとなる予定について。
RollupとSnowpackを使ったモジュール単位のビルド方式となり、Adaptorによって各種プラットフォームに対応した形でアプリを生成できる用になる予定との話。
Building a type checked url router from scratch
ja.nsommer.dk/articles/type-checked-url-router.html
TypeScript 4.1で実装されるTemplate Typeを使って、文字列でのルーティングに対して型をつける方法を見ていく記事
Top problems I got switching to Vue 3 – Ghiura Alexandru
ghalex.com/2020/11/03/top-problems-i-got-switching-from-vue-2-to-3/
Vue 2からVue 3への移行でのハマりどころについての記事。
v-model
のデフォルトプロパティ名の変更、フィルターの廃止、Vue.useを使っている外部コンポーネントがある問題について
Code-splitting and minimal edge latency: the perfect match | Fastly
www.fastly.com/blog/code-splitting-and-minimal-edge-latency-the-perfect-match
create-react-appで作られたエディタアプリのパフォーマンス改善について。
コードエディタにmonaco-editorを使いメインのJSが大きくなっているため、chunkに分離する話。
またchunkのようなscriptに対してはprefetch
やpreload
は逆効果になる場合もある問題やread-onlyの場合でもmonaco-editorを読み込んでいる問題について。
read-onlyの場合はPrismJSを使ってシンタックスハイライトだけのコンポーネントにすることでサイズを小さくする話
ソフトウェア、ツール、ライブラリ関係
krzkaczor/ts-essentials: All basic TypeScript types in one place 🤙
github.com/krzkaczor/ts-essentials
TypeScriptの型ユーティリティライブラリ。
sql-js/sql.js: A javascript library to run SQLite on the web.
SQLiteをWebAssemblyにコンパイルしてJavaScriptで動かすライブラリ。
既存のsqliteファイルをimport/exportできる。
mattpocock/sextant: A development tool to chart application flows, then implement them in code
シーケンス図のGUIエディタでデータフローとGraphQLのPayloadを入力し、対応するTypeScriptの型を生成するツール。
gajus/http-terminator: Gracefully terminates HTTP(S) server.
github.com/gajus/http-terminator
expressなどのNode.jsのhttp.Server
の実装に対してgraceful shutdownを行うライブラリ
書籍関係
Distributed Systems with Node.js - Thomas Hunter II
thomashunter.name/distributed-systems-with-nodejs
2020年11月4日発売
Node.jsアプリケーションでの分散システムについて。
Node.jsで書いたアプリケーションのでのobservable, scalable, resilientについて書かれている
Lets start TypeScript ~Vue3 + Express で TypeScript 入門してみよう~
zenn.dev/is_ryo/books/10ef5a30196e16110bc1
Express + PostgresSQL + Vue + TypeScriptでTodoアプリを作るチュートリアル