Fix React 19 peer conflicts breaking npm ci in Docker build

This commit is contained in:
2026-08-17 23:55:17 +05:30
parent ff841f8b86
commit 01faf3cd8d
3 changed files with 1297 additions and 2917 deletions

View File

@@ -4,9 +4,14 @@ FROM node:22-alpine AS build
WORKDIR /app WORKDIR /app
# Safety valve for the 2 GB host: without a cap a runaway build can exhaust the # Safety valve for the 2 GB host: without a cap a runaway build can exhaust the
# server's RAM and take down neighbouring containers. Measured peak for this app # server's RAM and take down neighbouring containers, so the build fails instead
# is ~550 MB, so 1 GB leaves headroom while still failing the build rather than # of the server.
# the server. Raise this only if the host gets more RAM. #
# Headroom is thinner than it used to be. The old note here recorded a ~550 MB
# peak; after the React 19 upgrade and adding Astryx the build measures ~967 MB
# peak RSS, which still completes under this cap but no longer leaves much room.
# If a future dependency tips it over, raise this only alongside more host RAM —
# not on its own, which just moves the failure from the build to the machine.
ENV NODE_OPTIONS=--max-old-space-size=1024 ENV NODE_OPTIONS=--max-old-space-size=1024
# Install deps from the lockfile first so this layer is reused when only src changes # Install deps from the lockfile first so this layer is reused when only src changes

4199
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -11,7 +11,7 @@
}, },
"dependencies": { "dependencies": {
"@astryxdesign/core": "^0.4.3", "@astryxdesign/core": "^0.4.3",
"@hello-pangea/dnd": "^17.0.0", "@hello-pangea/dnd": "^18.0.1",
"@hookform/resolvers": "^4.1.2", "@hookform/resolvers": "^4.1.2",
"@radix-ui/react-accordion": "^1.2.3", "@radix-ui/react-accordion": "^1.2.3",
"@radix-ui/react-alert-dialog": "^1.1.6", "@radix-ui/react-alert-dialog": "^1.1.6",
@@ -56,9 +56,7 @@
"react-day-picker": "^10.0.1", "react-day-picker": "^10.0.1",
"react-dom": "^19.2.8", "react-dom": "^19.2.8",
"react-hook-form": "^7.54.2", "react-hook-form": "^7.54.2",
"react-leaflet": "^4.2.1",
"react-markdown": "^9.0.1", "react-markdown": "^9.0.1",
"react-quill": "^2.0.0",
"react-resizable-panels": "^2.1.7", "react-resizable-panels": "^2.1.7",
"react-router-dom": "^7.2.0", "react-router-dom": "^7.2.0",
"recharts": "^2.15.4", "recharts": "^2.15.4",