Fork me on GitHub

2020-03-02のJS: React v16.13.0、Rome(JavaScript Tool Chain)、Ember Octane

Edit on GitHub 編集履歴を見る

JSer.info #477 - React 16.13.0がリリースされました。

setStatestyleでの不適切な使い方や廃止予定のref属性に関する警告の追加、
React.createFactoryReactDOM.unstable_createPortalが非推奨になっています。

また、hydrationに関する警告にコンポーネントスタックを表示するようになるといった改善が行われています。


JavaScriptのCompiler,Bundler,Formatter,Linter(実装中),Test Frameworkなどを包含するツールキットであるRomeがExperimentalで公開されました。

RomeはBabelやYarnを作った@sebmckが中心となって作られているプロジェクトで、作っている理由についてなどは以前Podcastで話されています。

Romeのアーキテクチャについては次の記事を読むと良いかもしれません。

現在実装中のLinterが完成したらPublic Releaseを行うようです。


Ember 3.15でOctane EditionがEmberのデフォルトとなりました。
それに関連したEmber Octaneに関する記事がいくつか公開されています。

Ember OctaneではGlimmer ComponentやAutotrackingと呼ばれる新しいReactiveなモデルが導入されています。
これらの記事では、Ember Octaneを使ったアプリの開発やAutotrackingの仕組みについての解説がされています。


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

JSer.info Sponsors

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


ヘッドライン


React v16.13.0 – React Blog

reactjs.org/blog/2020/02/26/react-v16.13.0.html

React ReleaseNote

React 16.13.0リリース。
不適切な使い方に対する警告の追加、React.createFactoryReactDOM.unstable_createPortalを非推奨化。
hydrationに関する警告にコンポーネントスタックを表示するようになるなど


Announcing Scala.js 1.0.0 - Scala.js

www.scala-js.org/news/2020/02/25/announcing-scalajs-1.0.0/

scala JavaScript ReleaseNote

Scala.js 1.0.0リリース。
0.6.xから変更点やマイグレーション方法について


アーティクル


Understanding the ECMAScript spec, part 1 · V8

v8.dev/blog/understanding-ecmascript-part-1

ECMAScript spec article

ECMAScript仕様で使われる構文などの読み方について。
[[Expression]]のInternal Slot、Internal Method、Completion records、? 構文について


Getting Started with Ember Octane: Building a Blog - Ember Igniter

emberigniter.com/getting-started-ember-octane-tutorial/

JavaScript article tutorial

Ember Octaneを使ってブログを作るチュートリアル。
Ember 3.15で導入されたEmber Octaneを使ってEmberがどのように動いているかを学びながらブログを作るチュートリアル記事


How Autotracking Works

www.pzuraq.com/how-autotracking-works/

Ember JavaScript article

Ember OctaneのAutotrackingがどのように動いているかの解説記事。


swyx Writing | Metrics, Logs, and Traces in JavaScript Tools

www.swyx.io/writing/js-tools-metrics-logs-traces/

JavaScript performance article

JavaScript/Node.jsでのビルドやパッケージなどのメトリクス、ログ、スタックトレースなどのデータのとり方やライブラリなどについての紹介記事


Rome, a new JavaScript Toolchain

jasonformat.com/rome-javascript-toolchain/

JavaScript article bundler

Romeのアーキテクチャについて。
Rome自体がmonorepoでcompilerからbundlerまで含むため、重たいASTの処理のコストを軽減できる。
またコンパイルもモジュールごとにWorkerで実行していて、bundlerは単一スコープが問題となるが、コンパイル結果にファイル名を入れることで回避している仕組みについてなど


Source maps in Node.js - Node.js - Medium

medium.com/@nodejs/source-maps-in-node-js-482872b56116

node.js sourcemap article

Node.js 12.12.0からフラグ付きで実装されたSource Map対応について。


ブラウザとnode.jsに両対応したライブラリを作りたいときのWebpackレシピ集 - Qiita

qiita.com/riversun/items/1da0c0668d0dccdc0460

JavaScript webpack article

ライブラリをwebpackでbundleしてscriptタグで読み込める形式にして配布する際のoutput設定のパターンについて。


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


www.cookiestatus.com/

browser privacy

ブラウザごとのトラッキング対策、Cookieの1st party/3rd partyに対する取り組みなどをまとめているサイト


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


cliqz.com/

browser privacy Firefox

Privacyを重視したウェブブラウザ/検索エンジン。
Firefoxの拡張から始まったブラウザでFirefoxをForkしたものを使っている
https://0x65.dev/blog/2019-12-17/why-we-forked-firefox-and-not-chromium.html


Akryum/guijs: 🐣️ The app that makes your #devlife easier.

github.com/Akryum/guijs

node GUI

JavaScriptプロジェクト向けのGUIアプリ


edtr-io/edtr-io: Edtr.io is an open source WYSIWYG in-line web editor written in React. Its plugin architecture makes Edtr.io lean and extensive at the same time.

github.com/edtr-io/edtr-io

JavaScript library React

ReactベースのWYSIWYGエディタ。


jaredpalmer/tsdx: Zero-config CLI for TypeScript package development

github.com/jaredpalmer/tsdx

TypeScript JavaScript npm Tools

TypeScriptでnpmパッケージを開発する向けのツールキット。
Build、Test、Lintや最適化周りの設定などがビルトインされている。


facebookexperimental/rome: An experimental JavaScript toolchain

github.com/facebookexperimental/rome

JavaScript Tools

外部依存のないJavaScript compiler、bundler、Linter、Formatter、開発サーバなどを含むツールキット。
BabelとYarnを作ったsebmck製。


petersalomonsen/wasm-git: GIT for nodejs and the browser using https://libgit2.org compiled to WebAssembly with https://emscripten.org

github.com/petersalomonsen/wasm-git

git WebAssembly library

libgitをEmscriptenでWebAssemblyにコンパイルしたライブラリ。
ブラウザとNode.jsで動作する


TomPrograms/stormdb: 🌩️ StormDB is a tiny, lightweight, 0 dependency, easy-to-use JSON-based database for NodeJS, the browser or Electron.

github.com/tomprograms/stormdb

JavaScript node library CoreData JSON

ブラウザ、Node.jsで動作するJSONデータベースライブラリ。


JasonEtco/actions-toolkit: 🛠 A toolkit for building GitHub Actions in Node.js

github.com/JasonEtco/actions-toolkit

JavaScript library Github Actions

GitHub Actionsを書くための処理を集めたJavaScriptライブラリ、ツールキット。


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