Update all outdated package.json dependencies

-Main update is to add support for express v5.x which required some code changes to a few of the public and wallet api routes
-Removed the body-parser dependency and replaced with express which now has the same functionaliuty built-in and is no longer necessary to have a dedicated dependency
-All dependencies in the package.json have been updated to reference the most up-to-date version numbers
This commit is contained in:
Joe Uhren
2025-04-13 21:25:24 -06:00
parent b8030855af
commit 80ecf19ac5
3 changed files with 65 additions and 72 deletions
+2 -3
View File
@@ -4,7 +4,6 @@ var express = require('express'),
favicon = require('serve-favicon'), favicon = require('serve-favicon'),
logger = require('morgan'), logger = require('morgan'),
cookieParser = require('cookie-parser'), cookieParser = require('cookie-parser'),
bodyParser = require('body-parser'),
settings = require('./lib/settings'), settings = require('./lib/settings'),
routes = require('./routes/index'), routes = require('./routes/index'),
lib = require('./lib/explorer'), lib = require('./lib/explorer'),
@@ -167,8 +166,8 @@ if (default_favicon != '')
app.use(favicon(path.join('./public', default_favicon))); app.use(favicon(path.join('./public', default_favicon)));
app.use(logger('dev')); app.use(logger('dev'));
app.use(bodyParser.json()); app.use(express.json());
app.use(bodyParser.urlencoded({ extended: true })); app.use(express.urlencoded({ extended: true }));
app.use(cookieParser()); app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public'))); app.use(express.static(path.join(__dirname, 'public')));
+51 -56
View File
@@ -6,7 +6,7 @@ module.exports = function() {
function express_app() { function express_app() {
var app = express(); var app = express();
app.get('*', hasAccess, function(req, res) { app.get('/{*splat}', hasAccess, function(req, res) {
var method = req.path.substring(1, req.path.length); var method = req.path.substring(1, req.path.length);
if ('undefined' != typeof requires_passphrase[method]) { if ('undefined' != typeof requires_passphrase[method]) {
@@ -16,19 +16,17 @@ module.exports = function() {
res.send('A wallet passphrase is needed and has not been set.'); res.send('A wallet passphrase is needed and has not been set.');
} }
var query_parameters = req.query; const query_parameters = req.query;
var params = []; let params = [];
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter)) { let param = query_parameters[parameter];
var param = query_parameters[parameter];
if (!isNaN(param)) if (!isNaN(param))
param = parseFloat(param); param = parseFloat(param);
params.push(param); params.push(param);
} });
}
var command = []; var command = [];
@@ -184,10 +182,10 @@ module.exports = function() {
break; break;
case 'getblockhash': case 'getblockhash':
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter) && (parameter == 'height' || parameter == 'index')) if (parameter == 'height' || parameter == 'index')
params.push(parseInt(query_parameters[parameter])); params.push(parseInt(query_parameters[parameter]));
} });
var cmd = prepareRpcCommand(settings.api_cmds.getblockhash, params); var cmd = prepareRpcCommand(settings.api_cmds.getblockhash, params);
@@ -196,10 +194,10 @@ module.exports = function() {
break; break;
case 'getblock': case 'getblock':
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter) && parameter == 'hash') if (parameter == 'hash')
params.push(query_parameters[parameter]); params.push(query_parameters[parameter]);
} });
var cmd = prepareRpcCommand(settings.api_cmds.getblock, params); var cmd = prepareRpcCommand(settings.api_cmds.getblock, params);
@@ -208,14 +206,12 @@ module.exports = function() {
break; break;
case 'getrawtransaction': case 'getrawtransaction':
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter)) { if (parameter == 'txid')
if (parameter == 'txid') params.push(query_parameters[parameter]);
params.push(query_parameters[parameter]); else if (parameter == 'decrypt')
else if (parameter == 'decrypt') params.push(parseInt(query_parameters[parameter]));
params.push(parseInt(query_parameters[parameter])); });
}
}
var cmd = prepareRpcCommand(settings.api_cmds.getrawtransaction, params); var cmd = prepareRpcCommand(settings.api_cmds.getrawtransaction, params);
@@ -224,18 +220,19 @@ module.exports = function() {
break; break;
case 'verifymessage': case 'verifymessage':
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter)) { if (parameter == 'address' || parameter == 'message')
if (parameter == 'address' || parameter == 'message') params.push(query_parameters[parameter]);
params.push(query_parameters[parameter]);
if (parameter == 'signature') { if (parameter == 'signature') {
var param = decodeURIComponent(query_parameters[parameter]); let param = decodeURIComponent(query_parameters[parameter]);
while (param.indexOf(" ") > -1)
param = param.replace(" ", "+"); while (param.indexOf(' ') > -1)
params.push(param); param = param.replace(' ', '+');
}
params.push(param);
} }
} });
var cmd = prepareRpcCommand(settings.api_cmds.verifymessage, params); var cmd = prepareRpcCommand(settings.api_cmds.verifymessage, params);
@@ -248,27 +245,25 @@ module.exports = function() {
var before_min_conf = true; var before_min_conf = true;
var address_info = {}; var address_info = {};
for (var parameter in query_parameters) { Object.keys(query_parameters).forEach(function(parameter) {
if (query_parameters.hasOwnProperty(parameter)) { if (parameter == 'minconf') {
if (parameter == 'minconf') { before_min_conf = false;
before_min_conf = false; params.push(address_info);
params.push(address_info);
}
var param = query_parameters[parameter];
if (!isNaN(param))
param = parseFloat(param);
if (after_account && before_min_conf)
address_info[parameter] = param;
else
params.push(param);
if (parameter == 'account')
after_account = true;
} }
}
let param = query_parameters[parameter];
if (!isNaN(param))
param = parseFloat(param);
if (after_account && before_min_conf)
address_info[parameter] = param;
else
params.push(param);
if (parameter == 'account')
after_account = true;
});
if (before_min_conf) if (before_min_conf)
params.push(address_info); params.push(address_info);
+12 -13
View File
@@ -31,26 +31,25 @@
"benchmark": "node ./scripts/benchmark.js" "benchmark": "node ./scripts/benchmark.js"
}, },
"dependencies": { "dependencies": {
"async": "^3.2.4", "async": "^3.2.6",
"bad-words": "^4.0.0", "bad-words": "^4.0.0",
"body-parser": "^1.20.0", "cookie-parser": "^1.4.7",
"cookie-parser": "^1.4.6", "debug": "^4.4.0",
"debug": ">=4.3.4", "express": "^5.1.0",
"express": "^4.21.2",
"intl": "^1.2.5", "intl": "^1.2.5",
"jsonminify": "^0.4.2", "jsonminify": "^0.4.2",
"mongodb": "^6.1.0", "mongodb": "^6.15.0",
"mongoose": "^8.0.3", "mongoose": "^8.13.2",
"morgan": ">=1.10.0", "morgan": "^1.10.0",
"postman-request": "^2.88.1-postman.31", "postman-request": "^2.88.1-postman.42",
"pug": "~3.0.2", "pug": "~3.0.3",
"qr-image": "^3.2.0", "qr-image": "^3.2.0",
"sass": "^1.52.3", "sass": "^1.86.3",
"serve-favicon": "^2.5.0" "serve-favicon": "^2.5.0"
}, },
"devDependencies": { "devDependencies": {
"forever": "^4.0.3", "forever": "^4.0.3",
"jasmine": ">=4.2.0", "jasmine": "^5.6.0",
"pm2": "^5.2.0" "pm2": "^6.0.5"
} }
} }