Merge remote-tracking branch 'origin/dev' into pr-8421

# Conflicts:
#	package-lock.json
This commit is contained in:
Andy Low
2026-03-06 21:51:52 +00:00
5 changed files with 65 additions and 4540 deletions
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x, 16.x, 20, lts/*]
node-version: [20, 22]
mongodb-version: [4.4, 5.0, 6.0]
steps:
+2 -2
View File
@@ -1,4 +1,4 @@
FROM node:16.16.0-alpine
FROM node:22-alpine
LABEL maintainer="Nightscout Contributors"
@@ -8,7 +8,7 @@ ADD . /opt/app
# TODO: We should be able to do `RUN npm install --only=production`.
# For this to work, we need to copy only package.json and things needed for `npm`'s to succeed.
# TODO: Do we need to re-add `npm audit fix`? Or should that be part of a development process/stage?
RUN npm install --cache /tmp/empty-cache && \
RUN npm ci --cache /tmp/empty-cache --omit=optional --force && \
npm run postinstall && \
npm run env && \
rm -rf /tmp/*
+9 -5
View File
@@ -39,15 +39,19 @@ function boot (env, language) {
const isLTS = process.release.lts ? true : false;
if (isLTS || (semver.satisfies(nodeVersion, '^20.0.0') || semver.satisfies(nodeVersion, '^18.0.0') || semver.satisfies(nodeVersion, '^16.0.0') || semver.satisfies(nodeVersion, '^14.0.0'))) {
//Latest Node 14 LTS and Node 16 LTS are recommended and supported.
//Require at least Node 14 without known security issues
console.debug('Node LTS version ' + nodeVersion + ' is supported');
// Node 16+ is supported (overlap with previous release)
// Recommended: Node 20 LTS (until April 2026) or Node 22 LTS (until April 2027)
if (semver.satisfies(nodeVersion, '>=16.x')) {
if (isLTS) {
console.debug('Node LTS version ' + nodeVersion + ' is supported');
} else {
console.debug('Node version ' + nodeVersion + ' is supported (current release)');
}
next();
return;
}
console.log( 'ERROR: Node version ' + nodeVersion + ' is not supported. Please use a secure LTS version or upgrade your Node');
console.log( 'ERROR: Node version ' + nodeVersion + ' is not supported. Please use Node 16 or later.');
process.exit(1);
}
+47 -4527
View File
File diff suppressed because it is too large Load Diff
+6 -5
View File
@@ -1,6 +1,6 @@
{
"name": "nightscout",
"version": "15.0.4",
"version": "15.0.7",
"description": "Nightscout acts as a web-based CGM (Continuous Glucose Montinor) to allow multiple caregivers to remotely view a patients glucose data in realtime.",
"license": "AGPL-3.0",
"author": "Nightscout Team",
@@ -86,10 +86,11 @@
}
},
"engines": {
"node": "^16.x || ^14.x",
"npm": "^6.x"
"node": ">=20.x",
"npm": ">=10.x"
},
"dependencies": {
"@mongodb-js/saslprep": "^1.4.5",
"@babel/core": "^7.18.10",
"@babel/preset-env": "^7.18.10",
"@parse/node-apn": "^5.1.3",
@@ -129,7 +130,7 @@
"lodash": "^4.17.20",
"memory-cache": "^0.2.0",
"mime": "^2.4.6",
"minimed-connect-to-nightscout": "^1.5.5",
"minimed-connect-to-nightscout": "^1.5.8",
"moment": "^2.27.0",
"moment-locales-webpack-plugin": "^1.2.0",
"moment-timezone": "^0.5.31",
@@ -145,7 +146,7 @@
"random-token": "0.0.8",
"request": "^2.88.2",
"semver": "^6.3.0",
"share2nightscout-bridge": "^0.2.9",
"share2nightscout-bridge": "^0.2.12",
"shiro-trie": "^0.4.9",
"simple-statistics": "^0.7.0",
"socket.io": "~4.5.4",