@vyuhlabs/dxkit 2.4.6 → 2.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +885 -0
- package/README.md +131 -26
- package/dist/analysis-result.d.ts +112 -0
- package/dist/analysis-result.d.ts.map +1 -0
- package/dist/analysis-result.js +52 -0
- package/dist/analysis-result.js.map +1 -0
- package/dist/analyzers/bom/detailed.d.ts.map +1 -1
- package/dist/analyzers/bom/detailed.js +19 -0
- package/dist/analyzers/bom/detailed.js.map +1 -1
- package/dist/analyzers/bom/gather.d.ts +27 -26
- package/dist/analyzers/bom/gather.d.ts.map +1 -1
- package/dist/analyzers/bom/gather.js +26 -87
- package/dist/analyzers/bom/gather.js.map +1 -1
- package/dist/analyzers/bom/index.d.ts +0 -7
- package/dist/analyzers/bom/index.d.ts.map +1 -1
- package/dist/analyzers/bom/index.js +98 -48
- package/dist/analyzers/bom/index.js.map +1 -1
- package/dist/analyzers/bom/types.d.ts +11 -13
- package/dist/analyzers/bom/types.d.ts.map +1 -1
- package/dist/analyzers/cache.d.ts +95 -0
- package/dist/analyzers/cache.d.ts.map +1 -0
- package/dist/analyzers/cache.js +309 -0
- package/dist/analyzers/cache.js.map +1 -0
- package/dist/analyzers/coverage-runner.d.ts +56 -0
- package/dist/analyzers/coverage-runner.d.ts.map +1 -0
- package/dist/analyzers/coverage-runner.js +72 -0
- package/dist/analyzers/coverage-runner.js.map +1 -0
- package/dist/analyzers/dashboard/index.d.ts +24 -0
- package/dist/analyzers/dashboard/index.d.ts.map +1 -0
- package/dist/analyzers/dashboard/index.js +666 -0
- package/dist/analyzers/dashboard/index.js.map +1 -0
- package/dist/analyzers/developer/gather.d.ts.map +1 -1
- package/dist/analyzers/developer/gather.js +205 -37
- package/dist/analyzers/developer/gather.js.map +1 -1
- package/dist/analyzers/developer/index.d.ts +1 -1
- package/dist/analyzers/developer/index.d.ts.map +1 -1
- package/dist/analyzers/developer/index.js +19 -8
- package/dist/analyzers/developer/index.js.map +1 -1
- package/dist/analyzers/dispatcher.d.ts +37 -0
- package/dist/analyzers/dispatcher.d.ts.map +1 -1
- package/dist/analyzers/dispatcher.js +56 -9
- package/dist/analyzers/dispatcher.js.map +1 -1
- package/dist/analyzers/docs/shallow.d.ts +17 -5
- package/dist/analyzers/docs/shallow.d.ts.map +1 -1
- package/dist/analyzers/docs/shallow.js +65 -2
- package/dist/analyzers/docs/shallow.js.map +1 -1
- package/dist/analyzers/dx/shallow.d.ts +17 -5
- package/dist/analyzers/dx/shallow.d.ts.map +1 -1
- package/dist/analyzers/dx/shallow.js +66 -2
- package/dist/analyzers/dx/shallow.js.map +1 -1
- package/dist/analyzers/health/actions.d.ts +1 -1
- package/dist/analyzers/health/actions.d.ts.map +1 -1
- package/dist/analyzers/health/actions.js +27 -9
- package/dist/analyzers/health/actions.js.map +1 -1
- package/dist/analyzers/health/detailed.d.ts +2 -1
- package/dist/analyzers/health/detailed.d.ts.map +1 -1
- package/dist/analyzers/health/detailed.js +11 -7
- package/dist/analyzers/health/detailed.js.map +1 -1
- package/dist/analyzers/health.d.ts +27 -0
- package/dist/analyzers/health.d.ts.map +1 -1
- package/dist/analyzers/health.js +271 -33
- package/dist/analyzers/health.js.map +1 -1
- package/dist/analyzers/licenses/gather.d.ts +35 -8
- package/dist/analyzers/licenses/gather.d.ts.map +1 -1
- package/dist/analyzers/licenses/gather.js +70 -13
- package/dist/analyzers/licenses/gather.js.map +1 -1
- package/dist/analyzers/licenses/index.d.ts +1 -1
- package/dist/analyzers/licenses/index.d.ts.map +1 -1
- package/dist/analyzers/licenses/index.js +52 -11
- package/dist/analyzers/licenses/index.js.map +1 -1
- package/dist/analyzers/licenses/types.d.ts +15 -0
- package/dist/analyzers/licenses/types.d.ts.map +1 -1
- package/dist/analyzers/maintainability/shallow.d.ts +17 -5
- package/dist/analyzers/maintainability/shallow.d.ts.map +1 -1
- package/dist/analyzers/maintainability/shallow.js +80 -2
- package/dist/analyzers/maintainability/shallow.js.map +1 -1
- package/dist/analyzers/quality/detailed.d.ts.map +1 -1
- package/dist/analyzers/quality/detailed.js +4 -6
- package/dist/analyzers/quality/detailed.js.map +1 -1
- package/dist/analyzers/quality/gather.d.ts +1 -14
- package/dist/analyzers/quality/gather.d.ts.map +1 -1
- package/dist/analyzers/quality/gather.js +48 -137
- package/dist/analyzers/quality/gather.js.map +1 -1
- package/dist/analyzers/quality/index.d.ts +9 -2
- package/dist/analyzers/quality/index.d.ts.map +1 -1
- package/dist/analyzers/quality/index.js +189 -117
- package/dist/analyzers/quality/index.js.map +1 -1
- package/dist/analyzers/quality/shallow.d.ts +50 -5
- package/dist/analyzers/quality/shallow.d.ts.map +1 -1
- package/dist/analyzers/quality/shallow.js +155 -2
- package/dist/analyzers/quality/shallow.js.map +1 -1
- package/dist/analyzers/quality/types.d.ts +14 -0
- package/dist/analyzers/quality/types.d.ts.map +1 -1
- package/dist/analyzers/security/actions.d.ts +11 -4
- package/dist/analyzers/security/actions.d.ts.map +1 -1
- package/dist/analyzers/security/actions.js +87 -37
- package/dist/analyzers/security/actions.js.map +1 -1
- package/dist/analyzers/security/aggregator.d.ts +236 -0
- package/dist/analyzers/security/aggregator.d.ts.map +1 -0
- package/dist/analyzers/security/aggregator.js +347 -0
- package/dist/analyzers/security/aggregator.js.map +1 -0
- package/dist/analyzers/security/detailed.d.ts +2 -2
- package/dist/analyzers/security/detailed.d.ts.map +1 -1
- package/dist/analyzers/security/detailed.js +10 -9
- package/dist/analyzers/security/detailed.js.map +1 -1
- package/dist/analyzers/security/gather.d.ts +103 -1
- package/dist/analyzers/security/gather.d.ts.map +1 -1
- package/dist/analyzers/security/gather.js +281 -9
- package/dist/analyzers/security/gather.js.map +1 -1
- package/dist/analyzers/security/index.d.ts +15 -0
- package/dist/analyzers/security/index.d.ts.map +1 -1
- package/dist/analyzers/security/index.js +463 -50
- package/dist/analyzers/security/index.js.map +1 -1
- package/dist/analyzers/security/shallow.d.ts +50 -6
- package/dist/analyzers/security/shallow.d.ts.map +1 -1
- package/dist/analyzers/security/shallow.js +154 -2
- package/dist/analyzers/security/shallow.js.map +1 -1
- package/dist/analyzers/security/types.d.ts +51 -0
- package/dist/analyzers/security/types.d.ts.map +1 -1
- package/dist/analyzers/tests/detailed.d.ts.map +1 -1
- package/dist/analyzers/tests/detailed.js +2 -3
- package/dist/analyzers/tests/detailed.js.map +1 -1
- package/dist/analyzers/tests/gather.d.ts +2 -1
- package/dist/analyzers/tests/gather.d.ts.map +1 -1
- package/dist/analyzers/tests/gather.js +98 -69
- package/dist/analyzers/tests/gather.js.map +1 -1
- package/dist/analyzers/tests/index.d.ts +11 -2
- package/dist/analyzers/tests/index.d.ts.map +1 -1
- package/dist/analyzers/tests/index.js +83 -18
- package/dist/analyzers/tests/index.js.map +1 -1
- package/dist/analyzers/tests/shallow.d.ts +19 -5
- package/dist/analyzers/tests/shallow.d.ts.map +1 -1
- package/dist/analyzers/tests/shallow.js +89 -2
- package/dist/analyzers/tests/shallow.js.map +1 -1
- package/dist/analyzers/tests/types.d.ts +41 -1
- package/dist/analyzers/tests/types.d.ts.map +1 -1
- package/dist/analyzers/tools/autogen-header.d.ts +8 -0
- package/dist/analyzers/tools/autogen-header.d.ts.map +1 -0
- package/dist/analyzers/tools/autogen-header.js +107 -0
- package/dist/analyzers/tools/autogen-header.js.map +1 -0
- package/dist/analyzers/tools/cloc.d.ts.map +1 -1
- package/dist/analyzers/tools/cloc.js +36 -5
- package/dist/analyzers/tools/cloc.js.map +1 -1
- package/dist/analyzers/tools/debug-statements.d.ts +17 -0
- package/dist/analyzers/tools/debug-statements.d.ts.map +1 -0
- package/dist/analyzers/tools/debug-statements.js +58 -0
- package/dist/analyzers/tools/debug-statements.js.map +1 -0
- package/dist/analyzers/tools/default-exclusions.gitignore +28 -0
- package/dist/analyzers/tools/exclusions.d.ts +33 -6
- package/dist/analyzers/tools/exclusions.d.ts.map +1 -1
- package/dist/analyzers/tools/exclusions.js +95 -26
- package/dist/analyzers/tools/exclusions.js.map +1 -1
- package/dist/analyzers/tools/generic.d.ts +17 -2
- package/dist/analyzers/tools/generic.d.ts.map +1 -1
- package/dist/analyzers/tools/generic.js +206 -109
- package/dist/analyzers/tools/generic.js.map +1 -1
- package/dist/analyzers/tools/gitleaks.d.ts.map +1 -1
- package/dist/analyzers/tools/gitleaks.js +48 -1
- package/dist/analyzers/tools/gitleaks.js.map +1 -1
- package/dist/analyzers/tools/graphify.d.ts +30 -2
- package/dist/analyzers/tools/graphify.d.ts.map +1 -1
- package/dist/analyzers/tools/graphify.js +131 -15
- package/dist/analyzers/tools/graphify.js.map +1 -1
- package/dist/analyzers/tools/jscpd.d.ts +12 -2
- package/dist/analyzers/tools/jscpd.d.ts.map +1 -1
- package/dist/analyzers/tools/jscpd.js +129 -6
- package/dist/analyzers/tools/jscpd.js.map +1 -1
- package/dist/analyzers/tools/minified-detection.d.ts +9 -0
- package/dist/analyzers/tools/minified-detection.d.ts.map +1 -0
- package/dist/analyzers/tools/minified-detection.js +147 -0
- package/dist/analyzers/tools/minified-detection.js.map +1 -0
- package/dist/analyzers/tools/nuget-package-reference.d.ts +131 -0
- package/dist/analyzers/tools/nuget-package-reference.d.ts.map +1 -0
- package/dist/analyzers/tools/nuget-package-reference.js +175 -0
- package/dist/analyzers/tools/nuget-package-reference.js.map +1 -0
- package/dist/analyzers/tools/osv-scanner-deps.d.ts +3 -2
- package/dist/analyzers/tools/osv-scanner-deps.d.ts.map +1 -1
- package/dist/analyzers/tools/osv-scanner-deps.js +32 -14
- package/dist/analyzers/tools/osv-scanner-deps.js.map +1 -1
- package/dist/analyzers/tools/osv.d.ts +36 -0
- package/dist/analyzers/tools/osv.d.ts.map +1 -1
- package/dist/analyzers/tools/osv.js +26 -0
- package/dist/analyzers/tools/osv.js.map +1 -1
- package/dist/analyzers/tools/parallel.d.ts +1 -1
- package/dist/analyzers/tools/parallel.d.ts.map +1 -1
- package/dist/analyzers/tools/parallel.js +2 -2
- package/dist/analyzers/tools/parallel.js.map +1 -1
- package/dist/analyzers/tools/risk-score.d.ts +7 -0
- package/dist/analyzers/tools/risk-score.d.ts.map +1 -1
- package/dist/analyzers/tools/risk-score.js +9 -2
- package/dist/analyzers/tools/risk-score.js.map +1 -1
- package/dist/analyzers/tools/run-tests-helper.d.ts +43 -0
- package/dist/analyzers/tools/run-tests-helper.d.ts.map +1 -0
- package/dist/analyzers/tools/run-tests-helper.js +156 -0
- package/dist/analyzers/tools/run-tests-helper.js.map +1 -0
- package/dist/analyzers/tools/runner.d.ts.map +1 -1
- package/dist/analyzers/tools/runner.js +75 -12
- package/dist/analyzers/tools/runner.js.map +1 -1
- package/dist/analyzers/tools/semgrep.d.ts +39 -2
- package/dist/analyzers/tools/semgrep.d.ts.map +1 -1
- package/dist/analyzers/tools/semgrep.js +131 -9
- package/dist/analyzers/tools/semgrep.js.map +1 -1
- package/dist/analyzers/tools/timing.d.ts +17 -3
- package/dist/analyzers/tools/timing.d.ts.map +1 -1
- package/dist/analyzers/tools/timing.js +36 -14
- package/dist/analyzers/tools/timing.js.map +1 -1
- package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
- package/dist/analyzers/tools/tool-registry.js +11 -1
- package/dist/analyzers/tools/tool-registry.js.map +1 -1
- package/dist/analyzers/tools/tools-unavailable-prose.d.ts +18 -0
- package/dist/analyzers/tools/tools-unavailable-prose.d.ts.map +1 -0
- package/dist/analyzers/tools/tools-unavailable-prose.js +69 -0
- package/dist/analyzers/tools/tools-unavailable-prose.js.map +1 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.d.ts.map +1 -1
- package/dist/analyzers/tools/upgrade-plan-resolver.js +7 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.js.map +1 -1
- package/dist/analyzers/tools/vendored-advisor.d.ts +43 -0
- package/dist/analyzers/tools/vendored-advisor.d.ts.map +1 -0
- package/dist/analyzers/tools/vendored-advisor.js +107 -0
- package/dist/analyzers/tools/vendored-advisor.js.map +1 -0
- package/dist/analyzers/tools/walk-paths.d.ts +78 -0
- package/dist/analyzers/tools/walk-paths.d.ts.map +1 -0
- package/dist/analyzers/tools/walk-paths.js +150 -0
- package/dist/analyzers/tools/walk-paths.js.map +1 -0
- package/dist/analyzers/tools/walk-source-files.d.ts +70 -0
- package/dist/analyzers/tools/walk-source-files.d.ts.map +1 -0
- package/dist/analyzers/tools/walk-source-files.js +369 -0
- package/dist/analyzers/tools/walk-source-files.js.map +1 -0
- package/dist/analyzers/types.d.ts +204 -4
- package/dist/analyzers/types.d.ts.map +1 -1
- package/dist/analyzers/xlsx/bom.d.ts.map +1 -1
- package/dist/analyzers/xlsx/bom.js +8 -1
- package/dist/analyzers/xlsx/bom.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +557 -189
- package/dist/cli.js.map +1 -1
- package/dist/detect.d.ts.map +1 -1
- package/dist/detect.js +24 -7
- package/dist/detect.js.map +1 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +103 -53
- package/dist/doctor.js.map +1 -1
- package/dist/languages/capabilities/provider.d.ts +130 -1
- package/dist/languages/capabilities/provider.d.ts.map +1 -1
- package/dist/languages/capabilities/types.d.ts +68 -7
- package/dist/languages/capabilities/types.d.ts.map +1 -1
- package/dist/languages/csharp.d.ts +15 -1
- package/dist/languages/csharp.d.ts.map +1 -1
- package/dist/languages/csharp.js +624 -146
- package/dist/languages/csharp.js.map +1 -1
- package/dist/languages/go.d.ts.map +1 -1
- package/dist/languages/go.js +89 -11
- package/dist/languages/go.js.map +1 -1
- package/dist/languages/index.d.ts +131 -2
- package/dist/languages/index.d.ts.map +1 -1
- package/dist/languages/index.js +206 -0
- package/dist/languages/index.js.map +1 -1
- package/dist/languages/java.d.ts.map +1 -1
- package/dist/languages/java.js +113 -26
- package/dist/languages/java.js.map +1 -1
- package/dist/languages/kotlin.d.ts.map +1 -1
- package/dist/languages/kotlin.js +132 -26
- package/dist/languages/kotlin.js.map +1 -1
- package/dist/languages/python.d.ts.map +1 -1
- package/dist/languages/python.js +149 -44
- package/dist/languages/python.js.map +1 -1
- package/dist/languages/ruby.d.ts +39 -1
- package/dist/languages/ruby.d.ts.map +1 -1
- package/dist/languages/ruby.js +178 -44
- package/dist/languages/ruby.js.map +1 -1
- package/dist/languages/rust.d.ts.map +1 -1
- package/dist/languages/rust.js +103 -16
- package/dist/languages/rust.js.map +1 -1
- package/dist/languages/types.d.ts +228 -5
- package/dist/languages/types.d.ts.map +1 -1
- package/dist/languages/typescript.d.ts.map +1 -1
- package/dist/languages/typescript.js +201 -14
- package/dist/languages/typescript.js.map +1 -1
- package/dist/scoring/dimensions/documentation.d.ts +53 -0
- package/dist/scoring/dimensions/documentation.d.ts.map +1 -0
- package/dist/scoring/dimensions/documentation.js +106 -0
- package/dist/scoring/dimensions/documentation.js.map +1 -0
- package/dist/scoring/dimensions/dx.d.ts +53 -0
- package/dist/scoring/dimensions/dx.d.ts.map +1 -0
- package/dist/scoring/dimensions/dx.js +105 -0
- package/dist/scoring/dimensions/dx.js.map +1 -0
- package/dist/scoring/dimensions/maintainability.d.ts +53 -0
- package/dist/scoring/dimensions/maintainability.d.ts.map +1 -0
- package/dist/scoring/dimensions/maintainability.js +101 -0
- package/dist/scoring/dimensions/maintainability.js.map +1 -0
- package/dist/scoring/dimensions/quality.d.ts +108 -0
- package/dist/scoring/dimensions/quality.d.ts.map +1 -0
- package/dist/scoring/dimensions/quality.js +174 -0
- package/dist/scoring/dimensions/quality.js.map +1 -0
- package/dist/scoring/dimensions/security.d.ts +84 -0
- package/dist/scoring/dimensions/security.d.ts.map +1 -0
- package/dist/scoring/dimensions/security.js +135 -0
- package/dist/scoring/dimensions/security.js.map +1 -0
- package/dist/scoring/dimensions/testing.d.ts +56 -0
- package/dist/scoring/dimensions/testing.d.ts.map +1 -0
- package/dist/scoring/dimensions/testing.js +98 -0
- package/dist/scoring/dimensions/testing.js.map +1 -0
- package/dist/scoring/evaluator.d.ts +27 -0
- package/dist/scoring/evaluator.d.ts.map +1 -0
- package/dist/scoring/evaluator.js +124 -0
- package/dist/scoring/evaluator.js.map +1 -0
- package/dist/scoring/format.d.ts +34 -0
- package/dist/scoring/format.d.ts.map +1 -0
- package/dist/scoring/format.js +63 -0
- package/dist/scoring/format.js.map +1 -0
- package/dist/scoring/index.d.ts +37 -0
- package/dist/scoring/index.d.ts.map +1 -0
- package/dist/scoring/index.js +57 -0
- package/dist/scoring/index.js.map +1 -0
- package/dist/scoring/overall.d.ts +54 -0
- package/dist/scoring/overall.d.ts.map +1 -0
- package/dist/scoring/overall.js +76 -0
- package/dist/scoring/overall.js.map +1 -0
- package/dist/scoring/result.d.ts +111 -0
- package/dist/scoring/result.d.ts.map +1 -0
- package/dist/scoring/result.js +14 -0
- package/dist/scoring/result.js.map +1 -0
- package/dist/scoring/spec.d.ts +76 -0
- package/dist/scoring/spec.d.ts.map +1 -0
- package/dist/scoring/spec.js +22 -0
- package/dist/scoring/spec.js.map +1 -0
- package/dist/scoring/thresholds.d.ts +56 -0
- package/dist/scoring/thresholds.d.ts.map +1 -0
- package/dist/scoring/thresholds.js +75 -0
- package/dist/scoring/thresholds.js.map +1 -0
- package/dist/tools-cli.d.ts.map +1 -1
- package/dist/tools-cli.js +21 -2
- package/dist/tools-cli.js.map +1 -1
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/templates/.claude/commands/dashboard.md +17 -9
- package/dist/analyzers/scoring.d.ts +0 -49
- package/dist/analyzers/scoring.d.ts.map +0 -1
- package/dist/analyzers/scoring.js +0 -422
- package/dist/analyzers/scoring.js.map +0 -1
- package/dist/analyzers/security/scoring.d.ts +0 -29
- package/dist/analyzers/security/scoring.d.ts.map +0 -1
- package/dist/analyzers/security/scoring.js +0 -40
- package/dist/analyzers/security/scoring.js.map +0 -1
package/dist/languages/index.js
CHANGED
|
@@ -7,6 +7,15 @@ exports.activeLanguagesFromStack = activeLanguagesFromStack;
|
|
|
7
7
|
exports.activeLanguagesFromFlags = activeLanguagesFromFlags;
|
|
8
8
|
exports.allSourceExtensions = allSourceExtensions;
|
|
9
9
|
exports.allTestFilePatterns = allTestFilePatterns;
|
|
10
|
+
exports.allAutogenSourcePatterns = allAutogenSourcePatterns;
|
|
11
|
+
exports.allDocCommentPatterns = allDocCommentPatterns;
|
|
12
|
+
exports.allTlsBypassPatterns = allTlsBypassPatterns;
|
|
13
|
+
exports.allClocLanguageNames = allClocLanguageNames;
|
|
14
|
+
exports.allPrimaryComponentPaths = allPrimaryComponentPaths;
|
|
15
|
+
exports.allRoutePaths = allRoutePaths;
|
|
16
|
+
exports.allModelPaths = allModelPaths;
|
|
17
|
+
exports.allTestGapPriorityPaths = allTestGapPriorityPaths;
|
|
18
|
+
exports.dominantVocabulary = dominantVocabulary;
|
|
10
19
|
exports.splitTestFilePatterns = splitTestFilePatterns;
|
|
11
20
|
const csharp_1 = require("./csharp");
|
|
12
21
|
const go_1 = require("./go");
|
|
@@ -69,6 +78,203 @@ function allSourceExtensions() {
|
|
|
69
78
|
function allTestFilePatterns() {
|
|
70
79
|
return [...new Set(exports.LANGUAGES.flatMap((l) => l.testFilePatterns))];
|
|
71
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* All auto-generated source-file basename patterns across every
|
|
83
|
+
* registered pack, deduplicated. D028 (2.4.7): consumers (currently
|
|
84
|
+
* `src/analyzers/tools/generic.ts`) build find `-not -name` excludes
|
|
85
|
+
* from this list to keep per-file metrics from being inflated by
|
|
86
|
+
* generated code (designer.cs, *.pb.go, *Generated.java, etc.).
|
|
87
|
+
*
|
|
88
|
+
* Packs that don't declare `autogeneratedSourcePatterns` contribute
|
|
89
|
+
* nothing — the helper returns the union of all declared patterns
|
|
90
|
+
* across active+inactive packs. Conservative by design: a designer.cs
|
|
91
|
+
* file in a polyglot repo with both csharp and go active is still
|
|
92
|
+
* filtered even if the csharp pack happens to be inactive in this
|
|
93
|
+
* cwd's scope.
|
|
94
|
+
*/
|
|
95
|
+
function allAutogenSourcePatterns() {
|
|
96
|
+
return [...new Set(exports.LANGUAGES.flatMap((l) => l.autogeneratedSourcePatterns ?? []))];
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* All doc-comment regex patterns across every registered pack,
|
|
100
|
+
* deduplicated. D027 (2.4.7): consumed by `generic.ts` to build a
|
|
101
|
+
* union grep alternation for `docCommentFiles`. Empty array when no
|
|
102
|
+
* pack declares any patterns — caller short-circuits to 0.
|
|
103
|
+
*
|
|
104
|
+
* Scope mirrors `allAutogenSourcePatterns`: union across all packs
|
|
105
|
+
* (active + inactive). A `///` line in a `.cs` file inside a
|
|
106
|
+
* polyglot repo gets counted even if csharp isn't the dominant pack
|
|
107
|
+
* — the false-positive rate across language boundaries is negligible
|
|
108
|
+
* (e.g. `///` doesn't appear in `.py` files).
|
|
109
|
+
*/
|
|
110
|
+
function allDocCommentPatterns() {
|
|
111
|
+
return [...new Set(exports.LANGUAGES.flatMap((l) => l.docCommentPatterns ?? []))];
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* All TLS-bypass regex patterns across every registered pack,
|
|
115
|
+
* deduplicated. D034 (2.4.7): consumed by `generic.ts` to build a
|
|
116
|
+
* union grep alternation for `tlsDisabledCount` — a Security-score
|
|
117
|
+
* input that previously matched only Node-shaped idioms.
|
|
118
|
+
*
|
|
119
|
+
* Scope mirrors `allDocCommentPatterns`: union across all packs
|
|
120
|
+
* (active + inactive). A `.cs` file containing
|
|
121
|
+
* `ServerCertificateValidationCallback = ...` in a polyglot repo
|
|
122
|
+
* gets flagged regardless of which pack the customer "primarily" uses
|
|
123
|
+
* — security findings should never be silently scoped out.
|
|
124
|
+
*/
|
|
125
|
+
function allTlsBypassPatterns() {
|
|
126
|
+
return [...new Set(exports.LANGUAGES.flatMap((l) => l.tlsBypassPatterns ?? []))];
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Cloc language names declared by every pack, deduplicated. D073
|
|
130
|
+
* (2.4.7): consumed by `gatherClocMetrics` to filter cloc's per-
|
|
131
|
+
* language summary + `totalLines` aggregation down to "actual source
|
|
132
|
+
* code" — JSON / XML / CSV / Markdown that cloc emits stay out of the
|
|
133
|
+
* source-line counters that quality's Comment Ratio + health's
|
|
134
|
+
* Documentation derive from. Pre-D073 cloc's `SUM` summed every
|
|
135
|
+
* language including markup/data, deflating the dpl-studio comment
|
|
136
|
+
* ratio (1.6M JSON lines dragged 25%-true C# comment ratio down to
|
|
137
|
+
* 4.3%).
|
|
138
|
+
*
|
|
139
|
+
* Scope mirrors `allAutogenSourcePatterns` — union across active +
|
|
140
|
+
* inactive packs. A `.cs` file in a polyglot repo gets counted even
|
|
141
|
+
* when csharp isn't the detect-time dominant pack, which is fine:
|
|
142
|
+
* cloc names map to languages, not pack-presence signals.
|
|
143
|
+
*/
|
|
144
|
+
function allClocLanguageNames() {
|
|
145
|
+
return [...new Set(exports.LANGUAGES.flatMap((l) => l.clocLanguageNames ?? []))];
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Union of every active pack's `architecturalShape.primaryComponentPaths`,
|
|
149
|
+
* deduplicated. Consumed by `gatherGenericMetrics` to count the
|
|
150
|
+
* primary-component file metric (`HealthMetrics.controllers`) and by
|
|
151
|
+
* the test-gap classifier in `analyzers/tests/gather.ts` to populate
|
|
152
|
+
* the MEDIUM bucket by default.
|
|
153
|
+
*
|
|
154
|
+
* Pre-extension, generic.ts hardcoded `controllers/`, `handlers/`,
|
|
155
|
+
* `views/` and gather.ts hardcoded the same set inline — a pure
|
|
156
|
+
* React frontend or .NET WinForms desktop app matched zero paths
|
|
157
|
+
* and reported empty MEDIUM/HIGH test-gap buckets. Pack-driven
|
|
158
|
+
* union grows automatically as new packs land.
|
|
159
|
+
*
|
|
160
|
+
* Scope is active-only: matching `<dxkit health>` analyzes the
|
|
161
|
+
* project the user is in, not every pack that exists. This keeps
|
|
162
|
+
* Python pack's `views/` from incorrectly matching a Java repo's
|
|
163
|
+
* Spring MVC views layer (cross-pack false positives).
|
|
164
|
+
*/
|
|
165
|
+
function allPrimaryComponentPaths(flags) {
|
|
166
|
+
return [
|
|
167
|
+
...new Set(activeLanguagesFromFlags(flags).flatMap((l) => l.architecturalShape?.primaryComponentPaths ?? [])),
|
|
168
|
+
];
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Union of every active pack's `architecturalShape.routePaths`,
|
|
172
|
+
* deduplicated. Consumed by `gatherGenericMetrics` to populate
|
|
173
|
+
* `HealthMetrics.routeHandlerFiles` — the count gating the "Add API
|
|
174
|
+
* documentation" health action. A WinForms desktop app (.NET pack
|
|
175
|
+
* active but no `Controllers/` directory) reports zero here even when
|
|
176
|
+
* `primaryComponentPaths` matches Forms/ViewModels, so the action
|
|
177
|
+
* stays correctly silenced.
|
|
178
|
+
*/
|
|
179
|
+
function allRoutePaths(flags) {
|
|
180
|
+
return [
|
|
181
|
+
...new Set(activeLanguagesFromFlags(flags).flatMap((l) => l.architecturalShape?.routePaths ?? [])),
|
|
182
|
+
];
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Union of every active pack's `architecturalShape.modelPaths`,
|
|
186
|
+
* deduplicated. Consumed by `gatherGenericMetrics` to populate
|
|
187
|
+
* `HealthMetrics.models` (the "data model files" count surfaced in
|
|
188
|
+
* Maintainability prose).
|
|
189
|
+
*/
|
|
190
|
+
function allModelPaths(flags) {
|
|
191
|
+
return [
|
|
192
|
+
...new Set(activeLanguagesFromFlags(flags).flatMap((l) => l.architecturalShape?.modelPaths ?? [])),
|
|
193
|
+
];
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Per-bucket union of active packs' test-gap path patterns. Empty
|
|
197
|
+
* arrays for any bucket no pack declares. Consumed by
|
|
198
|
+
* `analyzers/tests/gather.ts:classifyRisk` to tier source files into
|
|
199
|
+
* the CRITICAL / HIGH / MEDIUM / LOW buckets.
|
|
200
|
+
*
|
|
201
|
+
* The `medium` bucket defaults to a pack's `primaryComponentPaths`
|
|
202
|
+
* when its `testGapPriority.medium` is omitted — the common case
|
|
203
|
+
* being "any primary component without a matching test is MEDIUM
|
|
204
|
+
* risk at minimum."
|
|
205
|
+
*/
|
|
206
|
+
function allTestGapPriorityPaths(flags) {
|
|
207
|
+
const active = activeLanguagesFromFlags(flags);
|
|
208
|
+
const critical = new Set();
|
|
209
|
+
const high = new Set();
|
|
210
|
+
const medium = new Set();
|
|
211
|
+
for (const pack of active) {
|
|
212
|
+
const shape = pack.architecturalShape;
|
|
213
|
+
if (!shape)
|
|
214
|
+
continue;
|
|
215
|
+
for (const p of shape.testGapPriority?.critical ?? [])
|
|
216
|
+
critical.add(p);
|
|
217
|
+
for (const p of shape.testGapPriority?.high ?? [])
|
|
218
|
+
high.add(p);
|
|
219
|
+
if (shape.testGapPriority?.medium && shape.testGapPriority.medium.length > 0) {
|
|
220
|
+
for (const p of shape.testGapPriority.medium)
|
|
221
|
+
medium.add(p);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
// Default: primary components fall into MEDIUM when no explicit
|
|
225
|
+
// bucket is declared. Lets packs declare just primaryComponentPaths
|
|
226
|
+
// and get a sensible test-gap tiering for free.
|
|
227
|
+
for (const p of shape.primaryComponentPaths ?? [])
|
|
228
|
+
medium.add(p);
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return { critical: [...critical], high: [...high], medium: [...medium] };
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Pick the dominant vocabulary for prose rendering. When cloc data is
|
|
235
|
+
* available, the pack with the most source lines wins — the
|
|
236
|
+
* source-files-weighted heuristic plan v4 anchored to. When cloc
|
|
237
|
+
* data isn't available, falls back to registry order. Returns null
|
|
238
|
+
* when no active pack provides a vocabulary — callers fall through
|
|
239
|
+
* to generic words ("components", "models", "routes").
|
|
240
|
+
*
|
|
241
|
+
* The cloc weight closes a polyglot-detection edge case: a
|
|
242
|
+
* 3,000-file C# repo with one stray build-output `.py` file would
|
|
243
|
+
* activate both csharp and python packs, and registry-order picked
|
|
244
|
+
* python's vocabulary (first declared) despite csharp dominating by
|
|
245
|
+
* 4 orders of magnitude. Source-line weighting picks the pack the
|
|
246
|
+
* code is actually written in.
|
|
247
|
+
*/
|
|
248
|
+
function dominantVocabulary(flags, clocLanguages) {
|
|
249
|
+
const active = activeLanguagesFromFlags(flags);
|
|
250
|
+
const ranked = clocLanguages && clocLanguages.length > 0
|
|
251
|
+
? [...active].sort((a, b) => countPackLines(b, clocLanguages) - countPackLines(a, clocLanguages))
|
|
252
|
+
: active;
|
|
253
|
+
for (const pack of ranked) {
|
|
254
|
+
const v = pack.architecturalShape?.vocabulary;
|
|
255
|
+
if (v && (v.components || v.models || v.routes))
|
|
256
|
+
return v;
|
|
257
|
+
}
|
|
258
|
+
return null;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Sum cloc-reported line counts for every language name this pack
|
|
262
|
+
* claims to own. Returns 0 when the pack declares no cloc names or
|
|
263
|
+
* none of them appear in the cloc summary — that pack contributes
|
|
264
|
+
* no signal to the weighting and falls behind packs that did
|
|
265
|
+
* produce real source lines.
|
|
266
|
+
*/
|
|
267
|
+
function countPackLines(pack, clocLanguages) {
|
|
268
|
+
const names = pack.clocLanguageNames ?? [];
|
|
269
|
+
if (names.length === 0)
|
|
270
|
+
return 0;
|
|
271
|
+
let total = 0;
|
|
272
|
+
for (const entry of clocLanguages) {
|
|
273
|
+
if (names.includes(entry.name))
|
|
274
|
+
total += entry.lines;
|
|
275
|
+
}
|
|
276
|
+
return total;
|
|
277
|
+
}
|
|
72
278
|
/**
|
|
73
279
|
* Split test-file patterns into the two shapes find treats differently:
|
|
74
280
|
* basename patterns (matched via `-name`) and path-anchored patterns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/languages/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/languages/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../src/languages/java.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../src/languages/java.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAKV,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AA6C7D;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAc/D;AAmGD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,YAAY,CAMpF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAc1D;AAoJD,eAAO,MAAM,IAAI,EAAE,eAyGlB,CAAC"}
|
package/dist/languages/java.js
CHANGED
|
@@ -40,9 +40,11 @@ exports.parsePmdOutput = parsePmdOutput;
|
|
|
40
40
|
const fs = __importStar(require("fs"));
|
|
41
41
|
const path = __importStar(require("path"));
|
|
42
42
|
const exclusions_1 = require("../analyzers/tools/exclusions");
|
|
43
|
+
const walk_paths_1 = require("../analyzers/tools/walk-paths");
|
|
43
44
|
const jacoco_1 = require("../analyzers/tools/jacoco");
|
|
44
45
|
const osv_scanner_deps_1 = require("../analyzers/tools/osv-scanner-deps");
|
|
45
46
|
const runner_1 = require("../analyzers/tools/runner");
|
|
47
|
+
const run_tests_helper_1 = require("../analyzers/tools/run-tests-helper");
|
|
46
48
|
const tool_registry_1 = require("../analyzers/tools/tool-registry");
|
|
47
49
|
// ─── Detection ──────────────────────────────────────────────────────────────
|
|
48
50
|
/**
|
|
@@ -54,30 +56,10 @@ const tool_registry_1 = require("../analyzers/tools/tool-registry");
|
|
|
54
56
|
* a full filesystem scan (build/, target/, .gradle/, node_modules/
|
|
55
57
|
* are pruned).
|
|
56
58
|
*/
|
|
57
|
-
function
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
let entries;
|
|
62
|
-
try {
|
|
63
|
-
entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
64
|
-
}
|
|
65
|
-
catch {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
for (const e of entries) {
|
|
69
|
-
if (e.name.startsWith('.') ||
|
|
70
|
-
['node_modules', 'build', '.gradle', 'target', 'out'].includes(e.name)) {
|
|
71
|
-
continue;
|
|
72
|
-
}
|
|
73
|
-
if (e.isFile() && e.name.endsWith('.java'))
|
|
74
|
-
return true;
|
|
75
|
-
if (e.isDirectory() && search(path.join(dir, e.name), depth + 1))
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
return search(cwd, 0);
|
|
59
|
+
function hasJavaSource(cwd) {
|
|
60
|
+
// Depth-unlimited via the canonical walker. The previous depth-5
|
|
61
|
+
// cap missed deep monorepos with multi-module Maven/Gradle layouts.
|
|
62
|
+
return (0, walk_paths_1.walkPaths)(cwd, { extensions: ['.java'] }).length > 0;
|
|
81
63
|
}
|
|
82
64
|
/**
|
|
83
65
|
* Java pack detection. Strict: requires evidence of actual Java SOURCE,
|
|
@@ -101,7 +83,7 @@ function detectJava(cwd) {
|
|
|
101
83
|
if (fs.existsSync(path.join(cwd, 'src', 'main', 'java')))
|
|
102
84
|
return true;
|
|
103
85
|
// Otherwise require actual `.java` source presence.
|
|
104
|
-
return
|
|
86
|
+
return hasJavaSource(cwd);
|
|
105
87
|
}
|
|
106
88
|
// ─── Imports (regex extraction, no resolver) ───────────────────────────────
|
|
107
89
|
/**
|
|
@@ -321,7 +303,7 @@ function parsePmdOutput(raw) {
|
|
|
321
303
|
*/
|
|
322
304
|
function gatherJavaLintResult(cwd) {
|
|
323
305
|
// Activation gate — match detectJava (no pom.xml-alone trigger).
|
|
324
|
-
if (!fs.existsSync(path.join(cwd, 'src', 'main', 'java')) && !
|
|
306
|
+
if (!fs.existsSync(path.join(cwd, 'src', 'main', 'java')) && !hasJavaSource(cwd)) {
|
|
325
307
|
return { kind: 'unavailable', reason: 'no java source' };
|
|
326
308
|
}
|
|
327
309
|
const pmd = (0, tool_registry_1.findTool)(tool_registry_1.TOOL_DEFS.pmd, cwd);
|
|
@@ -351,11 +333,70 @@ const javaLintProvider = {
|
|
|
351
333
|
// Java's Maven paths (`target/site/jacoco/jacoco.xml`) and Gradle paths
|
|
352
334
|
// share the same candidate list because they're mutually exclusive on
|
|
353
335
|
// any given project root.
|
|
336
|
+
/**
|
|
337
|
+
* Locate the JaCoCo XML report after a test run (D021). Same shape as
|
|
338
|
+
* the kotlin pack's helper — Java codebases lean Maven-first, Kotlin
|
|
339
|
+
* codebases Gradle-first, but the candidate paths are the same.
|
|
340
|
+
*/
|
|
341
|
+
function findJacocoXmlArtifact(cwd) {
|
|
342
|
+
const candidates = [
|
|
343
|
+
'target/site/jacoco/jacoco.xml',
|
|
344
|
+
'target/site/jacoco-aggregate/jacoco.xml',
|
|
345
|
+
'build/reports/jacoco/test/jacocoTestReport.xml',
|
|
346
|
+
];
|
|
347
|
+
for (const c of candidates) {
|
|
348
|
+
if ((0, runner_1.fileExists)(cwd, c))
|
|
349
|
+
return c;
|
|
350
|
+
}
|
|
351
|
+
return null;
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Run the JVM build tool's "test + JaCoCo report" cycle from cwd (D021).
|
|
355
|
+
*
|
|
356
|
+
* Picks the command by build manifest, preferring Maven when both are
|
|
357
|
+
* present (Java codebases lean Maven-first; the Gradle path is here for
|
|
358
|
+
* the increasingly common Java-on-Gradle projects):
|
|
359
|
+
*
|
|
360
|
+
* - `pom.xml` → `mvn test jacoco:report`
|
|
361
|
+
* - `gradlew` or `build.gradle{,.kts}` → `./gradlew jacocoTestReport`
|
|
362
|
+
*
|
|
363
|
+
* Preflight + artifact discovery identical to the kotlin pack's shape.
|
|
364
|
+
* The JaCoCo plugin must be wired into the build for the XML to be
|
|
365
|
+
* emitted; without it the command succeeds but no artifact is produced
|
|
366
|
+
* and the helper classifies as `failed`.
|
|
367
|
+
*/
|
|
368
|
+
function runJavaTestsWithCoverage(cwd) {
|
|
369
|
+
return Promise.resolve((0, run_tests_helper_1.runTestsWithCoverage)({
|
|
370
|
+
pack: 'java',
|
|
371
|
+
cmd: (() => {
|
|
372
|
+
if ((0, runner_1.fileExists)(cwd, 'pom.xml')) {
|
|
373
|
+
return 'mvn test jacoco:report';
|
|
374
|
+
}
|
|
375
|
+
const gradle = (0, runner_1.fileExists)(cwd, 'gradlew') ? './gradlew' : 'gradle';
|
|
376
|
+
return `${gradle} jacocoTestReport`;
|
|
377
|
+
})(),
|
|
378
|
+
cwd,
|
|
379
|
+
artifact: (cwd) => findJacocoXmlArtifact(cwd),
|
|
380
|
+
preflight: (cwd) => {
|
|
381
|
+
const hasGradle = (0, runner_1.fileExists)(cwd, 'build.gradle') ||
|
|
382
|
+
(0, runner_1.fileExists)(cwd, 'build.gradle.kts') ||
|
|
383
|
+
(0, runner_1.fileExists)(cwd, 'gradlew');
|
|
384
|
+
const hasMaven = (0, runner_1.fileExists)(cwd, 'pom.xml');
|
|
385
|
+
if (!hasGradle && !hasMaven) {
|
|
386
|
+
return 'no Gradle/Maven build manifest — cannot run JaCoCo coverage';
|
|
387
|
+
}
|
|
388
|
+
return null;
|
|
389
|
+
},
|
|
390
|
+
}));
|
|
391
|
+
}
|
|
354
392
|
const javaCoverageProvider = {
|
|
355
393
|
source: 'java',
|
|
356
394
|
async gather(cwd) {
|
|
357
395
|
return (0, jacoco_1.gatherJaCoCoCoverageResult)(cwd);
|
|
358
396
|
},
|
|
397
|
+
async runTests(cwd) {
|
|
398
|
+
return runJavaTestsWithCoverage(cwd);
|
|
399
|
+
},
|
|
359
400
|
};
|
|
360
401
|
// ─── DepVulns (osv-scanner against Maven — shared with kotlin pack) ────────
|
|
361
402
|
//
|
|
@@ -373,6 +414,9 @@ const javaDepVulnsProvider = {
|
|
|
373
414
|
const outcome = await (0, osv_scanner_deps_1.gatherOsvScannerDepVulnsResult)(cwd, 'java', 'Maven', JAVA_DEP_MANIFESTS);
|
|
374
415
|
return outcome.kind === 'success' ? outcome.envelope : null;
|
|
375
416
|
},
|
|
417
|
+
async gatherOutcome(cwd) {
|
|
418
|
+
return (0, osv_scanner_deps_1.gatherOsvScannerDepVulnsResult)(cwd, 'java', 'Maven', JAVA_DEP_MANIFESTS);
|
|
419
|
+
},
|
|
376
420
|
};
|
|
377
421
|
// ─── Pack export ────────────────────────────────────────────────────────────
|
|
378
422
|
exports.java = {
|
|
@@ -385,6 +429,49 @@ exports.java = {
|
|
|
385
429
|
// Build artifact dirs across Maven (target), Gradle (build, .gradle,
|
|
386
430
|
// out). Universal exclusions live in src/analyzers/tools/exclusions.ts.
|
|
387
431
|
extraExcludes: ['target', 'build', '.gradle', 'out'],
|
|
432
|
+
// D027 (2.4.7): Javadoc uses the `/**` block opener.
|
|
433
|
+
docCommentPatterns: ['/\\*\\*'],
|
|
434
|
+
// D034 (2.4.7): JVM TLS-bypass idioms (same set as the kotlin pack
|
|
435
|
+
// — both share the underlying javax.net.ssl APIs). The tokens are
|
|
436
|
+
// class/method names that exist solely for permissive variants;
|
|
437
|
+
// false-positive rate is negligible.
|
|
438
|
+
tlsBypassPatterns: [
|
|
439
|
+
'TrustAllX509TrustManager',
|
|
440
|
+
'NaiveTrustManager',
|
|
441
|
+
'NoopHostnameVerifier',
|
|
442
|
+
'ALLOW_ALL_HOSTNAME_VERIFIER',
|
|
443
|
+
],
|
|
444
|
+
upgradeCommand(name, version) {
|
|
445
|
+
return `# Edit pom.xml: bump ${name} <version>${version}</version>, then \`mvn install\``;
|
|
446
|
+
},
|
|
447
|
+
// Spring MVC / Spring Boot, JEE, Dropwizard, Micronaut, and the
|
|
448
|
+
// classic Maven project layout (`src/main/java/<...>/controllers/`,
|
|
449
|
+
// `src/main/java/<...>/services/`) converge on the same vocabulary —
|
|
450
|
+
// controllers / services / repositories for backend, dao/daos for
|
|
451
|
+
// legacy persistence layers, resources for JAX-RS REST endpoints.
|
|
452
|
+
architecturalShape: {
|
|
453
|
+
primaryComponentPaths: [
|
|
454
|
+
'/controllers/',
|
|
455
|
+
'/services/',
|
|
456
|
+
'/repositories/',
|
|
457
|
+
'/handlers/',
|
|
458
|
+
'/dao/',
|
|
459
|
+
'/daos/',
|
|
460
|
+
'/resources/',
|
|
461
|
+
],
|
|
462
|
+
routePaths: ['/controllers/', '/endpoints/', '/resources/', '/handlers/'],
|
|
463
|
+
modelPaths: ['/models/', '/entities/', '/dto/', '/dtos/', '/domain/'],
|
|
464
|
+
vocabulary: {
|
|
465
|
+
components: 'controllers/services',
|
|
466
|
+
models: 'entities',
|
|
467
|
+
routes: 'endpoints',
|
|
468
|
+
},
|
|
469
|
+
testGapPriority: {
|
|
470
|
+
high: ['/controllers/', '/services/', '/handlers/', '/resources/'],
|
|
471
|
+
medium: ['/repositories/', '/dao/', '/daos/'],
|
|
472
|
+
},
|
|
473
|
+
},
|
|
474
|
+
clocLanguageNames: ['Java'],
|
|
388
475
|
detect: detectJava,
|
|
389
476
|
tools: ['pmd', 'osv-scanner'],
|
|
390
477
|
// Semgrep ships a Java ruleset under p/java.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"java.js","sourceRoot":"","sources":["../../src/languages/java.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"java.js","sourceRoot":"","sources":["../../src/languages/java.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kotlin.d.ts","sourceRoot":"","sources":["../../src/languages/kotlin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kotlin.d.ts","sourceRoot":"","sources":["../../src/languages/kotlin.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAKV,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAkD7D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAMhE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAWpE;AA6KD;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAYjE;AA8FD,eAAO,MAAM,MAAM,EAAE,eAqHpB,CAAC"}
|