JSer.info #530 - Gatsby v3がリリースされました。
- Gatsby v3 Incremental Builds in OSS, new Gatsby Image, and more | Gatsby
- Gatsby v3.0 (March 2021 #1)
ローカルでは実際にアクセスされたページだけをビルドすることで、全体を再構築せずにビルドする挙動がデフォルトとなっています。これによって必要なページだけをビルドするため、開発時のビルド待ち時間を少なくしています。
破壊的変更としてNode.js 12未満のサポート終了、React 17/webpack 5/ESLint 7へアップデート、globalのgraphql
ではなくimportして使うように変更、APIの変更などが含まれています。
マイグレーション方法については、次のドキュメントに丁寧な解説が書かれています。
Electron 12.0.0がリリースされました。
Chromium 89、V8 8.9、Node.js 14.16(12.xからの更新)へアップデートされています。
exposeInMainWorld
がオブジェクト以外をサポート、webFrameMain
APIの追加など含まれています。
Electron 12.0.0ではcontextIsolation
とworldSafeExecuteJavaScript
がデフォルトでtrue
に変更されています。
Context Isolationはpreload
のスクリプトとwebContents
のスクリプトの実行コンテキスト分離することで、XSSなどの被害の範囲を軽減する仕組みです。
- Electron: Context Isolationの欠如を利用した任意コード実行 / Electron: Abusing the lack of context isolation - CureCon(ja) - Speaker Deck
- Electron(v.12.0.0 現在)の IPC 通信入門 - よりセキュアな方法への変遷 - Qiita
また、段階的に廃止されているremote
モジュールが非推奨となり、@electron/remoteという外部モジュールへと移行されています。
ブラウザのライフサイクルが変化してきているのでいくつかのニュースをまとめて紹介します。
現在6週間ごとにリリースされているChromeですが、Q3 of 2021のChrome 94からはリリースサイクルを4週間ごとに短縮することを発表しました。
Microsoft Edge Legacyの廃止スケジュールが公開されています。
Microsoft Edge Legacyは2021年3月9日でサポート終了されます。また、2021年4月13に配信されるセキュリティアップデートで削除され、同時に新しいChromiumベースのMSEdgeがインストールされます。(置き換わる)
Internet Explorer(IE)の廃止はEdgeとは異なるライフサイクルであるためまだまだ先ですが、
IEでアクセスしたときにMSEdgeへリダイレクトする互換リストによって移行が進められています。
このNeedEdgeの互換リストに記載されたサイトへIEで訪問すると、MSEdgeで開き直すように促すリダイレクトポップアップが表示されるようになります。
この互換リストに追加されているサイトは徐々に増えてきています。
これとは、別にIEのサポート終了を宣言しているサイトについては次のドキュメントにまとめられています。
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
Gatsby v3 Incremental Builds in OSS, new Gatsby Image, and more | Gatsby
www.gatsbyjs.com/blog/gatsby-v3/
Gatsby 3.0リリース。
破壊的変更としてNode.js 12未満のサポート終了、webpack 5/ESLint 7へアップデート、globalのgraphql
ではなくimportして使うように変更、APIの変更など。
ローカルでは実際にアクセスされたページだけをビルドすることで、全体を再構築せずにビルドできるように
jQuery 3.6.0 Released! | Official jQuery Blog
blog.jquery.com/2021/03/02/jquery-3-6-0-released/
jQuery 3.6.0リリース。
JSONPのリクエスト時に、エラーレスポンスがJSONを返した場合の挙動を変更。
.focus()
のバグを修正など
Deno 1.8 Release Notes
Deno 1.8.0リリース。
試験的にWebGPU APIのサポート。
ICUに対応しECMA i18n APIであるIntl
オブジェクトなどのサポート。DENO_AUTH_TOKENS
でモジュールを取得する際の認証トークンをサポート、Exit sanitierをDeno.test
に追加、deno fmt
がJSONをサポート、TypeScript 4.2へアップデート。
Import Map、Deno.permissions
、Deno.link
、Deno.symlink
APIがそれぞれStable APIとなった。
New Microsoft Edge to replace Microsoft Edge Legacy with April’s Windows 10 Update Tuesday release - Microsoft Tech Community
Microsoft Edge Legacyは2021年3月9日でサポート終了される。
また、2021年4月13に削除されるセキュリティアップデートが配信され、同時に新しいChromiumベースのMSEdgeがインストールされる。
Chromium Blog: Speeding up Chrome's release cycle
blog.chromium.org/2021/03/speeding-up-release-cycle.html
Chromeのリリースサイクルが6週間ごとから4週間ごとに短縮される。
Announcing the New TypeScript Handbook | TypeScript
devblogs.microsoft.com/typescript/announcing-the-new-typescript-handbook/
TypeScript Handbookが刷新された。
Electron 12.0.0 | Electron Blog
www.electronjs.org/blog/electron-12-0
Electron 12.0.0リリース。
Chromium 89、V8 8.9、Node.js 14.16へアップデート。
exposeInMainWorld
がオブジェクト以外をサポート、webFrameMain
APIの追加など。
contextIsolation
とworldSafeExecuteJavaScript
がデフォルトでtrue
に変更、remote
モジュールが非推奨となり@electron/remote
外部モジュール化
Release v6.0.0 · pixijs/pixi.js
github.com/pixijs/pixi.js/releases/tag/v6.0.0
pixi.js 6.0.0リリース。
TypeScriptの型改善、DeprecatedとなっていたAPIの削除、alpha
オプションのデフォルト値をtrue
に変更、FAIL_IF_MAJOR_PERFORMANCE_CAVEAT
のデフォルト値をfalse
に変更など
Google Developers Blog: Announcing Flutter 2
developers.googleblog.com/2021/03/announcing-flutter-2.html
Flutter 2リリース。
WebサポートとデスクトップサポートがStableとなり、Dart 2.12をサポート。
iOSでAutocompleteとScaffoldMessengerのサポートなど
- Dart 2.12
- Flutter web support hits the stable milestone | Flutter
- What’s New in Flutter 2. by Chris Sells | Mar, 2021 | Medium | Flutter | Flutter
アーティクル
Mini apps - web.dev
Mini appsのエコシステムの記事
Hiding Content Responsibly | Kitty Giraudel
kittygiraudel.com/2021/02/17/hiding-content-responsibly/
コンテンツの非表示を意味するCSSやWAI-ARIA属性のそれぞれの動作とアクセシビリティ的な挙動についてのまとめ。
データ、ビジュアル、レイアウト、セマンティクス、コンテンツ、キーボード、ポインター、スタイルなどの状態について
ソフトウェア、ツール、ライブラリ関係
serverless-stack/serverless-stack: Serverless Stack (SST) is a framework that makes it easy to build serverless apps.
github.com/serverless-stack/serverless-stack
AWS CDKを使ったserverless管理、開発ツール。
Lambdaの開発、デプロイ、ビルドやLintの設定、各種AWSスタックとの連携などを含む
NightlyCommit/twing: First-class Twig engine for Node.js
github.com/NightlyCommit/twing
テンプレートエンジンであるTwigのJavaScript実装ライブラリ
JakePartusch/serverlessui: A command-line utility for deploying serverless applications to AWS. Complete with custom domains, deploy previews, TypeScript support, and more.
github.com/JakePartusch/serverlessui
AWSへserverlessアプリケーションをデプロイするためのツール。
CDKを使って静的なサイトとlambdaなどのデプロイを一括で行う
nanojsx/nano: 🎯 SSR first, lightweight 1kB JSX library.
JSXを使ったSSR firstなUIライブラリ。
指定したコンポーネントのみをHydrate、Lazy Hydrateができ、ビルトインでRouterやHead周りのコンポーネントを持っている。
ReactライクなライフサイクルメソッドやHooksの処理を持っている。