From 385a6b2c542b2bc52317e609c3fc809a47b60d0e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Oct 2023 13:40:45 +0000 Subject: [PATCH 01/24] Bump @babel/traverse from 7.20.1 to 7.23.2 Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.20.1 to 7.23.2. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 363 ++++++++++++++++++++++++++++++---------------- 1 file changed, 241 insertions(+), 122 deletions(-) diff --git a/package-lock.json b/package-lock.json index ec0d9a9..59ee3d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -100,16 +100,81 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dependencies": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/compat-data": { "version": "7.20.1", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", @@ -153,12 +218,13 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "node_modules/@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dependencies": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "engines": { @@ -196,31 +262,31 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -275,28 +341,28 @@ } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", "engines": { "node": ">=6.9.0" } @@ -323,12 +389,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -400,9 +466,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", - "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -574,31 +640,31 @@ } }, "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -607,12 +673,12 @@ } }, "node_modules/@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, "engines": { @@ -5705,11 +5771,63 @@ } }, "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "requires": { - "@babel/highlight": "^7.18.6" + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } } }, "@babel/compat-data": { @@ -5747,12 +5865,13 @@ } }, "@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "requires": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "dependencies": { @@ -5780,25 +5899,25 @@ } }, "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==" }, "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" } }, "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", "requires": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" } }, "@babel/helper-module-imports": { @@ -5838,22 +5957,22 @@ } }, "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", "requires": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.22.5" } }, "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==" }, "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==" }, "@babel/helper-validator-option": { "version": "7.18.6", @@ -5871,12 +5990,12 @@ } }, "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "dependencies": { @@ -5932,9 +6051,9 @@ } }, "@babel/parser": { - "version": "7.20.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", - "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==" + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==" }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", @@ -6049,39 +6168,39 @@ } }, "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" } }, "@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "requires": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" } }, "@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" } }, From 348cb45636e3361a851445cd00b877efb7a3d7af Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 09:38:46 +0000 Subject: [PATCH 02/24] use a secret for fail on warning --- .github/workflows/masterfhirvalidation.yml | 3 +++ src/validate.test.ts | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/masterfhirvalidation.yml b/.github/workflows/masterfhirvalidation.yml index 4a25456..fc3cbb5 100644 --- a/.github/workflows/masterfhirvalidation.yml +++ b/.github/workflows/masterfhirvalidation.yml @@ -11,6 +11,8 @@ on: required: true ONTO_CLIENT_SECRET: required: true + FAILONWARNING: + required: false # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -55,6 +57,7 @@ jobs: CI: true ONTO_CLIENT_ID: ${{ secrets.ONTO_CLIENT_ID }} ONTO_CLIENT_SECRET: ${{ secrets.ONTO_CLIENT_SECRET }} + FAILONWARNING: ${{ secrets.FAILONWARNING }} - name: Build FHIR Validator run: cd validation-service-fhir-r4 && mvn clean package diff --git a/src/validate.test.ts b/src/validate.test.ts index d34fd8c..3552fab 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -18,7 +18,10 @@ const args = require('minimist')(process.argv.slice(2)) let source = '../' let examples: string - let failOnWarning = false; + let failOnWarning = true; + if (process.env.FAILONWARNING != undefined) { + failOnWarning = process.env.FAILONWARNING; + } if (args!= undefined) { if (args['source']!= undefined) { @@ -41,7 +44,6 @@ const args = require('minimist')(process.argv.slice(2)) if (pkg.dependencies != undefined) { for (let key in pkg.dependencies) { if (key.startsWith('fhir.r4.ukcore')) { - failOnWarning = true; gitHubSummary += 'ukcore dependency found, enabled STRICT validation' + NEW_LINE } } @@ -49,7 +51,6 @@ const args = require('minimist')(process.argv.slice(2)) } } catch (e) { gitHubSummary += 'No package.json found, applying UKCore validation rule ' + NEW_LINE; - failOnWarning = true; } describe('Test Environment', ()=> { From 9a21865880bfc6613a48c7be44e350cda0e9160a Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 09:52:14 +0000 Subject: [PATCH 03/24] add status of failOnWarning to output --- src/validate.test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/validate.test.ts b/src/validate.test.ts index 3552fab..4b55c46 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -22,6 +22,7 @@ const args = require('minimist')(process.argv.slice(2)) if (process.env.FAILONWARNING != undefined) { failOnWarning = process.env.FAILONWARNING; } + gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE if (args!= undefined) { if (args['source']!= undefined) { @@ -44,13 +45,13 @@ const args = require('minimist')(process.argv.slice(2)) if (pkg.dependencies != undefined) { for (let key in pkg.dependencies) { if (key.startsWith('fhir.r4.ukcore')) { - gitHubSummary += 'ukcore dependency found, enabled STRICT validation' + NEW_LINE + gitHubSummary += 'ukcore dependency found' + NEW_LINE } } } } } catch (e) { - gitHubSummary += 'No package.json found, applying UKCore validation rule ' + NEW_LINE; + gitHubSummary += 'No package.json found' + NEW_LINE; } describe('Test Environment', ()=> { From c125679989daffdf854cb0d43b7a54c7dc80a740 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 10:17:38 +0000 Subject: [PATCH 04/24] add status of failOnWarning to output on testscript run --- src/validate.test.ts | 2 +- src/validator.test.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/validate.test.ts b/src/validate.test.ts index 4b55c46..67b1fc2 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -22,7 +22,7 @@ const args = require('minimist')(process.argv.slice(2)) if (process.env.FAILONWARNING != undefined) { failOnWarning = process.env.FAILONWARNING; } - gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE + gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; if (args!= undefined) { if (args['source']!= undefined) { diff --git a/src/validator.test.ts b/src/validator.test.ts index 68d87b7..f3146d3 100644 --- a/src/validator.test.ts +++ b/src/validator.test.ts @@ -15,6 +15,12 @@ jest.setTimeout(40*1000) let gitHubSummary = '### :fire_engine: Logs '+NEW_LINE; + let failOnWarning = true; + if (process.env.FAILONWARNING != undefined) { + failOnWarning = process.env.FAILONWARNING; + } + gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; + describe('Test Environment', ()=> { let client: AxiosInstance; beforeAll(async () => { From ce080785d578914a5fe1004f0e5b58694f197d3b Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 10:39:15 +0000 Subject: [PATCH 05/24] handle variable being a string --- src/validate.test.ts | 4 ++-- src/validator.test.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/validate.test.ts b/src/validate.test.ts index 67b1fc2..99ce664 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -19,8 +19,8 @@ const args = require('minimist')(process.argv.slice(2)) let examples: string let failOnWarning = true; - if (process.env.FAILONWARNING != undefined) { - failOnWarning = process.env.FAILONWARNING; + if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING.toLowerCase() == 'false') { + failOnWarning = false; } gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; diff --git a/src/validator.test.ts b/src/validator.test.ts index f3146d3..850cc00 100644 --- a/src/validator.test.ts +++ b/src/validator.test.ts @@ -16,8 +16,8 @@ jest.setTimeout(40*1000) let gitHubSummary = '### :fire_engine: Logs '+NEW_LINE; let failOnWarning = true; - if (process.env.FAILONWARNING != undefined) { - failOnWarning = process.env.FAILONWARNING; + if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING.toLowerCase() == 'false') { + failOnWarning = false; } gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; From 6babe72aab83f75107f4518ca5b30cd24db1f17b Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 11:17:19 +0000 Subject: [PATCH 06/24] add configure to the testing branch yaml --- .github/workflows/testingbranch.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/testingbranch.yml b/.github/workflows/testingbranch.yml index f826ac2..5d3bd4a 100644 --- a/.github/workflows/testingbranch.yml +++ b/.github/workflows/testingbranch.yml @@ -38,6 +38,11 @@ jobs: - name: Install npm run: npm ci + - name: Configure FHIR Validator + run: cd validation && npm start + env: + FAILONWARNING: ${{ secrets.FAILONWARNING }} + - name: Update FHIR Validator build run: cd validation-service-fhir-r4; mvn clean package From c053e5eeecbd60277f84f916daaa78030b09cfb3 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 11:30:36 +0000 Subject: [PATCH 07/24] trying different folder --- .github/workflows/testingbranch.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testingbranch.yml b/.github/workflows/testingbranch.yml index 5d3bd4a..92530f8 100644 --- a/.github/workflows/testingbranch.yml +++ b/.github/workflows/testingbranch.yml @@ -39,7 +39,7 @@ jobs: run: npm ci - name: Configure FHIR Validator - run: cd validation && npm start + run: cd validation-service-fhir-r4 && npm start env: FAILONWARNING: ${{ secrets.FAILONWARNING }} From 37927adda057ddebfed1fbffcffdaf3655317c29 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 11:45:15 +0000 Subject: [PATCH 08/24] remove config --- .github/workflows/testingbranch.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/testingbranch.yml b/.github/workflows/testingbranch.yml index 92530f8..f44ec00 100644 --- a/.github/workflows/testingbranch.yml +++ b/.github/workflows/testingbranch.yml @@ -37,14 +37,11 @@ jobs: - name: Install npm run: npm ci - - - name: Configure FHIR Validator - run: cd validation-service-fhir-r4 && npm start - env: - FAILONWARNING: ${{ secrets.FAILONWARNING }} - name: Update FHIR Validator build run: cd validation-service-fhir-r4; mvn clean package + env: + FAILONWARNING: ${{ secrets.FAILONWARNING }} - name: Run FHIR Validator run: From f1401e804a43e56f2fe7297d4fbb4cc49ea28299 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 22 Dec 2023 12:33:57 +0000 Subject: [PATCH 09/24] testing a theory --- .github/workflows/masterfhirvalidation.yml | 2 ++ .github/workflows/testingbranch.yml | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/masterfhirvalidation.yml b/.github/workflows/masterfhirvalidation.yml index fc3cbb5..af84db3 100644 --- a/.github/workflows/masterfhirvalidation.yml +++ b/.github/workflows/masterfhirvalidation.yml @@ -13,6 +13,8 @@ on: required: true FAILONWARNING: required: false + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: diff --git a/.github/workflows/testingbranch.yml b/.github/workflows/testingbranch.yml index f44ec00..b61a6aa 100644 --- a/.github/workflows/testingbranch.yml +++ b/.github/workflows/testingbranch.yml @@ -40,8 +40,6 @@ jobs: - name: Update FHIR Validator build run: cd validation-service-fhir-r4; mvn clean package - env: - FAILONWARNING: ${{ secrets.FAILONWARNING }} - name: Run FHIR Validator run: From 42078263f44a6dbbe791bcc07565262b42ff7e10 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Thu, 4 Jan 2024 13:01:44 +0000 Subject: [PATCH 10/24] remove most ignored errors/warnings, handle meta.profile different if failOnWarning=false, and ignore warnings on retired assets --- .github/workflows/masterfhirvalidation.yml | 2 - src/common.js.ts | 96 +++++++++++++--------- 2 files changed, 55 insertions(+), 43 deletions(-) diff --git a/.github/workflows/masterfhirvalidation.yml b/.github/workflows/masterfhirvalidation.yml index af84db3..fc3cbb5 100644 --- a/.github/workflows/masterfhirvalidation.yml +++ b/.github/workflows/masterfhirvalidation.yml @@ -13,8 +13,6 @@ on: required: true FAILONWARNING: required: false - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: diff --git a/src/common.js.ts b/src/common.js.ts index c7838ef..f73cddd 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -252,40 +252,44 @@ function getErrorOrWarningFull(issue: OperationOutcomeIssue) { } function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): boolean { if (issue != undefined && issue.diagnostics != undefined) { + + //THESE WARNINGS SHOULD ALWAYS ERROR if (issue.diagnostics.includes('incorrect type for element')) { return true; } if (issue.diagnostics.includes('Error HTTP 401')) { return true; } - if (issue.diagnostics.includes('Could not confirm that the codes provided are in the value set')) { - if (issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/usage-context-type')) return false; + if (issue.diagnostics.includes('must be of the format')) { + return true; + } + + // these warnings can always be silently ignored + // i.e. known and not resolvable issues with dm+ and languages + if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false + if (issue.diagnostics.includes('Inappropriate CodeSystem URL') && issue.diagnostics.includes('for ValueSet: http://hl7.org/fhir/ValueSet/all-languages')) { + return false } + + // LOINC Related warnings can be ignored + if (issue.diagnostics.includes('http://loinc.org')) return false; + if (issue.diagnostics.includes('LOINC is not indexed!')) return false; + + //DICOM warnings can be ignored + if (issue.diagnostics.includes('ValueSet http://dicom.nema.org/')) return false; + + + // these warnings need checking /* - if (issue.diagnostics.includes('Error HTTP 404')) { - // THis is issues with the Terminology Server not containig UKCore and NHSDigita CocdeSystems - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/Workflow-Code')) return false; - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDataModelAndDictionary-treatment-function')) return false; + if (issue.diagnostics.includes('Could not confirm that the codes provided are in the value set')) { + if (issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/usage-context-type')) return false; } - */ if (issue.diagnostics.includes("None of the codings provided are in the value set 'IdentifierType'")) { if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/organisation-role')) return false; } if (issue.diagnostics.includes('The markdown contains content that appears to be an embedded HTML tag starting at')) return false; - // LOINC Related warnings - if (issue.diagnostics.includes('http://loinc.org')) return false; - if (issue.diagnostics.includes('The markdown contains content that appears to be an embedded HTML tag starting at')) return false; - if (issue.diagnostics.includes('LOINC is not indexed!')) return false; if (issue.diagnostics.includes('Error HTTP 403 Forbidden validating CodeableConcept')) return false; - - if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false -/* - if (issue.diagnostics.includes('http://snomed.info/sct')) { - if (issue.diagnostics.includes('https://fhir.hl7.org.uk/ValueSet/UKCore-MedicationCode')) return false - if (issue.diagnostics.includes('https://fhir.hl7.org.uk/ValueSet/UKCore-VaccineCode')) return false - } -*/ if (issue.diagnostics.includes('Unknown code')) { if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false } @@ -294,47 +298,47 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool if (issue.diagnostics.includes('http://snomed.info/sct')) { // Not defined in UKCore and valueset is extensible return !issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/observation-methods'); - } } - if (issue.diagnostics.includes('must be of the format')) { - return true; - } - - if (issue.diagnostics.includes('Inappropriate CodeSystem URL') && issue.diagnostics.includes('for ValueSet: http://hl7.org/fhir/ValueSet/all-languages')) { - return false - } + */ } - // TODO this needs to be turned to true 1/8/2022 Warnings not acceptable on NHS Digital resources - + // COMMENT WAS: TODO this needs to be turned to true 1/8/2022 Warnings not acceptable on NHS Digital resources + // Actual comment is: if error not handled above, return error if FailOnWarning is true return failOnWarning; } function raiseError(issue: OperationOutcomeIssue) : boolean { if (issue != undefined) { if (issue.diagnostics != undefined) { - // List of errors to ignore - if (issue.diagnostics.includes('could not be resolved, so has not been checked')) return false; - + // List of errors to ALWAYS ignore + + // languages, known issue! + if (issue.diagnostics.includes('Inappropriate CodeSystem URL') && issue.diagnostics.includes('for ValueSet: http://hl7.org/fhir/ValueSet/all-languages')) { + return false + } + // Ignore LOINC Errors for now if (issue.diagnostics.includes('http://loinc.org')) return false; + + // ignore dm+d / read errors + if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false + if (issue.diagnostics.includes('http://read.info/ctv3')) return false + + // there Errors need checking + /* + if (issue.diagnostics.includes('could not be resolved, so has not been checked')) return false; + // fault with current 5.5.1 validation if (issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/units-of-time')) return false; if (issue.diagnostics.includes('NHSNumberVerificationStatus')) return false; if (issue.diagnostics.includes('Validation failed for \'http://example.org/fhir')) return false; if (issue.diagnostics.includes('Unrecognised property \'@fhir_comments')) return false; - if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false - if (issue.diagnostics.includes('http://read.info/ctv3')) { - if (issue.diagnostics.includes('https://fhir.hl7.org.uk/ValueSet/UKCore-ConditionCode')) return false - } if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false; if (issue.diagnostics.includes('java.net.SocketTimeoutException')) { console.error(issue.diagnostics) return false } - if (issue.diagnostics.includes('Inappropriate CodeSystem URL') && issue.diagnostics.includes('for ValueSet: http://hl7.org/fhir/ValueSet/all-languages')) { - return false - } + */ } if (issue.location !== undefined && issue.location.length>0) { if (issue.location[0].includes('StructureMap.group')) return false; @@ -729,7 +733,9 @@ export function testFile( folderName: string, fileName: string, failOnWarning :b test('Check profiles are not present in resource (Implementation Guide Best Practice)', () => { // Disable profile check for Parameters if (json.meta != undefined && json.resourceType !== 'Parameters') { - expect(json.meta.profile == undefined).toBeTruthy() + if (failOnWarning == true) { + expect(json.meta.profile == undefined).toBeTruthy() + } } if (json.resourceType === 'Bundle') { let bundle : Bundle = json @@ -737,7 +743,9 @@ export function testFile( folderName: string, fileName: string, failOnWarning :b for (let entry of bundle.entry) { // Disable profile check for Parameters if (entry.resource !== undefined && entry.resource.meta != undefined && entry.resource.resourceType !== 'Parameters') { + if (failOnWarning == true) { expect(entry.resource.meta.profile == undefined).toBeTruthy() + } } } } @@ -822,7 +830,13 @@ export function testFile( folderName: string, fileName: string, failOnWarning :b return error.response }) expect(response.status === 200 || response.status === 400).toBeTruthy() - resourceChecks(response, failOnWarning) + + //we can ignore warnings on retired resources - these would not be in a balloted package + if (resource.status == "retired") { + resourceChecks(response, false) + } else { + resourceChecks(response, failOnWarning) + } expect(response.status).toEqual(200) }); } From b36b5c08b8e33f9806e4d484beba5066c0cea3ec Mon Sep 17 00:00:00 2001 From: Adam Page Date: Thu, 4 Jan 2024 15:34:51 +0000 Subject: [PATCH 11/24] handle sds rolename in test examples, change concept in covid obs method to something that should be in the base valueset --- Examples/pass/Bundle-searchset-COVIDObservation.json | 4 ++-- src/common.js.ts | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Examples/pass/Bundle-searchset-COVIDObservation.json b/Examples/pass/Bundle-searchset-COVIDObservation.json index 80f0694..02c5196 100644 --- a/Examples/pass/Bundle-searchset-COVIDObservation.json +++ b/Examples/pass/Bundle-searchset-COVIDObservation.json @@ -68,8 +68,8 @@ "coding": [ { "system": "http://snomed.info/sct", - "code": "1240471000000102", - "display": "Measurement of COVID-19 antigen" + "code": "1156860005", + "display": "Rapid antigen detection immunoassay technique" } ] }, diff --git a/src/common.js.ts b/src/common.js.ts index f73cddd..eec4c0b 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -278,6 +278,11 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool //DICOM warnings can be ignored if (issue.diagnostics.includes('ValueSet http://dicom.nema.org/')) return false; + //Fragment codesystems can't be checked + if (issue.diagnostics.includes('Unknown code in fragment CodeSystem')) { + if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false + } + // these warnings need checking /* @@ -290,9 +295,7 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool if (issue.diagnostics.includes('The markdown contains content that appears to be an embedded HTML tag starting at')) return false; if (issue.diagnostics.includes('Error HTTP 403 Forbidden validating CodeableConcept')) return false; - if (issue.diagnostics.includes('Unknown code')) { - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false - } + if (issue.diagnostics.includes('None of the codings provided are in the value set')) { if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false if (issue.diagnostics.includes('http://snomed.info/sct')) { From c2df1c9faee5213f0043855257e32a364d03cee1 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Thu, 4 Jan 2024 16:19:12 +0000 Subject: [PATCH 12/24] missed second obs method in bundle --- Examples/pass/Bundle-searchset-COVIDObservation.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Examples/pass/Bundle-searchset-COVIDObservation.json b/Examples/pass/Bundle-searchset-COVIDObservation.json index 02c5196..0869e00 100644 --- a/Examples/pass/Bundle-searchset-COVIDObservation.json +++ b/Examples/pass/Bundle-searchset-COVIDObservation.json @@ -169,8 +169,8 @@ "coding": [ { "system": "http://snomed.info/sct", - "code": "1240471000000102", - "display": "Measurement of 2019-nCoV antigen" + "code": "1156860005", + "display": "Rapid antigen detection immunoassay technique" } ] }, From 0224711d018df93b1d2a85dea1153990ea89e6fe Mon Sep 17 00:00:00 2001 From: Adam Page Date: Thu, 4 Jan 2024 19:02:03 +0000 Subject: [PATCH 13/24] reverse logic on check, and alter check value, to avoid redaction --- .github/workflows/masterfhirvalidation.yml | 5 +++-- src/validate.test.ts | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/masterfhirvalidation.yml b/.github/workflows/masterfhirvalidation.yml index fc3cbb5..704d3cb 100644 --- a/.github/workflows/masterfhirvalidation.yml +++ b/.github/workflows/masterfhirvalidation.yml @@ -12,7 +12,7 @@ on: ONTO_CLIENT_SECRET: required: true FAILONWARNING: - required: false + required: true # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -57,7 +57,6 @@ jobs: CI: true ONTO_CLIENT_ID: ${{ secrets.ONTO_CLIENT_ID }} ONTO_CLIENT_SECRET: ${{ secrets.ONTO_CLIENT_SECRET }} - FAILONWARNING: ${{ secrets.FAILONWARNING }} - name: Build FHIR Validator run: cd validation-service-fhir-r4 && mvn clean package @@ -69,3 +68,5 @@ jobs: - name: Run Test run: cd validation && npm test + env: + FAILONWARNING: ${{ secrets.FAILONWARNING }} diff --git a/src/validate.test.ts b/src/validate.test.ts index 99ce664..e3f0b81 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -18,9 +18,9 @@ const args = require('minimist')(process.argv.slice(2)) let source = '../' let examples: string - let failOnWarning = true; - if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING.toLowerCase() == 'false') { - failOnWarning = false; + let failOnWarning = false; + if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING.toLowerCase() == 'FAILONWARNING') { + failOnWarning = true; } gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; From c4f91525180f4c5cbe419787838ab3be547ed63e Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 10:47:08 +0000 Subject: [PATCH 14/24] remove pointless toLowerCase --- src/validate.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/validate.test.ts b/src/validate.test.ts index e3f0b81..754b33d 100644 --- a/src/validate.test.ts +++ b/src/validate.test.ts @@ -19,7 +19,7 @@ const args = require('minimist')(process.argv.slice(2)) let examples: string let failOnWarning = false; - if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING.toLowerCase() == 'FAILONWARNING') { + if (process.env.FAILONWARNING != undefined && process.env.FAILONWARNING == 'FAILONWARNING') { failOnWarning = true; } gitHubSummary += 'Strict validation: ' + failOnWarning + NEW_LINE; From 60ac5f9a0da60368466727e27222b70797f0dd4e Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 12:44:46 +0000 Subject: [PATCH 15/24] swap quote marks on retired check --- src/common.js.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common.js.ts b/src/common.js.ts index eec4c0b..8a05a8d 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -835,7 +835,7 @@ export function testFile( folderName: string, fileName: string, failOnWarning :b expect(response.status === 200 || response.status === 400).toBeTruthy() //we can ignore warnings on retired resources - these would not be in a balloted package - if (resource.status == "retired") { + if (resource.status == 'retired') { resourceChecks(response, false) } else { resourceChecks(response, failOnWarning) From 2e350d5d74fa7fb528df91bc1bbc33c7917ee592 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 13:13:57 +0000 Subject: [PATCH 16/24] working retired check --- src/common.js.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common.js.ts b/src/common.js.ts index 8a05a8d..3ea9c84 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -835,7 +835,7 @@ export function testFile( folderName: string, fileName: string, failOnWarning :b expect(response.status === 200 || response.status === 400).toBeTruthy() //we can ignore warnings on retired resources - these would not be in a balloted package - if (resource.status == 'retired') { + if (json.status == 'retired') { resourceChecks(response, false) } else { resourceChecks(response, failOnWarning) From 75a078fff5109bc9295254d4064ca26996ae253f Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 13:56:44 +0000 Subject: [PATCH 17/24] move dm+d warning back into the commented out ones --- src/common.js.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common.js.ts b/src/common.js.ts index 3ea9c84..f071d04 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -323,12 +323,12 @@ function raiseError(issue: OperationOutcomeIssue) : boolean { // Ignore LOINC Errors for now if (issue.diagnostics.includes('http://loinc.org')) return false; - // ignore dm+d / read errors - if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false + // ignore readctv3 errors if (issue.diagnostics.includes('http://read.info/ctv3')) return false // there Errors need checking /* + if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false if (issue.diagnostics.includes('could not be resolved, so has not been checked')) return false; // fault with current 5.5.1 validation From f8fa9795087497ca3d52a7362e9a95036174dc62 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 14:18:00 +0000 Subject: [PATCH 18/24] swapsdsjobrolecode to sdsjobrolename in examples as the code codesystem no longer exists --- Examples/pass/MedicationDispense-pass.json | 2 +- Examples/pass/PractitionerRole-pass.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Examples/pass/MedicationDispense-pass.json b/Examples/pass/MedicationDispense-pass.json index 5dc59cd..04bd15e 100644 --- a/Examples/pass/MedicationDispense-pass.json +++ b/Examples/pass/MedicationDispense-pass.json @@ -25,7 +25,7 @@ { "coding": [ { - "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode", + "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleName", "code": "S0030:G0100:R0620" } ] diff --git a/Examples/pass/PractitionerRole-pass.json b/Examples/pass/PractitionerRole-pass.json index c269048..373d2e1 100644 --- a/Examples/pass/PractitionerRole-pass.json +++ b/Examples/pass/PractitionerRole-pass.json @@ -25,7 +25,7 @@ { "coding": [ { - "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode", + "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleName", "code": "R0260" } ] From b6d336cbbe615cb21c6e351f393517a584c9ee1d Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 14:25:11 +0000 Subject: [PATCH 19/24] swap back due to slices --- Examples/pass/MedicationDispense-pass.json | 2 +- Examples/pass/PractitionerRole-pass.json | 2 +- src/common.js.ts | 39 ---------------------- 3 files changed, 2 insertions(+), 41 deletions(-) diff --git a/Examples/pass/MedicationDispense-pass.json b/Examples/pass/MedicationDispense-pass.json index 04bd15e..5dc59cd 100644 --- a/Examples/pass/MedicationDispense-pass.json +++ b/Examples/pass/MedicationDispense-pass.json @@ -25,7 +25,7 @@ { "coding": [ { - "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleName", + "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode", "code": "S0030:G0100:R0620" } ] diff --git a/Examples/pass/PractitionerRole-pass.json b/Examples/pass/PractitionerRole-pass.json index 373d2e1..c269048 100644 --- a/Examples/pass/PractitionerRole-pass.json +++ b/Examples/pass/PractitionerRole-pass.json @@ -25,7 +25,7 @@ { "coding": [ { - "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleName", + "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode", "code": "R0260" } ] diff --git a/src/common.js.ts b/src/common.js.ts index f071d04..7f38b60 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -282,28 +282,6 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool if (issue.diagnostics.includes('Unknown code in fragment CodeSystem')) { if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false } - - - // these warnings need checking - /* - if (issue.diagnostics.includes('Could not confirm that the codes provided are in the value set')) { - if (issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/usage-context-type')) return false; - } - if (issue.diagnostics.includes("None of the codings provided are in the value set 'IdentifierType'")) { - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/organisation-role')) return false; - } - if (issue.diagnostics.includes('The markdown contains content that appears to be an embedded HTML tag starting at')) return false; - - if (issue.diagnostics.includes('Error HTTP 403 Forbidden validating CodeableConcept')) return false; - - if (issue.diagnostics.includes('None of the codings provided are in the value set')) { - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false - if (issue.diagnostics.includes('http://snomed.info/sct')) { - // Not defined in UKCore and valueset is extensible - return !issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/observation-methods'); - } - } - */ } // COMMENT WAS: TODO this needs to be turned to true 1/8/2022 Warnings not acceptable on NHS Digital resources @@ -325,23 +303,6 @@ function raiseError(issue: OperationOutcomeIssue) : boolean { // ignore readctv3 errors if (issue.diagnostics.includes('http://read.info/ctv3')) return false - - // there Errors need checking - /* - if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false - if (issue.diagnostics.includes('could not be resolved, so has not been checked')) return false; - - // fault with current 5.5.1 validation - if (issue.diagnostics.includes('http://hl7.org/fhir/ValueSet/units-of-time')) return false; - if (issue.diagnostics.includes('NHSNumberVerificationStatus')) return false; - if (issue.diagnostics.includes('Validation failed for \'http://example.org/fhir')) return false; - if (issue.diagnostics.includes('Unrecognised property \'@fhir_comments')) return false; - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false; - if (issue.diagnostics.includes('java.net.SocketTimeoutException')) { - console.error(issue.diagnostics) - return false - } - */ } if (issue.location !== undefined && issue.location.length>0) { if (issue.location[0].includes('StructureMap.group')) return false; From e473d877289a560a09b20068436d5ee79ba58d79 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Fri, 5 Jan 2024 14:39:37 +0000 Subject: [PATCH 20/24] remove must be of format check --- src/common.js.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/common.js.ts b/src/common.js.ts index 7f38b60..a2a1675 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -260,9 +260,6 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool if (issue.diagnostics.includes('Error HTTP 401')) { return true; } - if (issue.diagnostics.includes('must be of the format')) { - return true; - } // these warnings can always be silently ignored // i.e. known and not resolvable issues with dm+ and languages From 8cb254bd15f7b89fe0e0dfd7e1358d1d0266a3ec Mon Sep 17 00:00:00 2001 From: Adam Page Date: Mon, 8 Jan 2024 09:40:59 +0000 Subject: [PATCH 21/24] Remove practitioner example, and check --- Examples/pass/PractitionerRole-pass.json | 52 ------------------------ src/common.js.ts | 8 +--- 2 files changed, 1 insertion(+), 59 deletions(-) delete mode 100644 Examples/pass/PractitionerRole-pass.json diff --git a/Examples/pass/PractitionerRole-pass.json b/Examples/pass/PractitionerRole-pass.json deleted file mode 100644 index c269048..0000000 --- a/Examples/pass/PractitionerRole-pass.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "resourceType": "PractitionerRole", - "id": "6dc16793-61c2-44b8-8d0f-f872101c016e", - "identifier": [ - { - "system": "https://fhir.nhs.uk/Id/sds-role-profile-id", - "value": "125686540025" - } - ], - "practitioner": { - "identifier": { - "system": "https://fhir.hl7.org.uk/Id/gmp-number", - "value": "G1234567" - }, - "display": "Dr Razia Ali" - }, - "organization": { - "identifier": { - "system": "https://fhir.nhs.uk/Id/ods-organization-code", - "value": "M85011" - }, - "display": "THE SWAN MEDICAL CENTRE" - }, - "code": [ - { - "coding": [ - { - "system": "https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode", - "code": "R0260" - } - ] - } - ], - "specialty": [ - { - "coding": [ - { - "system": "https://fhir.hl7.org.uk/CodeSystem/UKCore-PracticeSettingCode", - "code": "100", - "display": "GENERAL SURGERY" - } - ] - } - ], - "telecom": [ - { - "system": "phone", - "value": "01234567890", - "use": "work" - } - ] -} diff --git a/src/common.js.ts b/src/common.js.ts index a2a1675..01eb504 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -262,8 +262,7 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool } // these warnings can always be silently ignored - // i.e. known and not resolvable issues with dm+ and languages - if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false + //if (issue.diagnostics.includes('Code system https://dmd.nhs.uk/ could not be resolved.')) return false if (issue.diagnostics.includes('Inappropriate CodeSystem URL') && issue.diagnostics.includes('for ValueSet: http://hl7.org/fhir/ValueSet/all-languages')) { return false } @@ -274,11 +273,6 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool //DICOM warnings can be ignored if (issue.diagnostics.includes('ValueSet http://dicom.nema.org/')) return false; - - //Fragment codesystems can't be checked - if (issue.diagnostics.includes('Unknown code in fragment CodeSystem')) { - if (issue.diagnostics.includes('https://fhir.nhs.uk/CodeSystem/NHSDigital-SDS-JobRoleCode')) return false - } } // COMMENT WAS: TODO this needs to be turned to true 1/8/2022 Warnings not acceptable on NHS Digital resources From 3dd0b95483c545f999b1ae04b9bd021fa19e5605 Mon Sep 17 00:00:00 2001 From: Adam Page Date: Mon, 8 Jan 2024 09:47:52 +0000 Subject: [PATCH 22/24] Remove practitioner example from the exp[ected results --- src/validator.test.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/validator.test.ts b/src/validator.test.ts index 850cc00..13db060 100644 --- a/src/validator.test.ts +++ b/src/validator.test.ts @@ -44,9 +44,6 @@ describe('Testing validation passes for valid HL7 FHIR resources', () => { // MedicationDispense testFileValidator('Test HL7 FHIR resource passes validation ','Examples/pass/MedicationDispense-pass.json') - // PractitionerRole - testFileValidator('Test HL7 FHIR resource passes validation PractitionerRole','Examples/pass/PractitionerRole-pass.json') - // Bundle testFileValidator('Test HL7 FHIR Seaarch Immmunization Bundle passes validation ','Examples/pass/Bundle-searchset-COVIDImmunization.json') testFileValidator('Test HL7 FHIR Seaarch Observation Bundle passes validation ','Examples/pass/Bundle-searchset-COVIDObservation.json') From 3f27932fefebd87e81fd7c5cd37178b26b909aad Mon Sep 17 00:00:00 2001 From: Adam Page Date: Mon, 8 Jan 2024 10:49:50 +0000 Subject: [PATCH 23/24] Readd fragment check, but not limited to sdsjobcode --- src/common.js.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/common.js.ts b/src/common.js.ts index 01eb504..079c143 100644 --- a/src/common.js.ts +++ b/src/common.js.ts @@ -273,6 +273,9 @@ function raiseWarning(issue: OperationOutcomeIssue, failOnWarning:boolean): bool //DICOM warnings can be ignored if (issue.diagnostics.includes('ValueSet http://dicom.nema.org/')) return false; + + //Fragment codesystems can't be checked + if (issue.diagnostics.includes('Unknown code in fragment CodeSystem')) return false; } // COMMENT WAS: TODO this needs to be turned to true 1/8/2022 Warnings not acceptable on NHS Digital resources From 50373e7b4717658d81527b9f92ca9505aa545924 Mon Sep 17 00:00:00 2001 From: Adam Page <115618858+APageNHS@users.noreply.github.com> Date: Thu, 18 Jan 2024 12:19:21 +0000 Subject: [PATCH 24/24] Update masterfhirvalidation.yml - failonwarning not required --- .github/workflows/masterfhirvalidation.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/masterfhirvalidation.yml b/.github/workflows/masterfhirvalidation.yml index 704d3cb..5dc03cd 100644 --- a/.github/workflows/masterfhirvalidation.yml +++ b/.github/workflows/masterfhirvalidation.yml @@ -12,7 +12,7 @@ on: ONTO_CLIENT_SECRET: required: true FAILONWARNING: - required: true + required: false # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: