This is an automated email from the ASF dual-hosted git repository.

wilfred-s pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/yunikorn-web.git


The following commit(s) were added to refs/heads/master by this push:
     new 80b0ec4  [YUNIKORN-3292] move to pnpm 11 for web UI build (#275)
80b0ec4 is described below

commit 80b0ec4a097f9430ac4361462fce0eb0f6dcf77e
Author: Wilfred Spiegelenburg <[email protected]>
AuthorDate: Thu Jun 4 12:58:15 2026 +1000

    [YUNIKORN-3292] move to pnpm 11 for web UI build (#275)
    
    Change pnpm version to 11 in all files. Move "pnpm" and the overrides
    from package.json to the pnpm-workspace.yaml file. Block post install
    scripts for all dependencies. Clean up pnpm-lock.yaml.
    
    Fix install of pnpm version in Dockerfile and local build script
    Move to the latest node 24 release.
    
    Closes: #275
    
    Signed-off-by: Wilfred Spiegelenburg <[email protected]>
---
 .nvmrc              |   2 +-
 Dockerfile          |   8 +-
 Makefile            |   4 +-
 package.json        |  29 +++----
 pnpm-lock.yaml      | 215 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 pnpm-workspace.yaml |  13 ++++
 6 files changed, 239 insertions(+), 32 deletions(-)

diff --git a/.nvmrc b/.nvmrc
index fd655f8..7858245 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-24.14
+24.16
diff --git a/Dockerfile b/Dockerfile
index c3ae186..d040974 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -15,7 +15,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-ARG NODE_VERSION=20.20
+ARG NODE_VERSION=24.16
 # Buildstage: use the local architecture
 FROM --platform=$BUILDPLATFORM node:${NODE_VERSION}-alpine AS buildstage
 
@@ -23,10 +23,10 @@ WORKDIR /work
 # Only copy what is needed for the build
 COPY *.json *.js *.yaml .browserslistrc /work/
 COPY src /work/src/
-# must be declared here
-ARG PNPM_VERSION=10.28.0
+ARG PNPM_VERSION=11.5
 RUN npm install -g pnpm@$PNPM_VERSION
-RUN PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 pnpm i
+RUN pnpm fetch
+RUN pnpm install -r --offline
 RUN pnpm build:prod
 
 # Imagestage: use scratch base image
diff --git a/Makefile b/Makefile
index e52ad77..b1bc12e 100644
--- a/Makefile
+++ b/Makefile
@@ -133,11 +133,11 @@ NPM := npm
 endif
 
 # pnpm
-PNPM_VERSION=10.28.2
+PNPM_VERSION=11.5
 PNPM_BIN=$(TOOLS_DIR)/bin/pnpm
 
 # @angular/cli
-ANGULAR_CLI_VERSION=20.3.20
+ANGULAR_CLI_VERSION=21.2.0
 NG_BIN=$(TOOLS_DIR)/bin/ng
 
 WEB_SHA=$(shell git rev-parse --short=12 HEAD)
diff --git a/package.json b/package.json
index cd3e577..7bd2d82 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,18 @@
 {
   "name": "yunikorn-web",
   "version": "0.0.0",
+  "private": true,
+  "engines": {
+    "node": ">=20.20.0",
+    "pnpm": "^11.5"
+  },
+  "devEngines": {
+    "packageManager": {
+      "name": "pnpm",
+      "version": ">=11.0.0 <12.0.0",
+      "onFail": "download"
+    }
+  },
   "scripts": {
     "preinstall": "npx only-allow pnpm",
     "ng": "ng",
@@ -15,7 +27,6 @@
     "test:coverage": "ng test --coverage --watch=false",
     "prettify": "prettier --config ./.prettierrc --write 
'src/**/*.{js,ts,json,css,scss,md,html}'"
   },
-  "private": true,
   "husky": {
     "hooks": {
       "pre-commit": "lint-staged"
@@ -78,21 +89,5 @@
     "prettier": "^3.7.4",
     "typescript": "~5.9.2",
     "vitest": "^4.1.4"
-  },
-  "engines": {
-    "node": ">=20.20.0",
-    "pnpm": "10.x"
-  },
-  "packageManager": "[email protected]",
-  "pnpm": {
-    "overrides": {
-      "[email protected]>qs": "6.14.2",
-      "fast-uri@<=3.1.1": "3.1.2",
-      "lodash@>=4.0.0 <=4.18.0": "4.18.1",
-      "hono@<4.12.18": "4.12.18",
-      "postcss@<8.5.10": "8.5.10",
-      "picomatch@>=4.0.0 <4.0.4": "4.0.4",
-      "picomatch@< 2.3.2": "2.3.2"
-    }
   }
 }
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 34742bd..d680dfc 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,3 +1,202 @@
+---
+lockfileVersion: '9.0'
+
+importers:
+
+  .:
+    configDependencies: {}
+    packageManagerDependencies:
+      '@pnpm/exe':
+        specifier: 11.5.0
+        version: 11.5.0
+      pnpm:
+        specifier: 11.5.0
+        version: 11.5.0
+
+packages:
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-4hzOXq1HHrNPjwI8k1rt7Ot/Yrdx1JX3pn/L/M95ii1gid1Q6ZK6dVg4+gbSgUdPsYmYDZ4/Yfc0A7vd5C0ndg==}
+    hasBin: true
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-NV9HdzzCB0epuI9LqZZeTaqjH3OweNQSQCS76GzEkFxJHS9e5Gvu7tgex91gxVL7bCZ+R4yr/3d3yexBFtr2ug==}
+    cpu: [arm64]
+    os: [linux]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-vH83rRx4iPk/bwm9pBVCn+5hXbcQI66I/4zk6Vc09SusJgTqOdbN4U6VhMcGIqSEdr901ksYGCyIbMv7f6Guew==}
+    cpu: [x64]
+    os: [linux]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-2nOnMW1rSwGv22q2yZz1HlGT3ly/Ij8wUlX0NB4n+Krx7nETRHA3MgWsbkVejxHknDcTulRVudAghuX9rgrXcw==}
+    cpu: [arm64]
+    os: [linux]
+    libc: [musl]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-ONOC1Mg0JusHtjzkRlre9di1QO+GAjy4HP7jMjDx21yGhrSheNdUweTXbekMH1EflRd19kTU6d8M3zewJFPtVg==}
+    cpu: [x64]
+    os: [linux]
+    libc: [musl]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-od0ALdTxs4A7s5vAH5q2l2phzCJb98+PVOW1rq7BGpWGeYxQ+EwvL+vq0KaO6iLsn/eVVoncCkgZ/k6QNYuTgw==}
+    cpu: [arm64]
+    os: [darwin]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-9HqbI80FjVVqFx4+EPxYYNfeP9Sx69W6kYqUDvOJn9G7RJ/2NNNQ898cVHTMpXlW1/PrMEcijmdpa/NjZIrWiQ==}
+    cpu: [arm64]
+    os: [win32]
+
+  '@pnpm/[email protected]':
+    resolution: {integrity: 
sha512-Q89CQqFGAsWmfvHZs5Kbbar45q3GBYtfAdPUCiVMVNJoLi3dsBS2LCvUq8ak3AufkFDaJBpvhaFcDP2M1NXr3A==}
+    cpu: [x64]
+    os: [win32]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-ruy44Lpepdk1FqDz38vExBY/PVUsjxZA+chd9wozjUH9JjuDT/HEaQYA6wYN9mf041l0yLVar6BCZuWABJvHSA==}
+    engines: {node: '>= 10'}
+    cpu: [arm64]
+    os: [darwin]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-By85MSWrMZa+c26TcnAy8SDk0sTUkYlNnwknSchkhHpGXOtjNDUOxJE9oByBnGbeuIE1PiQsxDG3Ud+IVV9yuA==}
+    engines: {node: '>= 10'}
+    cpu: [x64]
+    os: [darwin]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-7P+er8+rP9iNeN+bfmccM4hTAaLP6PQJPKWSA4iSk2bNvo6KU6RyPgYeHxXmzNKzPVRcypZQTpFgstHam6maVg==}
+    engines: {node: '>= 10'}
+    cpu: [arm64]
+    os: [linux]
+    libc: [glibc]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-37iO/Dp6m5DDaC2sf3zPtx/hl9FV3Xze4xoYidrxxS9bgP3S8ALroxRK6xBG/1TtfXKTvolvp+IjrUU6ujIGmA==}
+    engines: {node: '>= 10'}
+    cpu: [arm64]
+    os: [linux]
+    libc: [musl]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-jbI8jvuYCaA3MVUdu8vLoLAFqC+iNMpiSuLbxlAgg7x3K5bsS8nOpTRnkLF7vISJ+rVR8W+7ThXlXlUQ93ulkw==}
+    engines: {node: '>= 10'}
+    cpu: [x64]
+    os: [linux]
+    libc: [glibc]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-e9FBWDe+lv7QKAwtKOt6A2W/fyy/aEEfr0g6j/hWzvQcrzHCsz07BNQYlNOjTfeytrtLU7k449H1PI95jA4OjQ==}
+    engines: {node: '>= 10'}
+    cpu: [x64]
+    os: [linux]
+    libc: [musl]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-09PxnVIQcd+UOn4WAW73WU6PXL7DwGS6wPlkMhMg2zlHHG65F3vHepOw06HFCq+N42qkaNAc8AKIabWvtk6cIQ==}
+    engines: {node: '>= 10'}
+    cpu: [arm64]
+    os: [win32]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-E//yT4ni2SyhwP8JRjVGWr3cbnhWDiPLgnQ66qqaanjjnMiu3O/2tjCPQXlcGc/DEYofpDc9fvhv6tALQsMV9w==}
+    engines: {node: '>= 10'}
+    cpu: [x64]
+    os: [win32]
+
+  '@reflink/[email protected]':
+    resolution: {integrity: 
sha512-DmCG8GzysnCZ15bres3N5AHCmwBwYgp0As6xjhQ47rAUTUXxJiK+lLUxaGsX3hd/30qUpVElh05PbGuxRPgJwA==}
+    engines: {node: '>= 10'}
+
+  [email protected]:
+    resolution: {integrity: 
sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
+    engines: {node: '>=8'}
+
+  [email protected]:
+    resolution: {integrity: 
sha512-2/zE+Bz0hZev1Lw5H/3xLBHxqfuDo5W/prCi2cwv2P/rr9scy9UpYyFT95OQTCYVt/Cf4aNFRz/Rw1hFFyqOsQ==}
+    engines: {node: '>=22.13'}
+    hasBin: true
+
+snapshots:
+
+  '@pnpm/[email protected]':
+    dependencies:
+      '@reflink/reflink': 0.1.19
+      detect-libc: 2.1.2
+    optionalDependencies:
+      '@pnpm/linux-arm64': 11.5.0
+      '@pnpm/linux-x64': 11.5.0
+      '@pnpm/linuxstatic-arm64': 11.5.0
+      '@pnpm/linuxstatic-x64': 11.5.0
+      '@pnpm/macos-arm64': 11.5.0
+      '@pnpm/win-arm64': 11.5.0
+      '@pnpm/win-x64': 11.5.0
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@pnpm/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optional: true
+
+  '@reflink/[email protected]':
+    optionalDependencies:
+      '@reflink/reflink-darwin-arm64': 0.1.19
+      '@reflink/reflink-darwin-x64': 0.1.19
+      '@reflink/reflink-linux-arm64-gnu': 0.1.19
+      '@reflink/reflink-linux-arm64-musl': 0.1.19
+      '@reflink/reflink-linux-x64-gnu': 0.1.19
+      '@reflink/reflink-linux-x64-musl': 0.1.19
+      '@reflink/reflink-win32-arm64-msvc': 0.1.19
+      '@reflink/reflink-win32-x64-msvc': 0.1.19
+
+  [email protected]: {}
+
+  [email protected]: {}
+
+---
 lockfileVersion: '9.0'
 
 settings:
@@ -5,13 +204,13 @@ settings:
   excludeLinksFromLockfile: false
 
 overrides:
-  [email protected]>qs: 6.14.2
   fast-uri@<=3.1.1: 3.1.2
   lodash@>=4.0.0 <=4.18.0: 4.18.1
   hono@<4.12.18: 4.12.18
   postcss@<8.5.10: 8.5.10
   picomatch@>=4.0.0 <4.0.4: 4.0.4
   picomatch@< 2.3.2: 2.3.2
+  qs@<=6.15.1: 6.15.2
 
 importers:
 
@@ -2835,8 +3034,8 @@ packages:
     resolution: {integrity: 
sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
     engines: {node: '>=6'}
 
-  [email protected]:
-    resolution: {integrity: 
sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==}
+  [email protected]:
+    resolution: {integrity: 
sha512-Rzq0KEyX/w/tEybncDgdkZrJgVUsUMk3xjh3t5bv3S1HTAtg+uOYt72+ZfwiQwKdysThkTBdL/rTi6HDmX9Ddw==}
     engines: {node: '>=0.6'}
 
   [email protected]:
@@ -4773,7 +4972,7 @@ snapshots:
       http-errors: 2.0.1
       iconv-lite: 0.4.24
       on-finished: 2.4.1
-      qs: 6.15.1
+      qs: 6.15.2
       raw-body: 2.5.3
       type-is: 1.6.18
       unpipe: 1.0.0
@@ -4788,7 +4987,7 @@ snapshots:
       http-errors: 2.0.1
       iconv-lite: 0.7.2
       on-finished: 2.4.1
-      qs: 6.15.1
+      qs: 6.15.2
       raw-body: 3.0.2
       type-is: 2.0.1
     transitivePeerDependencies:
@@ -5225,7 +5424,7 @@ snapshots:
       parseurl: 1.3.3
       path-to-regexp: 0.1.13
       proxy-addr: 2.0.7
-      qs: 6.15.1
+      qs: 6.15.2
       range-parser: 1.2.1
       safe-buffer: 5.2.1
       send: 0.19.2
@@ -5260,7 +5459,7 @@ snapshots:
       once: 1.4.0
       parseurl: 1.3.3
       proxy-addr: 2.0.7
-      qs: 6.15.1
+      qs: 6.15.2
       range-parser: 1.2.1
       router: 2.2.0
       send: 1.2.1
@@ -6066,7 +6265,7 @@ snapshots:
 
   [email protected]: {}
 
-  [email protected]:
+  [email protected]:
     dependencies:
       side-channel: 1.1.0
 
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
new file mode 100644
index 0000000..09a0e45
--- /dev/null
+++ b/pnpm-workspace.yaml
@@ -0,0 +1,13 @@
+allowBuilds:
+  '@parcel/watcher': false
+  esbuild: false
+  lmdb: false
+  msgpackr-extract: false
+overrides:
+  fast-uri@<=3.1.1: 3.1.2
+  lodash@>=4.0.0 <=4.18.0: 4.18.1
+  hono@<4.12.18: 4.12.18
+  postcss@<8.5.10: 8.5.10
+  picomatch@>=4.0.0 <4.0.4: 4.0.4
+  picomatch@< 2.3.2: 2.3.2
+  qs@<=6.15.1: 6.15.2


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to