diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index c27363df61..d4ee5805db 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -134,7 +134,7 @@ }, "features": { "ghcr.io/devcontainers/features/node:1": { - "version": "22.23.1" + "version": "22.23.3" } }, "postCreateCommand": "/usr/local/bin/notify-dev-entrypoint.sh", diff --git a/ci/Dockerfile b/ci/Dockerfile index e5eb3054b0..93114af8c2 100644 --- a/ci/Dockerfile +++ b/ci/Dockerfile @@ -1,6 +1,6 @@ # Node.js build stage — Node 22 on Alpine (musl) so Rolldown's musl native # binding resolves correctly. npm install re-resolves platform optional deps. -FROM node:22.23.1-alpine AS node-build +FROM node:22.23.3-alpine AS node-build WORKDIR /app COPY package.json package-lock.json ./ RUN npm install diff --git a/ci/Dockerfile.lambda b/ci/Dockerfile.lambda index d6644f2f25..09d20c611b 100644 --- a/ci/Dockerfile.lambda +++ b/ci/Dockerfile.lambda @@ -6,7 +6,7 @@ ARG POETRY_VIRTUALENVS_CREATE="false" # Node.js build stage — uses Node 22 on Alpine (musl) so Rolldown's musl native # binding resolves correctly. npm install (not ci) re-resolves platform optional deps. -FROM node:22.23.1-alpine AS node-build +FROM node:22.23.3-alpine AS node-build ARG APP_DIR="/app" WORKDIR ${APP_DIR} COPY package.json package-lock.json ./ diff --git a/ci/Dockerfile.local b/ci/Dockerfile.local index 5aa80c206c..b959caace1 100644 --- a/ci/Dockerfile.local +++ b/ci/Dockerfile.local @@ -1,6 +1,6 @@ # Node.js build stage — Node 22 on Alpine (musl) so Rolldown's musl native # binding resolves correctly. npm install re-resolves platform optional deps. -FROM node:22.23.1-alpine AS node-build +FROM node:22.23.3-alpine AS node-build WORKDIR /app COPY package.json package-lock.json ./ RUN npm install diff --git a/package-lock.json b/package-lock.json index 769e98e185..69cadddf03 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5949,9 +5949,9 @@ "dev": true }, "node_modules/dayjs": { - "version": "1.11.21", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.21.tgz", - "integrity": "sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==", + "version": "1.11.23", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.23.tgz", + "integrity": "sha512-QDTCU0M0MxR3hQfnlDJfwekQiaanm1ubOD231u73WBckQ/fsamwRLiE2GBz6D3a/xF1NgfiDLJjXBa1hYOYTtQ==", "license": "MIT" }, "node_modules/debug": { @@ -11152,9 +11152,9 @@ } }, "node_modules/prosemirror-markdown": { - "version": "1.13.5", - "resolved": "https://registry.npmjs.org/prosemirror-markdown/-/prosemirror-markdown-1.13.5.tgz", - "integrity": "sha512-ac8trNQ01ybKDRTcfUc56LZufG3oYyU4N25qSXgp8dS0U4JtzzCj7oQlKu5v09VSmS5IseYoQ2yDkTbo7f7D8Q==", + "version": "1.13.8", + "resolved": "https://registry.npmjs.org/prosemirror-markdown/-/prosemirror-markdown-1.13.8.tgz", + "integrity": "sha512-Zi43BXX28jmxDJKvk8TDS2gMkBY/mgP8ynd6l/Vxrv8rgNFs5hsV1G0VscxTID1UCzVPcidADP9fUOBY3xxUeA==", "license": "MIT", "dependencies": { "@types/markdown-it": "^14.0.0", diff --git a/pyproject.toml b/pyproject.toml index 98cb919443..2ca51bc2a3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,7 +21,7 @@ awscli-cwlogs = "^1.4.6" Babel = "2.18.0" blinker = "1.9.0" -boto3 = "1.43.54" +boto3 = "1.43.105" # Pinned dependencies @@ -35,19 +35,19 @@ Flask-Caching = "^2.3.1" Flask-Login = "0.6.3" Flask-WTF = "1.3.0" gevent = "23.9.1" -greenlet = "3.5.4" +greenlet = "3.5.6" gunicorn = "22.0.0" # Putting upgrade on hold due to v1.0.0 using sha512 instead of sha1 by default itsdangerous = "2.2.0" # pyup: <1.0.0 notifications-python-client = "12.1.0" -notifications-utils = { git = "https://github.com/cds-snc/notifier-utils.git", tag = "53.2.33" } +notifications-utils = { git = "https://github.com/cds-snc/notifier-utils.git", tag = "53.2.34" } pwnedpasswords = "2.0.0" pyexcel = "0.7.6" pyexcel-io = "0.6.8" pyexcel-ods3 = "0.6.1" pyexcel-xls = "0.7.1" pyexcel-xlsx = "0.6.1" -python-dotenv = "1.2.2" +python-dotenv = "1.2.3" pytz = "2021.3" PyYAML = "6.0.3" redis = "3.5.3" # pinned for now @@ -83,9 +83,9 @@ ruff = "^0.15.0" types-beautifulsoup4 = "^4.12.0.6" # stubs libraries to keep mypy happy -types-python-dateutil = "2.9.0.20260716" +types-python-dateutil = "2.9.0.20260807" types-pytz = "2021.3.8" -types-requests = "2.33.0.20260712" +types-requests = "2.33.0.20260906" diff --git a/tests_cypress/package-lock.json b/tests_cypress/package-lock.json index 315a8e2e6f..df3619c3f8 100644 --- a/tests_cypress/package-lock.json +++ b/tests_cypress/package-lock.json @@ -2228,12 +2228,13 @@ } }, "node_modules/cypress-real-events": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/cypress-real-events/-/cypress-real-events-1.15.0.tgz", - "integrity": "sha512-in98xxTnnM9Z7lZBvvVozm99PBT2eEOjXRG5LKWyYvQnj9mGWXMiPNpfw7e7WiraBFh7XlXIxnE9Cu5o+52kQQ==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/cypress-real-events/-/cypress-real-events-1.15.1.tgz", + "integrity": "sha512-BiTyqYcNHiIFWfSLRn3H+TgTvpnTGOKfl4Brz51yeSGKMxBbD60wtRQw31nII00yQ67Xg3C18mU8lqUxDN3OUA==", "dev": true, + "license": "MIT", "peerDependencies": { - "cypress": "^4.x || ^5.x || ^6.x || ^7.x || ^8.x || ^9.x || ^10.x || ^11.x || ^12.x || ^13.x || ^14.x || ^15.x" + "cypress": "^4.x || ^5.x || ^6.x || ^7.x || ^8.x || ^9.x || ^10.x || ^11.x || ^12.x || ^13.x || ^14.x || ^15.x || ^16.x" } }, "node_modules/cypress-recurse": { @@ -3500,9 +3501,10 @@ } }, "node_modules/jsrsasign": { - "version": "11.1.3", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.1.3.tgz", - "integrity": "sha512-nPnK5D/4lv0Dwr7TlzrKtAd8JlLZwFTqTUUB3NQCbtdobcRcohGFxjbPySDVh74iWUudcCsapYT6OxoyhJLhhA==", + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.1.5.tgz", + "integrity": "sha512-i6mAjey0/4UQmlOaNS2vROl8EkWV8Ei436reJAby2OPQ3lF6uXSs1VYpnM8hndmmCMFIzNc04Uw2GF+0JVLFbg==", + "deprecated": "This package is no longer maintained.", "license": "MIT" }, "node_modules/kleur": { @@ -6858,9 +6860,9 @@ "requires": {} }, "cypress-real-events": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/cypress-real-events/-/cypress-real-events-1.15.0.tgz", - "integrity": "sha512-in98xxTnnM9Z7lZBvvVozm99PBT2eEOjXRG5LKWyYvQnj9mGWXMiPNpfw7e7WiraBFh7XlXIxnE9Cu5o+52kQQ==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/cypress-real-events/-/cypress-real-events-1.15.1.tgz", + "integrity": "sha512-BiTyqYcNHiIFWfSLRn3H+TgTvpnTGOKfl4Brz51yeSGKMxBbD60wtRQw31nII00yQ67Xg3C18mU8lqUxDN3OUA==", "dev": true, "requires": {} }, @@ -7696,9 +7698,9 @@ } }, "jsrsasign": { - "version": "11.1.3", - "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.1.3.tgz", - "integrity": "sha512-nPnK5D/4lv0Dwr7TlzrKtAd8JlLZwFTqTUUB3NQCbtdobcRcohGFxjbPySDVh74iWUudcCsapYT6OxoyhJLhhA==" + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/jsrsasign/-/jsrsasign-11.1.5.tgz", + "integrity": "sha512-i6mAjey0/4UQmlOaNS2vROl8EkWV8Ei436reJAby2OPQ3lF6uXSs1VYpnM8hndmmCMFIzNc04Uw2GF+0JVLFbg==" }, "kleur": { "version": "4.1.5",