Fork me on GitHub

2020-02-25のJS: TypeScript 3.8 正式リリース、ESLint 7.0.0の変更予定

Edit on GitHub 編集履歴を見る

JSer.info #476 - TypeScript 3.8が正式にリリースされました。

型定義だけをインポート/エクスポートできるimport type/export typeの追加、ECMASCript Proposal Stage 3のECMAScript Private FieldsTop-Level awaitのサポートが追加されています。

また、tsconfig.jsontargetmoduleオプションにes2020を追加、watchOptions--watch時の挙動の設定の追加、assumeChangesOnlyAffectDirectDependenciesオプションで"Fast and Loose"なインクリメンタルビルドをサポートしています。


現在v7.0.0-alpha.1が公開されているESLint 7の変更予定がまとめられたドキュメントが公開されています。

このドキュメントでは主に破壊的な変更についてまとめられています。

Node.js 8.xのサポートを終了し、CLIEngineクラスは非推奨となり新しくESLintクラスが導入される予定です。
ESLintクラスについては次のRFCにまとめられていますが、既存のCLIEngineクラスは同期処理だったのに対してESLintクラスは非同期処理に対応するものとなります。

また、ESLint本体に含まれていたNode.jsやCommonJS関係のルールはeslint-plugin-nodeに移行される予定です。
その他には、directive commentsにコメントを書けるように、ホームディレクトリにある~/.eslintrcの利用に警告がでるように、デフォルトのignore patternsの更新などが含まれる予定です。


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

JSer.info Sponsors

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


ヘッドライン


Announcing TypeScript 3.8 | TypeScript

devblogs.microsoft.com/typescript/announcing-typescript-3-8/

TypeScript ReleaseNote

TypeScript 3.8リリース。
import type/export typeの追加、Stage 3のES Private Fields、Top-Level awaitのサポート。
targetmoduleオプションにes2020を追加、watchOptions--watch時の挙動を設定できるようになるなど


Node v13.9.0 (Current) | Node.js

nodejs.org/en/blog/release/v13.9.0/

node ReleaseNote

Node v13.9.0リリース。
async_hooksモジュールにexecutionAsyncResourceを追加、cryptoモジュールにdiffieHellmanを追加。
Diagnostic Reportがworker_thredsをサポート


Release Initial Release: 1.0.0 · reduxjs/cra-template-redux

github.com/reduxjs/cra-template-redux/releases/tag/v1.0.0

React redux Tools

create-react-app向けのReduxテンプレート。
npx create-react-app my-app --template redux でセットアップできる。
Redux Toolkitを利用している


Release 3.4.0 · avajs/ava

github.com/avajs/ava/releases/tag/v3.4.0

JavaScript testing ReleaseNote

AVA 3.4.0リリース。
テストを失敗させずにAssertionを試せるt.try()のサポートなど


アーティクル


Understanding the “Initial”, “Inherit” and “Unset” CSS Keywords

medium.com/@elad/understanding-the-initial-inherit-and-unset-css-keywords-2d70b7121695

CSS article

CSSのinitialinheritunsetrevertについて。
CSS プロパティの初期値の違いやそれぞれの意味について


The Circuit Breaker Pattern

blog.bearer.sh/circuit-breaker-design-pattern/

node article

Node.jsでCircuit Breakerパターンをしながら学んでいくチュートリアル


仮想DOMは本当に“速い”のか? DOM操作の新しい考え方を、フレームワークを実装して理解しよう - エンジニアHub|若手Webエンジニアのキャリアを考える!

employment.en-japan.com/engineerhub/entry/2020/02/18/103000

VirtualDOM article

Virtual DOMとは何かやどのように実装されているかについて。
なぜVirtual DOMではレンダリングが遅くなりにくいかについて


Aborting a fetch request

meetguns.com/blog/aborting-a-fetch-request/

JavaScript Fetch article

AbortControllerを使ってFetchのキャンセルを行う方法について


Angular 9: What’s New?

auth0.com/blog/angular-9-whats-new/

Angular article

Angular 9の変更点についての解説


What's coming in ESLint v7.0.0 - ESLint - Pluggable JavaScript linter

eslint.org/blog/2020/02/whats-coming-in-eslint-7.0.0

ESLint article

ESLint 7.0.0での変更予定について。
CLIEngineクラスは非推奨となり新しくESLintクラスが導入される、Node.jsやCommonJS関係のルールはeslint-plugin-nodeに移行される。
directive commentsにコメントを書けるように、~/.eslintrcの利用に警告がでるように、デフォルトのignore patternsの更新など


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


benawad/destiny: Prettier for File Structures

github.com/benawad/destiny

JavaScript Tools React

プロジェクトのファイル構造をコンポーネントごとに分けるように編集するツール


suchipi/hex-engine: A modern 2D game engine for the browser.

github.com/suchipi/hex-engine

canvas game library JavaScript

Canvasを使った2Dゲームエンジンライブラリ。ReactインスパイアなAPIを持つ。
音声同期、スプライトシートやアニメーション、物理エンジンなどのサポート。
またAseprite、Tiled、BMFontなどのオーサリングツールもサポートしている。


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