JSer.info #364 - The npm Blog — New Package Moniker rulesという記事では、npmが受け付けるパッケージ名のルールが変更されたことについて書かれています。
今までは、パッケージ名の.
, _
, -
の違いを区別し、別のパッケージであるものとして受け付けていました。
しかし、これからは.
, _
, -
は含められますが、それらの違いを区別しなくなりました
たとえば、react-native
というパッケージが公開されている場合に、次のような名前のパッケージは公開(publish)できなくなります。
reactnative
react_native
react.native
この変更によりパッケージ名に使える名前は減りますが、代わりに現在はScoped module(@user/package
)として名前空間を分けることができます。そのためScoped moduleを使ってパッケージを公開するで、引き続き一意な名前で公開できます。
gulp 4.0.0がプレリリースされています。
次のように@next
を指定することでインストールできます。
npm install gulp@next
gulp.reset
の削除、gulp.task
の引数の変更。
gulp.series
とgulp.parallel
、gulp.tree
、gulp.registry
の追加。
今までは、gulp.task
の第二引数で依存のTaskを定義していました。
gulp.task('default', ['del'], function() {
// default task code here
});
gulp 4.0.0からは、gulp.series
などを使い依存を含めたTaskを定義します。
gulp.task('default', gulp.series('del', function() {
// default task code here
}));
詳しくはドキュメントが公開されています。
現在このドキュメントの更新なども行われていて、gulp 4の正式リリースはこのドキュメントの修正やマイグレーションガイドなどが用意できたら行うようです。
Nearing the 7.0 Release · Babelという記事ではリリースが近づいてきているBabel 7の変更点について書かれています。
Babelプラグインの最新のECMAScript仕様への追従や@babel/*
へのScoped moduleへの変更、ECMAScript Proposalに関するパッケージ名のルール変更などについて書かれています。
また、前回のPlanning for 7.0 · Babelから変更点についても書かれています。
当初はDeprecate env option in .babelrcのようにenv
オプションを非推奨とする予定でしたが、この変更は撤回されています。
併せて、今まではclass MyArray extends Array{}
のようなビルトインオブジェクトの継承は動かない変換が行われていましたが、Add support for extending builtinsによってサポートされるようになります。
- Chapter 28. Subclassing Built-ins
- ES5ではビルトインオブジェクトの継承について書かれている
JSer.infoをサポートするには
- 😘 知り合いにJSer.infoをおすすめする
- ❤️ GitHub Sponsorsで@azuのスポンサーになる
- 🐦 X(Twitter)で@jser_infoをフォローする
JSer.info Sponsors
JSer.info SponsorsはGitHub SponsorsとしてJSer.infoを支援してくれている方々です。
ヘッドライン
The npm Blog — New Package Moniker rules
blog.npmjs.org/post/168978377570/new-package-moniker-rules
npmにパッケージをpublishする際のルールが変更された。
パッケージ名に含まれる.
、-
、_
の違いによる区別をしなくなった。
react-native
とreact.native
を同じものとして扱い、タイプミスを狙った類似パッケージの公開を防止する目的。
Introducing Hyperapp 1.0 🎉 – Jorge Bucaran – Medium
medium.com/@JorgeBucaran/introducing-hyperapp-1-0-dbf4229abfef
hyperapp 1.0.0リリース。
Release v4.0.0 · gulpjs/gulp
github.com/gulpjs/gulp/releases/tag/v4.0.0
gulp 4.0.0プレリリース。
npm install gulp@next
でインストールできるように。
gulp.reset
、gulp.task
の第三引数の削除。
gulp.series
とgulp.parallel
、gulp.tree
、gulp.registry
の追加。
gulp
とgulp-cli
の分離など
- gulp/CHANGELOG.md at v4.0.0 · gulpjs/gulp
- [Notice] gulp 4 release process · Issue #1486 · gulpjs/gulp
Ember.js - Ember 2.18 and 3.0 Beta Released
emberjs.com/blog/2018/01/01/ember-2-18-released.html
Ember 2.1.8と3.0βリリース。
Ember 3.0ではIE 9, 10のサポート終了、2.xで非推奨となった機能の削除され、それらはember-2-legacy
アドオンにポートされる。
- rfcs/0252-browser-support-changes.md at master · emberjs/rfcs
- Ember.js - The Road to Ember 3.0
- emberjs/ember-2-legacy
Neutrino: Releasing v8 🎉 – Eli Perelman – Medium
medium.com/@eliperelman/neutrino-releasing-v8-a643f356f410
JavaScriptの開発環境セットアップツールのNeutrino v8.0.0リリース。
モジュールを@neutrinojs
のScoped moduleへ移行、@neutrinojs/library
などのコアミドルウェアの追加、複数ページのアプリへの対応など
アーティクル
Performance Calendar » Performance insurance
calendar.perfplanet.com/2017/performance-insurance/
パフォーマンス関係のツール紹介記事。
ファイルサイズチェック、ファイル分割チェック、LightHouse、モニタリングサービスなど
Christmas Gifts for Your Future Self: Testing the Web Platform ◆ 24 ways
24ways.org/2017/testing-the-web-platform/
ウェブ標準におけるテストについて。
Web Platform Testsでのテストの見かた、コントリビュート方法やテストの書き方についてなど
Nearing the 7.0 Release · Babel
babeljs.io/blog/2017/12/27/nearing-the-7.0-release
Babel 7の変更予定について
ResizeObserver による変更検知と Element Query | blog.jxck.io
blog.jxck.io/entries/2017-12-30/resize-observer-and-element-query.html
ResizeObserverについての解説記事。
要素のリサイズを監視するObserver API
Profiling adventure - Qiita
qiita.com/martinheidegger/items/5a5c40770ef6f47a92b2
Node.jsでperf_hooks
を使ったプロファイル、Node.jsの--prof
フラグを使ったより詳細なダンプデータのとり方。
また--inspect-brk
を使いChromeの開発者ツールを使ってのデバッグについて
JavaScript のスレッド並列実行環境
nhiroki.jp/2017/12/10/javascript-parallel-processing
JavaScriptにおけるスレッド関係の機構について。
タスクキュー、Web Workerのモデル、スレッド間のメッセージング、データのコピーと移譲(Transferable)、SharedArrayBuffer、Agentの共有メモリモデル。 Worklet/Tasklet、Web Locks、Thread APIについて
Getting Started with Jest and Puppeteer – Noteworthy — The Journal Blog
blog.usejournal.com/getting-started-with-jest-and-puppeteer-7cf6c59a2cae
JestとPuppeteerを使ったテストの設定や書き方について
サイト、サービス、ドキュメント
tbfleming/cib: clang running in browser (wasm)
clang
とclang-format
をJavaScriptにコンパイルし、ブラウザ上でclang
を使ってC++をWebAssemblyへコンパイルして実行するデモ
ソフトウェア、ツール、ライブラリ関係
anseki/leader-line: Draw a leader line in your web page.
指定要素同士を矢印で繋いだり、指定要素への矢印とキャプションを描画できるライブラリ。
whoeverest/wsrun: Command runner for Yarn workspaces. Dependency aware.
Yarn workspace向けのツール。
lerna runのようにそれぞれのパッケージに対してコマンドを実行できる
keithamus/sort-package-json: Sort an Object or package.json based on the well-known package.json keys
github.com/keithamus/sort-package-json
package.json
のフィールドをソートするツール
書籍関係
JavaScript のスレッド並列実行環境
nhiroki.jp/2017/12/10/javascript-parallel-processing
JavaScriptにおけるWebWorkerやSharedWorker、Workletなどのスレッドの仕組みについてや違いについて。
また検討されているWeb Locks APIやThread APIについて