Skip to content

Commit e2d728e

Browse files
2023-10-03のJS: Node v20.8.0、Vitest v1.0.0-beta.0、instant.dev(Rails-inspired ORM/Migrations) (#1123)
* Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update 663 draft * Update _i18n/ja/_posts/2023/2023-10-03-node-v20.8.0-vitest-v1.0.0-beta.0-instant.devrails-inspired-ormmigrations.md * Delete _i18n/ja/_posts/2023/2023-10-03-663draft.md * Update _i18n/ja/_posts/2023/2023-10-03-node-v20.8.0-vitest-v1.0.0-beta.0-instant.devrails-inspired-ormmigrations.md * Update _i18n/ja/_posts/2023/2023-10-03-node-v20.8.0-vitest-v1.0.0-beta.0-instant.devrails-inspired-ormmigrations.md * Update _i18n/ja/_posts/2023/2023-10-03-node-v20.8.0-vitest-v1.0.0-beta.0-instant.devrails-inspired-ormmigrations.md --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 081d297 commit e2d728e

File tree

1 file changed

+198
-0
lines changed

1 file changed

+198
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,198 @@
1+
---
2+
title: "2023-10-03のJS: Node v20.8.0、Vitest v1.0.0-beta.0、instant.dev(Rails-inspired ORM/Migrations)"
3+
author: "azu"
4+
layout: post
5+
date : 2023-10-03T13:10:21.794Z
6+
category: JSer
7+
tags:
8+
- nodejs
9+
- UI
10+
- npm
11+
- cloudflare
12+
- API
13+
14+
---
15+
16+
JSer.info #663 - Node.js 20.8.0がリリースされました。
17+
18+
- [Node v20.8.0 (Current) | Node.js](https://nodejs.org/en/blog/release/v20.8.0)
19+
20+
`stream`に関するフラグをビットマップで管理することでメモリ消費量とパフォーマンスが改善されています。
21+
22+
- [stream: use bitmap in readable state by benjamingr · Pull Request #49745 · nodejs/node](https://github.com/nodejs/node/pull/49745)
23+
24+
`vm``importModuleDynamically`オプションを追加、主にJestなどで起きていた`vm`のメモリリークの問題を修正なども含まれています。
25+
26+
Node.jsのアップデートが起因でJestのメモリリークが起きる問題としては、次のIssueがあります。
27+
こちらのIssueは、Node.js 20.8.0ではまだ修正されていません。
28+
29+
- [[Bug]: Memory consumption issues on Node JS 16.11.0+ · Issue #11956 · jestjs/jest](https://github.com/jestjs/jest/issues/11956#issuecomment-1740360337)
30+
31+
こちらの問題は、次のPull Requestで解決されるようです。
32+
33+
- [vm: use default host-defined options when importModuleDynamically is not set by joyeecheung · Pull Request #49950 · nodejs/node](https://github.com/nodejs/node/pull/49950)
34+
35+
📝 Node.js 20.x は2023-10-24からLTSとなります。
36+
37+
- [nodejs/Release: Node.js Release Working Group](https://github.com/nodejs/release#release-schedule)
38+
39+
---
40+
41+
Vitest v1.0.0-beta.0がリリースされました。
42+
43+
- [Release v1.0.0-beta.0 · vitest-dev/vitest](https://github.com/vitest-dev/vitest/releases/tag/v1.0.0-beta.0)
44+
45+
今までは`node:worker_threads`を使った並列実行のみがサポートされていましたが、今回`node:child_process`を使った並列実行をサポートが追加されています。
46+
これは、`node:worker_threads`ではnative moduleを含むコードを実行すると、Segmentation faultになるケースがあるためです。次のIssueで詳しく解説されています。
47+
48+
- [Feature: Support `child_process` runtime · Issue #64 · tinylibs/tinypool](https://github.com/tinylibs/tinypool/issues/64)
49+
50+
この変更により、`--threads`などのフラグが廃止され、代わりとなる`--pool``--poolOptions`フラグが追加されています。
51+
52+
---
53+
54+
RailsをインスパイアしたORMマッパーとマイグレーション管理ツールである instant.dev が公開されています。
55+
56+
- [instant-dev/instant: Build APIs with a Rails-inspired JavaScript ORM and Migrations for Postgres](https://github.com/instant-dev/instant)
57+
58+
モデルの生成やマイグレーションの管理を行うInstant CLIと、ORMである[Instant ORM](https://github.com/instant-dev/orm)からなつツールになっています。
59+
60+
61+
----
62+
63+
{% include inline-support.html %}
64+
65+
----
66+
67+
<h1 class="site-genre">ヘッドライン</h1>
68+
69+
----
70+
71+
## Node v20.8.0 (Current) | Node.js
72+
[nodejs.org/en/blog/release/v20.8.0](https://nodejs.org/en/blog/release/v20.8.0 "Node v20.8.0 (Current) | Node.js")
73+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p>
74+
75+
Node.js v20.8.0リリース。
76+
Streamのパフォーマンス改善、`vm``importModuleDynamically`オプションを追加、主にJestなどで起きていた`vm`のメモリリークの問題を修正など
77+
78+
79+
----
80+
81+
## Lit 3.0 Prerelease 2 and more! – Lit
82+
[lit.dev/blog/2023-09-27-lit-3.0-prerelease-2/](https://lit.dev/blog/2023-09-27-lit-3.0-prerelease-2/ "Lit 3.0 Prerelease 2 and more! – Lit")
83+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">UI</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
84+
85+
Lit 3.0.0-pre.1リリース。
86+
Lit 3.0では、IE11のサポート終了、ECMAScript Proposal Stage 3のDecoratorの対応などが含まれる。
87+
88+
- [Release lit@3.0.0-pre.1 · lit/lit](https://github.com/lit/lit/releases/tag/lit%403.0.0-pre.1 "Release lit@3.0.0-pre.1 · lit/lit")
89+
90+
----
91+
92+
## npm provenance general availability - The GitHub Blog
93+
[github.blog/changelog/2023-09-26-npm-provenance-general-availability/](https://github.blog/changelog/2023-09-26-npm-provenance-general-availability/ "npm provenance general availability - The GitHub Blog")
94+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">npm</span> <span class="jser-tag">news</span></p>
95+
96+
npm provenanceを使ってパッケージを公開できるようになった。
97+
CI/CDからパッケージを公開する際に、コミットとパッケージを紐づけて公開できるようになる。
98+
99+
100+
----
101+
102+
## Release 3.33.0 - 2023.10.02 · zloirock/core-js
103+
[github.com/zloirock/core-js/releases/tag/v3.33.0](https://github.com/zloirock/core-js/releases/tag/v3.33.0 "Release 3.33.0 - 2023.10.02 · zloirock/core-js")
104+
<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>
105+
106+
core-js v3.33.0リリース。
107+
`RegExp.escape`の追加、compat dataのアップデートなど
108+
109+
110+
----
111+
112+
## Release v1.0.0-beta.0 · vitest-dev/vitest
113+
[github.com/vitest-dev/vitest/releases/tag/v1.0.0-beta.0](https://github.com/vitest-dev/vitest/releases/tag/v1.0.0-beta.0 "Release v1.0.0-beta.0 · vitest-dev/vitest")
114+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">testing</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>
115+
116+
vitest v1.0.0-beta.0リリース。
117+
`node:child_process`を使った並列実行をサポート、`pool``poolOptions`をサポートし関連する古いフラグを削除など
118+
119+
- [Feature: Support \`child\_process\` runtime · Issue #64 · tinylibs/tinypool](https://github.com/tinylibs/tinypool/issues/64 "Feature: Support \&#x60;child\_process\&#x60; runtime · Issue #64 · tinylibs/tinypool")
120+
121+
----
122+
123+
## Bun v1.0.4 | Bun Blog
124+
[bun.sh/blog/bun-v1.0.4](https://bun.sh/blog/bun-v1.0.4 "Bun v1.0.4 | Bun Blog")
125+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p>
126+
127+
Bun v1.0.4リリース。
128+
`Bun.serve()`のメモリ消費量の削減、`server.requestIP()`の追加、`Bun.plugin`でのvirtual modulesのサポート。
129+
Fetchのtimeoutのデフォルト値を30秒から5分へ変更、DNS解決のバグを修正など
130+
131+
132+
----
133+
<h1 class="site-genre">アーティクル</h1>
134+
135+
----
136+
137+
## A Socket API that works across JavaScript runtimes — announcing a WinterCG spec and Node.js implementation of connect()
138+
[blog.cloudflare.com/socket-api-works-javascript-runtimes-wintercg-polyfill-connect/](https://blog.cloudflare.com/socket-api-works-javascript-runtimes-wintercg-polyfill-connect/ "A Socket API that works across JavaScript runtimes — announcing a WinterCG spec and Node.js implementation of connect()")
139+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">cloudflare</span> <span class="jser-tag">API</span> <span class="jser-tag">article</span></p>
140+
141+
WinterCGで策定しているSocket APIについて
142+
143+
- [Sockets API](https://sockets-api.proposal.wintercg.org/ "Sockets API")
144+
145+
----
146+
<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1>
147+
148+
----
149+
150+
## runk/node-chardet: Character encoding detection tool for NodeJS
151+
[github.com/runk/node-chardet](https://github.com/runk/node-chardet "runk/node-chardet: Character encoding detection tool for NodeJS")
152+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span></p>
153+
154+
文字コード判定ライブラリ
155+
156+
157+
----
158+
159+
## instant-dev/instant: Build APIs with a Rails-inspired JavaScript ORM and Migrations for Postgres
160+
[github.com/instant-dev/instant](https://github.com/instant-dev/instant "instant-dev/instant: Build APIs with a Rails-inspired JavaScript ORM and Migrations for Postgres")
161+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">database</span></p>
162+
163+
Rails/ActiveRecordをインスパイアしたORMマッパー、マイグレーション管理ツール。
164+
165+
166+
----
167+
168+
## aidenybai/pattycake: Zero-runtime pattern matching
169+
[github.com/aidenybai/pattycake](https://github.com/aidenybai/pattycake "aidenybai/pattycake: Zero-runtime pattern matching")
170+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">Tools</span> <span class="jser-tag">performance</span></p>
171+
172+
ts-patternのパターンマッチをインライン化して、Runtimeライブラリの依存をなくすツール。
173+
174+
- [gvergnaud/ts-pattern: 🎨 The exhaustive Pattern Matching library for TypeScript, with smart type inference.](https://github.com/gvergnaud/ts-pattern "gvergnaud/ts-pattern: 🎨 The exhaustive Pattern Matching library for TypeScript, with smart type inference.")
175+
176+
----
177+
178+
## tldraw/tldraw: a very good whiteboard
179+
[github.com/tldraw/tldraw](https://github.com/tldraw/tldraw "tldraw/tldraw: a very good whiteboard")
180+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">illust</span> <span class="jser-tag">diagram</span> <span class="jser-tag">communication</span></p>
181+
182+
共同編集できるホワイトボードライブラリ。
183+
184+
185+
----
186+
<h1 class="site-genre">書籍関係</h1>
187+
188+
----
189+
190+
## Learning Vue
191+
[learning.oreilly.com/library/view/learning-vue/9781492098812/](https://learning.oreilly.com/library/view/learning-vue/9781492098812/ "Learning Vue")
192+
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Vue</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">book</span></p>
193+
194+
2023年12月発売
195+
Vueについての書籍
196+
197+
198+
----

0 commit comments

Comments
 (0)