Repository navigation
chore(deps): update all libraries including Oxc - #768
Merged
Merged
Conversation
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Contributor
Changepacks@devup-ui/wasm@1.0.83 → 1.0.84 - bindings/devup-ui-wasm/package.jsonPatch
@devup-ui/bun-plugin@1.0.22 → 1.0.23 - packages/bun-plugin/package.jsonPatch
@devup-ui/components@0.1.60 → 0.1.61 - packages/components/package.jsonPatch
@devup-ui/eslint-plugin@1.0.22 → 1.0.23 - packages/eslint-plugin/package.jsonPatch
@devup-ui/next-plugin@1.0.90 → 1.0.91 - packages/next-plugin/package.jsonPatch
@devup-ui/react@1.0.44 → 1.0.45 - packages/react/package.jsonPatch
@devup-ui/reset-css@1.0.31 → 1.0.32 - packages/reset-css/package.jsonPatch
@devup-ui/rsbuild-plugin@1.0.67 → 1.0.68 - packages/rsbuild-plugin/package.jsonPatch
@devup-ui/vite-plugin@1.0.73 → 1.0.74 - packages/vite-plugin/package.jsonPatch
@devup-ui/webpack-plugin@1.0.71 → 1.0.72 - packages/webpack-plugin/package.jsonPatch
|
Codecov Report✅ All modified and coverable lines are covered by tests.
🚀 New features to boost your workflow:
|
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
marked this pull request as ready for review
October 18, 2026 17:38
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #682 (W70c: Oxc를 포함한 전체 라이브러리 최신화)
기존 #768을 재사용한 최종 구현 head는
e32736f0682e16af887b31eedb7663ade2093b6d입니다. 원래a8994a7a의 이력을 보존하고 main을 true-merge했습니다:62f34bbd(a899 + main4baa),fed276b5(a8e9284 + main103),f2e69166(fed + mainf014/#774). 모두 두 부모를 확인했습니다. force-push, amend, 자동 병합은 없습니다. Oxc와 Vinext를 분리하던 초기 제외 방침은 사용자 결정으로 폐기했고 현재 유일한 버전 예외는 React 18 검증 앱입니다.요약
@dependency-check-updates/cli@latest(실행 시0.3.0)를 루트에서 실행해 직접 선언 271개와 잠금 버전 집합 430개의 변경을 감사했습니다. 아래 표는 모든 변경 패키지의 이전/새 범위를 고유 값으로 묶고 전이 패키지 선택 버전도 빠짐없이 기록합니다.apps/react-18의 react/react-dom18.3.1 및 두 @types의^18.3만 보존합니다. 그 앱의 다른 의존성은 최신이며 다른 앱/패키지의 React는19.3.1입니다. 공개^18 || ^19, workspace/wildcard peer와 TypeScript7/native 및 ESLint용 TypeScript6 alias 계약은 유지합니다.동작 및 파손 수정
Oxc의 AST/API signature와 sourcemap9는 그대로 컴파일됐지만0.154의 새 module-goal 검사가 기존 hybrid
.cjs입력을 거부하여 실제 기존14개 테스트가 실패했습니다. 새 회귀를 먼저 추가한 RED는4215pass/41fail입니다.기존 제품의 입력과 출력은 bundler용 hybrid CommonJS입니다. 작성된 ES export와 생성된 CSS import는 이미 존재했고, CommonJS metadata는 React의 require 기반 renderer 선택에 사용됩니다. Module/Unambiguous로 일괄 전환하면 new.target/return/HTML comment를 잃고 import.meta/await를 새로 허용하므로 그런 우회는 하지 않았습니다. 실제 old/new parser96개 조합으로 이 차이를 확인했습니다.
새
parsing/goal_policy.rs는 stock AST/raw diagnostics/source_type을 수정하지 않습니다. JavaScript+CommonJS+비fatal인 경우에만 정확한 두 goal 메시지, 단 하나의 unlabelled/non-primary6-byte label, typed DIRECT Program.body의 실제 import/export keyword 시작 위치 및 원본 keyword bytes가 모두 일치하는 선언-goal 차이를 제품의 기존 hybrid 언어로 분류합니다. 문자열만 보고 오류를 지우는 방식이 아니며 알 수 없는 shape는 실패합니다. 중첩 import/export는 같은 메시지라도 top-level AST span과 맞지 않아 실제 오류로 유지됩니다.공유 정책은
parsing.rs, Emotion 진단 복원, styled 입력/출력 preflight에만 연결했습니다.visit.rsemitter나 모든 raw parser caller를 재작성하지 않았습니다. 출력 검사의 원래 JSX/TS suffix flags는 그대로이고 raw JSX를 거부하는6개 음성 회귀도 추가했습니다. 기존 CommonJS 실행/no-ES-import/ref callback 검증은 보존했습니다. vendor/fork/dependency-source patch, cache 수정, 새 의존성, SourceType override, 소스 wrapping, styling runtime은 없습니다.새56개 회귀는 pure/hybrid CommonJS new.target/return/HTML comment, export/decorator 형태, mixed top-level+nested 선언, meta/await/TS-in-JS, malformed/fatal 입력, source 위치/metadata/원본 diagnostics 불변성, hybrid dependency 및 Emotion 진단 복원을 다룹니다. 기존 테스트를 삭제하거나 기대 의미를 바꾸지 않았고 snapshot/baseline 변경은0개입니다.
기존 #768의 Panda2 explicit preset migration은 유지했고 최신2.2.0에서126-file codegen/Next16.4.2 webpack/type/static-page build가 성공했습니다. Box 대체나 fixture JSX 수정은 없습니다. mainf014가 다시 넣은 transient_props 로그의 비관리 앱 항목은 새 guard가 실제로 잡았고, 그 항목만 제거하여 WASM/React Patch와 note/date를 보존했습니다. #787은 사용자 병합 후 main release39131504983까지 성공했고 #769도 실제 갱신됐습니다.
새로 생기는 오류
정상적으로 지원하던 styling 입력에 새 build error는 없습니다. 새 parser가 진단하는 잘못된 중첩 ES 선언, CJS import.meta/await, 잘못된 JSX/TS/문법은 예외로 처리하지 않고 원래 파일·라인·열로 거부합니다. Fatal parse는 불완전한 AST를 근거로 분류하지 않아 raw goal 진단과 실제 syntax 진단을 모두 보존할 수 있습니다. 타입/Rust warning suppression, 테스트 삭제, stack 증가나 coverage 제외는 없습니다.
남는 한계와 통합
메시지+typed AST+정확한 span/byte 검증은 검사한 stock0.154의 명시적 제품 언어 정책입니다. 향후 parser 진단 shape가 바뀌면 fail-closed하고 회귀 테스트가 잡습니다. 정상 ECMAScript 문법 전체를 재구현하거나 진단을 무조건 무시하지 않습니다. 잠금 표는 이름별 전체 선택 버전 집합이며 importer별 해석이 아닙니다. upstream exact transitive pin은 override하지 않았습니다.
실제 컴파일 후31개 open PR immutable head에 대해 diff와 grep를 다시 확인했습니다. 변경 파일을 직접 수정하는15개는 #775,#763,#757,#756,#750,#745,#742,#740,#738,#737,#736,#730,#729,#728,#727이며 styled preflight/lowering 통합을 확인해야 합니다. 나머지도 migration base에서 재검증해야 하고 old green을 그대로 승계할 수 없습니다. 각 PR을 빌드했다고 주장하지 않습니다. 상세 API/file/effort/matrix는 코디네이터에게 전달한 W70c-oxc-migration.md와 live-overlap 산출물에 보존했습니다.
검증
--fail-on-incomplete를 사용했고 모두exit0/미갱신 항목0입니다. React18 manifest는 네 버전 예외를 제외한 실제 나머지 의존성만 선택했습니다.e32736f0682e16af887b31eedb7663ade2093b6d에서 SUCCESS입니다.publish,landing-next-e2e,vinext-rsc-css-e2e,react-18,benchmark모두 성공했고 PR의 release/deploy는 정상 skipped입니다.실제 루트 갱신 명령: 초기 단계 + 사용자 범위 확대 후 추가 명령
초기 단계의 -x는 실행 이력일 뿐 최종 제외 정책이 아닙니다. 후속 명령으로 Oxc/Vinext를 모두 갱신했습니다.
--rm이후 bun install/cargo build로 lock을 재생성했고 수동 lock hunk 병합은 없습니다.변경된 모든 직접 의존성의 이전/새 범위
변경된 모든 잠금 패키지의 이전/새 선택 버전 (전이 포함)