Open
Conversation
✅
|
| Descriptor | Linter | Files | Fixed | Errors | Warnings | Elapsed time |
|---|---|---|---|---|---|---|
| ✅ ACTION | actionlint | 14 | 0 | 0 | 0.29s | |
| ✅ BASH | bash-exec | 7 | 0 | 0 | 0.06s | |
| ✅ BASH | shellcheck | 4 | 0 | 0 | 0.2s | |
| shfmt | 7 | 1 | 0 | 0.01s | ||
| ✅ CSHARP | csharpier | 3 | 0 | 0 | 2.0s | |
| roslynator | 1 | 1 | 0 | 11.76s | ||
| ✅ CSS | stylelint | 1 | 0 | 0 | 1.85s | |
| ✅ DOCKERFILE | hadolint | 5 | 0 | 0 | 0.23s | |
| ✅ EDITORCONFIG | editorconfig-checker | 435 | 0 | 0 | 2.53s | |
| ✅ ENV | dotenv-linter | 1 | 0 | 0 | 0.0s | |
| npm-groovy-lint | 8 | 0 | 20 | 25.29s | ||
| ✅ HTML | djlint | 2 | 0 | 0 | 2.53s | |
| ✅ HTML | htmlhint | 2 | 0 | 0 | 0.31s | |
| checkstyle | 64 | 0 | 90 | 10.4s | ||
| ✅ JSON | jsonlint | 53 | 0 | 0 | 0.53s | |
| ✅ JSON | prettier | 53 | 0 | 0 | 6.27s | |
| ✅ JSON | v8r | 53 | 0 | 0 | 34.31s | |
| markdownlint | 23 | 279 | 0 | 2.31s | ||
| ✅ PYTHON | bandit | 1 | 0 | 0 | 2.37s | |
| ✅ PYTHON | black | 1 | 0 | 0 | 1.16s | |
| ✅ PYTHON | flake8 | 1 | 0 | 0 | 0.96s | |
| ✅ PYTHON | isort | 1 | 0 | 0 | 0.69s | |
| ✅ PYTHON | mypy | 1 | 0 | 0 | 11.5s | |
| ✅ PYTHON | ruff | 1 | 0 | 0 | 0.04s | |
| ✅ REPOSITORY | checkov | yes | no | no | 45.72s | |
| ✅ REPOSITORY | gitleaks | yes | no | no | 5.93s | |
| ✅ REPOSITORY | git_diff | yes | no | no | 0.46s | |
| kics | yes | no | 109 | 55.14s | ||
| ✅ REPOSITORY | secretlint | yes | no | no | 3.74s | |
| ✅ REPOSITORY | syft | yes | no | no | 17.44s | |
| trivy | yes | 18 | no | 23.07s | ||
| ✅ REPOSITORY | trivy-sbom | yes | no | no | 7.01s | |
| ✅ REPOSITORY | trufflehog | yes | no | no | 6.73s | |
| ✅ XML | xmllint | 4 | 0 | 0 | 1.82s | |
| ✅ YAML | prettier | 118 | 0 | 0 | 3.15s |
Detailed Issues
⚠️ JAVA / checkstyle - 90 warnings
warning: First sentence of Javadoc is missing an ending period.
warning: First sentence of Javadoc is missing an ending period.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Line is longer than 100 characters (found 103).
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: First sentence of Javadoc is missing an ending period.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Line is longer than 100 characters (found 107).
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: First sentence of Javadoc is missing an ending period.
warning: Line is longer than 100 characters (found 115).
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Missing a Javadoc comment.
warning: Line is longer than 100 characters (found 220).
warning: Line is longer than 100 characters (found 104).
warning: Line is longer than 100 characters (found 117).
warning: Line is longer than 100 characters (found 154).
warning: Line is longer than 100 characters (found 111).
warning: Line is longer than 100 characters (found 128).
warning: Line is longer than 100 characters (found 142).
warning: Missing a Javadoc comment.
warning: Line is longer than 100 characters (found 104).
warning: Line is longer than 100 characters (found 132).
warning: Line is longer than 100 characters (found 141).
warning: 90 warnings emitted
⚠️ REPOSITORY / kics - 109 warnings
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/deploy/docker-compose.dev.yml:2:1
│
2 │ fhir:
│ ^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/deploy/docker-compose.dev.yml:51:1
│
51 │ fhir-pseudonymizer:
│ ^^^^^^^^^^^^^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ docker-compose/docker-compose.staging.yaml:25:1
│
25 │ omopdb:
│ ^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/tests/e2e/docker-compose.yaml:72:1
│
72 │ jaeger:
│ ^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/notify/tests/e2e/docker-compose.yaml:47:1
│
47 │ fhir:
│ ^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/tests/e2e/docker-compose.yaml:2:1
│
2 │ list:
│ ^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ docker-compose/docker-compose.staging.yaml:142:1
│
142 │ fhir-db:
│ ^^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/query/tests/e2e/docker-compose.yaml:28:1
│
28 │ tester:
│ ^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/notify/tests/e2e/docker-compose.yaml:26:1
│
26 │ jobstore-db:
│ ^^^^^^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/tests/e2e/docker-compose.yaml:59:1
│
59 │ keycloak:
│ ^^^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/list/frontend/tests/e2e/docker-compose.yaml:19:1
│
19 │ tester:
│ ^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/query/tests/e2e/docker-compose.yaml:45:1
│
45 │ broadsea-atlasdb:
│ ^^^^^^^^^^^^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Docker compose file doesn't have 'cap_drop' attribute. Make sure your container only has necessary capabilities.
┌─ src/query/tests/e2e/docker-compose.yaml:2:1
│
2 │ query:
│ ^^^^^^^^
│
= Container Capabilities Unrestricted
= Some capabilities are not needed in certain (or any) containers. Make sure that you only add capabilities that your container needs. Drop unnecessary capabilities as well.
warning: Doc
(Truncated to 5714 characters out of 33943)
⚠️ MARKDOWN / markdownlint - 279 errors
CHANGELOG.md:5 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:11:121 MD013/line-length Line length [Expected: 120; Actual: 220]
CHANGELOG.md:15:121 MD013/line-length Line length [Expected: 120; Actual: 233]
CHANGELOG.md:20 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:49 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:50 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:53:121 MD013/line-length Line length [Expected: 120; Actual: 232]
CHANGELOG.md:54:121 MD013/line-length Line length [Expected: 120; Actual: 220]
CHANGELOG.md:57 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:58 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:68 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:69 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:74 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:75 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:89 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:96 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:97 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:100:121 MD013/line-length Line length [Expected: 120; Actual: 220]
CHANGELOG.md:103 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:104 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:110:121 MD013/line-length Line length [Expected: 120; Actual: 241]
CHANGELOG.md:117 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:118 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:125:121 MD013/line-length Line length [Expected: 120; Actual: 220]
CHANGELOG.md:130 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:135 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:136 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:149:121 MD013/line-length Line length [Expected: 120; Actual: 229]
CHANGELOG.md:150:121 MD013/line-length Line length [Expected: 120; Actual: 228]
CHANGELOG.md:153:121 MD013/line-length Line length [Expected: 120; Actual: 237]
CHANGELOG.md:166 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:169:121 MD013/line-length Line length [Expected: 120; Actual: 224]
CHANGELOG.md:171 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:172 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:176 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:177 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:183 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:184 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:188 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:189 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:195 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:196 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:202 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:203 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Features"]
CHANGELOG.md:207 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:208 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Bug Fixes"]
CHANGELOG.md:211:121 MD013/line-length Line length [Expected: 120; Actual: 219]
CHANGELOG.md:212:121 MD013/line-length Line length [Expected: 120; Actual: 221]
CHANGELOG.md:213:121 MD013/line-length Line length [Expected: 120; Actual: 228]
CHANGELOG.md:214:121 MD013/line-length Line length [Expected: 120; Actual: 220]
CHANGELOG.md:215:121 MD013/line-length Line length [Expected: 120; Actual: 232]
CHANGELOG.md:221:121 MD013/line-length Line length [Expected: 120; Actual: 233]
CHANGELOG.md:224 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:225 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Documentation"]
CHANGELOG.md:229 MD012/no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
CHANGELOG.md:230 MD024/no-duplicate-heading Multiple headings with the same content [Context: "Miscellaneous Chores"]
CHANGELOG.md:251:121 MD013/line-length Line length [Expected: 120; Actual: 228]
CHANGELOG.md:253:121 MD013/line-length Line length [Expected: 120; Actual: 230]
CHANGELOG.md:255:121 MD013/line-length Line length [Expected: 120; Actual: 232]
CHANGELOG.md:256:121 MD013/line-le
(Truncated to 5714 characters out of 26629)
⚠️ GROOVY / npm-groovy-lint - 20 warnings
note: Class should be marked with one of @GrailsCompileStatic, @CompileStatic or @CompileDynamic
= Check that classes are explicitely annotated with either @GrailsCompileStatic, @CompileStatic or @CompileDynamic
note: Class should be marked with one of @GrailsCompileStatic, @CompileStatic or @CompileDynamic
= Check that classes are explicitely annotated with either @GrailsCompileStatic, @CompileStatic or @CompileDynamic
note: The String 'spring-boot-loader' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:71:24
│
71 │ intoLayer("spring-boot-loader") {
│ ^^^^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'org/springframework/boot/loader/**' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:72:26
│
72 │ include("org/springframework/boot/loader/**")
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'application' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:74:24
│
74 │ intoLayer("application")
│ ^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'module-dependencies' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:77:24
│
77 │ intoLayer("module-dependencies") {
│ ^^^^^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'org.miracum:*:*' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:78:26
│
78 │ include("org.miracum:*:*")
│ ^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'dependencies' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:80:24
│
80 │ intoLayer("dependencies")
│ ^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'dependencies' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:82:25
│
82 │ layerOrder = [ "dependencies", "spring-boot-loader", "module-dependencies", "application" ]
│ ^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'spring-boot-loader' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:82:41
│
82 │ layerOrder = [ "dependencies", "spring-boot-loader", "module-dependencies", "application" ]
│ ^^^^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'module-dependencies' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:82:63
│
82 │ layerOrder = [ "dependencies", "spring-boot-loader", "module-dependencies", "application" ]
│ ^^^^^^^^^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: The String 'application' can be wrapped in single quotes instead of double quotes
┌─ src/buildSrc/src/main/groovy/org.miracum.recruit.java-application-conventions.gradle:82:86
│
82 │ layerOrder = [ "dependencies", "spring-boot-loader", "module-dependencies", "application" ]
│ ^^^^^^^^^^^
│
= String objects should be created with single quotes, and GString objects created with double quotes. Creating normal String objects with double quotes is confusing to readers.
note: Class should be marked with one of @GrailsCompileStatic, @CompileStatic or @CompileDynamic
= Check that classes are explicitely annotated with ei
(Truncated to 5714 characters out of 7255)
⚠️ CSHARP / roslynator - 1 error
Results of roslynator linter (version 0.11.0.0)
See documentation on https://megalinter.io/9.2.0/descriptors/csharp_roslynator/
-----------------------------------------------
❌ [ERROR] tests/chaos/tester/tester.csproj
Loading project 'tests/chaos/tester/tester.csproj'...
Analyze 'tester'
Program.cs(50,32): error CS0103: The name 'TimeSpan' does not exist in the current context
Program.cs(108,5): error CS0103: The name 'Console' does not exist in the current context
Program.cs(115,28): error CS0103: The name 'File' does not exist in the current context
Program.cs(117,9): error CS0103: The name 'JsonSerializer' does not exist in the current context
Program.cs(125,9): error CS0103: The name 'Console' does not exist in the current context
Program.cs(127,22): error CS0103: The name 'Policy' does not exist in the current context
Program.cs(140,9): error CS0103: The name 'Console' does not exist in the current context
Program.cs(141,15): error CS0103: The name 'System' does not exist in the current context
Program.cs(141,49): error CS0103: The name 'TimeSpan' does not exist in the current context
Program.cs(147,5): error CS0103: The name 'Console' does not exist in the current context
Program.cs(155,5): error CS0103: The name 'Console' does not exist in the current context
Program.cs(160,5): error CS0103: The name 'Console' does not exist in the current context
Program.cs(169,5): error CS0103: The name 'Console' does not exist in the current context
Program.cs(184,13): error CS0103: The name 'Console' does not exist in the current context
Program.cs(192,19): error CS0103: The name 'System' does not exist in the current context
Program.cs(192,53): error CS0103: The name 'TimeSpan' does not exist in the current context
Program.cs(196,9): error CS0103: The name 'Console' does not exist in the current context
Program.cs(202,13): error CS0103: The name 'Console' does not exist in the current context
Program.cs(213,15): error CS0103: The name 'System' does not exist in the current context
Program.cs(213,49): error CS0103: The name 'TimeSpan' does not exist in the current context
Program.cs(101,42): error CS0161: 'RunTest(FileInfo, Uri, TimeSpan, int)': not all code paths return a value
Program.cs(145,42): error CS0161: 'RunDeleteMessages(Uri)': not all code paths return a value
Program.cs(163,42): error CS0161: 'RunAssert(Uri, int, int)': not all code paths return a value
Program.cs(1,7): error CS0246: The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(2,7): error CS0246: The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(3,7): error CS0246: The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(4,7): error CS0246: The type or namespace name 'Hl7' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(5,7): error CS0246: The type or namespace name 'Hl7' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(6,7): error CS0246: The type or namespace name 'Hl7' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(7,7): error CS0246: The type or namespace name 'Polly' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(9,23): error CS0246: The type or namespace name 'RootCommand' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(11,35): error CS0246: The type or namespace name 'Option<>' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(11,42): error CS0246: The type or namespace name 'Uri' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(18,33): error CS0246: The type or namespace name 'Command' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(26,22): error CS0246: The type or namespace name 'Option<>' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(26,29): error CS0246: The type or namespace name 'FileInfo' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(34,27): error CS0246: The type or namespace name 'Option<>' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(40,31): error CS0246: The type or namespace name 'Option<>' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(40,38): error CS0246: The type or namespace name 'Uri' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(44,41): error CS0246: The type or namespace name 'Uri' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(46,26): error CS0246: The type or namespace name 'Option<>' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(46,33): error CS0246: The type or namespace name 'TimeSpan' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(52,23): error CS0246: The type or namespace name 'Command' could not be found (are you missing a using directive or an assembly reference?)
Program.cs(73,38): error CS0246: The type or namesp
(Truncated to 5714 characters out of 26578)
⚠️ BASH / shfmt - 1 error
diff src/gradlew.orig src/gradlew
--- src/gradlew.orig
+++ src/gradlew
@@ -71,15 +71,15 @@
# Need this for daisy-chained symlinks.
while
- APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
- [ -h "$app_path" ]
+ APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
+ [ -h "$app_path" ]
do
- ls=$( ls -ld "$app_path" )
- link=${ls#*' -> '}
- case $link in #(
- /*) app_path=$link ;; #(
- *) app_path=$APP_HOME$link ;;
- esac
+ ls=$(ls -ld "$app_path")
+ link=${ls#*' -> '}
+ case $link in #(
+ /*) app_path=$link ;; #(
+ *) app_path=$APP_HOME$link ;;
+ esac
done
# This is normally unused
@@ -86,20 +86,20 @@
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
+APP_HOME=$(cd -P "${APP_HOME:-./}" >/dev/null && printf '%s\n' "$PWD") || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
-warn () {
- echo "$*"
-} >&2
-
-die () {
- echo
- echo "$*"
- echo
- exit 1
+warn() {
+ echo "$*"
+} >&2
+
+die() {
+ echo
+ echo "$*"
+ echo
+ exit 1
} >&2
# OS specific support (must be 'true' or 'false').
@@ -107,57 +107,56 @@
msys=false
darwin=false
nonstop=false
-case "$( uname )" in #(
- CYGWIN* ) cygwin=true ;; #(
- Darwin* ) darwin=true ;; #(
- MSYS* | MINGW* ) msys=true ;; #(
- NONSTOP* ) nonstop=true ;;
+case "$(uname)" in #(
+CYGWIN*) cygwin=true ;; #(
+Darwin*) darwin=true ;; #(
+MSYS* | MINGW*) msys=true ;; #(
+NONSTOP*) nonstop=true ;;
esac
-
-
# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD=$JAVA_HOME/jre/sh/java
- else
- JAVACMD=$JAVA_HOME/bin/java
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
+if [ -n "$JAVA_HOME" ]; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ]; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD=$JAVA_HOME/jre/sh/java
+ else
+ JAVACMD=$JAVA_HOME/bin/java
+ fi
+ if [ ! -x "$JAVACMD" ]; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
else
- JAVACMD=java
- if ! command -v java >/dev/null 2>&1
- then
- die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
+ JAVACMD=java
+ if ! command -v java >/dev/null 2>&1; then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
fi
# Increase the maximum file descriptors if we can.
-if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
- case $MAX_FD in #(
- max*)
- # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
- # shellcheck disable=SC2039,SC3045
- MAX_FD=$( ulimit -H -n ) ||
- warn "Could not query maximum file descriptor limit"
- esac
- case $MAX_FD in #(
- '' | soft) :;; #(
- *)
- # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
- # shellcheck disable=SC2039,SC3045
- ulimit -n "$MAX_FD" ||
- warn "Could not set maximum file descriptor limit to $MAX_FD"
- esac
+if ! "$cygwin" && ! "$darwin" && ! "$nonstop"; then
+ case $MAX_FD in #(
+ max*)
+ # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ MAX_FD=$(ulimit -H -n) ||
+ warn "Could not query maximum file descriptor limit"
+ ;;
+ esac
+ case $MAX_FD in #(
+ '' | soft) : ;; #(
+ *)
+ # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
+ # shellcheck disable=SC2039,SC3045
+ ulimit -n "$MAX_FD" ||
+ warn "Could not set maximum file descriptor limit to $MAX_FD"
+ ;;
+ esac
fi
# Collect all arguments for the java command, stacking in reverse order:
@@ -169,35 +168,36 @@
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
# For Cygwin or MSYS, switch paths to Windows format before running java
-if "$cygwin" || "$msys" ; then
- APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
-
- JAVACMD=$( cygpath --unix "$JAVACMD" )
-
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- for arg do
- if
- case $arg in #(
- -*) false ;; # don't mess with options #(
- /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
- [ -e "$t" ] ;; #(
- *) false ;;
- esac
- then
- arg=$( cygpath --path --ignore --mixed "$arg" )
- fi
- # Roll the args list around exactly as many times as the number of
- # args, so each arg
(Truncated to 5714 characters out of 8251)
⚠️ REPOSITORY / trivy - 18 errors
error: Package: form-data
Installed Version: 2.3.3
Vulnerability CVE-2025-7783
Severity: CRITICAL
Fixed Version: 2.5.4, 3.0.4, 4.0.4
Link: [CVE-2025-7783](https://avd.aquasec.com/nvd/cve-2025-7783)
┌─ src/list/frontend/tests/e2e/package-lock.json:925:1
│
925 │ ╭ "node_modules/form-data": {
926 │ │ "version": "2.3.3",
927 │ │ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
928 │ │ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
· │
938 │ │ }
939 │ │ },
│ ╰^
│
= form-data: Unsafe random function in form-data
= Use of Insufficiently Random Values vulnerability in form-data allows HTTP Parameter Pollution (HPP). This vulnerability is associated with program files lib/form_data.Js.
This issue affects form-data: < 2.5.4, 3.0.0 - 3.0.3, 4.0.0 - 4.0.3.
error: Package: qs
Installed Version: 6.10.4
Vulnerability CVE-2025-15284
Severity: HIGH
Fixed Version: 6.14.1
Link: [CVE-2025-15284](https://avd.aquasec.com/nvd/cve-2025-15284)
┌─ src/list/frontend/tests/e2e/package-lock.json:1683:1
│
1683 │ ╭ "node_modules/qs": {
1684 │ │ "version": "6.10.4",
1685 │ │ "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz",
1686 │ │ "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==",
· │
1697 │ │ }
1698 │ │ },
│ ╰^
│
= qs: qs: Denial of Service via improper input validation in array parsing
= Improper Input Validation vulnerability in qs (parse modules) allows HTTP DoS.This issue affects qs: < 6.14.1.
SummaryThe arrayLimit option in qs does not enforce limits for bracket notation (a[]=1&a[]=2), allowing attackers to cause denial-of-service via memory exhaustion. Applications using arrayLimit for DoS protection are vulnerable.
DetailsThe arrayLimit option only checks limits for indexed notation (a[0]=1&a[1]=2) but completely bypasses it for bracket notation (a[]=1&a[]=2).
Vulnerable code (lib/parse.js:159-162):
if (root === '[]' && options.parseArrays) {
obj = utils.combine([], leaf); // No arrayLimit check
}
Working code (lib/parse.js:175):
else if (index <= options.arrayLimit) { // Limit checked here
obj = [];
obj[index] = leaf;
}
The bracket notation handler at line 159 uses utils.combine([], leaf) without validating against options.arrayLimit, while indexed notation at line 175 checks index <= options.arrayLimit before creating arrays.
PoCTest 1 - Basic bypass:
npm install qs
const qs = require('qs');
const result = qs.parse('a[]=1&a[]=2&a[]=3&a[]=4&a[]=5&a[]=6', { arrayLimit: 5 });
console.log(result.a.length); // Output: 6 (should be max 5)
Test 2 - DoS demonstration:
const qs = require('qs');
const attack = 'a[]=' + Array(10000).fill('x').join('&a[]=');
const result = qs.parse(attack, { arrayLimit: 100 });
console.log(result.a.length); // Output: 10000 (should be max 100)
Configuration:
* arrayLimit: 5 (test 1) or arrayLimit: 100 (test 2)
* Use bracket notation: a[]=value (not indexed a[0]=value)
ImpactDenial of Service via memory exhaustion. Affects applications using qs.parse() with user-controlled input and arrayLimit for protection.
Attack scenario:
* Attacker sends HTTP request: GET /api/search?filters[]=x&filters[]=x&...&filters[]=x (100,000+ times)
* Application parses with qs.parse(query, { arrayLimit: 100 })
* qs ignores limit, parses all 100,000 elements into array
* Server memory exhausted → application crashes or becomes unresponsive
* Service unavailable for all users
Real-world impact:
* Single malicious request can crash server
* No authentication required
* Easy to automate and scale
* Affects any endpoint parsing query strings with bracket notation
error: Package: braces
Installed Version: 2.3.2
Vulnerability CVE-2024-4068
Severity: HIGH
Fixed Version: 3.0.3
Link: [CVE-2024-4068](https://avd.aquasec.com/nvd/cve-2024-4068)
┌─ src/list/package-lock.json:20463:1
│
20463 │ ╭ "node_modules/jscodeshift/node_modules/braces": {
20464 │ │ "version": "2.3.2",
20465 │ │ "license": "MIT",
20466 │ │ "optional": true,
· │
20481 │ │ }
20482 │ │ },
│ ╰^
│
= braces: fails to limit the number of characters it can handle
= The NPM package `braces`, versions prior to 3.0.3, fails to limit the number of characters it can handle, which could lead to Memory Exhaustion. In `lib/parse.js,` if a malicious user sends "imbalanced braces" as input, the parsing will enter a loop, which will cause the program to start allocating heap memory without freeing it at any moment of the loop. Eventually, the JavaScript heap limit is reached, and the program will crash.
error: Package: cross-spawn
Installed Version: 6.0.5
Vulnerability CVE-2024-21538
Severity: HIGH
Fixed Version: 7.0.5, 6.0.6
Link: [CVE-2024-21538](https://avd.aquasec.com/nvd/cve-2024-21538)
┌─ src/list/package-lock.json:13820:1
│
13820 │ ╭ "node_modules/execa/node_module
(Truncated to 5714 characters out of 22461)
See detailed reports in MegaLinter artifacts
Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)
- Documentation: Custom Flavors
- Command:
npx [email protected] --custom-flavor-setup --custom-flavor-linters PYTHON_BLACK,PYTHON_FLAKE8,PYTHON_ISORT,PYTHON_BANDIT,PYTHON_MYPY,PYTHON_RUFF,ACTION_ACTIONLINT,BASH_EXEC,BASH_SHELLCHECK,BASH_SHFMT,CSHARP_CSHARPIER,CSHARP_ROSLYNATOR,CSS_STYLELINT,DOCKERFILE_HADOLINT,EDITORCONFIG_EDITORCONFIG_CHECKER,ENV_DOTENV_LINTER,GROOVY_NPM_GROOVY_LINT,HTML_DJLINT,HTML_HTMLHINT,JAVA_CHECKSTYLE,JSON_JSONLINT,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_KICS,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,XML_XMLLINT,YAML_PRETTIER
35c0b8d to
083c06f
Compare
05b07b5 to
e27b30e
Compare
47870d7 to
904ec36
Compare
904ec36 to
d1f8f4a
Compare
2fa0c2f to
3047b21
Compare
66440da to
f356802
Compare
84a9deb to
35c5fb1
Compare
35c5fb1 to
30c7f7d
Compare
30c7f7d to
7d1ccd0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

🤖 I have created a release beep boop
10.4.5 (2026-02-04)
Bug Fixes
Miscellaneous Chores
This PR was generated with Release Please. See documentation.