From 82ba6509e76bb6417fe435ffce3404b15f8d789b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 1 Nov 2026 07:11:33 +0000 Subject: [PATCH 1/2] chore(deps): bump node in / Bumps node in `/` from 24.21.0-bookworm-slim to 24.22.0-bookworm-slim. Updates `node` from 24.21.0-bookworm-slim to 24.22.0-bookworm-slim --- updated-dependencies: - dependency-name: node dependency-version: 24.22.0-bookworm-slim dependency-type: direct:production update-type: version-update:semver-minor dependency-group: docker ... Signed-off-by: dependabot[bot] --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 095a5a3..6476a39 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:1 -FROM node:24.21.0-bookworm-slim@sha256:d6aa754f16b3197301076f047b5def2f02ea1dbbc2ca920407d46d7ec7f87b20 AS dependencies +FROM node:24.22.0-bookworm-slim@sha256:91acba91b842bec0bf7ea6f5e09c644c7ccad72c4996ed9616d861d1c7cd60d4 AS dependencies WORKDIR /app ENV NEXT_TELEMETRY_DISABLED=1 TURBO_TELEMETRY_DISABLED=1 LEFTHOOK=0 RUN npm install --global pnpm@12.10.1 @@ -40,7 +40,7 @@ USER node WORKDIR /app/apps/web CMD ["node", "scripts/migrate.mjs"] -FROM node:24.21.0-bookworm-slim@sha256:d6aa754f16b3197301076f047b5def2f02ea1dbbc2ca920407d46d7ec7f87b20 AS runtime +FROM node:24.22.0-bookworm-slim@sha256:91acba91b842bec0bf7ea6f5e09c644c7ccad72c4996ed9616d861d1c7cd60d4 AS runtime WORKDIR /app ENV NODE_ENV=production HOSTNAME=0.0.0.0 PORT=3000 NEXT_TELEMETRY_DISABLED=1 COPY --from=build --chown=node:node /app/apps/web/.next/standalone ./ From 50ff571ae4fc46d72d3b80dfff0b25ff861ec595 Mon Sep 17 00:00:00 2001 From: 0then0 Date: Wed, 11 Nov 2026 00:07:48 +0300 Subject: [PATCH 2/2] chore(deps): sync Node 24.22.0 pins across deployment config Update Netlify, acceptance fixtures and deployment docs to match the Docker image bump. --- deploy/NETLIFY.md | 2 +- deploy/README.md | 2 +- deploy/acceptance/compose.yaml | 2 +- deploy/acceptance/run.py | 2 +- deploy/tests/test_cold_restore.py | 4 ++-- netlify.toml | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/deploy/NETLIFY.md b/deploy/NETLIFY.md index 8556443..b962cdd 100644 --- a/deploy/NETLIFY.md +++ b/deploy/NETLIFY.md @@ -90,7 +90,7 @@ Use these build settings: - Publish directory: `apps/web/.next`, relative to the base directory. The root `netlify.toml` supplies the base, build command, publish path, Node.js -24.21.0, and frozen pnpm install flags. The `packageManager` field pins pnpm +24.22.0, and frozen pnpm install flags. The `packageManager` field pins pnpm 12.10.1 through Corepack. Hoisting is enabled only for the Netlify install, as recommended by Netlify for pnpm/Next.js. Do not set `NODE_ENV=production` during dependency installation: the build needs development dependencies. diff --git a/deploy/README.md b/deploy/README.md index 7a9ef69..c92ba74 100644 --- a/deploy/README.md +++ b/deploy/README.md @@ -21,7 +21,7 @@ installation's public hostname. See [release notes](RELEASE_NOTES.md) for the su installed with pnpm 12.10.1 and `--frozen-lockfile`. Runtime images are pinned by tag **and digest** in Compose/Dockerfile: Node -24.21.0 (Debian bookworm slim), PostgreSQL 16.14, Redis 7.4.8, Inngest 1.46.0, +24.22.0 (Debian bookworm slim), PostgreSQL 16.14, Redis 7.4.8, Inngest 1.46.0, Nginx 1.30.5. Next.js 16.4.0 and Inngest SDK 4.23.0 come from the existing lockfile. No additional dependency is required. diff --git a/deploy/acceptance/compose.yaml b/deploy/acceptance/compose.yaml index 032f305..e19315a 100644 --- a/deploy/acceptance/compose.yaml +++ b/deploy/acceptance/compose.yaml @@ -19,7 +19,7 @@ services: receiver: profiles: ["fixture"] - image: node:24.21.0-bookworm-slim@sha256:d6aa754f16b3197301076f047b5def2f02ea1dbbc2ca920407d46d7ec7f87b20 + image: node:24.22.0-bookworm-slim@sha256:91acba91b842bec0bf7ea6f5e09c644c7ccad72c4996ed9616d861d1c7cd60d4 command: ["node", "/fixture/receiver.mjs"] environment: RECEIVER_SECRET: ${RECEIVER_SECRET:?Run acceptance/run.py} diff --git a/deploy/acceptance/run.py b/deploy/acceptance/run.py index 8f4730f..3ed5b62 100755 --- a/deploy/acceptance/run.py +++ b/deploy/acceptance/run.py @@ -726,7 +726,7 @@ def cron_runs(): ] ) for service, image in { - "node": "node:24.21.0-bookworm-slim", + "node": "node:24.22.0-bookworm-slim", "postgres": "postgres:16.14-bookworm", "redis": "redis:7.4.8-bookworm", "inngest": "inngest/inngest:v1.46.0", diff --git a/deploy/tests/test_cold_restore.py b/deploy/tests/test_cold_restore.py index e5efd4d..8473a46 100644 --- a/deploy/tests/test_cold_restore.py +++ b/deploy/tests/test_cold_restore.py @@ -389,7 +389,7 @@ def test_refused_existing_destination_preserves_its_volume_and_contents(self): self.skipTest("Docker unavailable") project = "ff-destination-test-" + os.urandom(6).hex() volume = project + "_application-data" - image = "node:24.21.0-bookworm-slim@sha256:d6aa754f16b3197301076f047b5def2f02ea1dbbc2ca920407d46d7ec7f87b20" + image = "node:24.22.0-bookworm-slim@sha256:91acba91b842bec0bf7ea6f5e09c644c7ccad72c4996ed9616d861d1c7cd60d4" def run(command, check=True): return subprocess.run( @@ -456,7 +456,7 @@ def test_fixture_profile_cleanup_removes_its_stores_but_preserves_unowned_volume compose_file = Path(temporary) / "compose.yaml" compose_file.write_text("""services: receiver: - image: node:24.21.0-bookworm-slim@sha256:d6aa754f16b3197301076f047b5def2f02ea1dbbc2ca920407d46d7ec7f87b20 + image: node:24.22.0-bookworm-slim@sha256:91acba91b842bec0bf7ea6f5e09c644c7ccad72c4996ed9616d861d1c7cd60d4 profiles: [fixture] command: [node, -e, "setInterval(()=>{},1000)"] volumes: [profile-data:/evidence] diff --git a/netlify.toml b/netlify.toml index 2606b70..ec7eb27 100644 --- a/netlify.toml +++ b/netlify.toml @@ -6,5 +6,5 @@ publish = "apps/web/.next" [build.environment] - NODE_VERSION = "24.21.0" + NODE_VERSION = "24.22.0" PNPM_FLAGS = "--frozen-lockfile --shamefully-hoist"