Skip to content

Commit c8d1b62

Browse files
authored
Merge pull request #1267 from jser/jser-week-728
2025-03-12のJS: React Aria March 5, 2025、Firefox 136.0、TypeScriptコンパイラをGoに移植
2 parents 4ca2b0b + b5a3ece commit c8d1b62

File tree

1 file changed

+207
-0
lines changed

1 file changed

+207
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,207 @@
1+
---
2+
title: "2025-03-12のJS: React Aria March 5, 2025、Firefox 136.0、TypeScriptコンパイラをGoに移植"
3+
author: "azu"
4+
layout: post
5+
date: 2025-03-12T03:37:21.235Z
6+
category: JSer
7+
tags:
8+
- React
9+
- TypeScript
10+
- Vue
11+
- Electron
12+
- pnpm
13+
14+
---
15+
16+
JSer.info #728 - React Aria March 5, 2025リリースされました
17+
18+
- [March 5, 2025 Release – React Spectrum Releases](https://react-spectrum.adobe.com/releases/2025-03-05.html)
19+
20+
Toast/Tree/Virtualizerコンポーネントを追加、AutocompleteをMenu/Selectなどと組み合わせて利用できるようになりました。
21+
また、`<Pressable>`/`<Focusable>`の追加、`usePress`のリファクタリングなどが含まれています。
22+
その他には、ドキュメントをTailwind v4に対応など
23+
24+
---
25+
26+
Firefox 136.0リリースされました
27+
28+
- [Firefox 136.0, See All New Features, Updates and Fixes](https://www.mozilla.org/en-US/firefox/136.0/releasenotes/)
29+
- [Firefox 136 for developers - Mozilla | MDN](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/136)
30+
31+
HTMLの`autocorrect`属性をサポート、`Intl.DurationFormat`のサポート、Data URLsの最大サイズを32MBからChromeと同じ512MBに変更されています。
32+
Cookie Storage APIのサポート、HTTPS-Firstに変更されています。
33+
実験的な機能として、`Error.captureStackTrace()`のサポート、`Clear-Site-Data`ヘッダのサポート、SVGの`<discard>`要素のサポートなどが含まれています。
34+
35+
----
36+
37+
TypeScriptコンパイラのGo言語へのポートの計画が公開されました。
38+
39+
- [A 10x Faster TypeScript - TypeScript](https://devblogs.microsoft.com/typescript/typescript-native-port/)
40+
41+
TypeScriptの型チェックやLSPのパフォーマンスを改善するために、TypeScriptコンパイラをGo言語へポートするという計画が公開されました。
42+
移植したnative版をTypeScript 7としてリリースする予定で、native版が安定するまではJS版もメンテナンスしていく予定となっています。
43+
TypeScript 7が出たあとも、移行の問題がなくなるまでJS版をメンテして、99.99%はそのまま移行できることを目指しているようです。
44+
45+
- https://github.com/microsoft/typescript-go
46+
47+
> "Why a port instead of a rewrite? What's the difference? · microsoft/typescript-go · Discussion #410"
48+
> https://github.com/microsoft/typescript-go/discussions/411
49+
50+
なぜ書き直しではなく移植を選んだのかについては、TypeScriptコンパイラのコードベースのサイズの大きさや、TypeScriptは仕様があるわけではなくリファレンス実装のみであるという理由などが挙げらています。
51+
52+
> Why Go? #411
53+
> https://github.com/microsoft/typescript-go/discussions/411
54+
55+
Goを選んだ理由として、GCがあることやセマンティクスとコードの構造がJSと似ているため、移植性が高いという理由が挙げられています。
56+
57+
- [TypeScript is being ported to Go | interview with Anders Hejlsberg - YouTube](https://www.youtube.com/watch?v=10qowKUW82U)
58+
59+
C#はOOP言語なので、既存のTypeScriptコンパイラのコードを移植するには、構造を変更する必要があるため選択肢にするのが難しかったという話がされています。
60+
また、TypeScriptコンパイラはGCなどに依存しているため、Rustなどの言語は選択肢にするのが難しかったという話もされています。
61+
書き直しであれば、最初からGC/循環参照グラフに依存しないような構造にしていたなどの話もされています。
62+
63+
まだ、具体的なリリーススケジュールは未定ですが、基本的には移行がスムーズに行えるようにすることを目指しているようです。
64+
65+
----
66+
67+
{% include inline-support.html %}
68+
69+
----
70+
71+
<h1 class="site-genre">ヘッドライン</h1>
72+
73+
----
74+
75+
## March 5, 2025 Release – React Spectrum Releases
76+
[react-spectrum.adobe.com/releases/2025-03-05.html](https://react-spectrum.adobe.com/releases/2025-03-05.html "March 5, 2025 Release – React Spectrum Releases")
77+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
78+
79+
React Aria March 5, 2025リリース。
80+
Toast/Tree/Virtualizerコンポーネントを追加、AutocompleteをMenu/Selectなどと組み合わせて利用できるように。
81+
`<Pressable>`/`<Focusable>`の追加、
82+
`usePress`のリファクタリング。
83+
ドキュメントをTailwind v4に対応など
84+
85+
86+
----
87+
88+
## Electron 35.0.0 | Electron
89+
[www.electronjs.org/blog/electron-35-0](https://www.electronjs.org/blog/electron-35-0 "Electron 35.0.0 | Electron")
90+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Electron</span> <span class="jser-tag">ReleaseNote</span></p>
91+
92+
Electron 35.0.0リリース。
93+
Chromium 134/Node.js 22.14.0/V8 13.5へアップデート、Service Worker Preload Scriptsのサポートなど
94+
95+
96+
----
97+
98+
## Release v3.16.0 · nuxt/nuxt
99+
[github.com/nuxt/nuxt/releases/tag/v3.16.0](https://github.com/nuxt/nuxt/releases/tag/v3.16.0 "Release v3.16.0 · nuxt/nuxt")
100+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Vue</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
101+
102+
Nuxt.js v3.16.0リリース。
103+
`create-nuxt`パッケージの追加、パフォーマンスの改善、delayed/lazy hydrationのサポートなど
104+
105+
106+
----
107+
108+
## Release pnpm 10.6 · pnpm/pnpm
109+
[github.com/pnpm/pnpm/releases/tag/v10.6.0](https://github.com/pnpm/pnpm/releases/tag/v10.6.0 "Release pnpm 10.6 · pnpm/pnpm")
110+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>
111+
112+
pnpm v10.6.0リリース。
113+
`.npmrc`の設定を全て`pnpm-workspace.yaml`に記述できるように
114+
115+
116+
----
117+
118+
## Release v1.51.0 · microsoft/playwright
119+
[github.com/microsoft/playwright/releases/tag/v1.51.0](https://github.com/microsoft/playwright/releases/tag/v1.51.0 "Release v1.51.0 · microsoft/playwright")
120+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">playwright</span> <span class="jser-tag">ReleaseNote</span></p>
121+
122+
playwright v1.51.0リリース。
123+
`browserContext.storageState()`がIndexedDBをサポート、`filter({ visible })`を追加、`expect(page).toHaveURL(fn)`をサポート。
124+
LLM向けのCopy promptをレポーターに追加など
125+
126+
127+
----
128+
129+
## Release @ark-ui/react@5.0.0 · chakra-ui/ark
130+
[github.com/chakra-ui/ark/releases/tag/%40ark-ui%2Freact%405.0.0](https://github.com/chakra-ui/ark/releases/tag/%40ark-ui%2Freact%405.0.0 "Release @ark-ui/[email protected] · chakra-ui/ark")
131+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">Vue</span> <span class="jser-tag">Solid</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
132+
133+
Ark UI v5リリース。
134+
パフォーマンスとBundle Sizeの改善、コンポーネントにデフォルト値を指定するオプションの追加など
135+
136+
137+
----
138+
139+
## Firefox 136.0, See All New Features, Updates and Fixes
140+
[www.mozilla.org/en-US/firefox/136.0/releasenotes/](https://www.mozilla.org/en-US/firefox/136.0/releasenotes/ "Firefox 136.0, See All New Features, Updates and Fixes")
141+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Firefox</span> <span class="jser-tag">ReleaseNote</span></p>
142+
143+
Firefox 136リリース。
144+
HTMLの`autocorrect`属性をサポート、`Intl.DurationFormat`のサポート、Data URLsの最大サイズを32MBからChromeと同じ512MBに変更。
145+
Cookie Storage APIのサポート、HTTPS-Firstに変更。
146+
実験的な機能として、`Error.captureStackTrace()`のサポート、`Clear-Site-Data`ヘッダのサポート、SVGの`<discard>`要素のサポートなど
147+
148+
- [Firefox 136 for developers - Mozilla | MDN](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/136 "Firefox 136 for developers - Mozilla | MDN")
149+
150+
----
151+
152+
## Bun v1.2.5 | Bun Blog
153+
[bun.sh/blog/bun-v1.2.5](https://bun.sh/blog/bun-v1.2.5 "Bun v1.2.5 | Bun Blog")
154+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p>
155+
156+
Bun v1.2.5リリース。
157+
Node-APIとの互換性の改善、`node:timers`の追加、`Bun.CSRF`の追加。
158+
dev serverがsvelteをサポート、CSS modulesのサポートなど
159+
160+
161+
----
162+
<h1 class="site-genre">アーティクル</h1>
163+
164+
----
165+
166+
## A 10x Faster TypeScript - TypeScript
167+
[devblogs.microsoft.com/typescript/typescript-native-port/](https://devblogs.microsoft.com/typescript/typescript-native-port/ "A 10x Faster TypeScript - TypeScript")
168+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">article</span> <span class="jser-tag">performance</span></p>
169+
170+
TypeScriptの型チェックやLSPのパフォーマンスを改善するために、TypeScriptコンパイルやLSPなどのツールをGo言語へポートするという話。
171+
移植したnative版をTypeScript 7としてリリースする予定で、native版が安定するまではJS版もメンテナンスしていく予定。
172+
173+
174+
----
175+
176+
## Split Route Modules | Remix
177+
[remix.run/blog/split-route-modules](https://remix.run/blog/split-route-modules "Split Route Modules | Remix")
178+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">article</span></p>
179+
180+
React Router v7.2.0で追加されたSplit Route Modulesについて。
181+
182+
183+
----
184+
<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1>
185+
186+
----
187+
188+
## microsoft/typescript-go: Staging repo for development of native port of TypeScript
189+
[github.com/microsoft/typescript-go](https://github.com/microsoft/typescript-go "microsoft/typescript-go: Staging repo for development of native port of TypeScript")
190+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">golang</span> <span class="jser-tag">Tools</span></p>
191+
192+
TypeScriptをGo言語にポートした実装。
193+
型チェック以外は並行に処理できる。型チェックはいくつかのブロックに分けて処理するようになっている。
194+
195+
- [A 10x faster TypeScript - YouTube](https://www.youtube.com/embed/pNlq-EVld70?si=OaEgTg6ROtfYDYLt "A 10x faster TypeScript - YouTube")
196+
197+
----
198+
199+
## Pikku - A Function-First Framework for Node.js | Pikku
200+
[pikku.dev/](https://pikku.dev/ "Pikku - A Function-First Framework for Node.js | Pikku")
201+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">library</span> <span class="jser-tag">server</span></p>
202+
203+
TypeScriptで書かれたウェブフレームワーク。
204+
ただの関数としてハンドラーなどを定義できる。TypeScriptのコードからJSONスキーマを生成してバリデーションを行え、クライアントコードも自動的に生成される
205+
206+
207+
----

0 commit comments

Comments
 (0)