Skip to content
Merged
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
295 changes: 295 additions & 0 deletions _i18n/ko/_posts/2026/2026-08-05-next16.3-npm-scan-vlt1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,295 @@
---
title: "2026-08-05: Next.js 16.3, npm에서 publish할 때 멀웨어 스캔, vlt 1.0"
author: "azu"
translator: rewrite0w0
layout: post
date : 2026-08-05T00:23:21.550Z
category: JSer
tags:
- Next.js
- React
- npm
- security
- vlt

---

JSer.info #777 - Next.js 16.3가 출시되었다.

- [Next.js 16.3 | Next.js](https://nextjs.org/blog/next-16-3)
- [Release v16.3.0 · vercel/next.js](https://github.com/vercel/next.js/releases/tag/v16.3.0)

옵트인 Instant Navigations으로, `cacheComponents`와 `partialPrefetching` 사용한 네비게이션 개선이 추가된다.
`import.meta.glob` 지원, App Router의 SSR 내부를 Web Streams에서 Node.js Streams으로 이행하여 성능 개선이 있다.
실험적 기능으로, Turbopack의 파일시스템 캐시와 메모리 해방 설정, Rust 기반 React Compiler, `useOffline`가 추가된다.

---

npm에서, publish할 때 멀웨어 스캔이 도입되었다.

- [npm publish-time malware scanning and dual-use metadata - GitHub Changelog](https://github.blog/changelog/2026-07-28-npm-publish-time-malware-scanning-and-dual-use-metadata/)

글에는, npm의 publish할 때 멀웨어스캔과 dual-use content 대상 메타데이터에 대해 다뤄진다.
새롭게 publish된 패키지는, 설치 가능하기 전에 스캔된다. 그 결과에 따라 통상적인 공개, 수동 리뷰, 블록처리가 된다.
또한, 멀웨어로 오인될 가능성이 있는 패키지에 `package.json`의 `contentPolicy`와 `DISCLOSURE` 파일로 dual-use content 선언하는 구조가 추가된다.
선언한 패키지는 2FA를 강제하는 trusted publishing, 대화적 publish, staged publishing에서 공개할 필요가 있다.


---

vlt 1.0가 출시되어, Hosted Package Registries와 ecosystem mirrors가 일반 공개되었다.

- [vlt 1.0 & Hosted Package Registries | vlt /vōlt/](https://www.vlt.io/blog/1-0)

의존 패키지의 라이프사이클 스크립트를 `vlt install`와 `vlt build`로 나눠서 처리하는 Phased Installations, npm 공개 레지스트리로의 OIDC Trusted Publishing에 대응한다.
Hosted Package Registries는 npm Registry API와 호환성이 있고, npm, pnpm, Yarn, Bun, Deno에서 이용 가능하며, 이미 알려진 멀웨어를 블록하는 구조를 갖고있다.

----

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

----

## pnpm 11.11-11.14 | pnpm
[pnpm.io/blog/releases/11.11-11.14](https://pnpm.io/blog/releases/11.11-11.14 "pnpm 11.11-11.14 | pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm 11.11-11.14 변경점에 대하여.
`pnpm change`/`pnpm lane`/`pnpm version -r`에 의한 workspace 출시 관리 추가.
`pnpm doctor`, `pnpm access`, `pnpm team` 명령어 추가.
`overrides`의 `"pkg@"` 형식을 지원, `pnpm run --sequential` 추가.
`pnpm install`의 path traversal 취약점, peer dependency 해결 deadlock, cold-cache 해결할 때 메모리 사용량 수정.


----

## Nuxt 4.5 · Nuxt Blog
[nuxt.com/blog/v4-5](https://nuxt.com/blog/v4-5 "Nuxt 4.5 · Nuxt Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Vue</span> <span class="jser-tag">vite</span> <span class="jser-tag">rspack</span> <span class="jser-tag">ReleaseNote</span></p>

Nuxt v4.5.0 출시.
Vite 8/Rspack 2/Rsbuild 으로 업데이트, 실험적인 SSR Streaming, Stable Error Codes 추가.
`useLayout`, Named Views, `useFetch`/`useAsyncData`에 `enabled` 옵션 추가.
`import.meta.envName`, `tracingChannel` 추가.
더불어 2026년 7월 31일 지원 종료된 Nuxt 3의, 마지막 출시인 v3.21.9도 공개됨.


----

## Type-Aware Linting Stable | The JavaScript Oxidation Compiler
[oxc.rs/blog/2026-07-22-type-aware-linting-stable](https://oxc.rs/blog/2026-07-22-type-aware-linting-stable "Type-Aware Linting Stable | The JavaScript Oxidation Compiler")
<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>

Oxlint의 Type-Aware Linting Stable 출시.
tsgolint v7.0.2000은 TypeScript v7.0.2 대응하는 형태로 버전을 TypeScript와 맞춤.
`options.typeAware`/`options.typeCheck`, `--type-check`, `--debug timings` 대응


----

## Webpack 5.109 | webpack
[webpack.js.org/blog/2026-07-24-webpack-5-109/](https://webpack.js.org/blog/2026-07-24-webpack-5-109/ "Webpack 5.109 | webpack")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">webpack</span> <span class="jser-tag">ReleaseNote</span></p>

webpack 5.109 출시.
CSS, HTML, TypeScript, 비동기 WebAssembly 내장 지원은, 대응하는 loader가 설정되지 않은 경우 유효인 `auto`가 기본으로.
실험적으로 `output.html`에서 `title`/`meta`/`base`, `output.resourceHints` 지원.
`import.meta.glob`/`import.meta.resolve`, CommonJS의 Module Concatenation 지원.
`infrastructureLogging.progress`, Worklet의 bundle, CSS의 `@custom-media` 지원도 추가.
webpack-dev-server 6.0.0도 동시에 공개, Express 5으로 업데이트, Node.js 22.15.0 이상이 필요함.


----

## Nuxt Security Patch Releases · Nuxt Blog
[nuxt.com/blog/v4-5-security](https://nuxt.com/blog/v4-5-security "Nuxt Security Patch Releases · Nuxt Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Vue</span> <span class="jser-tag">security</span> <span class="jser-tag">ReleaseNote</span></p>

Nuxt v4.5.1とv3.21.10 출시.
`vue.runtimeCompiler`를 유효한 Server Islands에서의 RCE, `routeRules` 허가 바이패스, Server Components의 DoS 수정.
`cache`/`swr`/`isr`를 사용하는 Nuxt 4에서의 `_payload.json` 캐시 데이터 유출, 개발할 때만 영향 주는 Nuxt DevTools의 RCE 수정.


----

## Release v1.62.0 · microsoft/playwright
[github.com/microsoft/playwright/releases/tag/v1.62.0](https://github.com/microsoft/playwright/releases/tag/v1.62.0 "Release v1.62.0 · microsoft/playwright")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">playwright</span> <span class="jser-tag">testing</span> <span class="jser-tag">ReleaseNote</span></p>

Playwright v1.62.0 출시.
Component Testing가 Story/Gallery 모델로 변경.
`AbortSignal`에 의한 조작 캔슬, `.webp` 스크린샷 지원, `Reporter.preprocess()` 추가.
`retryStrategy: "isolated"`, `apiResponse.timing()`, Playwright MCP를 CLI에 포함하도록 변경


----

## Ember 7.1 Released
[blog.emberjs.com/ember-released-7-1/](https://blog.emberjs.com/ember-released-7-1/ "Ember 7.1 Released")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Ember</span> <span class="jser-tag">ReleaseNote</span></p>

Ember.js 7.1 출시.
`{{element}}`/`{{and}}`/`{{or}}`/`{{eq}}`의 빌트인 헬퍼 추가.
strict template으로 `{{on}}`/`{{fn}}`/`{{hash}}`/`{{array}}` 자동 import 대응


----

## pnpm 11.15-11.19 | pnpm
[pnpm.io/blog/releases/11.15-11.19](https://pnpm.io/blog/releases/11.15-11.19 "pnpm 11.15-11.19 | pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm 11.15에서 11.19까지 변경점에 대하여.
`pnpm update`/`pnpm outdated`의 GitHub Actions 업데이트 대응, `pnpm update --changeset` 추가.
`update`/`audit` 설정, `publishConfig.name`, `save-prefix`의 `=` 지원 추가.
`pnpm self-update`가 객체 설정을 참조하지 않도록 변경, TTY없는 `pnpm login` 대응


----

## v1.20.0 | React Aria
[react-aria.adobe.com/releases/v1-20-0](https://react-aria.adobe.com/releases/v1-20-0 "v1.20.0 | React Aria")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p>

React Aria Components v1.20.0 출시.
Popover를 hover/focus/long press로 보이는 `PreviewTrigger`, 텍스트 입력 중에 보완을 다루는 `TokenField` alpha 추가.
`MenuTrigger`에 `trigger="contextMenu"` 추가, `useKeyboard` 단축키 API 개선.
Table내에 TextField 대화적 컴포넌트 지원


----

## Next.js 16.3 | Next.js
[nextjs.org/blog/next-16-3](https://nextjs.org/blog/next-16-3 "Next.js 16.3 | Next.js")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Next.js</span> <span class="jser-tag">React</span> <span class="jser-tag">ReleaseNote</span></p>

Next.js 16.3 출시.
옵트인 Instant Navigations으로, `cacheComponents`와 `partialPrefetching`에 의한 네비게이션 개선 추가.
`import.meta.glob` 지원, App Router의 SSR 내부를 Web Streams에서 Node.js Streams으로 이행함으로 성능 개선.
실험적 기능으로 Turbopack 파일시스템 캐시와 메모리 해방 설정, Rust 기반 React Compiler, `useOffline` 추가.

- [Release v16.3.0 · vercel/next.js](https://github.com/vercel/next.js/releases/tag/v16.3.0 "Release v16.3.0 · vercel/next.js")

----

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

Node.js v26.6.0 출시.
`ffi.getCurrentEventLoop()` 추가, `node:test`에 `context.log()`와 `test:log` 이벤트 추가.
`TestStream`イベントに`entryFile` 추가, npm 11.18.0으로 업데이트.


----

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

Node.js v24.19.0(LTS) 출시.
`Blob.prototype.textStream()`, `--experimental-import-text`, `fs.readFile()`에서의 `buffer` 옵션 지원.
`stream.compose`의 Stable화, TLS의 `certificateCompression` 옵션 추가.


----

## vlt 1.0 &amp; Hosted Package Registries | vlt /vōlt/
[www.vlt.io/blog/1-0](https://www.vlt.io/blog/1-0 "vlt 1.0 &amp; Hosted Package Registries | vlt /vōlt/")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">vlt</span> <span class="jser-tag">npm</span> <span class="jser-tag">package</span> <span class="jser-tag">security</span> <span class="jser-tag">ReleaseNote</span></p>

vlt 1.0 출시.
Hosted Package Registries와 ecosystem mirrors 일반 공개.
Graph Modifiers와 Catalogs 준비.
의존 패키지의 라이프사이클 스크립트를 `vlt install`와 `vlt build`로 나눠 다루는 Phased Installations, npm 공개 레지스트리 OIDC Trusted Publishing에 대응.
Hosted Package Registries은 npm Registry API와 호환성이 있어, npm, pnpm, Yarn, Bun, Deno에서 이용 가능, 알려진 멀웨러를 블록하는 구조임.


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

----

## Errors worth reading - nostics
[nostics.dev/](https://nostics.dev/ "Errors worth reading - nostics")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">library</span></p>

라이브러리 에러 코드를 관리하는 TypeScript 라이브러리.
에러 코드 대응하는 이유/수정 방법 정의, 소스 위치, 문서 URL를 갖는 `Diagnostic` 옵션을 정의 가능.
Nuxt에서 이용


----

## npm publish-time malware scanning and dual-use metadata - GitHub Changelog
[github.blog/changelog/2026-07-28-npm-publish-time-malware-scanning-and-dual-use-metadata/](https://github.blog/changelog/2026-07-28-npm-publish-time-malware-scanning-and-dual-use-metadata/ "npm publish-time malware scanning and dual-use metadata - GitHub Changelog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">npm</span> <span class="jser-tag">security</span> <span class="jser-tag">article</span></p>

npm의 publish할 때 멀웨어 스캔과 dual-use content 대상 메타 데이터에 대하여.
새롭게 publish된 패키지는, 설치 가능하기 전에 스캔 됨.
결과에 대해 통상적인 공개, 수동 리뷰, 블록처리 중 하나가 됨.
멀웨어로 오인될 가능성이 있는 패키지는 `package.json`의 `contentPolicy`와 `DISCLOSURE` 파일에서 dual-use content를 선언하는 구조 추가.
선언된 패키지는 2FA를 강제하는 trusted publishing, 대화적 publish, staged publishing에서 공개 필요함.


----

## Cloudflare Workers and Containers now support inbound TCP connections and gRPC | The Cloudflare Blog
[blog.cloudflare.com/grpc-workers/](https://blog.cloudflare.com/grpc-workers/ "Cloudflare Workers and Containers now support inbound TCP connections and gRPC | The Cloudflare Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">cloudflare</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">server</span> <span class="jser-tag">article</span></p>

Cloudflare Workers와 Containers의 Inbound TCP/gRPC 대응에 대하여.
Workers Runtime에 `connect(socket)` 핸들러 추가, Spectrum 경유 TCP 소켓를 Workerで에서 처리.
Durable Objects에서 Containers의 TCP포트로 전송하고, Container 상의 gRPC 서버를 양방향 스트리밍을 다룸.
`@connectrpc/connect`와 gRPC-web 변환에 의해, Worker만으로 Unary/Server Streaming의 gRPC API를 다룰 수 있음.


----

## Web Streams API 입문 ― 기본개념부터 실전까지
[zenn.dev/cybozu\_frontend/articles/web-streams-api-guide](https://zenn.dev/cybozu_frontend/articles/web-streams-api-guide "Web Streams API 입문 ― 기본개념부터 실전까지")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">article</span> <span class="jser-tag">nodejs</span> <span class="jser-tag">stream</span></p>

Web Streams API 기본 개념부터 사용 방법에 대하여.
`ReadableStream`/`TransformStream`/`WritableStream` 역할에 대한 설명. tee나 Backpressure, Node.js Stream와 차이도 다룸.


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

----

## octanejs/octane: Octane is an incredibly efficient React replacement UI library with improved developer ergonomics
[github.com/octanejs/octane](https://github.com/octanejs/octane "octanejs/octane: Octane is an incredibly efficient React replacement UI library with improved developer ergonomics")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span></p>

Inferno 후속 React의 Hooks이나 Suspense에 가까운 모델을 컴파일해서 동작하는 UI 라이브러리.
Virtual DOM 사용하지 않고, TSX/TSRX 지원, Vite/Rspack/Rsbuild 대상 플러그인 제공.
조건적으로 Hooks이나 의존 배열업싱 `useEffect`, SSR/Streaming SSR 대응.


----

## vercel-labs/scriptc: TypeScript-to-Native Compiler
[github.com/vercel-labs/scriptc](https://github.com/vercel-labs/scriptc "vercel-labs/scriptc: TypeScript-to-Native Compiler")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">compiler</span> <span class="jser-tag">Tools</span></p>

TypeScript를 네이티브 실행파일로 컴파일하는 컴파일러.
TypeScript Compiler API로 자료형 체크하고, Typed IR의 LLVM/C백엔드에서 네이티브 코드로 컴파일함.
quickjs-ng를 사용해서 동적 JS 라이브러리를 다루는 구조를 가지고 있음.

- [Limitations | scriptc](https://scriptc.dev/limitations "Limitations | scriptc")

----

## TanStack/charts: A tiny TypeScript visualization grammar for responsive, accessible, server-rendered charts—powered by granular D3 primitives.
[github.com/TanStack/charts](https://github.com/TanStack/charts "TanStack/charts: A tiny TypeScript visualization grammar for responsive, accessible, server-rendered charts—powered by granular D3 primitives.")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">SVG</span> <span class="jser-tag">graphic</span> <span class="jser-tag">library</span></p>

D3 기반 차트 라이브러리.
`defineChart`으로 프레임워크 비의존 차트 정의를 작성, React/Vue/Solid/Svelte의 어댑터로 렌더링 가능.
SVG SSR, Canvas 렌더러, 접근성, 반응형 레이아웃 다루는 런타임도 포함.

- [TanStack Charts](https://tanstack.com/charts/latest "TanStack Charts")

----
Loading