Skip to content
Merged
Show file tree
Hide file tree
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
Expand Up @@ -65,7 +65,7 @@ ESLint v9.34.0 リリース。
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p>

Bun v1.2.21 リリース。
`Bun.SQL`が MySQL/MariaDB/SQLite/PostgreSQL を利用できるように、YAML のネイティブサポート、Bun.secrets`の追加。
`Bun.SQL`が MySQL/MariaDB/SQLite/PostgreSQL を利用できるように、YAML のネイティブサポート、`Bun.secrets`の追加。

`Bun.build` API で`--compile`をサポート、`bunx`が`--package`フラグをサポートなど

Expand Down
235 changes: 235 additions & 0 deletions _i18n/ko/_posts/2025/2025-08-31-bun-v1.2.21-apollo-client-v4-nx.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,235 @@
---
title: "2025-08-31: Bun v1.2.21, Apollo Client v4, nx 패키지 침해와 공급망 공격"
author: "azu"
translator: rewrite0w0
layout: post
date: 2025-08-31T09:33:32.067Z
category: JSer
tags:
- nodejs
- ESLint
- express
- Bun
- GraphQL
---

JSer.info #746 - Bun v1.2.21 가 출시되었다.

- [Bun v1.2.21 | Bun Blog](https://bun.com/blog/bun-v1.2.21)

`Bun.SQL`가 MySQL/MariaDB/SQLite/PostgreSQL 대응, YAML 네이티브 지원이 추가되었다. 또한, `Bun.secrets` 추가, `Bun.build` API으로 `--compile` 지원, `bunx`으로 `--package` 플래그 지원이 포함된다.

---

Apollo Client 4.0 가 출시되었다.

- [Release @apollo/client@4.0.0 · apollographql/apollo-client](https://github.com/apollographql/apollo-client/releases/tag/%40apollo%2Fclient%404.0.0)
- [Migrating to Apollo Client 4.0 - Apollo GraphQL Docs](https://www.apollographql.com/docs/react/migrating/apollo-client-4-migration)

React 의존을 `@apollo/client/react`으로 분리해서 코어를 프레임워크에 의존하지 않게 함, 에러 핸들링 업데이트로 `ApolloError` 폐지, Link 클래스화하는 큰 변경 포함. 또한, `@defer` 지원, React Compiler으로 컴파일된 Hooks 공개, SSR API 업데이트 됨.

---

nx 패캐지에 멀웨어를 포함한 부정한 버전 공개되는 문제가 발생했다.

- [Malicious versions of Nx and some supporting plugins were published · Advisory · nrwl/nx](https://github.com/nrwl/nx/security/advisories/GHSA-cxm3-wv7p-598c)
- [Supply Chain Security Alert: Popular Nx Build System Package Compromised with Data-Stealing Malware - StepSecurity](https://www.stepsecurity.io/blog/supply-chain-security-alert-popular-nx-build-system-package-compromised-with-data-stealing-malware)

21.5.0, 20.9.0, 20.10.0 복수 버전에 문제가 있고, 데이터 훔치는 멀웨어가 포함되었다.
해당 버전을 사용하고 있는 경우는, nx 패키지 업데이트가 필요하다.

---

{% include inline-support.html %}

---

<h1 class="site-genre">헤드라인</h1>

---

## ESLint v9.34.0 released - ESLint - Pluggable JavaScript Linter

[eslint.org/blog/2025/08/eslint-v9.34.0-released/](https://eslint.org/blog/2025/08/eslint-v9.34.0-released/ "ESLint v9.34.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 v9.34.0 출시.
`--concurrency=auto`으로 multithread linting 지원

---

## Bun v1.2.21 | Bun Blog

[bun.com/blog/bun-v1.2.21](https://bun.com/blog/bun-v1.2.21 "Bun v1.2.21 | Bun Blog")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p>

Bun v1.2.21 출시.
`Bun.SQL`가 MySQL/MariaDB/SQLite/PostgreSQL 이용 가능, YAML 네이티브 지원, `Bun.secrets` 추가.

`Bun.build` API으로 `--compile` 지원, `bunx`가 `--package` 플래그 지원

---

## Release @apollo/client@4.0.0 · apollographql/apollo-client

[github.com/apollographql/apollo-client/releases/tag/%40apollo%2Fclient%404.0.0](https://github.com/apollographql/apollo-client/releases/tag/%40apollo%2Fclient%404.0.0 "Release @apollo/client@4.0.0 · apollographql/apollo-client")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span> <span class="jser-tag">GraphQL</span></p>

Apollo Client 4.0 출시.
React 의존을 `@apollo/client/react`으로 분리해서 코어를 프레임워크 의존하지 않게 함, `ApolloClient`에서 `link` 필수화 / `uri` 같은 단축 명령 삭제.
에러 핸들링 업데이트해서 `ApolloError` 폐지하고 에러 그 자체를 준비된 클래스로 변경, Link는 함수에서 클래스화, RxJS를 표준 Observable 구현에 선정.
`dataState` 프로퍼티에 쿼리 결과를 알 수 있도록, `@defer` 지원, `localState` 옵션 추가, React Compiler로 컴파일 된 Hooks 공개.
TypeScript 네임스페이스 간 자료형 정리 / 엄격화와 트리쉐이킹 개선, SSR API 업데이트(`prerenderStatic`).
`useLazyQuery`의 API 변경, `useQuery`에서 `onCompleted`와 `onError` 삭제.
마이그레이션을 위한 Codemod도 제공.

- [Migrating to Apollo Client 4.0 - Apollo GraphQL Docs](https://www.apollographql.com/docs/react/migrating/apollo-client-4-migration "Migrating to Apollo Client 4.0 - Apollo GraphQL Docs")

---

## Malicious versions of Nx were published · Advisory · nrwl/nx

[github.com/nrwl/nx/security/advisories/GHSA-cxm3-wv7p-598c](https://github.com/nrwl/nx/security/advisories/GHSA-cxm3-wv7p-598c "Malicious versions of Nx were published · Advisory · nrwl/nx")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">security</span> <span class="jser-tag">ReleaseNote</span></p>

`nx` 패키지 멀웨어를 포함된 버전이 공개된 문제.
다음 버전에는 문제가 있어서 대응 필요

- 21.5.0
- 20.9.0
- 20.10.0
- 21.6.0
- 20.11.0
- 21.7.0
- 21.8.0
- 20.12.0

관련 글:

- [Supply Chain Security Alert: Popular Nx Build System Package Compromised with Data-Stealing Malware - StepSecurity](https://www.stepsecurity.io/blog/supply-chain-security-alert-popular-nx-build-system-package-compromised-with-data-stealing-malware "Supply Chain Security Alert: Popular Nx Build System Package Compromised with Data-Stealing Malware - StepSecurity")

---

## Announcing Rspack 1.5 - Rspack

[rspack.rs/blog/announcing-1-5](https://rspack.rs/blog/announcing-1-5 "Announcing Rspack 1.5 - Rspack")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">rspack</span> <span class="jser-tag">ReleaseNote</span></p>

Rspack 1.5 출시.
Node.js 16 지원 종료.
Barrel file 최적화, `watchpack` 대신 네이티브 구현 추가, `@rspack/browser`으로 브라우저에서의 bundle 지원.
Rust로 Rspack 확장하는 binding 걸어둠, 정수 인라인화 지원

---

## Node.js v22.19.0 (LTS)

[nodejs.org/en/blog/release/v22.19.0](https://nodejs.org/en/blog/release/v22.19.0 "Node.js v22.19.0 (LTS) ")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">rlee</span></p>

Node.js v22.19.0 출시.
`NODE_USE_SYSTEM_CA=1` 추가, `--experimental-wasm-modules` 플래그 제거하는 변경, `zstdCompress` 사전을 지원

---

## Node.js v24.7.0 (Current)

[nodejs.org/en/blog/release/v24.7.0](https://nodejs.org/en/blog/release/v24.7.0 "Node.js v24.7.0 (Current)")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p>

Node.js v24.7.0 출시.
`node:crypto`에서 Post-Quantum Cryptography으로 ML-KEM/ML-DSA 지원, Web Cryptography API 지원 개선.
single executable applications에서 `execArgv` 필드 지원

---

## August 25, 2025 Release – React Spectrum Releases

[react-spectrum.adobe.com/releases/2025-08-25.html](https://react-spectrum.adobe.com/releases/2025-08-25.html "August 25, 2025 Release – React Spectrum Releases")

<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>

React Spectrum August 25, 2025 Release.
Popover/Tooltip 의 origin-aware overlay 애니메이션 추가, Autocomplete를 RC화, `GridListSection` 추가

---

<h1 class="site-genre">읽을거리</h1>

---

## Run Express.js on Cloudflare Workers

[jross.me/run-express-js-on-cloudflare-workers/](https://jross.me/run-express-js-on-cloudflare-workers/ "Run Express.js on Cloudflare Workers")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">express</span> <span class="jser-tag">article</span></p>

Cloudflare Workers의 `enable_nodejs_http_server_modules` 플래그로 express가 동작할 수 있는 이야기

---

## The Power Of The Intl API: A Definitive Guide To Browser-Native Internationalization — Smashing Magazine

[www.smashingmagazine.com/2025/08/power-intl-api-guide-browser-native-internationalization/](https://www.smashingmagazine.com/2025/08/power-intl-api-guide-browser-native-internationalization/ "The Power Of The Intl API: A Definitive Guide To Browser-Native Internationalization — Smashing Magazine")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">i18n</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">article</span></p>

Intl API에 대하여

---

## The Complete Guide to Self-Hosting Next.js at Scale — @dlhck

[dlhck.com/thoughts/the-complete-guide-to-self-hosting-nextjs-at-scale](https://dlhck.com/thoughts/the-complete-guide-to-self-hosting-nextjs-at-scale "The Complete Guide to Self-Hosting Next.js at Scale — @dlhck")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">Next.js</span> <span class="jser-tag">article</span></p>

Next.js 셀프호스팅할 때 조심해야할 점과 설정에 대하여

---

<h1 class="site-genre">소프트웨어, 도구, 라이브러리</h1>

---

## sidequestjs/sidequest: Sidequest is a modern, scalable background job processor for Node.js applications.

[github.com/sidequestjs/sidequest](https://github.com/sidequestjs/sidequest "sidequestjs/sidequest: Sidequest is a modern, scalable background job processor for Node.js applications.")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">library</span></p>

Node.js에서 백그라운드 작업을 처리하는 라이브러리.
`node:worker_threads` 사용하여 구현

- [Sidequest.js](https://sidequestjs.com/posts/intro-to-sidequest/ "Sidequest.js")

---

## adamhl8/filterql: A tiny query language for filtering structured data

[github.com/adamhl8/filterql](https://github.com/adamhl8/filterql "adamhl8/filterql: A tiny query language for filtering structured data")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">search</span></p>

데이터 스키마를 정의해서, 검색하는 DSL 제공하는 라이브러리.
일치 검색, 비교, 정렬하는 검색 연산자에 대응.

---

## image-js/image-js: Image processing and manipulation in JavaScript

[github.com/image-js/image-js](https://github.com/image-js/image-js "image-js/image-js: Image processing and manipulation in JavaScript")

<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">Image</span> <span class="jser-tag">library</span></p>

JavaScript에서 이미지 처리하는 라이브러리.
Node.js와 브라우저에서 동작하며, PNG/JPEG/TIFF 이미지 읽고 쓰기와, 픽셀 단위 처리, 필터, 마스킹 이미지 처리 제공

---