1. kkeethのエンジニア雑談チャンネル
  2. No.194 朝活「JSer.info 2023-..
2023-03-16 16:39

No.194 朝活「JSer.info 2023-03-08のJS」をダラダラ読む回

00:06
3月12日、日曜日ですね。
地獄川沢9時7分になりました。
本日はですね、いろんなものを何を読もうか悩んだんですけど、
また困った時のJSer.infoということで、
今日はJSer.infoの最新を読んでいこうかなと思います。
はい、おはようございます。
夢見のkeethの徳川原です。
ではでは本日は早々と始めていきたいと思います。
JSer.info 2023-03-08のJSですけど、
634回ですね、記事を読んでいこうと思います。
いつもAZさんのJSer.infoには大変お世話になっておりますというのと、
たくさんのJavaScriptの周りのフレームワークだったりツールだったり、
ライブラリーとか、記事、動画、何やらかんやらっていうところの情報をまとめていただいて本当にありがとうございます。
めちゃくちゃ助かってます。
はい、というところで、
ここでお伏せ確かできた気がするので、どっかでお伏せしたいなと思いますね、本当に。
これだけの情報をいつも無料で読ませていただいているのは本当に感謝なんですけど、
さすがにちょっと低下すぎるので、せめて還元したいなと思いました。
というところで、まあ前置きは去っておき、早速本文に入っていきたいと思います。
JSer.info 634ですね。
ピックアップはですね、いくつかあるんですけど、
まず一つ目からいきますけど、一つ目はJESTの29.5のリリースが行われましたよと。
FacebookスラッシュJEST、皆さんご用意のJESTingフレームワークJESTですね。
のバージョン29.5がリリースになりました。
ついに29、すごいですね、そんなにいったんですね。
今回の更新ではJEST-Circusっていうやつがデフォルトのテストランナーに変更になりました。
あとはランダマイズオプションでテストをランダムな順番で実行できるようになっています。
ランダマイズって意外と需要あるんですね。
いわゆるモンキーテスト的なもんだと思いますけど、
ああいうのをやってもちゃんと動作するかっていうのは確かに大事な話なので、
ランダマイズオプションっていうのが入るようになりました。
またこの順序はですね、シードオプションで固定できるようになっているため、
テストの失敗は再現できるようになっています。
他にはワーカースレッドオプションの追加だったり、
エラー出力のフォーマッターが、エラー構図のサポートなども行われています。
続いて、Chromeですね。
Chrome111がリリースになりましたけど、
なんか今回すごく、一応それのですね、
Chrome111のView Transitions APIでリッチなページ間トランジションを実現するっていう別の記事が貼られていますね。
リンク、前ですでに触られた方がいらっしゃるところなので、
この記事もあるので興味ある人は見てみてくださいというところですね。
また、オリジントライアルとして、
ドキュメントピクチャーインピクチャーのサポートも追加になっているところですね。
これも興味ある人は見てみてください。
続いては、これ記事のリンクですね。
とある記事が紹介されています。
Centries Frontend Tests Migrating from Enzyme to React Testing Libraryっていうやつですね。
この記事ではですね、
リアクトのテストをエンジンからリアクトテイスティングライブラリと移行した話というのが書かれています。
これはあれですね。
リグレッションテストとかですから、キャプチャーのテストですよね。
エンジンはその時のスクリーンショット、スナップショットを取って、
そのスナップショットから、
しかもスナップショットはソースコードのレベルでのスナップショットですけども、
取ってテストをしてくれるというツールですね。
これをやめて、リアクトテイスティングライブラリに移ったんですね。
03:00
リアクトテイスティングライブラリでも同じようなことができるってことかな。
わかんないですけど。
以上でエンジンはリアクト18をサポートしていないため、
リアクトテイスティングライブラリへどのように移行したかと書かれています。
ああ、なるほどね。
単純にバージョンを対応してないからってことなんですね。
この記事でも言及されていますけど、
リアクトテイスティングライブラリっていうのは、
ワイアリアのロールなどを使って要素を選択できる機能というのを持っているため、
テストコードを書くことでアクセシビリティについて考える場面も出てきます。
そりゃそうだよね。
以上の引用として、
テイスティングライブラリでユーザーの気持ちになって書くフロントへのテストという記事が別にあるんですけど、
こんな記事もあったんですね。
この記事ではテスティングライブラリのGetByRoleアスターみたいなAPIを使ったテスト加工についても書かれています。
あわせて読むと良いかもしれないですねってことでした。
あとはですね、J3infoをサポートするには知り合いにお勧めしてくださいとか、
GitHubスポンサーでAZのスポンサーになってくれとか、
TwitterでJ3infoフォローするとか、
J3infoについても最新のツイートはリツイートするとかですね、
この辺をやってサポートしてくれると嬉しいよってことでした。
はい。
ぜひぜひ皆さんもサポートしてみてください。
J3infoですね。
めちゃめちゃ素晴らしい記事ですので。
というところで続きまして、
あとヘッドラインですね。
ヘッドラインザーッと読んでいきたいと思いますけど、
まずですね、GoogleスラッシュのZXですね。
がリリース、バージョン7.2.0がリリースされましたと。
今回はリトライメソッドとスピナーメソッドヘルパーの追加などが行われているそうですね。
マイナーバージョンアップかなこれだと思います。
はい。
続いてBuffって言われるものですね。
BUFバフ。
Connect for Node.js is now availableということですね。
こちらですね。
grpcスラッシュプロトコルバッファーズを扱うConnect for Node.jsっていうものがあって、
それがリリースになりましたということですね。
なんか初めて見ました。
あんまりNode.jsでアプリケーション開発はしてないので、
Node.js周りのライブラリとフレームワークの更新って全然知らないんですけど、
こんなのあってたんですね。
続いてMoonですね。
Moonのバージョン0.25がリリースになりましたと。
DenoのTier2サポートっていうのが入ったのと、
CIインサイツですね。
CIですね。
Continuous Integrationのインサイツっていうのと、
カスタムプロジェクトランゲージっていうのとか、
その他諸々っていうのがリリースになりましたということですね。
とにかくDenoがサポートになったということですね。
Tier2ですけどもサポートになってます。
あとオフラインモードのサポートしたりとか、
プロジェクトレベルでタイプスクリプトの設定上書きできるように
GitHub Actionsの追加になりましたとか。
最近でもCI周りでどんどんどんどんGitHub Actionsに集約するっていうのが強いし、
この前そのGitHub Actions、今月の1日ですね。
インポーターっていうのがGitHubから出てまして、
とにかくCI周りのユーザーもどんどんどんどん食ってかかるみたいなところがあるので、
本当はMSが来てる感がありますね。
続きまして、アナウンシングタイプスクリプト5.0ですね。
RCですけど、がリリースになりましたよと。
ついにタイプスクリプトの5.0になるんですね。
エクマスクリプトステージ3のデコレーターを実装したのと、
コンストタイプパラメーターの追加になったっていうものと、
TS Config JSONで複数のエクステンスに対応したと。
そうなんですね。
あとはENUMとUnion型の改善ですと。
あとはですね、
--ModuleResolutionBundlerの追加と、
06:02
関連するオプションが追加になりましたと。
エクスポーツフィールのコンディションを指定できる
--CustomConditionsの追加。
あとインポート時にタイプ収縮詞を削除し、
それ以外を残す、
--BarmativeModuleSyntaxっていうオプションが追加されましたと。
インポート時にタイプ収縮詞を削除して、それ以外を残すと。
あとJSDocでAtSatisfiesっていうのをサポートになりました。
などなど。
本当に5点連続でいろんなものが入っていることですね。
またTypeScriptコードベースを、
Namespaceからモジュールに移行し、
パフォーマンス、メモリ、パッケージサイズを改善をしていますと。
いや、これも地味に嬉しいですね。
パフォーマンス改善されるとか、
メモリが改善されるとすごく嬉しい話なので。
あとは--TargetES3とか、
--Outなどオプションを非推奨にしていますと。
あとは--ForceConsistentCachingInFilenames
っていうのがデフォルトでトゥルーになったっていう変更も入ってますよってことですね。
ちょっと全然知らなかったオプションですね。
こんなのあったんです。
がデフォルトでトゥルーだそうです。
などなど。
RCではいえ、ちゃんと正式リリースっていうのが見えてきているので、
この辺も追っていくといいんじゃないかなっていうところですね。
タイプスクリプトの5.0のリリースが目の前ですよという話でした。
続きまして冒頭ピックアップされましたやつかな?
違うやつですね。
IJEっていうオーガニゼーションの中のESM.SHっていうリポジトリがあって、
これのバージョン111がリリースになりましたよと。
全然知らないやつですね。
ESM.SHってのがあるんですね。
今回はデプリケーティッドメッセージに対応したりとか、
バージョン指定せずにリクエストした場合のTTLを10分に変更するみたいな変更が行われたそうです。
全然使ったことがないんで、使っている人は見てみてください。
続いて、こちらが冒頭で取り上げられたやつですね。
Facebookが作ったTesting Framework Gestのバージョン29.5.0がリリースになりましたと。
重複になりますけど、ランダマイズオプションでテストをランダムな順番で実行できたとか、
ワークアスレッドオプションが追加になったりとか、
エラー出力のフォーマッターがエラー構図のサポートだったとかなどが入っています。
これはマイナーバージョンでもあるので、納指で入れていいなという気はしています。
続いてSWRですね。バーセル社が作っているSWRのリリース2.1.0がリリースになりましたと。
リアルタイムデータソースをサブスクライブできるUseSWサブスクリプションの追加とか、
UseSW Infiniteにパラレルオプションというのが追加になりましたと。
パラレルオプションはこれ結構嬉しいですね。なんだかんだ。
マシンスペックとの相談ともなる気はしますけど、これ地味に嬉しいなと思いますね。
続きまして、ノードの18.15.0 LTSが出ましたというところです。
ノード18なんですね。今更ですけど、僕が学生の頃使った時は0.10だったんですけど。
そこからもう18まで来たんですね。いやいや早いもんですが。
09:00
18.15.0のリリースですけど、今回は配分配分テスト配分カバレッジですね。
テストカバレッジが追加になったというのと、FS.statfsというのが追加になりましたよと。
あとはプロセスで使用可能なメモリの量を取得するprocess.constrainedMemoryというメソッドが追加になりました。
プロセスで使用可能なメモリ量を取得できるの結構嬉しいですね。
デバッグだったりとかで、パフォーマンス会社でやったりとかで使えるので、これすごく嬉しいですね。
あとはbuffer.isASCIIというものが追加になりました。
マイナーバージョンだからそんな大きくはないですけど、ちょこちょこ売れそうなやつがあるので、
やっぱりパフォーマンス周りとか見たい人はこれ入れて全然いいかなと思ったりしますね。
あとテストカバレッジが追加になったと地味に僕も嬉しいと思いますけど。
続いてヘッドラインとしては次はラストですね。冒頭取り上げられたやつのもう一つですね。
Chrome111がリリースになりましたと。
Chrome Developers Blogからは引用されています。
こちらも重複になりますけど、CSS Color Level 4のサポートになったのと、
NthChildもしくはNthLastChildという疑似グラスのセレクターがサポートになりました。
あとスタイルコンテナクエリですね。コンテナクエリがサポートになりましたよということですね。
あとストリーミング、リクラリティブ、シャドードームとView Transitions APIがサポートになっています。
あとWeb Payment APIに関する非推奨のAPIが削除されたりなどなどってあるので、
詳しいのはちゃんと見てみてくださいということですね。
今のがヘッドラインでした。
続いてアーティクルですね。記事周りですけど、今回の記事1,2,3,4,5個引用されています。
リンク貼られてますね。
1つ目ですけど、You don't need Rails to start using Hotwireってやつですね。
Railsを使わなくてもHotwireは使えるっていうようなお話だそうですね。
JSの話、絡むからって話でしょうけど。
Hotwireの基本的な使い方っていうのが記事で紹介されているってことでした。
続いて2つ目ですね。これも冒頭で引用されていましたけど、
Sentries Frontend Testってやつですね。
Sentry使ってる方のやつかな?
違いましたね。
Migrating from Enzyme to React Testing Libraryってやつですね。
要はEnzymeがReact 18をサポートしてないんですよね。
ReactのテストライブラリーであるEnzymeっていうのが。
なのでReact Testing Libraryに移行したっていう記事ですね。
どんな問題があったか、どんなマイグレーションがあったかっていうのを
興味ある人は見てみてください。
一応記事の日付が2023年の2月23日。結構最新の記事ですので参考になると思います。
続きまして、クライアントのクッキーなどのデータを削除する
クリアサイトデータという仕様についてっていうブログですね。
これはクリアサイトデータっていうHTTPレスポンスヘッダーですね。
について紹介されてますよってことでした。
続きまして、Experiments with the JavaScript Garbage Collectorですね。
これDevCommunityの記事ですね。
WeeklyFsの一部であるファイナライゼーションレジストリで登録したオブジェクトって
いつGCEによって回収されるのかについて。
自分で読んどいてこれ何を言ってんだって思いました。
とにかくGCEの話なのは分かったんですけど。
12:00
JS書いててGCEあんまり意識したことぶっちゃけないし、
そんなことを意識しないような言語っていうのはあるので。
だからといってじゃあ無邪気に書いていいわけでもちろんないんですけど、
やっぱりちゃんと中身を知って書くっていうのはすごく大事なことなので、
たまにはやっぱりこういうレイヤーの低い技術の記事を読まなきゃなっていう気もちょっとしますね。
もしかしたら明日読むかもしれないです。
プレイライトとかサイプレスとかいろんなフレームワークがありますけど、
その境界がちょっとずつなくなってきてる感、お互いが寄ってきてる感があるので、
いよいよ持ってパイの食べ合いというか、
あとフレームワークの群流活躍がすごいので、
どのテスティングフレームワークを使うかってユーザーの劣等者感が出るなって感じはしますけどね。
とはいえ便利になるのは嬉しいので、
今はこのテスティングライブラリが少しホットなのかなっていう気はしました。
じゃあ今のがアーティクルで、
続いてサイト、サービス、ドキュメントですね。
今回は一つだけですけど、
サンドウォームのKeep Your JavaScript Code Secure and Compliantですね。
とりあえずNPMパッケージのオーディットってやつですね。
あとライセンス情報、そして依存関係次の表示などを行うサービスっていうのがあるんですね。
サンドウォームっていうサービスです。このものがあったらしいですね。
JavaScript Code Secure and Compliantっていうところを保ってくれるサービスだそうですね。
普通にNPMのオーディット叩いていただければ、
ターミナル上でも出てくるのでそれでもいいと思いますけど、
上手い見え方だったりとか、可視化とかライセンス情報とかを
もうちょっと綺麗に見てくれるんでしょうねっていうところだと思います。
何か試しに使ってみていいかもしれないですね。
続いてソフトウェアやツール、ライブラリ関係ってところで今回二つですね。
この二つで最後になりますが、
一つはNode.jsのツールボックスってやつですね。
URLもそのままです。nodejs-toolbox.comってやつですけど、
そのNode.jsのライブラリをカテゴリー別にして比較表示できるサイトってところですね。
これ地味に嬉しいやつじゃないか。
軽く開いてみていますけど、
例えばブラウザのテスティングだったりとかバンドラだったりとか
コードコンプレキシティだったりとか、
ディメンテーションマネージメントとかでクリックすると
それぞれのライブラリがバーっと名前出てきてて、
何かグラフが表示されて一応比較をされるっていう感じですね。
それぞれ比較ついでに各NPMのリンクもあるし、
公式サイトへのリンクもあったりしますね。
っていうのであります。
あとはイシューのクロージャーレートですね。
イシューがどれくらいの割合でクローズされているかっていうところもあったり、
あとはGitHubスターフォークの数とかダウンロード数ですかね。
っていうのも比較されてますね。
それを見ながらどれを使うかって比較してもいいと思いますけど、
ちょっとでも情報古いかもしれないですね。
今バンドラとか見てるんですけど、
ウェブパック、パーセル、ESビルド、ロールアップ、
マイクロバンドル、TSアップとか出てるので、
例えばビートみたいなやつが出てこなかったりするので、
果たしてこの情報はどこまで信頼できるのかっていうのは、
参考値にするぐらいがちょうどいいかもしれないですけど、
何十個のカテゴリーに分かれているので、
興味ある人はこれを見ながら参考にして、
プロジェクトに入れるツールの比較をしてもいいのかもしれないなって感じでした。
で、ラストです。
ラストはですね、
エズノっていうものですね、サービスですね。
カレイダウェイブさんのエズノっていうものですけど、
ラストで書かれたタイプスクリプトのコンパイラーだったり、
15:01
その型チェッカーだったりっていうところですね。
あとスタティックアナリティクスなどで、
静的解析をしてくれるみたいなものですね。
ラストで書かれてるだけあって、多分早いんでしょうね、これ。
一応30コミットののと、まだまだ出始めたばっかりですね、
っていうライブラリなので、
まだ落とし穴もあったりするかもしれないですけど、
それによって、
ちょっとちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
ちょっと、
16:39

コメント

スクロール