Skip to content

Commit 6464f0b

Browse files
authored
translate: 2025-03-06 article
1 parent a0e0407 commit 6464f0b

File tree

1 file changed

+234
-0
lines changed

1 file changed

+234
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,234 @@
1+
---
2+
title: "2025-03-06: TypeScript 5.8(erasableSyntaxOnly), Next.js 15.2, Lynx"
3+
author: "azu"
4+
translator: rewrite0w0
5+
layout: post
6+
date: 2025-03-06T02:01:38.698Z
7+
category: JSer
8+
tags:
9+
- TypeScript
10+
- React
11+
- Native
12+
- ESLint
13+
- css
14+
15+
---
16+
17+
JSer.info #727 - TypeScript 5.8 출시되었습니다.
18+
19+
- [Announcing TypeScript 5.8 - TypeScript](https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/)
20+
21+
TypeScript 5.8에서는, conditional return type 개선, `require(esm)` 대응, `--module node18` 추가되었습니다
22+
또한, Node.js의 `--experimental-strip-types`와 설정을 조합할 수 있는 `--erasableSyntaxOnly` 플래그 추가, `--libReplacement` 플래그 추가도 있습니다.
23+
24+
[erasableSyntaxOnly](https://www.typescriptlang.org/tsconfig/#erasableSyntaxOnly) 옵션은, 다음 기능 금지하면 자료형 제거만으로도, JavaScript로 실행 가능한 TypeScript 코드 작성할 수 있는 설정입니다.
25+
26+
- enum declarations
27+
- namespaces and modules with runtime code
28+
- parameter properties in classes
29+
- Non-ECMAScript `import =` and `export =` assignments
30+
31+
Node.js의 Type Stripping 관련해서는, 다음 글 참조 부탁드립니다.
32+
33+
- [Node.js Type Stripping Explained](https://satanacchio.hashnode.dev/everything-you-need-to-know-about-nodejs-type-stripping)
34+
35+
----
36+
37+
Next.js 15.2 출시되었습니다.
38+
39+
- [Next.js 15.2 | Next.js](https://nextjs.org/blog/next-15-2)
40+
41+
Error Overlay 스택트레이스 게시 개선, Dev indicator 개선, `generateMetadata` 처리를 비동기 대응, Turbopack 성능 개선이 있습니다.
42+
또한, 실험적 기능으로 View Transition API 대응, Node.js middleware 지원도 추가되었습니다.
43+
44+
----
45+
46+
[Lynx](https://lynxjs.org/) React/CSS/TypeScript 사용한 네이티브 애플리케이션 개발 툴킷을 ByteDance가 공개했습니다.
47+
48+
Lynx는 React 17의 API와 QuickJS 기반한 [PrimJS](https://github.com/lynx-family/primjs) JavaScript 엔진을 사용합니다.
49+
50+
- [Why is it based on compatibility with React 17?](https://lynxjs.org/api/react/index.html#react-apis)
51+
- [JavaScript Runtime - Lynx](https://lynxjs.org/guide/scripting-runtime/index.html)
52+
53+
출시 글에는, Instant First-Frame Rendering (IFR)나 Main Thread Script에 관련한 렌더링 최적화에 대해 다루고 있습니다.
54+
55+
- [Lynx: Unlock Native for More - Lynx](https://lynxjs.org/blog/lynx-unlock-native-for-more)
56+
57+
58+
----
59+
60+
{% include inline-support.html %}
61+
62+
----
63+
64+
<h1 class="site-genre">헤드라인</h1>
65+
66+
----
67+
68+
## ArkType Docs: Optimized runtime validation for TypeScript syntax
69+
[arktype.io/docs/blog/2.1](https://arktype.io/docs/blog/2.1 "ArkType Docs: Optimized runtime validation for TypeScript syntax")
70+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
71+
72+
ArkType 2.1 출시.
73+
패턴 매치 하는 `match` API 추가, `configure`으로 키워드에 에러 메세지를 커스터마이즈 가능하도록 함
74+
75+
76+
----
77+
78+
## Release 0.11.0 | StyleX
79+
[stylexjs.com/blog/v0.11.0](https://stylexjs.com/blog/v0.11.0 "Release 0.11.0 | StyleX")
80+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">css</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
81+
82+
StyleX v0.11.0 출시.
83+
디버그 정보 개선, CLI 캐시 개선
84+
85+
86+
----
87+
88+
## Announcing TypeScript 5.8 - TypeScript
89+
[devblogs.microsoft.com/typescript/announcing-typescript-5-8/](https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/ "Announcing TypeScript 5.8 - TypeScript")
90+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">ReleaseNote</span></p>
91+
92+
TypeScript 5.8 출시.
93+
conditional return type 개선, `require(esm)` 대응, `--module node18` 추가. Node.js `--experimental-strip-types` 같이 설정하는 `--erasableSyntaxOnly` 플래그 추가, `--libReplacement` 플래그 추가
94+
95+
96+
----
97+
98+
## Release 3.41.0 - 2025.03.01 · zloirock/core-js
99+
[github.com/zloirock/core-js/releases/tag/v3.41.0](https://github.com/zloirock/core-js/releases/tag/v3.41.0 "Release 3.41.0 - 2025.03.01 · zloirock/core-js")
100+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">polyfill</span> <span class="jser-tag">ReleaseNote</span></p>
101+
102+
core-js v3.41.0 출시.
103+
Stage 4가 된 `RegExp.escape`/Float16, Stage 1 `Math.clamp` 대응
104+
105+
106+
----
107+
108+
## Next.js 15.2 | Next.js
109+
[nextjs.org/blog/next-15-2](https://nextjs.org/blog/next-15-2 "Next.js 15.2 | Next.js")
110+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Next.js</span> <span class="jser-tag">ReleaseNote</span></p>
111+
112+
Next.js 15.2 출시.
113+
Error Overlay 스택트레이스 게시 개선, Dev indicator 개선, `generateMetadata` 처리를 비동기 대응, Turbopack 성능 개선.
114+
실험적 기능으로 View Transition API 대응, Node.js middleware 지원
115+
116+
117+
----
118+
119+
## Re.Pack 5: Mobile Microfrontends, 5x Faster, Less Configuration - Re.Pack
120+
[re-pack.dev/blog/repack-5-release](https://re-pack.dev/blog/repack-5-release "Re.Pack 5: Mobile Microfrontends, 5x Faster, Less Configuration - Re.Pack")
121+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">Native</span> <span class="jser-tag">bundler</span> <span class="jser-tag">ReleaseNote</span></p>
122+
123+
React Native 대상 빌드 도구 Re.Pack 5 출시.
124+
webpack 대신 Rspack 이용, Module Federation 대응
125+
126+
127+
----
128+
129+
## Release pnpm 10.5 · pnpm/pnpm
130+
[github.com/pnpm/pnpm/releases/tag/v10.5.0](https://github.com/pnpm/pnpm/releases/tag/v10.5.0 "Release pnpm 10.5 · pnpm/pnpm")
131+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>
132+
133+
pnpm v10.5.0 출시.
134+
`package.json`에 분산된 `pnpm.*` 설정을 `pnpm-workspace.yaml`에 얹도록 변경
135+
136+
137+
----
138+
139+
## Chrome 134  |  Release notes  |  Chrome for Developers
140+
[developer.chrome.com/release-notes/134](https://developer.chrome.com/release-notes/134 "Chrome 134  |  Release notes  |  Chrome for Developers")
141+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Chrome</span> <span class="jser-tag">ReleaseNote</span></p>
142+
143+
Chrome 134 출시.
144+
`<select>` 커스터마이즈 지원, `<dialog>``closedby` 속성 지원, Document-Policy에 `expect-no-linked-resources` 추가.
145+
Shared Storage에서 Web Locks API 지원, Canvas에서 `imageSmoothingQuality` 옵션 지원.
146+
`getUserMedia` 비표준 API 삭제
147+
148+
- [WICG/shared-storage: Explainer for proposed web platform Shared Storage API](https://github.com/WICG/shared-storage "WICG/shared-storage: Explainer for proposed web platform Shared Storage API")
149+
150+
----
151+
152+
## Lynx
153+
[lynxjs.org/](https://lynxjs.org/ "Lynx")
154+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">Native</span> <span class="jser-tag">iOS</span> <span class="jser-tag">Android</span></p>
155+
156+
React 17 기반 API와 JavaScript/TypeScript/CSS 사용한 네이티브 애플리케이션 개발 가능한 툴킷.
157+
158+
159+
----
160+
161+
## Release v8.26.0 · typescript-eslint/typescript-eslint
162+
[github.com/typescript-eslint/typescript-eslint/releases/tag/v8.26.0](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.26.0 "Release v8.26.0 · typescript-eslint/typescript-eslint")
163+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">ESLint</span> <span class="jser-tag">ReleaseNote</span></p>
164+
165+
typescript-eslint v8.26.0 출시.
166+
TypeScript 5.8 지원
167+
168+
169+
----
170+
<h1 class="site-genre">읽을거리</h1>
171+
172+
----
173+
174+
## What is TypeScript? An overview for JavaScript programmers
175+
[2ality.com/2025/02/what-is-typescript.html](https://2ality.com/2025/02/what-is-typescript.html "What is TypeScript? An overview for JavaScript programmers")
176+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">article</span></p>
177+
178+
TypeScript가 무엇인가 알려주는 개요적 글.
179+
TypeScript는 JavaScript에 자료형 구문을 더한 것이라는 점, TypeScript 빌드, type stripping 등의 `tsc` 외 컴파일 관련하여
180+
181+
182+
----
183+
184+
## Migrating 160,000 Lines of Production Banking JavaScript to TypeScript with Zero Downtime - Ben Howdle - Software Consultant &amp; Advisor
185+
[benhowdle.im/migrating-js-to-ts-zero-downtime.html](https://benhowdle.im/migrating-js-to-ts-zero-downtime.html "Migrating 160,000 Lines of Production Banking JavaScript to TypeScript with Zero Downtime - Ben Howdle - Software Consultant &amp; Advisor")
186+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">TypeScript</span> <span class="jser-tag">article</span></p>
187+
188+
JavaScript에서 TypeScript으로 이행.
189+
이행 브런치를 사용해 이행 접근
190+
191+
192+
----
193+
194+
## Temporal로 변경될 JavaScript 시간 조작[JS Modern Features no.1] | gihyo.jp
195+
[gihyo.jp/article/2025/02/ride-modern-frontend-07](https://gihyo.jp/article/2025/02/ride-modern-frontend-07 "Temporal로 변경될 JavaScript 시간 조작[JS Modern Features no.1] | gihyo.jp")
196+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">ECMAScript</span> <span class="jser-tag">article</span></p>
197+
198+
ECMAScript Proposal Stage 3 Temporal 관련해서
199+
200+
201+
----
202+
203+
## Lynx: Unlock Native for More - Lynx
204+
[lynxjs.org/blog/lynx-unlock-native-for-more.html](https://lynxjs.org/blog/lynx-unlock-native-for-more.html "Lynx: Unlock Native for More - Lynx")
205+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">Native</span> <span class="jser-tag">article</span></p>
206+
207+
React 기반 API와 CSS 사용한 네이티브 애플리케이션 개발이 가능한 Lynx.
208+
Instant First-Frame Rendering (IFR)나 Main Thread Script 관련해서
209+
210+
211+
----
212+
213+
## oxlint으로 eslint 고속화시키기
214+
[zenn.dev/hiruno\_tarte/articles/how-to-use-oxlint](https://zenn.dev/hiruno_tarte/articles/how-to-use-oxlint "oxlint으로 eslint 고속화시키기")
215+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">ESLint</span> <span class="jser-tag">article</span></p>
216+
217+
oxlint와 ESLint 조합해서 이용하는 설정.
218+
oxlint와 ESLint 겹친 내용을 oxlint으로 옮겨서, ESLint 플러그인만 체크하는 설정임
219+
220+
221+
----
222+
<h1 class="site-genre">웹사이트, 서비스, 문서</h1>
223+
224+
----
225+
226+
## lynx-family/primjs: JavaScript Engine Optimized for Lynx
227+
[github.com/lynx-family/primjs](https://github.com/lynx-family/primjs "lynx-family/primjs: JavaScript Engine Optimized for Lynx")
228+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">Native</span> <span class="jser-tag">Tools</span> <span class="jser-tag">library</span></p>
229+
230+
Lynx에 사용되는 JavaScript 엔진.
231+
QuickJS 기반, GC 구현이나 Chrome DevTools Protocol (CDP) 구현도 추가되어 있음
232+
233+
234+
----

0 commit comments

Comments
 (0)