From e25ac270629818c44cdc905757d39dd2300695a0 Mon Sep 17 00:00:00 2001 From: Jaco Koster Date: Thu, 20 Jul 2023 09:26:41 +0200 Subject: [PATCH] Feature: minimum version check (#1578) --- bin/signalk-server | 12 ++++++++++++ package.json | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bin/signalk-server b/bin/signalk-server index 03912d65a..75ab017fd 100755 --- a/bin/signalk-server +++ b/bin/signalk-server @@ -16,6 +16,18 @@ * limitations under the License. */ +const { engines } = require('../package.json'); +const semver = require('semver'); +const minimumVersion = engines.node; +const recommendedVersion = "18"; + +if (!semver.satisfies(process.version, minimumVersion)) { + console.error(`The installed version of node (${process.version}) is older than the minimum required version (${minimumVersion}). See https://github.com/SignalK/signalk-server/wiki/Installing-and-Updating-Node.js for more information how to upgrade.`); + process.exit(1); +} else if (!semver.satisfies(process.version, recommendedVersion)) { + console.warn(`The installed version of node (${process.version}) is different than the recommended version (${recommendedVersion}). See https://github.com/SignalK/signalk-server/wiki/Installing-and-Updating-Node.js for more information how to upgrade.`); +} + const Server = require('../lib') const server = new Server() diff --git a/package.json b/package.json index 4134da0ad..022868577 100644 --- a/package.json +++ b/package.json @@ -118,7 +118,7 @@ "ncp": "^2.0.0", "node-fetch": "^2.6.0", "primus": "^7.0.0", - "semver": "^7.1.1", + "semver": "^7.5.4", "split": "^1.0.0", "stat-mode": "^1.0.0", "swagger-ui-express": "^4.5.0",