user/node: FTTFS: AssertionError [ERR_ASSERTION]: The input did not match the regular expression /^\d+\.\d+\.\d+(?:-.*)?$/...
Found on powerhouse (x86_64) in autobuilder dev environment:
...
[00:07|% 54|+ 2054|- 0]: release test-punycode
=== release test-process-versions ===
Path: parallel/test-process-versions
node:assert:1027
throw err;
^
AssertionError [ERR_ASSERTION]: The input did not match the regular expression /^\d+\.\d+\.\d+(?:-.*)?$/. Input:
'1.3'
at Object.<anonymous> (/usr/src/packages/user/node/src/node-v18.15.0/test/parallel/test-process-versions.js:59:8)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1308:10)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Module._load (node:internal/modules/cjs/loader:958:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47 {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: '1.3',
expected: /^\d+\.\d+\.\d+(?:-.*)?$/,
operator: 'match'
}
Node.js v18.15.0
Command: out/Release/node /usr/src/packages/user/node/src/node-v18.15.0/test/parallel/test-process-versions.js
...
Failed tests:
out/Release/node /usr/src/packages/user/node/src/node-v18.15.0/test/parallel/test-process-versions.js
make[1]: *** [Makefile:308: jstest] Error 1
make: *** [Makefile:342: test-only] Error 2
>>> ERROR: node: check failed
Appears to be caused by a bad regex in test/parallel/test-process-versions.js
and 6b6c13bf:
const commonTemplate = /^\d+\.\d+\.\d+(?:-.*)?$/;
assert.match(process.versions.acorn, commonTemplate);
assert.match(process.versions.ares, commonTemplate);
assert.match(process.versions.brotli, commonTemplate);
assert.match(process.versions.llhttp, commonTemplate);
assert.match(process.versions.node, commonTemplate);
assert.match(process.versions.uv, commonTemplate);
assert.match(process.versions.zlib, commonTemplate);
if (hasUndici) {
assert.match(process.versions.undici, commonTemplate);
}
assert.match(
process.versions.v8,
/^\d+\.\d+\.\d+(?:\.\d+)?-node\.\d+(?: \(candidate\))?$/
);
assert.match(process.versions.modules, /^\d+$/);
if (common.hasCrypto) {
const versionRegex = common.hasOpenSSL3 ?
// The following also matches a development version of OpenSSL 3.x which
// can be in the format '3.0.0-alpha4-dev'. This can be handy when building
// and linking against the main development branch of OpenSSL.
/^\d+\.\d+\.\d+(?:[-+][a-z0-9]+)*$/ :
/^\d+\.\d+\.\d+[a-z]?(\+quic)?(-fips)?$/;
assert.match(process.versions.openssl, versionRegex);
}
20230914-19_30_57.216486238_node.log
Upstream: