Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2023-05-26のJS: wrangler v3.0.0、playwright v1.34.0、TypeScript 5.2の予定(変換プラグイン) #1085

Merged
merged 4 commits into from
May 26, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
---
title: "2023-05-26のJS: wrangler v3.0.0、playwright v1.34.0、TypeScript 5.2の予定(変換プラグイン)"
author: "azu"
layout: post
date : 2023-05-26T03:10:15.925Z
category: JSer
tags:
- TypeScript
- Tools
- browser
- Chrome
- book

---

JSer.info #645 - wrangler 3.0.0リリースされました

- [Improved local development with wrangler and workerd](https://blog.cloudflare.com/wrangler3/)

`wrangler publish`が`wrangler deploy`にリネームされています。
また、[wrangler 2.0](https://blog.cloudflare.com/wrangler-v2-beta/)でMiniflareを同梱していましたが、
3.0では`wrangler dev`でMiniflareと`worked` runtimeを使ったローカル環境での開発をデフォルトに変更しています。

- [Release [email protected] · cloudflare/workers-sdk](https://github.com/cloudflare/workers-sdk/releases/tag/wrangler%403.0.0 "Release [email protected] · cloudflare/workers-sdk")


---

playwright v1.34.0リリースがリリースされました。

- [Release v1.34.0 · microsoft/playwright](https://github.com/microsoft/playwright/releases/tag/v1.34.0)

Node.js 14のサポート終了、`playwright`と`@playwright/test`を両方インストールしてる場合に`npx playwright test`が動かなくなるように変更されています。
また、UIモードでテストのステップを表示できるように、`testProject.teardown`プロパティのサポート、`locator.and()`の追加など行われています。

---

TypeScript 5.2で取り組む予定のIssueが公開されています。

- [TypeScript 5.2 Iteration Plan · Issue #54298 · microsoft/TypeScript](https://github.com/microsoft/TypeScript/issues/54298)


ECMAScript ProposalのDecorator Metadataや`using`の対応、
明示的に型を定義せずに推論させるpartial type argument inferenceを扱う`_`の追加、`tsc`コマンドで変換プラグインを扱う仕組みの追加などが検討されています。

TypeScriptの出力に変換を加えるような仕組みは[ttypescript](https://github.com/cevek/ttypescript)や[TS Patch](https://github.com/nonara/ts-patch)などが`tsc`をラップする形で行っていました。`tsc`のプラグインとして同様のケースができないかを検討しているようです。

- [A minimal custom transformer plugin proposal · Issue #54276 · microsoft/TypeScript](https://github.com/microsoft/TypeScript/issues/54276)

また、並列解析でのパフォーマンス改善などに取り組む予定となっています。


----

{% include inline-support.html %}

----

<h1 class="site-genre">ヘッドライン</h1>

----

## ESLint v8.41.0 released - ESLint - Pluggable JavaScript Linter
[eslint.org/blog/2023/05/eslint-v8.41.0-released/](https://eslint.org/blog/2023/05/eslint-v8.41.0-released/ "ESLint v8.41.0 released - ESLint - Pluggable JavaScript Linter")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">ESLint</span> <span class="jser-tag">ReleaseNote</span></p>

ESLint v8.41.0リリース。
`shouldUseFlatConfig()`を追加、`indent`ルールのパフォーマンス改善など


----

## WebKit Features in Safari 16.5 | WebKit
[webkit.org/blog/14154/webkit-features-in-safari-16-5/](https://webkit.org/blog/14154/webkit-features-in-safari-16-5/ "WebKit Features in Safari 16.5 | WebKit")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">safari</span> <span class="jser-tag">ReleaseNote</span></p>

Safari 16.5リリース。
CSS Nestingのサポート、`:user-valid`と`:user-invalid`の擬似クラスをサポート。
LockdownモードでWebCodecs APIを無効化など

- [Safari 16.5 Release Notes | Apple Developer Documentation](https://developer.apple.com/documentation/safari-release-notes/safari-16_5-release-notes "Safari 16.5 Release Notes | Apple Developer Documentation")

----

## TypeScript 5.2 Iteration Plan · Issue #54298 · microsoft/TypeScript
[github.com/microsoft/TypeScript/issues/54298](https://github.com/microsoft/TypeScript/issues/54298 "TypeScript 5.2 Iteration Plan · Issue #54298 · microsoft/TypeScript")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">issue</span></p>

TypeScript 5.2で取り組む予定のIssue。
ECMAScript ProposalのDecorator Metadata、`using`の対応。
明示的に型を定義せずに推論させるpartial type argument inferenceを扱う`_`の追加、`tsc`コマンドで変換プラグインを扱う仕組みの追加。
並列解析でのパフォーマンス改善などに取り組む予定となっている


----

## Improved local development with wrangler and workerd
[blog.cloudflare.com/wrangler3/](https://blog.cloudflare.com/wrangler3/ "Improved local development with wrangler and workerd")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">cloudflare</span> <span class="jser-tag">console</span> <span class="jser-tag">Tools</span> <span class="jser-tag">ReleaseNote</span></p>

wrangler 3.0.0リリース。
`wrangler publish`を`wrangler deploy`にリネーム、`wrangler dev`でMiniflareと`worked` runtimeを使ったローカル環境での開発をデフォルトに変更

- [Release [email protected] · cloudflare/workers-sdk](https://github.com/cloudflare/workers-sdk/releases/tag/wrangler%403.0.0 "Release [email protected] · cloudflare/workers-sdk")

----

## Announcing TypeScript 5.1 RC - TypeScript
[devblogs.microsoft.com/typescript/announcing-typescript-5-1-rc/](https://devblogs.microsoft.com/typescript/announcing-typescript-5-1-rc/ "Announcing TypeScript 5.1 RC - TypeScript")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">ReleaseNote</span></p>

TypeScript 5.1 RCリリース。
`undefined`を`return`する関数の型の扱いを改善、getterとsetter間でそれぞれ異なる型を指定できるように、JSXの改善。
Node.js 14.17未満のサポート終了、`typeRoots`の上向きのパッケージ解決を無効化など


----

## Release v1.34.0 · microsoft/playwright
[github.com/microsoft/playwright/releases/tag/v1.34.0](https://github.com/microsoft/playwright/releases/tag/v1.34.0 "Release v1.34.0 · microsoft/playwright")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">browser</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">testing</span> <span class="jser-tag">ReleaseNote</span></p>

playwright v1.34.0リリース。
Node.js 14のサポート終了、`playwright`と`@playwright/test`を両方インストールしてる場合に`npx playwright test`が動かなくなるように変更。
UIモードでテストのステップを表示できるように、`testProject.teardown`プロパティのサポート、`locator.and()`の追加など。


----

## Release v0.1.12 · web-infra-dev/rspack
[github.com/web-infra-dev/rspack/releases/tag/v0.1.12](https://github.com/web-infra-dev/rspack/releases/tag/v0.1.12 "Release v0.1.12 · web-infra-dev/rspack")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">webpack</span> <span class="jser-tag">bundler</span> <span class="jser-tag">ReleaseNote</span> <span class="jser-tag">JavaScript</span></p>

rspack v0.1.12リリース。
`resolve.exportsFields`をサポート、Data URIのimportをサポートなど


----

## Release v3.2.0 · honojs/hono
[github.com/honojs/hono/releases/tag/v3.2.0](https://github.com/honojs/hono/releases/tag/v3.2.0 "Release v3.2.0 · honojs/hono")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">server</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>

Hono 3.2.0リリース
`LinearRouter`と`PatternRouter`の追加。実行環境に合わせたプリセットの追加、` app.mount()` APIの追加、cookie middlewareの追加など

- [Honoのv3.2が出ました](https://zenn.dev/yusukebe/articles/ee57dc12f34724 "Honoのv3.2が出ました")

----
<h1 class="site-genre">アーティクル</h1>

----

## Introducing the popover API - Chrome Developers
[developer.chrome.com/en/blog/introducing-popover-api/](https://developer.chrome.com/en/blog/introducing-popover-api/ "Introducing the popover API - Chrome Developers")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">browser</span> <span class="jser-tag">HTML</span> <span class="jser-tag">article</span></p>

`popover`属性について


----

## Regular expressions in JavaScript - Honeybadger Developer Blog
[www.honeybadger.io/blog/javascript-regular-expressions/](https://www.honeybadger.io/blog/javascript-regular-expressions/ "Regular expressions in JavaScript - Honeybadger Developer Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">RegExp</span> <span class="jser-tag">article</span></p>

JavaScriptにおける正規表現の解説とユースケースについて


----

## Chrome113でHTTPヘッダを上書きしていろんな状態をお試しできる - hogashi.\*
[blog.hog.as/entry/2023/05/11/181952](https://blog.hog.as/entry/2023/05/11/181952 "Chrome113でHTTPヘッダを上書きしていろんな状態をお試しできる - hogashi.\*")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Chrome</span> <span class="jser-tag">article</span> <span class="jser-tag">debug</span></p>

Chrome DevToolsでHTTPヘッダを書き換えられるようになった話


----

## Using the Web Vitals extension to debug Core Web Vitals issues
[web.dev/debug-cwvs-with-web-vitals-extension/](https://web.dev/debug-cwvs-with-web-vitals-extension/ "Using the Web Vitals extension to debug Core Web Vitals issues")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">performance</span> <span class="jser-tag">browser</span> <span class="jser-tag">Chrome</span> <span class="jser-tag">Extension</span> <span class="jser-tag">article</span></p>

Web Vitals extensionを使いWeb Vitalsに関する問題をデバッグする方法について

- [GoogleChrome/web-vitals-extension: A Chrome extension to measure essential metrics for a healthy site](https://github.com/GoogleChrome/web-vitals-extension "GoogleChrome/web-vitals-extension: A Chrome extension to measure essential metrics for a healthy site")

----
<h1 class="site-genre">スライド、動画関係</h1>

----

## OpenJS Collab Summit 2023 - YouTube
[www.youtube.com/playlist?list&#x3D;PLyspMSh4XhLO15jJD9Sj069fN18j12AbQ](https://www.youtube.com/playlist?list=PLyspMSh4XhLO15jJD9Sj069fN18j12AbQ "OpenJS Collab Summit 2023 - YouTube")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">Conference</span> <span class="jser-tag">video</span></p>

OpenJS Collab Summit 2023 の動画一覧


----
<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1>

----

## microsoft/devicescript: TypeScript for Tiny IoT Devices
[github.com/microsoft/devicescript](https://github.com/microsoft/devicescript "microsoft/devicescript: TypeScript for Tiny IoT Devices")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">Tools</span></p>

Raspberry Pi PicoなどのIoTデバイス向けの処理をTypeScriptで書けるツールキット


----

## webpro/knip: ✂️ Find unused files, dependencies and exports in your JavaScript and TypeScript projects. Knip it before you ship it!
[github.com/webpro/knip](https://github.com/webpro/knip "webpro/knip: ✂️ Find unused files, dependencies and exports in your JavaScript and TypeScript projects. Knip it before you ship it!")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">TypeScript</span> <span class="jser-tag">Tools</span></p>

未使用のファイル、未使用の依存関係、未使用のエクスポートなどを検出や削除できるツール。
さまざまなツールのプラグインとして対応している。


----

## vanjs-org/van: 🍦VanJS (Vanilla JavaScript): World&#039;s smallest reactive UI framework
[github.com/vanjs-org/van](https://github.com/vanjs-org/van "vanjs-org/van: 🍦VanJS (Vanilla JavaScript): World&#039;s smallest reactive UI framework")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">GUI</span></p>

ファイルサイズが小さなReactive UIフレームワーク


----

## mizchi/lizod
[github.com/mizchi/lizod](https://github.com/mizchi/lizod "mizchi/lizod")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">library</span></p>

zodライクなTypeScriptの型として利用できるバリデーションライブラリ。
zodからメソッドチェーンや複雑なバリデーションを取り除いたAPIを作ることで、ファイルサイズが小さくなることを目的にしている

- [lizod: 1kb 未満の zod の精神的後継](https://zenn.dev/mizchi/articles/lizod-is-lightweight-zod "lizod: 1kb 未満の zod の精神的後継")

----
<h1 class="site-genre">書籍関係</h1>

----

## JavaScript Primer 改訂2版 迷わないための入門書 | azu, Suguru Inatomi |本 | 通販 | Amazon
[www.amazon.co.jp/dp/4048931105/](https://www.amazon.co.jp/dp/4048931105/ "JavaScript Primer 改訂2版 迷わないための入門書 | azu, Suguru Inatomi |本 | 通販 | Amazon")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">book</span></p>

2023年6月9日発売
JavaScriptの入門書

- [JavaScript Primer 改訂2版の予約が開始されました | Web Scratch](https://efcl.info/2023/05/18/jsprimer-v2-yoyaku/ "JavaScript Primer 改訂2版の予約が開始されました | Web Scratch")

----