mirror of
https://github.com/bookorbit/bookorbit.git
synced 2026-11-03 00:11:37 -06:00
build(deps): upgrade Node.js to 26 and pnpm to 11
Update package manager configuration to pnpm 11.22.0 and Node.js requirement to Node 26 across Dockerfile, GitHub Actions workflows, root package.json, and workspace configurations. Upgrade dependencies, update GitHub Action versions, and remove deprecated scorecard workflow.
This commit is contained in:
@@ -5,11 +5,11 @@ inputs:
|
||||
node-version:
|
||||
description: Node.js version to install.
|
||||
required: false
|
||||
default: "24"
|
||||
default: "26"
|
||||
pnpm-version:
|
||||
description: pnpm version to activate via Corepack.
|
||||
required: false
|
||||
default: "10"
|
||||
default: "11"
|
||||
install:
|
||||
description: Whether to run pnpm install.
|
||||
required: false
|
||||
@@ -31,7 +31,7 @@ runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
||||
with:
|
||||
node-version: ${{ inputs.node-version }}
|
||||
|
||||
@@ -51,7 +51,7 @@ runs:
|
||||
|
||||
- name: Cache pnpm store
|
||||
if: ${{ inputs.cache == 'true' }}
|
||||
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
|
||||
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
|
||||
with:
|
||||
path: ${{ steps.pnpm-store.outputs.path }}
|
||||
key: ${{ runner.os }}-pnpm-${{ inputs.pnpm-version }}-store-${{ hashFiles(inputs.cache-dependency-path) }}
|
||||
|
||||
@@ -21,8 +21,8 @@ permissions:
|
||||
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
|
||||
NODE_VERSION: "24"
|
||||
PNPM_VERSION: "10"
|
||||
NODE_VERSION: "26"
|
||||
PNPM_VERSION: "11"
|
||||
REGISTRY: ghcr.io
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
|
||||
@@ -580,7 +580,7 @@ jobs:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
|
||||
|
||||
@@ -19,8 +19,8 @@ concurrency:
|
||||
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
|
||||
NODE_VERSION: "24"
|
||||
PNPM_VERSION: "10"
|
||||
NODE_VERSION: "26"
|
||||
PNPM_VERSION: "11"
|
||||
|
||||
jobs:
|
||||
synchronize:
|
||||
|
||||
@@ -28,8 +28,8 @@ on:
|
||||
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
|
||||
NODE_VERSION: "24"
|
||||
PNPM_VERSION: "10"
|
||||
NODE_VERSION: "26"
|
||||
PNPM_VERSION: "11"
|
||||
E2E_DATABASE_URL: postgres://bookorbit:bookorbit@localhost:5432/bookorbit_e2e
|
||||
NODE_ENV: test
|
||||
JWT_SECRET: scanner-e2e-secret-1234
|
||||
|
||||
@@ -17,7 +17,7 @@ concurrency:
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
NODE_VERSION: "24"
|
||||
NODE_VERSION: "26"
|
||||
|
||||
jobs:
|
||||
setup:
|
||||
@@ -33,7 +33,7 @@ jobs:
|
||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
|
||||
|
||||
@@ -15,8 +15,8 @@ permissions: read-all
|
||||
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
|
||||
NODE_VERSION: "24"
|
||||
PNPM_VERSION: "10"
|
||||
NODE_VERSION: "26"
|
||||
PNPM_VERSION: "11"
|
||||
|
||||
jobs:
|
||||
commitlint:
|
||||
|
||||
@@ -34,9 +34,9 @@ jobs:
|
||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v6
|
||||
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
||||
with:
|
||||
node-version: 24
|
||||
node-version: 26
|
||||
|
||||
- name: Test generators
|
||||
run: node --test scripts/star-history/generate.test.mjs scripts/crowdin-stats/generate.test.mjs
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
name: OpenSSF Scorecard
|
||||
|
||||
on:
|
||||
branch_protection_rule:
|
||||
push:
|
||||
branches: [main]
|
||||
schedule:
|
||||
- cron: "30 1 * * 6"
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: scorecard-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
analysis:
|
||||
name: Scorecard analysis
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 15
|
||||
if: github.event.repository.default_branch == github.ref_name || github.event_name == 'branch_protection_rule'
|
||||
permissions:
|
||||
actions: read # Read workflow metadata used by Scorecard checks.
|
||||
contents: read # Read the repository being analyzed.
|
||||
id-token: write # Publish signed Scorecard results.
|
||||
security-events: write # Upload the SARIF report to code scanning.
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Run Scorecard
|
||||
uses: ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc # v2.4.4
|
||||
with:
|
||||
results_file: results.sarif
|
||||
results_format: sarif
|
||||
publish_results: true
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
||||
with:
|
||||
name: scorecard-results
|
||||
path: results.sarif
|
||||
retention-days: 5
|
||||
|
||||
- name: Upload to code scanning
|
||||
uses: github/codeql-action/upload-sarif@5595ccaf912efad79be6eef63a5619ff05969be3 # v4
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
ARG NODE_IMAGE=node:24.11-alpine@sha256:682368d8253e0c3364b803956085c456a612d738bd635926d73fa24db3ce53d7
|
||||
ARG NODE_IMAGE=node:26.7.0-alpine@sha256:aadf416b2cdce311a8811ba3f0608a61b77dbf997500e2eafe781b51f6a0b019
|
||||
|
||||
FROM ${NODE_IMAGE} AS base
|
||||
RUN npm install -g pnpm@10.33.4
|
||||
RUN npm install -g pnpm@11.22.0
|
||||
|
||||
# Stage 1: Build client
|
||||
FROM base AS client-builder
|
||||
|
||||
+17
-17
@@ -66,10 +66,10 @@
|
||||
"@tailwindcss/vite": "^4.3.3",
|
||||
"@tanstack/vue-table": "^8.21.3",
|
||||
"@tanstack/vue-virtual": "^3.13.35",
|
||||
"@tiptap/extension-link": "^3.29.2",
|
||||
"@tiptap/pm": "^3.29.2",
|
||||
"@tiptap/starter-kit": "^3.29.2",
|
||||
"@tiptap/vue-3": "^3.29.2",
|
||||
"@tiptap/extension-link": "^3.30.1",
|
||||
"@tiptap/pm": "^3.30.1",
|
||||
"@tiptap/starter-kit": "^3.30.1",
|
||||
"@tiptap/vue-3": "^3.30.1",
|
||||
"@types/howler": "^2.2.13",
|
||||
"@vueuse/core": "^14.4.0",
|
||||
"canvas-confetti": "^1.9.4",
|
||||
@@ -89,40 +89,40 @@
|
||||
"vite-plugin-pwa": "^1.3.0",
|
||||
"vue": "^3.5.41",
|
||||
"vue-draggable-plus": "^0.6.1",
|
||||
"vue-echarts": "8.1.0-beta.2",
|
||||
"vue-echarts": "8.1.0",
|
||||
"vue-i18n": "^11.4.8",
|
||||
"vue-router": "^5.2.0",
|
||||
"vue-sonner": "^2.0.9",
|
||||
"vue-virtual-scroller": "^3.0.4"
|
||||
"vue-virtual-scroller": "^3.0.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@intlify/message-compiler": "^11.4.8",
|
||||
"@tsconfig/node24": "^24.0.4",
|
||||
"@tsconfig/node24": "^24.0.5",
|
||||
"@types/canvas-confetti": "^1.9.0",
|
||||
"@types/jsdom": "^28.0.3",
|
||||
"@types/node": "^26.1.1",
|
||||
"@types/node": "^26.2.0",
|
||||
"@vite-pwa/assets-generator": "^1.0.2",
|
||||
"@vitejs/plugin-vue": "^6.0.8",
|
||||
"@vitest/coverage-v8": "^4.1.10",
|
||||
"@vitest/eslint-plugin": "^1.6.24",
|
||||
"@vitest/eslint-plugin": "^1.6.27",
|
||||
"@vue/eslint-config-typescript": "^14.9.0",
|
||||
"@vue/test-utils": "^2.4.11",
|
||||
"@vue/tsconfig": "^0.9.1",
|
||||
"eslint": "^10.8.0",
|
||||
"eslint": "^10.8.1",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-oxlint": "~1.73.0",
|
||||
"eslint-plugin-vue": "~10.9.2",
|
||||
"eslint-plugin-oxlint": "~1.78.0",
|
||||
"eslint-plugin-vue": "~10.10.0",
|
||||
"jiti": "^2.7.0",
|
||||
"jsdom": "^29.1.1",
|
||||
"npm-run-all2": "^9.0.2",
|
||||
"oxlint": "~1.73.0",
|
||||
"prettier": "3.9.5",
|
||||
"npm-run-all2": "^9.0.3",
|
||||
"oxlint": "~1.78.0",
|
||||
"prettier": "3.9.6",
|
||||
"tw-animate-css": "^1.4.0",
|
||||
"typescript": "~6.0.3",
|
||||
"vite": "^8.1.5",
|
||||
"vite": "^8.2.1",
|
||||
"vite-plugin-vue-devtools": "^8.2.1",
|
||||
"vitest": "^4.1.10",
|
||||
"vue-tsc": "^3.3.8"
|
||||
"vue-tsc": "^3.3.10"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^20.19.0 || >=22.12.0"
|
||||
|
||||
+8
-46
@@ -12,7 +12,7 @@
|
||||
"url": "https://github.com/bookorbit/bookorbit/issues"
|
||||
},
|
||||
"private": true,
|
||||
"packageManager": "pnpm@10.32.1",
|
||||
"packageManager": "pnpm@11.22.0",
|
||||
"scripts": {
|
||||
"setup": "bash ./scripts/bootstrap/local.sh",
|
||||
"dev": "concurrently --names \"types,server,client\" --prefix-colors \"cyan,blue,green\" \"pnpm --filter @bookorbit/types dev\" \"pnpm run dev:server\" \"pnpm run dev:client\"",
|
||||
@@ -54,20 +54,20 @@
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=24",
|
||||
"pnpm": ">=9"
|
||||
"pnpm": ">=11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@commitlint/cli": "^21.2.1",
|
||||
"@commitlint/config-conventional": "^21.2.0",
|
||||
"@commitlint/cli": "^21.2.2",
|
||||
"@commitlint/config-conventional": "^21.2.2",
|
||||
"@semantic-release/commit-analyzer": "^13.0.1",
|
||||
"@semantic-release/github": "^12.0.9",
|
||||
"@semantic-release/release-notes-generator": "^14.1.1",
|
||||
"concurrently": "^10.0.4",
|
||||
"conventional-changelog-conventionalcommits": "^9.3.1",
|
||||
"concurrently": "^10.0.5",
|
||||
"conventional-changelog-conventionalcommits": "^10.3.0",
|
||||
"husky": "^9.1.7",
|
||||
"lint-staged": "^17.2.0",
|
||||
"lint-staged": "^17.3.0",
|
||||
"prettier": "^3.9.6",
|
||||
"semantic-release": "^25.0.8"
|
||||
"semantic-release": "^25.0.9"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{md,json,yml,yaml}": [
|
||||
@@ -81,43 +81,5 @@
|
||||
"pnpm --dir server exec eslint --fix",
|
||||
"pnpm exec prettier --write"
|
||||
]
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"@xhmikosr/decompress": "^11.1.3",
|
||||
"@esbuild-kit/core-utils>esbuild": "^0.25.12",
|
||||
"@nestjs/swagger>js-yaml": "^5.2.2",
|
||||
"brace-expansion@>=5.0.0 <5.0.9": "^5.0.9",
|
||||
"engine.io": "^6.6.7",
|
||||
"esbuild": "^0.28.1",
|
||||
"fastify": "^5.10.0",
|
||||
"fast-uri": "^3.1.5",
|
||||
"fast-xml-builder": "^1.1.7",
|
||||
"find-my-way": "^9.7.0",
|
||||
"form-data": "^4.0.6",
|
||||
"piscina": "^4.9.3",
|
||||
"qs": "^6.15.2",
|
||||
"ws": "^8.21.0"
|
||||
},
|
||||
"packageExtensions": {
|
||||
"@embedpdf/utils@2.15.0": {
|
||||
"dependencies": {
|
||||
"@embedpdf/models": "2.15.0"
|
||||
}
|
||||
}
|
||||
},
|
||||
"onlyBuiltDependencies": [
|
||||
"@nestjs/core",
|
||||
"@parcel/watcher",
|
||||
"@swc/core",
|
||||
"esbuild",
|
||||
"sharp",
|
||||
"unrs-resolver"
|
||||
],
|
||||
"patchedDependencies": {
|
||||
"@embedpdf/core@2.15.0": "patches/@embedpdf__core@2.15.0.patch",
|
||||
"@embedpdf/engines@2.15.0": "patches/@embedpdf__engines@2.15.0.patch",
|
||||
"@embedpdf/plugin-scroll@2.15.0": "patches/@embedpdf__plugin-scroll@2.15.0.patch"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Generated
+12660
-7184
File diff suppressed because it is too large
Load Diff
+61
-3
@@ -1,4 +1,62 @@
|
||||
packages:
|
||||
- 'client'
|
||||
- 'server'
|
||||
- 'packages/*'
|
||||
- "client"
|
||||
- "server"
|
||||
- "packages/*"
|
||||
overrides:
|
||||
"@xhmikosr/decompress": ^11.1.4
|
||||
"@esbuild-kit/core-utils>esbuild": ^0.25.12
|
||||
"@nestjs/swagger>js-yaml": ^5.3.0
|
||||
"@typescript-eslint/eslint-plugin": ^8.67.0
|
||||
"@typescript-eslint/parser": ^8.67.0
|
||||
"@typescript-eslint/utils": ^8.67.0
|
||||
"brace-expansion@>=5.0.0 <5.0.9": ^5.0.9
|
||||
engine.io: ^6.6.7
|
||||
esbuild: ^0.28.2
|
||||
fastify: ^5.10.0
|
||||
fast-uri: ^3.1.5
|
||||
fast-xml-builder: ^1.3.1
|
||||
find-my-way: ^9.8.0
|
||||
form-data: ^4.0.6
|
||||
piscina: ^4.9.3
|
||||
qs: ^6.15.2
|
||||
typescript-eslint: ^8.67.0
|
||||
ws: ^8.21.3
|
||||
packageExtensions:
|
||||
"@embedpdf/utils@2.15.0":
|
||||
dependencies:
|
||||
"@embedpdf/models": 2.15.0
|
||||
allowBuilds:
|
||||
"@ffmpeg-installer/darwin-arm64": true
|
||||
"@ffmpeg-installer/darwin-x64": true
|
||||
"@ffmpeg-installer/linux-arm": true
|
||||
"@ffmpeg-installer/linux-arm64": true
|
||||
"@ffmpeg-installer/linux-ia32": true
|
||||
"@ffmpeg-installer/linux-x64": true
|
||||
"@ffmpeg-installer/win32-ia32": true
|
||||
"@ffmpeg-installer/win32-x64": true
|
||||
"@ffprobe-installer/darwin-arm64": true
|
||||
"@ffprobe-installer/darwin-x64": true
|
||||
"@ffprobe-installer/linux-arm": true
|
||||
"@ffprobe-installer/linux-arm64": true
|
||||
"@ffprobe-installer/linux-ia32": true
|
||||
"@ffprobe-installer/linux-x64": true
|
||||
"@ffprobe-installer/win32-ia32": true
|
||||
"@ffprobe-installer/win32-x64": true
|
||||
"@nestjs/core": true
|
||||
"@parcel/watcher": true
|
||||
"@scarf/scarf": false
|
||||
"@swc/core": true
|
||||
esbuild: true
|
||||
sharp: true
|
||||
unrs-resolver: true
|
||||
vue-demi: false
|
||||
patchedDependencies:
|
||||
"@embedpdf/core@2.15.0": patches/@embedpdf__core@2.15.0.patch
|
||||
"@embedpdf/engines@2.15.0": patches/@embedpdf__engines@2.15.0.patch
|
||||
"@embedpdf/plugin-scroll@2.15.0": patches/@embedpdf__plugin-scroll@2.15.0.patch
|
||||
minimumReleaseAgeExclude:
|
||||
- "@tsconfig/node24@24.0.5"
|
||||
- "@vue/language-core@3.3.10"
|
||||
- concurrently@10.0.5
|
||||
- jose@6.2.9
|
||||
- vue-tsc@3.3.10
|
||||
|
||||
+14
-14
@@ -55,20 +55,20 @@
|
||||
"@fastify/cookie": "^11.1.2",
|
||||
"@fastify/formbody": "^8.0.2",
|
||||
"@fastify/helmet": "^13.1.0",
|
||||
"@fastify/multipart": "^10.1.0",
|
||||
"@fastify/multipart": "^10.1.1",
|
||||
"@fastify/static": "^10.1.3",
|
||||
"@nestjs/common": "^11.1.29",
|
||||
"@nestjs/common": "^11.2.1",
|
||||
"@nestjs/config": "^4.0.4",
|
||||
"@nestjs/core": "^11.1.29",
|
||||
"@nestjs/core": "^11.2.1",
|
||||
"@nestjs/jwt": "^11.0.2",
|
||||
"@nestjs/passport": "^11.0.5",
|
||||
"@nestjs/platform-fastify": "^11.1.29",
|
||||
"@nestjs/platform-socket.io": "^11.1.29",
|
||||
"@nestjs/platform-fastify": "^11.2.1",
|
||||
"@nestjs/platform-socket.io": "^11.2.1",
|
||||
"@nestjs/schedule": "^6.1.3",
|
||||
"@nestjs/swagger": "^11.4.6",
|
||||
"@nestjs/terminus": "^11.1.1",
|
||||
"@nestjs/throttler": "^6.5.0",
|
||||
"@nestjs/websockets": "^11.1.29",
|
||||
"@nestjs/websockets": "^11.2.1",
|
||||
"@types/archiver": "^8.0.0",
|
||||
"archiver": "~8.0.0",
|
||||
"bcryptjs": "^3.0.3",
|
||||
@@ -83,7 +83,7 @@
|
||||
"fastest-levenshtein": "^1.0.16",
|
||||
"fastify": "^5.11.3",
|
||||
"iconv-lite": "^0.7.3",
|
||||
"jose": "^6.2.8",
|
||||
"jose": "^6.2.9",
|
||||
"langs": "^2.0.0",
|
||||
"ms": "^2.1.3",
|
||||
"mysql2": "^3.23.3",
|
||||
@@ -110,13 +110,13 @@
|
||||
"@ffprobe-installer/ffprobe": "^2.1.2",
|
||||
"@nestjs/cli": "^11.0.24",
|
||||
"@nestjs/schematics": "^11.1.0",
|
||||
"@nestjs/testing": "^11.1.28",
|
||||
"@nestjs/testing": "^11.2.1",
|
||||
"@swc/cli": "^0.8.1",
|
||||
"@swc/core": "^1.15.46",
|
||||
"@swc/core": "^1.16.0",
|
||||
"@types/bcrypt": "^6.0.0",
|
||||
"@types/express": "^5.0.6",
|
||||
"@types/langs": "^2.0.5",
|
||||
"@types/node": "^26.1.1",
|
||||
"@types/node": "^26.2.0",
|
||||
"@types/nodemailer": "^8.0.1",
|
||||
"@types/passport-jwt": "^4.0.1",
|
||||
"@types/pg": "^8.21.0",
|
||||
@@ -124,10 +124,10 @@
|
||||
"@types/unzipper": "^0.10.11",
|
||||
"@vitest/coverage-v8": "^4.1.10",
|
||||
"drizzle-kit": "^0.31.10",
|
||||
"eslint": "^10.8.0",
|
||||
"eslint": "^10.8.1",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-prettier": "^5.5.6",
|
||||
"globals": "^17.8.0",
|
||||
"globals": "^17.11.0",
|
||||
"pino-pretty": "^13.1.3",
|
||||
"prettier": "^3.9.6",
|
||||
"source-map-support": "^0.5.21",
|
||||
@@ -135,9 +135,9 @@
|
||||
"ts-loader": "^9.6.2",
|
||||
"ts-node": "^10.9.2",
|
||||
"tsconfig-paths": "^4.2.0",
|
||||
"tsx": "^4.23.1",
|
||||
"tsx": "^4.23.12",
|
||||
"typescript": "^6.0.3",
|
||||
"typescript-eslint": "^8.65.0",
|
||||
"typescript-eslint": "^8.67.0",
|
||||
"vitest": "^4.1.10"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user