Fork me on GitHub

2019-07-04のJS: npm 6.9.2、ECMAScript 2019リリース、Dark Mode

Edit on GitHub 編集履歴を見る

JSer.info #442 - しばらくbetaのままリリースが止まっていたnpm 6.9.1がリリースされました。

npm token createnpm --global outdatedのバグが修正されています。
また、6.9.1には問題があったため、6.9.2もリリースされています。

6.9.xには、mainフィールドのファイル名が一致した.gitにあるファイルもnpm publishで含まれてしまう問題がありますが、これは6.10.0で修正されるようです。


Ecma latest newsによると、
"ECMA-262 10th edition - ECMAScript® 2019 Language Specification"(ES2019)がEcmaの総会で承認され正式リリースとなりました。

このES2019はスナップショット的な仕様で、最新の仕様はGitHubで公開/更新されています。


Hello Darkness, My Old Friend  |  web.devという記事ではDark Modeとはなにかやどのような利点があるのかについて書かれています。

Dark Modeのアクセシビリティツールとしての効果、バッテリー消費との関係についての紹介。
また、各OSでのDark Modeの設定方法、ウェブサイドでDark Modeに対応した実装をどのように行うかについてかかれています。
Media Queryを使った判定やprefers-color-schemeでのDark Mode対応、Dark Modeに合わせた画像の最適化についてなどを紹介しています。


ヘッドライン


Release: npm@6.9.1 - 📣 announcements - npm forum

npm.community/t/release-npm-6-9-1/8435

npm ReleaseNote

npm 6.9.1リリース。
npm token createのバグ修正、npm --global outdatedが動かない問題の修正など

6.9.1には問題があったため、npm@6.9.2もリリースされている。


Node v12.5.0 (Current) | Node.js

nodejs.org/en/blog/release/v12.5.0/

node.js ReleaseNote

Node.js 12.5.0リリース。
V8スナップショットをデフォルトで有効化し起動時間の削減、V8とOpenSSLのアップデート、worker.terminate()がPromiseを返すように変更など


Release Notes for Safari Technology Preview 86 | WebKit

webkit.org/blog/9375/release-notes-for-safari-technology-preview-86/

safari ReleaseNote

Safari Technology Preview 86リリース。
String.prototype.matchAllのサポート、CSSのtab-sizeプロパティのサポート、Web Shading Language(WHLSL)の試験的実装など


Yarn support for security alerts - The GitHub Blog

github.blog/2019-07-02-yarn-support-for-security-alerts/

Github security news yarn

GitHub Security Alertがyarn.lockをサポート


Ecma latest news

www.ecma-international.org/news/index.html

ECMAScript news

ECMAScript 2019リリース。
ECMAScript 2019がEcma総会で承認された。


アーティクル


The Secret of Good Electron Apps

jlongster.com/secret-of-good-electron-apps

Electron article debug

Electronアプリのパターンについての記事。
メモリの消費を抑えるために、バックグラウンドサーバを作り必要なデータを都度読み込んで返すようにする。
また開発時はバックグラウンドサーバの代わりに別のウィンドウを使うことでデバッグがしやすくなることについてなど


The Layout Instability API  |  web.dev

web.dev/layout-instability-api

Chrome WebPlatformAPI article

Chrome 74で試験的に実装されているレイアウトの意図しない変化を監視するLayout Instability APIについて。
ロード後に非同期なタイミングで要素の位置が変化するといった現象を検知できるAPI


Hello Darkness, My Old Friend  |  web.dev

web.dev/prefers-color-scheme

Chrome browser article

Dark Modeについての記事。
アクセシビリティツールとしての効果、バッテリー消費を削減する事があることについて。
またOSでのDark Modeの設定方法、ウェブサイド側のMedia Queryを使った判定やprefers-color-schemeでのDark Mode対応についてなど


Object.fromEntries · V8

v8.dev/features/object-fromentries

ECMAScript article JavaScript

ES2019で入ったObject.fromEntriesについての解説。
IterableからObjectを作成して返すAPI。
MapとObject間のやり取りに利用できる


The cost of JavaScript in 2019 · V8

v8.dev/blog/cost-of-javascript-2019

JavaScript article performance

V8におけるJavaScriptのパースコストについての記事。
Main ThreadとWorker Thread、JSONのパースコストについてなど


Reinventing Firefox for Android: a Preview - Future Releases

blog.mozilla.org/futurereleases/2019/06/27/reinventing-firefox-for-android-a-preview/

Firefox Android article

GeckoViewを搭載したAndroid向けのFirefox Previewが公開された。
Firefox for Androidに比べてパフォーマンスの改善、Tracking Protectionがデフォルトで有効といった違いがある。


スライド、動画関係


Analysis of an Exploited NPM Package || Jarrod Overson - YouTube

www.youtube.com/watch?v=2cyib2MgvdM

npm node.js video

event-stream@3.3.6flatmap-streamなどnpmパッケージに悪意あるコードが含まれていた事件についての解説をしてる発表動画。
どのような攻撃コードが含まれていたのかや時系列、影響範囲などについて


AbemaTVにおけるCSS is too fragile問題に対する解 / Solution of "CSS is too fragile" by AbemaTV - Speaker Deck

speakerdeck.com/kubosho/solution-of-css-is-too-fragile-by-abematv

CSS slide

CSS Modulesにおいてディレクトリ変更で問題が発生したケースについてのスライド。
読み込み順を明示的定義する方法に変更することで、読み込み順によってスタイルが変わってしまう問題を解決する話


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


mixer/webpack-bundle-compare: A tool for comparing webpack bundle stats

github.com/mixer/webpack-bundle-compare

webpack Tools

webpackのbundleファイルを分析するツール。
webpack pluginとしてstatsファイルを出力し、それを読みんで分析結果を表示するDashboardツール


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


adobe/ferrum: Features from the rust language in javascript: Provides Traits/Type classes & an advanced library for working with sequences/iterators in js

github.com/adobe/ferrum

JavaScript library Rust

オブジェクトのIteratate、
SymbolをつかったRustインスパイアなTraits/Typeclassesなどを提供するライブラリ


この記事へ修正リクエストをする
記事を紹介する