package updates

Signed-off-by: si458 <simonsmith5521@gmail.com>

si458 committed Sep 30, 2025 at 20:48 UTC 819e9c528c2e249c9ef9a7266368af47ac82c0b9
1 file changed +16 -15
meshcentral.js
+16 -15
@@ -4328,28 +4328,29 @@ function mainStart() {
4328 var modules = ['archiver@7.0.1', 'body-parser@1.20.3', 'cbor@5.2.0', 'compression@1.8.1', 'cookie-session@2.1.1', 'express@4.21.2', 'express-handlebars@7.1.3', 'express-ws@5.0.2', 'ipcheck@0.1.0', 'minimist@1.2.8', 'multiparty@4.2.3', '@seald-io/nedb@4.1.2', 'node-forge@1.3.1', 'ua-parser-js@1.0.40', 'ua-client-hints-js@0.1.2', 'ws@8.18.3', 'yauzl@2.10.0'];
4329 if (require('os').platform() == 'win32') { modules.push('node-windows@0.1.14'); modules.push('loadavg-windows@1.1.1'); if (sspi == true) { modules.push('node-sspi@0.2.10'); } } // Add Windows modules
4330 if (ldap == true) { modules.push('ldapauth-fork@5.0.5'); }
4331 - if (ssh == true) { modules.push('ssh2@1.16.0'); }
4331 + if (ssh == true) { modules.push('ssh2@1.17.0'); }
4332 if (passport != null) { modules.push(...passport); }
4333 if (captcha == true) { modules.push('svg-captcha@1.4.0'); }
4334
4335 if (sessionRecording == true) { modules.push('image-size@2.0.2'); } // Need to get the remote desktop JPEG sizes to index the recording file.
4336 if (config.letsencrypt != null) { modules.push('acme-client@4.2.5'); } // Add acme-client module. We need to force v4.2.4 or higher since olver versions using SHA-1 which is no longer supported by Let's Encrypt.
4337 - if (config.settings.mqtt != null) { modules.push('aedes@0.39.0'); } // Add MQTT Modules
4338 - if (config.settings.mysql != null) { modules.push('mysql2@3.11.4'); } // Add MySQL.
4337 + if (config.settings.mqtt != null) { modules.push('aedes@0.51.3'); } // Add MQTT Modules
4338 + if (config.settings.mysql != null) { modules.push('mysql2@3.15.1'); } // Add MySQL.
4339 //if (config.settings.mysql != null) { modules.push('@mysql/xdevapi@8.0.33'); } // Add MySQL, official driver (https://dev.mysql.com/doc/dev/connector-nodejs/8.0/)
4340 if (config.settings.mongodb != null) { modules.push('mongodb@4.17.2'); modules.push('@mongodb-js/saslprep@1.3.1')} // Add MongoDB, official driver.
4341 - if (config.settings.postgres != null) { modules.push('pg@8.14.1') } // Add Postgres, official driver.
4342 - if (config.settings.mariadb != null) { modules.push('mariadb@3.4.0'); } // Add MariaDB, official driver.
4341 + if (config.settings.postgres != null) { modules.push('pg@8.16.3') } // Add Postgres, official driver.
4342 + if (config.settings.mariadb != null) { modules.push('mariadb@3.4.5'); } // Add MariaDB, official driver.
4343 if (config.settings.acebase != null) { modules.push('acebase@1.29.5'); } // Add AceBase, official driver.
4344 if (config.settings.sqlite3 != null) { modules.push('sqlite3@5.1.7'); } // Add sqlite3, official driver.
4345 - if (config.settings.vault != null) { modules.push('node-vault@0.10.2'); } // Add official HashiCorp's Vault module.
4346 - if ((config.settings.plugins != null) && (config.settings.plugins.proxy != null)) { modules.push('https-proxy-agent@7.0.2'); } // Required for HTTP/HTTPS proxy support
4345 + if (config.settings.vault != null) { modules.push('node-vault@0.10.5'); } // Add official HashiCorp's Vault module.
4346 + const hasExistingProxy = process.env['HTTP_PROXY'] || process.env['HTTPS_PROXY'] || process.env['http_proxy'] || process.env['https_proxy'];
4347 + if (((config.settings.plugins != null) && (config.settings.plugins.proxy != null)) || (hasExistingProxy)) { modules.push('https-proxy-agent@7.0.6'); } // Required for HTTP/HTTPS proxy support
4348 else if (config.settings.xmongodb != null) { modules.push('mongojs@3.1.0'); } // Add MongoJS, old driver.
4349 if (nodemailer || ((config.smtp != null) && (config.smtp.name != 'console')) || (config.sendmail != null)) { modules.push('nodemailer@6.10.1'); } // Add SMTP support
4349 - if (sendgrid || (config.sendgrid != null)) { modules.push('@sendgrid/mail'); } // Add SendGrid support
4350 + if (sendgrid || (config.sendgrid != null)) { modules.push('@sendgrid/mail@8.1.6'); } // Add SendGrid support
4351 if ((args.translate || args.dev) && (Number(process.version.match(/^v(\d+\.\d+)/)[1]) >= 16)) { modules.push('jsdom@22.1.0'); modules.push('esprima@4.0.1'); modules.push('html-minifier-terser@7.2.0'); } // Translation support
4352 if (typeof config.settings.crowdsec == 'object') { modules.push('@crowdsec/express-bouncer@0.1.0'); } // Add CrowdSec bounser module (https://www.npmjs.com/package/@crowdsec/express-bouncer)
4352 - if (config.settings.prometheus != null) { modules.push('prom-client'); } // Add Prometheus Metrics support
4353 + if (config.settings.prometheus != null) { modules.push('prom-client@15.1.3'); } // Add Prometheus Metrics support
4354
4355 if (typeof config.settings.autobackup == 'object') {
4356 // Setup encrypted zip support if needed
@@ -4361,7 +4362,7 @@ function mainStart() {
4362 if ((typeof config.settings.autobackup.webdav.url != 'string') || (typeof config.settings.autobackup.webdav.username != 'string') || (typeof config.settings.autobackup.webdav.password != 'string')) { addServerWarning("Missing WebDAV parameters.", 2, null, !args.launch); } else { modules.push('webdav@5.8.0'); }
4363 }
4364 // Enable S3 Support
4364 - if (typeof config.settings.autobackup.s3 == 'object') { modules.push('minio@8.0.2'); }
4365 + if (typeof config.settings.autobackup.s3 == 'object') { modules.push('minio@8.0.6'); }
4366 }
4367
4368 // Setup common password blocking
@@ -4379,22 +4380,22 @@ function mainStart() {
4380
4381 // SMS support
4382 if (config.sms != null) {
4382 - if (config.sms.provider == 'twilio') { modules.push('twilio@4.19.0'); }
4383 - if (config.sms.provider == 'plivo') { modules.push('plivo@4.58.0'); }
4383 + if (config.sms.provider == 'twilio') { modules.push('twilio@4.23.0'); }
4384 + if (config.sms.provider == 'plivo') { modules.push('plivo@4.75.1'); }
4385 if (config.sms.provider == 'telnyx') { modules.push('telnyx@1.25.5'); }
4386 }
4387
4388 // Messaging support
4389 if (config.messaging != null) {
4389 - if (config.messaging.telegram != null) { modules.push('telegram@2.19.8'); modules.push('input@1.0.1'); }
4390 + if (config.messaging.telegram != null) { modules.push('telegram@2.26.22'); modules.push('input@1.0.1'); }
4391 if (config.messaging.discord != null) { if (nodeVersion >= 17) { modules.push('discord.js@14.6.0'); } else { delete config.messaging.discord; addServerWarning('This NodeJS version does not support Discord.js.', 26); } }
4391 - if (config.messaging.xmpp != null) { modules.push('@xmpp/client@0.13.1'); }
4392 + if (config.messaging.xmpp != null) { modules.push('@xmpp/client@0.13.6'); }
4393 if (config.messaging.pushover != null) { modules.push('node-pushover@1.0.0'); }
4394 if (config.messaging.zulip != null) { modules.push('zulip@0.1.0'); }
4395 }
4396
4397 // Setup web based push notifications
4397 - if ((typeof config.settings.webpush == 'object') && (typeof config.settings.webpush.email == 'string')) { modules.push('web-push@3.6.6'); }
4398 + if ((typeof config.settings.webpush == 'object') && (typeof config.settings.webpush.email == 'string')) { modules.push('web-push@3.6.7'); }
4399
4400 // Firebase Support
4401 if ((config.firebase != null) && (typeof config.firebase.serviceaccountfile == 'string')) { modules.push('firebase-admin@12.7.0'); }