From aaefe6c0d2e2dd5166484bd0f9e6a2ff02ef1de6 Mon Sep 17 00:00:00 2001 From: Innei Date: Wed, 1 Apr 2026 14:08:37 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=B7=20chore(ci):=20unify=20CI=20packag?= =?UTF-8?q?e=20manager=20from=20bun=20to=20pnpm=20(#13464)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 👷 chore(ci): unify CI package manager from bun to pnpm Replace bun with pnpm across all GitHub Actions workflows to ensure lockfile consistency with pnpm-lock.yaml as single source of truth. * 👷 chore(ci): replace bun run with pnpm run in package.json scripts Fix build failure in CI where bun is not installed. Replace bun run references in root and e2e package.json scripts with pnpm run. * 👷 chore(e2e): replace bunx with npx in e2e server startup * 👷 chore(ci): create unified setup-env action, use pnpm install + bun run - Add .github/actions/setup-env composite action (pnpm + bun + node) - Refactor desktop-build-setup to use setup-env internally - All workflows: pnpm install for deps, bun run for scripts - Revert package.json/e2e scripts back to bun run - Remove all direct pnpm/action-setup and oven-sh/setup-bun from workflows * 🐛 fix(test): inline lexical ESM deps for vitest under pnpm pnpm's strict node_modules layout causes vitest ESM resolution to fail for lexical's named exports. Add lexical and @lexical/* to inline deps. --- .../actions/desktop-build-setup/action.yml | 10 +--- .github/actions/setup-env/action.yml | 29 +++++++++ .github/workflows/auto-i18n.yml | 10 ++-- .github/workflows/auto-tag-release.yml | 15 +---- .github/workflows/bundle-analyzer.yml | 15 +---- .github/workflows/claude-auto-e2e-testing.yml | 6 +- .github/workflows/claude-auto-testing.yml | 6 +- .github/workflows/claude.yml | 2 +- .github/workflows/e2e.yml | 10 ++-- .../workflows/issue-auto-close-duplicates.yml | 11 ++-- .github/workflows/manual-build-desktop.yml | 30 ++-------- .github/workflows/pr-build-desktop.yml | 43 +++---------- .github/workflows/release-desktop-beta.yml | 24 ++------ .github/workflows/release-desktop-canary.yml | 22 ++----- .github/workflows/release-desktop-nightly.yml | 22 ++----- .github/workflows/release-desktop-stable.yml | 10 +--- .github/workflows/release.yml | 14 +---- .github/workflows/sync-database-schema.yml | 10 ++-- .github/workflows/test.yml | 60 +++++-------------- package.json | 4 +- vitest.config.mts | 2 + 21 files changed, 113 insertions(+), 242 deletions(-) create mode 100644 .github/actions/setup-env/action.yml diff --git a/.github/actions/desktop-build-setup/action.yml b/.github/actions/desktop-build-setup/action.yml index 4cd2c5d27b..30827aef95 100644 --- a/.github/actions/desktop-build-setup/action.yml +++ b/.github/actions/desktop-build-setup/action.yml @@ -9,16 +9,10 @@ inputs: runs: using: composite steps: - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - run_install: false - - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ inputs.node-version }} - package-manager-cache: false - name: Install dependencies shell: bash diff --git a/.github/actions/setup-env/action.yml b/.github/actions/setup-env/action.yml new file mode 100644 index 0000000000..b60fa17fd6 --- /dev/null +++ b/.github/actions/setup-env/action.yml @@ -0,0 +1,29 @@ +name: Setup Environment +description: Setup Node.js, pnpm (install) and Bun (script runner) for workflows + +inputs: + node-version: + description: Node.js version + required: false + default: '24.11.1' + package-manager-cache: + description: Pass-through to actions/setup-node package-manager-cache + required: false + default: 'false' + +runs: + using: composite + steps: + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + run_install: false + + - name: Install bun + uses: oven-sh/setup-bun@v2 + + - name: Setup Node.js + uses: actions/setup-node@v6 + with: + node-version: ${{ inputs.node-version }} + package-manager-cache: ${{ inputs.package-manager-cache }} diff --git a/.github/workflows/auto-i18n.yml b/.github/workflows/auto-i18n.yml index 87cec45495..3e77fe71f2 100644 --- a/.github/workflows/auto-i18n.yml +++ b/.github/workflows/auto-i18n.yml @@ -3,7 +3,7 @@ name: Daily i18n Update on: schedule: - cron: '0 0 * * *' - workflow_dispatch: + workflow_dispatch: {} # Add permissions configuration permissions: @@ -25,13 +25,11 @@ jobs: with: ref: ${{ github.event.pull_request.head.ref }} - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: ${{ secrets.BUN_VERSION }} + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: Update i18n run: bun run i18n diff --git a/.github/workflows/auto-tag-release.yml b/.github/workflows/auto-tag-release.yml index 7c2e5ee945..a85471f8ab 100644 --- a/.github/workflows/auto-tag-release.yml +++ b/.github/workflows/auto-tag-release.yml @@ -74,22 +74,13 @@ jobs: git checkout main git pull --rebase origin main - - name: Setup Node.js + - name: Setup environment if: steps.release.outputs.should_tag == 'true' || steps.patch.outputs.should_tag == 'true' - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Install bun - if: steps.release.outputs.should_tag == 'true' || steps.patch.outputs.should_tag == 'true' - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + uses: ./.github/actions/setup-env - name: Install deps if: steps.release.outputs.should_tag == 'true' || steps.patch.outputs.should_tag == 'true' - run: bun i + run: pnpm install - name: Resolve patch version (patch bump) id: patch-version diff --git a/.github/workflows/bundle-analyzer.yml b/.github/workflows/bundle-analyzer.yml index ff8950df1c..537e75e9e9 100644 --- a/.github/workflows/bundle-analyzer.yml +++ b/.github/workflows/bundle-analyzer.yml @@ -1,7 +1,7 @@ name: Bundle Analyzer on: - workflow_dispatch: + workflow_dispatch: {} permissions: contents: read @@ -9,7 +9,6 @@ permissions: env: NODE_VERSION: 24.11.1 - BUN_VERSION: 1.2.23 jobs: bundle-analyzer: @@ -20,19 +19,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - - name: Setup Bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: ${{ env.BUN_VERSION }} - - - name: Setup pnpm - uses: pnpm/action-setup@v4 - - name: Install dependencies run: pnpm i diff --git a/.github/workflows/claude-auto-e2e-testing.yml b/.github/workflows/claude-auto-e2e-testing.yml index 31b33794c3..72a151a0cd 100644 --- a/.github/workflows/claude-auto-e2e-testing.yml +++ b/.github/workflows/claude-auto-e2e-testing.yml @@ -51,11 +51,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Bun - uses: oven-sh/setup-bun@v2 + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install dependencies - run: bun install --frozen-lockfile + run: pnpm install --frozen-lockfile - name: Install Playwright browsers (with system deps) run: bunx playwright install --with-deps chromium diff --git a/.github/workflows/claude-auto-testing.yml b/.github/workflows/claude-auto-testing.yml index 66722d40c9..d560527350 100644 --- a/.github/workflows/claude-auto-testing.yml +++ b/.github/workflows/claude-auto-testing.yml @@ -29,11 +29,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Bun - uses: oven-sh/setup-bun@v2 + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install dependencies - run: bun install --frozen-lockfile + run: pnpm install --frozen-lockfile - name: Configure Git run: | diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml index 3fd8ea3adc..0fbbc3d997 100644 --- a/.github/workflows/claude.yml +++ b/.github/workflows/claude.yml @@ -55,5 +55,5 @@ jobs: # Security: Allow only specific safe commands - no gh commands to prevent token exfiltration # These tools are restricted to code analysis and build operations only claude_args: | - --allowedTools "Bash(git:*),Bash(gh:*),Bash(bun run:*),Bash(pnpm run:*),Bash(npm run:*),Bash(npx:*),Bash(bunx:*),Bash(vitest:*),Bash(rg:*),Bash(find:*),Bash(sed:*),Bash(grep:*),Bash(awk:*),Bash(wc:*),Bash(xargs:*)" + --allowedTools "Bash(git:*),Bash(gh:*),Bash(bun run:*),Bash(bunx:*),Bash(pnpm:*),Bash(npm run:*),Bash(npx:*),Bash(vitest:*),Bash(rg:*),Bash(find:*),Bash(sed:*),Bash(grep:*),Bash(awk:*),Bash(wc:*),Bash(xargs:*)" --append-system-prompt "$(cat /tmp/claude-prompts/security-rules.md)" diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 5ed20e2446..1e5f6fc875 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -61,13 +61,11 @@ jobs: - name: Checkout uses: actions/checkout@v6 - - name: Setup Bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + - name: Setup environment + uses: ./.github/actions/setup-env - - name: Install dependencies (bun) - run: bun install + - name: Install dependencies + run: pnpm install - name: Install Playwright browsers (with system deps) run: bunx playwright install --with-deps chromium diff --git a/.github/workflows/issue-auto-close-duplicates.yml b/.github/workflows/issue-auto-close-duplicates.yml index 412abe52bd..61792da8fb 100644 --- a/.github/workflows/issue-auto-close-duplicates.yml +++ b/.github/workflows/issue-auto-close-duplicates.yml @@ -3,7 +3,7 @@ description: Auto-closes issues that are duplicates of existing issues on: schedule: - cron: '0 2 * * *' - workflow_dispatch: + workflow_dispatch: {} jobs: auto-close-duplicates: @@ -17,10 +17,11 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + - name: Setup environment + uses: ./.github/actions/setup-env + + - name: Install dependencies + run: pnpm install - name: Auto-close duplicate issues run: bun run .github/scripts/auto-close-duplicates.ts diff --git a/.github/workflows/manual-build-desktop.yml b/.github/workflows/manual-build-desktop.yml index 7dd291b509..974f21cc01 100644 --- a/.github/workflows/manual-build-desktop.yml +++ b/.github/workflows/manual-build-desktop.yml @@ -41,7 +41,6 @@ permissions: env: NODE_VERSION: 24.11.1 - BUN_VERSION: 1.2.23 jobs: version: @@ -102,18 +101,10 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node & pnpm - uses: ./.github/actions/setup-node-pnpm + - name: Setup build environment + uses: ./.github/actions/desktop-build-setup with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: 'false' - - # node-linker=hoisted 模式将可以确保 asar 压缩可用 - - name: Install dependencies - run: | - pnpm install --node-linker=hoisted & - npm run install-isolated --prefix=./apps/desktop & - wait - name: Set package version run: npm run workflow:set-desktop-version ${{ needs.version.outputs.version }} ${{ inputs.channel }} @@ -222,17 +213,10 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node & pnpm - uses: ./.github/actions/setup-node-pnpm + - name: Setup build environment + uses: ./.github/actions/desktop-build-setup with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: 'false' - - - name: Install dependencies - run: | - pnpm install --node-linker=hoisted & - npm run install-isolated --prefix=./apps/desktop & - wait - name: Set package version run: npm run workflow:set-desktop-version ${{ needs.version.outputs.version }} ${{ inputs.channel }} @@ -274,12 +258,10 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node & Bun - uses: ./.github/actions/setup-node-bun + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - bun-version: ${{ env.BUN_VERSION }} - package-manager-cache: 'false' - name: Download artifacts uses: actions/download-artifact@v7 diff --git a/.github/workflows/pr-build-desktop.yml b/.github/workflows/pr-build-desktop.yml index 8e58fdc919..bfceed9974 100644 --- a/.github/workflows/pr-build-desktop.yml +++ b/.github/workflows/pr-build-desktop.yml @@ -27,15 +27,11 @@ jobs: - name: Checkout base uses: actions/checkout@v6 - - name: Setup Node & Bun - uses: ./.github/actions/setup-node-bun - with: - node-version: 24.11.1 - bun-version: latest - package-manager-cache: 'false' + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install env: NODE_OPTIONS: --max-old-space-size=8192 @@ -93,29 +89,10 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node & pnpm - uses: ./.github/actions/setup-node-pnpm + - name: Setup build environment + uses: ./.github/actions/desktop-build-setup with: node-version: 24.11.1 - package-manager-cache: 'false' - - # node-linker=hoisted 模式将可以确保 asar 压缩可用 - - name: Install dependencies - run: pnpm install --node-linker=hoisted - - # 移除国内 electron 镜像配置,GitHub Actions 使用官方源更快 - - name: Remove China electron mirror from .npmrc - shell: bash - run: | - NPMRC_FILE="./apps/desktop/.npmrc" - if [ -f "$NPMRC_FILE" ]; then - sed -i.bak '/^electron_mirror=/d; /^electron_builder_binaries_mirror=/d' "$NPMRC_FILE" - rm -f "${NPMRC_FILE}.bak" - echo "✅ Removed electron mirror config from .npmrc" - fi - - - name: Install deps on Desktop - run: npm run install-isolated --prefix=./apps/desktop # 设置 package.json 的版本号 - name: Set package version @@ -228,12 +205,8 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node & Bun - uses: ./.github/actions/setup-node-bun - with: - node-version: 24.11.1 - bun-version: latest - package-manager-cache: 'false' + - name: Setup environment + uses: ./.github/actions/setup-env # 下载所有平台的构建产物 - name: Download artifacts @@ -251,13 +224,11 @@ jobs: - name: Install yaml only for merge step run: | cd scripts/electronWorkflow - # 在脚本目录创建最小 package.json,防止 bun 向上寻找根 package.json if [ ! -f package.json ]; then echo '{"name":"merge-mac-release","private":true}' > package.json fi bun add --no-save yaml@2.8.1 - # 合并 macOS YAML 文件 (使用 bun 运行 JavaScript) - name: Merge latest-mac.yml files run: bun run scripts/electronWorkflow/mergeMacReleaseFiles.js diff --git a/.github/workflows/release-desktop-beta.yml b/.github/workflows/release-desktop-beta.yml index 8d9f5abaaa..0d174a8287 100644 --- a/.github/workflows/release-desktop-beta.yml +++ b/.github/workflows/release-desktop-beta.yml @@ -62,19 +62,13 @@ jobs: - name: Checkout base uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Install deps - run: bun i + run: pnpm install - name: Lint run: bun run lint @@ -168,16 +162,10 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest # 下载所有平台的构建产物 - name: Download artifacts @@ -195,13 +183,11 @@ jobs: - name: Install yaml only for merge step run: | cd scripts/electronWorkflow - # 在脚本目录创建最小 package.json,防止 bun 向上寻找根 package.json if [ ! -f package.json ]; then echo '{"name":"merge-mac-release","private":true}' > package.json fi bun add --no-save yaml@2.8.1 - # 合并 macOS YAML 文件 (使用 bun 运行 JavaScript) - name: Merge latest-mac.yml files run: bun run scripts/electronWorkflow/mergeMacReleaseFiles.js diff --git a/.github/workflows/release-desktop-canary.yml b/.github/workflows/release-desktop-canary.yml index e2f06b6135..77b9253e6e 100644 --- a/.github/workflows/release-desktop-canary.yml +++ b/.github/workflows/release-desktop-canary.yml @@ -133,19 +133,13 @@ jobs: - name: Checkout base uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Install deps - run: bun i + run: pnpm install - name: Lint run: bun run lint @@ -247,16 +241,10 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Download artifacts uses: actions/download-artifact@v7 diff --git a/.github/workflows/release-desktop-nightly.yml b/.github/workflows/release-desktop-nightly.yml index 98a34f9148..c50a8460ff 100644 --- a/.github/workflows/release-desktop-nightly.yml +++ b/.github/workflows/release-desktop-nightly.yml @@ -128,19 +128,13 @@ jobs: - name: Checkout base uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Install deps - run: bun i + run: pnpm install - name: Lint run: bun run lint @@ -242,16 +236,10 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Download artifacts uses: actions/download-artifact@v7 diff --git a/.github/workflows/release-desktop-stable.yml b/.github/workflows/release-desktop-stable.yml index 684fd34e26..17fd5d40e1 100644 --- a/.github/workflows/release-desktop-stable.yml +++ b/.github/workflows/release-desktop-stable.yml @@ -266,16 +266,10 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 + - name: Setup environment + uses: ./.github/actions/setup-env with: node-version: ${{ env.NODE_VERSION }} - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest - name: Download artifacts uses: actions/download-artifact@v7 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2c4af5fde0..a75784d2f2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -37,19 +37,11 @@ jobs: with: token: ${{ secrets.GH_TOKEN }} - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: Lint run: bun run lint diff --git a/.github/workflows/sync-database-schema.yml b/.github/workflows/sync-database-schema.yml index a438c4b9dc..e9f7a6997e 100644 --- a/.github/workflows/sync-database-schema.yml +++ b/.github/workflows/sync-database-schema.yml @@ -15,15 +15,13 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: ${{ secrets.BUN_VERSION }} + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: sync database schema to dbdocs env: DBDOCS_TOKEN: ${{ secrets.DBDOCS_TOKEN }} - run: npm run db:visualize + run: bun run db:visualize diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 68debfaf4c..e1a5b92c41 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,19 +37,11 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: ${{ secrets.BUN_VERSION }} + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: Test packages with coverage run: | @@ -111,19 +103,11 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: Run tests run: bunx vitest --coverage --silent='passed-only' --reporter=default --reporter=blob --shard=${{ matrix.shard }}/2 @@ -146,13 +130,11 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install bun - uses: oven-sh/setup-bun@v2 - with: - bun-version: latest + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps - run: bun i + run: pnpm install - name: Download blob reports uses: actions/download-artifact@v7 @@ -181,16 +163,8 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 10 + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps run: pnpm install @@ -235,20 +209,14 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version: 24.11.1 - package-manager-cache: false - - - name: Install pnpm - uses: pnpm/action-setup@v4 + - name: Setup environment + uses: ./.github/actions/setup-env - name: Install deps run: pnpm i - name: Lint - run: npm run lint + run: bun run lint - name: Test Coverage run: pnpm --filter @lobechat/database test:coverage diff --git a/package.json b/package.json index 6e4cf5a267..6c7c16d9c7 100644 --- a/package.json +++ b/package.json @@ -341,7 +341,7 @@ "klavis": "^2.15.0", "langfuse": "^3.38.6", "langfuse-core": "^3.38.6", - "lexical": "^0.42.0", + "lexical": "0.42.0", "lucide-react": "^0.562.0", "mammoth": "^1.11.0", "marked": "^17.0.1", @@ -525,7 +525,7 @@ "vite-tsconfig-paths": "^6.1.1", "vitest": "^3.2.4" }, - "packageManager": "pnpm@10.20.0", + "packageManager": "pnpm@10.33.0+sha512.10568bb4a6afb58c9eb3630da90cc9516417abebd3fabbe6739f0ae795728da1491e9db5a544c76ad8eb7570f5c4bb3d6c637b2cb41bfdcdb47fa823c8649319", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org" diff --git a/vitest.config.mts b/vitest.config.mts index bcf1e70be4..bdf3fbc7f1 100644 --- a/vitest.config.mts +++ b/vitest.config.mts @@ -118,6 +118,8 @@ export default defineConfig({ '@pierre/diffs', '@pierre/diffs/react', 'lru_map', + 'lexical', + /@lexical\//, ], }, },