Fork me on GitHub

2020-05-12のJS: ESLint v7.0.0、Next.js 9.4、npm 7の変更予定

Edit on GitHub 編集履歴を見る

JSer.info #487 - ESLint 7.0.0がリリースされました。

メジャーアップデートであるため、ビルトインルールの変更が含まれています。
eslint:recommendedのルールを更新、いくつかのビルトインルールのデフォルトオプションの変更、Node.js関係のビルトインルールをeslint-plugin-nodeへ移行などが行われています。

また、.eslint.jsをデフォルトでignoreしないように変更、--config--ignore-pathオプションでのパスの扱いの変更、プラグインの読み込み元ディレクトリが.eslintrc.*を基準とする変更なども含まれています。

その他には、/* eslint-disable -- コメントの説明 */のようにコメントディレクティブに説明が書けるようになり、
非同期処理に対応するESLintクラスの追加なども行われています。

ESLint 6.xからのマイグレーション方法については次のページにまとめられています。


Next.js 9.4がリリースされました。

Fast Refreshをデフォルトで有効化、stale-while-revalidateライクな Incremental Static Regenerationをベータとしてサポートが追加されています。

また、.envで定義した環境変数をブラウザ向けのビルドからNEXT_PUBLIC_のprefix付きで参照できるようになり、
ブラウザだけだったfetchのpolyfillをNode.js側にも導入、Web Vitalsを取得するreportWebVitalsのサポート、モジュールを絶対パスで解決するAliasesのサポートなどが追加されています。


The npm Blog — npm v7 Series - Introductionという記事では、npm 7の変更予定などが公開されています。

arboristという新しいnode_modules依存ツリー解決の仕組みが導入されます。

また、peerDependenciesの自動インストールをするようになり、acceptDependenciesのサポート。
またpackage-lock.jsonの形式変更とyarn.lockに関する処理の追加。workspaces機能(yarn workspaces相当)、overrides機能(yarnのresolusions相当)の追加、段階的な公開を行う--stageオプションの追加などが予定されています。


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

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


V8 release v8.3 · V8

v8.dev/blog/v8-release-83

V8 ReleaseNote

V8 8.3リリース。
ArrayBufferのGC改善、 WebAssemblyで最大4GBのメモリを利用できるように、TypedArrayにおけるprototypeチェーンのバグを修正など


ESLint v7.0.0 released - ESLint - Pluggable JavaScript linter

eslint.org/blog/2020/05/eslint-v7.0.0-released

ESLint ReleaseNote

ESLint 7.0.0リリース。
破壊的な変更としてNode.js 8以下のサポート終了、eslint:recommendedの更新、ルールの更新、デフォルトの無視ファイルの変更など。
非同期処理に対応したESLintクラスの追加、ディレクティブコメントに説明が書けるようになるなど


Node v14.2.0 (Current) | Node.js

nodejs.org/en/blog/release/v14.2.0/

node.js ReleaseNote

Node v14.2.0リリース。
Node内部メソッドのcommon.mustCall()assert.CallTrackerとして試験的に利用できるように。
WorkerにstackSizeMbオプションの追加など


Blog - Next.js 9.4 | Next.js

nextjs.org/blog/next-9-4

React ReleaseNote library

Next.js 9.4リリース。
Fast Refreshをデフォルトで有効化、stale-while-revalidateライクな Incremental Static Regenerationをベータサポート。
Node.js側にもfetchを自動的にpolfyill、reportWebVitalsのサポート、モジュールを絶対パスで解決するAliasesのサポートなど


shqld/tish: A typescript utils for shell operations. Totally Promise, Multi-platform, Optimized, Lazy✌️

github.com/shqld/tish

JavaScript TypeScript ShellScript library

シェルスクリプトのような処理をTypeScriptで書けるutilライブラリ。
コマンドの実行やパイプ処理などを扱う


アーティクル


Rebuilding our tech stack for a new Facebook.com - Facebook Engineering

engineering.fb.com/web/facebook-redesign/

facebook React CSS performance article

Facebook.com のリデザインにおけるパフォーマンス改善について。
AtomicなCSSを生成して初期ロードに必要なCSSの削減、remを使ったフォントサイズコントール。
SVGをReactコンポーネントとしてロード、Dynamic Importを使ったコンポーネントの動的ロード、JavaScript Budgetの導入、GraphQLを使ったラウンドトリップの削減など


The npm Blog — npm v7 Series - Introduction

blog.npmjs.org/post/617484925547986944/npm-v7-series-introduction

npm article

npm 7のロードマップについて。
arboristを使った依存関係の分析の刷新、peerDependenciesの自動インストール、acceptDependenciesのサポート。
またpackage-lock.jsonの形式変更とyarn.lockに関する処理の追加。workspaces機能(yarn workspaces相当)、overrides機能(yarnのresolusions相当)の追加、段階的な公開を行う--stageオプションの追加など


An in-depth guide to performance optimization with webpack - LogRocket Blog

blog.logrocket.com/guide-performance-optimization-webpack/

webpack performance article

webpackでのbundleサイズの分析、改善方法についてのチュートリアル。
エントリポイントの分離、サードパーティライブラリの分離、chunkのグループ化、ルーティングごとのcode splitting、runtimeChunkでのmanifestファイルの統一。
externalsでのCDNの利用、Tree ShakingでDead Code削除、Performance Budgetの設定などをステップごとに見ていく記事


Using Buffers in Node.js | DigitalOcean

www.digitalocean.com/community/tutorials/using-buffers-in-node-js

node.js article

Node.jsのBufferの基本的な使い方についての解説記事


Comparing Ember Octane and React

www.pzuraq.com/comparing-ember-octane-and-react/

Ember React article

Ember OctaneとReactを比較した記事。
それぞれのフレームワークで同じコードを書くとどのような違いがあるかやそれぞれの仕組みについて


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


Deno Weekly

denoweekly.com/

mail deno

Denoに関する週刊のメールマガジン


ソフトウェア、ツール、ライブラリ関係


sindresorhus/slugify: Slugify a string

github.com/sindresorhus/slugify

JavaScript node.js library

文字列からURLやファイル名などに使えるslug文字列を作成するライブラリ


nikersify/pico: Take browser screenshots in Javascript 📸

github.com/nikersify/pico

JavaScript SVG library

SVGの<foreignObject>を使ってHTMLのスクリーンショットを作成するライブラリ


書籍関係


Distributed Node.js - O'Reilly Media

shop.oreilly.com/product/0636920342762.do

node.js book

Node.jsでのスケーラブルなバックエンドサービス開発についての書籍


React: Up & Running, 2nd Edition - O'Reilly Media

shop.oreilly.com/product/0636920252696.do

React book

Reactの入門書の第2版


詳解HTTP/2(BarryPollard 北原憲 一ノ瀬太樹 洲崎俊 北原憲 一ノ瀬太樹 洲崎俊 新井悠 国分裕 長谷川陽介)|翔泳社の本

www.shoeisha.co.jp/book/detail/9784798163789

HTTP2 book 翻訳

2020年06月15日発売
HTTP/2 in Actionの翻訳本


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