Skip to content

Commit

Permalink
Merge pull request #1252 from jser/jser-week-721
Browse files Browse the repository at this point in the history
2025-01-09のJS: pnpm 10、Node v23.6.0(` --experimental-strip-types`をデフォルトで有効化)、e18e
  • Loading branch information
azu authored Jan 9, 2025
2 parents f5f7a9c + ff8a316 commit d95313c
Showing 1 changed file with 204 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
---
title: "2025-01-09のJS: pnpm 10、Node v23.6.0(` --experimental-strip-types`をデフォルトで有効化)、e18e"
author: "azu"
layout: post
date: 2025-01-09T11:30:40.138Z
category: JSer
tags:
- nodejs
- React
- Tools
- performance
- pnpm

---

JSer.info #721 - pnpm 10がリリースされました。

- [Release pnpm 10 · pnpm/pnpm](https://github.com/pnpm/pnpm/releases/tag/v10.0.0)

pnpm v10.0.0では、インストールするパッケージのlifecycle scriptをデフォルトで実行しないように変更されています。
`pnpm.onlyBuiltDependencies`の許可リストで定義したパッケージのみ`postinstall`などのlifecycle scriptが実行されるようになっています。

また、`pnpm link`の挙動の変更、`packageManager`を参照してpnpmのバージョンを確認するように、ハッシュアルゴリズムをSHA256に変更、storeバージョンの更新など行われています。
そのほかには、pnpmに関する設定を共有できる`configDependencies`を追加。 `verifyDepsBeforeRun`オプションでlockと`node_modules/`の状態を比較して自動インストールなどの挙動を選択できるようになっています。

---

Node.js v23.6.0がリリースされました。

- [Node.js — Node v23.6.0 (Current)](https://nodejs.org/en/blog/release/v23.6.0)

Node.js v23.6.0では、`--experimental-strip-types`フラグがデフォルトで有効になっています。
これによって、TypeScriptファイルから型情報を削除したものを実行できるようになっています。

```sh
$ echo "const add = (a: number, b: number) => a + b; console.log(add(1, 2));" > index.ts
$ node index.ts
3
```

ただし、`enum``namespace`などの変換が必要なTypeScriptの機能は引き続き[--experimental-transform-types](https://nodejs.org/docs/latest/api/cli.html#--experimental-transform-types)フラグが必要です。

---

[The journey so far | e18e](https://e18e.dev/blog/journey-so-far.html)という記事では、e18e (Ecosystem Performance)というイニシアチブでのJavaScriptのエコシステムのクリーンアップの取り組みについてまとめられています。

色々なツールやライブラリの不要な依存を取り除く活動などについてまとめられています

----

{% include inline-support.html %}

----

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

----

## Release v12.3.0 · vueuse/vueuse
[github.com/vueuse/vueuse/releases/tag/v12.3.0](https://github.com/vueuse/vueuse/releases/tag/v12.3.0 "Release v12.3.0 · vueuse/vueuse")
<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>

vueuse v12.3.0リリース。


----

## Release @pandacss/dev@0.50.0 · chakra-ui/panda
[github.com/chakra-ui/panda/releases/tag/%40pandacss%2Fdev%400.50.0](https://github.com/chakra-ui/panda/releases/tag/%40pandacss%2Fdev%400.50.0 "Release @pandacss/[email protected] · chakra-ui/panda")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pandacs</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>

Panda CSS 0.50.0リリース。
`panda analyze`でDesign Tokenやハードコードされている値の割合を表示できるように


----

## Release 0.10.0 | StyleX
[stylexjs.com/blog/v0.10.0](https://stylexjs.com/blog/v0.10.0 "Release 0.10.0 | StyleX")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">css </span> <span class="jser-tag">PostCSS</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>

StyleX v0.10.0リリース。
PostCSSプラグインを刷新し、`@stylexjs/nextjs-plugin`を非推奨に変更。
`debug`オプションの追加、`inherit: false``@property`を使って動的なCSS Custom Propertyを管理することでパフォーマンスの改善など


----

## Release v3.11.0 · lerna-lite/lerna-lite
[github.com/lerna-lite/lerna-lite/releases/tag/v3.11.0](https://github.com/lerna-lite/lerna-lite/releases/tag/v3.11.0 "Release v3.11.0 · lerna-lite/lerna-lite")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">npm</span> <span class="jser-tag">monorepo</span> <span class="jser-tag">Tools</span> <span class="jser-tag">ReleaseNote</span></p>

lerna-lite v3.11.0リリース。
pnpmの`catalog:` protocolの限定的なサポートを追加


----

## facebookexperimental/Recoil: Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React.
[github.com/facebookexperimental/Recoil](https://github.com/facebookexperimental/Recoil "facebookexperimental/Recoil: Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React.")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">library</span> <span class="jser-tag">news</span></p>

Recoilのリポジトリがアーカイブ化された

----

## Release pnpm 10 · pnpm/pnpm
[github.com/pnpm/pnpm/releases/tag/v10.0.0](https://github.com/pnpm/pnpm/releases/tag/v10.0.0 "Release pnpm 10 · pnpm/pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm v10.0.0リリース。
インストールするパッケージのlifecycle scriptをデフォルトで実行しないように変更。
`pnpm link`の挙動の変更、`packageManager`を参照してpnpmのバージョンを確認するように、ハッシュアルゴリズムをSHA256に変更、storeバージョンの更新。
pnpmに関する設定を共有できる`configDependencies`を追加。 `verifyDepsBeforeRun`オプションが追加され、lockと`node_modules/`の状態を比較して自動インストールなどの挙動を選択できるようになるなど。


----

## Firefox 134.0, See All New Features, Updates and Fixes
[www.mozilla.org/en-US/firefox/134.0/releasenotes/](https://www.mozilla.org/en-US/firefox/134.0/releasenotes/ "Firefox 134.0, See All New Features, Updates and Fixes")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Firefox</span> <span class="jser-tag">ReleaseNote</span></p>

Firefox 134リリース。
Stage 3の`RegExp.escape()`、Stage 4の`Promise.try()`をサポートなど

- [Firefox 134 for developers - Mozilla | MDN](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/134 "Firefox 134 for developers - Mozilla | MDN")

----

## Release v26.0 Reactime · open-source-labs/Reactime
[github.com/open-source-labs/Reactime/releases/tag/v26.0](https://github.com/open-source-labs/Reactime/releases/tag/v26.0 "Release v26.0 Reactime · open-source-labs/Reactime")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">performance</span> <span class="jser-tag">Tools</span> <span class="jser-tag">ReleaseNote</span></p>

Reactのデバッグ拡張ツールであるReactime 26.0リリース。
UIの刷新、useContextの状態の視覚化、タイムトラベルデバッグ機能の改善など


----

## Node.js — Node v22.13.0 (LTS)
[nodejs.org/en/blog/release/v22.13.0](https://nodejs.org/en/blog/release/v22.13.0 "Node.js — Node v22.13.0 (LTS)")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p>

Node.js v22.13.0リリース。
Permission ModelをStableに変更、


----

## Node.js — Node v23.6.0 (Current)
[nodejs.org/en/blog/release/v23.6.0](https://nodejs.org/en/blog/release/v23.6.0 "Node.js — Node v23.6.0 (Current)")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">TypeScript</span> <span class="jser-tag">ReleaseNote</span></p>

Node.js v23.6.0リリース。
`--experimental-strip-types`をデフォルトで有効にして、TypeScriptファイルをフラグなしで実行できるように変更。


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

----

## Composable Caching with Next.js | Next.js
[nextjs.org/blog/composable-caching](https://nextjs.org/blog/composable-caching "Composable Caching with Next.js | Next.js")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Next.js</span> <span class="jser-tag">article</span></p>

Next.jsの"use cache" directiveについて。
"use cache"をつけた関数はserver functionに変換されメモ化された結果を返すようになる。
クロージャーの場合のキャッシュの動作や`cache()`関数について


----

## The journey so far | e18e
[e18e.dev/blog/journey-so-far.html](https://e18e.dev/blog/journey-so-far.html "The journey so far | e18e")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">performance</span> <span class="jser-tag">nodejs</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">article</span></p>

e18eでのJavaScriptのエコシステムのクリーンアップの取り組みについて。


----

## 1人 Intl Advent Calendar 2024 - Adventar
[adventar.org/calendars/10555](https://adventar.org/calendars/10555 "1人 Intl Advent Calendar 2024 - Adventar")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">i18n</span> <span class="jser-tag">article</span></p>

Intl APIについての連載記事

- [1人Intl Advent Calendar を完走しました](https://zenn.dev/cybozu_frontend/articles/intl-advent-calendar-24-recap "1人Intl Advent Calendar を完走しました")

----
<h1 class="site-genre">サイト、サービス、ドキュメント</h1>

----

## CodSpeed: Optimize Performance, Eliminate Regressions
[codspeed.io/](https://codspeed.io/ "CodSpeed: Optimize Performance, Eliminate Regressions")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">webservice</span> <span class="jser-tag">benchmark</span> <span class="jser-tag">python</span> <span class="jser-tag">Rust</span> <span class="jser-tag">nodejs</span></p>

CIでベンチマークを取得してリグレッションを検知するサービス。
Python/Rust/Node.jsに対応している


----

0 comments on commit d95313c

Please sign in to comment.