@vyuhlabs/dxkit 2.4.4 → 2.4.6
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 +339 -0
- package/README.md +33 -19
- package/dist/analyzers/tests/index.d.ts.map +1 -1
- package/dist/analyzers/tests/index.js +2 -0
- package/dist/analyzers/tests/index.js.map +1 -1
- package/dist/analyzers/tools/coverage.d.ts +1 -1
- package/dist/analyzers/tools/coverage.d.ts.map +1 -1
- package/dist/analyzers/tools/coverage.js.map +1 -1
- package/dist/analyzers/tools/jacoco.d.ts +76 -0
- package/dist/analyzers/tools/jacoco.d.ts.map +1 -0
- package/dist/analyzers/tools/jacoco.js +228 -0
- package/dist/analyzers/tools/jacoco.js.map +1 -0
- package/dist/analyzers/tools/osv-scanner-deps.d.ts +47 -0
- package/dist/analyzers/tools/osv-scanner-deps.d.ts.map +1 -0
- package/dist/analyzers/tools/osv-scanner-deps.js +175 -0
- package/dist/analyzers/tools/osv-scanner-deps.js.map +1 -0
- package/dist/analyzers/tools/osv-scanner-fix.d.ts +20 -0
- package/dist/analyzers/tools/osv-scanner-fix.d.ts.map +1 -1
- package/dist/analyzers/tools/osv-scanner-fix.js +45 -20
- package/dist/analyzers/tools/osv-scanner-fix.js.map +1 -1
- package/dist/analyzers/tools/runner.d.ts +47 -0
- package/dist/analyzers/tools/runner.d.ts.map +1 -1
- package/dist/analyzers/tools/runner.js +79 -0
- package/dist/analyzers/tools/runner.js.map +1 -1
- package/dist/analyzers/tools/tool-registry.d.ts +10 -0
- package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
- package/dist/analyzers/tools/tool-registry.js +131 -0
- package/dist/analyzers/tools/tool-registry.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +36 -2
- package/dist/cli.js.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/languages/index.d.ts.map +1 -1
- package/dist/languages/index.js +12 -1
- package/dist/languages/index.js.map +1 -1
- package/dist/languages/java.d.ts +67 -0
- package/dist/languages/java.d.ts.map +1 -0
- package/dist/languages/java.js +421 -0
- package/dist/languages/java.js.map +1 -0
- package/dist/languages/kotlin.d.ts +1 -52
- package/dist/languages/kotlin.d.ts.map +1 -1
- package/dist/languages/kotlin.js +16 -286
- package/dist/languages/kotlin.js.map +1 -1
- package/dist/languages/ruby.d.ts +77 -0
- package/dist/languages/ruby.d.ts.map +1 -0
- package/dist/languages/ruby.js +531 -0
- package/dist/languages/ruby.js.map +1 -0
- package/dist/languages/types.d.ts +9 -1
- package/dist/languages/types.d.ts.map +1 -1
- package/dist/tools-cli.d.ts +16 -1
- package/dist/tools-cli.d.ts.map +1 -1
- package/dist/tools-cli.js +69 -6
- package/dist/tools-cli.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
- package/templates/.claude/rules/java.md +11 -0
- package/templates/.claude/rules/ruby.md +11 -0
- package/templates/configs/java/README.md +6 -0
- package/templates/configs/ruby/README.md +6 -0
package/dist/languages/kotlin.js
CHANGED
|
@@ -36,15 +36,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.kotlin = void 0;
|
|
37
37
|
exports.mapDetektSeverity = mapDetektSeverity;
|
|
38
38
|
exports.parseDetektCheckstyleXml = parseDetektCheckstyleXml;
|
|
39
|
-
exports.parseJaCoCoXml = parseJaCoCoXml;
|
|
40
|
-
exports.parseOsvScannerMavenFindings = parseOsvScannerMavenFindings;
|
|
41
39
|
exports.extractKotlinImportsRaw = extractKotlinImportsRaw;
|
|
42
40
|
const fs = __importStar(require("fs"));
|
|
43
41
|
const os = __importStar(require("os"));
|
|
44
42
|
const path = __importStar(require("path"));
|
|
45
|
-
const
|
|
43
|
+
const jacoco_1 = require("../analyzers/tools/jacoco");
|
|
44
|
+
const osv_scanner_deps_1 = require("../analyzers/tools/osv-scanner-deps");
|
|
46
45
|
const exclusions_1 = require("../analyzers/tools/exclusions");
|
|
47
|
-
const osv_1 = require("../analyzers/tools/osv");
|
|
48
46
|
const runner_1 = require("../analyzers/tools/runner");
|
|
49
47
|
const tool_registry_1 = require("../analyzers/tools/tool-registry");
|
|
50
48
|
// ─── Detection ──────────────────────────────────────────────────────────────
|
|
@@ -218,296 +216,28 @@ const kotlinLintProvider = {
|
|
|
218
216
|
},
|
|
219
217
|
};
|
|
220
218
|
// ─── Coverage (JaCoCo XML) ──────────────────────────────────────────────────
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
* <package name="com/example">
|
|
226
|
-
* <class name="com/example/Foo" sourcefilename="Foo.kt">...</class>
|
|
227
|
-
* <sourcefile name="Foo.kt">
|
|
228
|
-
* <line nr="N" mi="..." ci="..." mb="..." cb="..."/>
|
|
229
|
-
* <counter type="LINE" missed="X" covered="Y"/>
|
|
230
|
-
* </sourcefile>
|
|
231
|
-
* <counter type="LINE" missed="X" covered="Y"/>
|
|
232
|
-
* </package>
|
|
233
|
-
* <counter type="LINE" missed="X" covered="Y"/>
|
|
234
|
-
* </report>
|
|
235
|
-
*
|
|
236
|
-
* Per-file coverage comes from `<sourcefile>` blocks: their LINE counter
|
|
237
|
-
* holds the file's missed/covered totals. Project-level total comes from
|
|
238
|
-
* the top-level `<counter type="LINE">` (last in the document).
|
|
239
|
-
*
|
|
240
|
-
* Path attribution joins `<package name>` (forward-slashed, JVM-style)
|
|
241
|
-
* with `<sourcefile name>` to produce the canonical relative path the
|
|
242
|
-
* downstream consumers expect (`com/example/Foo.kt`). JVM bytecode
|
|
243
|
-
* namespacing isn't 1:1 with on-disk source paths in multi-module
|
|
244
|
-
* projects — accepted limitation (matches C#'s cobertura attribution).
|
|
245
|
-
*
|
|
246
|
-
* Returns null when no `<counter type="LINE">` exists at the top level
|
|
247
|
-
* — that's JaCoCo's "no coverage data" signal, distinct from "0%
|
|
248
|
-
* coverage" (where the counter exists with covered=0).
|
|
249
|
-
*
|
|
250
|
-
* Exported for unit tests; consumed by `gatherKotlinCoverageResult`.
|
|
251
|
-
*/
|
|
252
|
-
function parseJaCoCoXml(raw, sourceFile, _cwd) {
|
|
253
|
-
const files = new Map();
|
|
254
|
-
// Iterate <package> blocks. Each block contains <sourcefile> children
|
|
255
|
-
// we tally and aggregate counters we can ignore (they're sums of the
|
|
256
|
-
// children, redundant given we sum the children ourselves).
|
|
257
|
-
const packageRe = /<package\s+name="([^"]+)">([\s\S]*?)<\/package>/g;
|
|
258
|
-
let pm;
|
|
259
|
-
while ((pm = packageRe.exec(raw)) !== null) {
|
|
260
|
-
const pkgPath = pm[1].replace(/\\/g, '/'); // JVM uses forward-slashes already; defensive
|
|
261
|
-
const pkgInner = pm[2];
|
|
262
|
-
// Within a <package>, <sourcefile> blocks own per-file counters.
|
|
263
|
-
const sourceFileRe = /<sourcefile\s+name="([^"]+)">([\s\S]*?)<\/sourcefile>/g;
|
|
264
|
-
let sm;
|
|
265
|
-
while ((sm = sourceFileRe.exec(pkgInner)) !== null) {
|
|
266
|
-
const fileName = sm[1];
|
|
267
|
-
const sourceInner = sm[2];
|
|
268
|
-
// The LAST <counter type="LINE"> in <sourcefile> is the
|
|
269
|
-
// file-level aggregate; earlier ones are per-method. We pick the
|
|
270
|
-
// last to get the full-file roll-up.
|
|
271
|
-
const counterRe = /<counter\s+type="LINE"\s+missed="(\d+)"\s+covered="(\d+)"\s*\/>/g;
|
|
272
|
-
let lastMissed = 0;
|
|
273
|
-
let lastCovered = 0;
|
|
274
|
-
let cm;
|
|
275
|
-
while ((cm = counterRe.exec(sourceInner)) !== null) {
|
|
276
|
-
lastMissed = parseInt(cm[1], 10);
|
|
277
|
-
lastCovered = parseInt(cm[2], 10);
|
|
278
|
-
}
|
|
279
|
-
const total = lastMissed + lastCovered;
|
|
280
|
-
const rel = pkgPath ? `${pkgPath}/${fileName}` : fileName;
|
|
281
|
-
files.set(rel, {
|
|
282
|
-
path: rel,
|
|
283
|
-
covered: lastCovered,
|
|
284
|
-
total,
|
|
285
|
-
pct: (0, coverage_1.round1)(total > 0 ? (lastCovered / total) * 100 : 0),
|
|
286
|
-
});
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
// Top-level project-wide LINE counter — JaCoCo emits it after the
|
|
290
|
-
// last </package>. Use a non-greedy match against the document tail
|
|
291
|
-
// to avoid grabbing per-package counters as project-level.
|
|
292
|
-
const tailMatch = raw.match(/<\/package>\s*<counter\s+type="LINE"\s+missed="(\d+)"\s+covered="(\d+)"\s*\/>\s*<\/report>/);
|
|
293
|
-
let totalMissed = 0;
|
|
294
|
-
let totalCovered = 0;
|
|
295
|
-
if (tailMatch) {
|
|
296
|
-
totalMissed = parseInt(tailMatch[1], 10);
|
|
297
|
-
totalCovered = parseInt(tailMatch[2], 10);
|
|
298
|
-
}
|
|
299
|
-
else {
|
|
300
|
-
// No project-level counter (degenerate report — single package, no
|
|
301
|
-
// explicit roll-up). Sum the per-file totals as the linePercent
|
|
302
|
-
// basis.
|
|
303
|
-
for (const f of files.values()) {
|
|
304
|
-
totalCovered += f.covered;
|
|
305
|
-
totalMissed += f.total - f.covered;
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
const grandTotal = totalCovered + totalMissed;
|
|
309
|
-
if (grandTotal === 0 && files.size === 0)
|
|
310
|
-
return null;
|
|
311
|
-
return {
|
|
312
|
-
source: 'jacoco',
|
|
313
|
-
sourceFile,
|
|
314
|
-
linePercent: (0, coverage_1.round1)(grandTotal > 0 ? (totalCovered / grandTotal) * 100 : 0),
|
|
315
|
-
files,
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
/**
|
|
319
|
-
* Standard JaCoCo report locations across project layouts:
|
|
320
|
-
* - app/build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml
|
|
321
|
-
* (Android default — `app` module, `jacocoTestReport` task)
|
|
322
|
-
* - build/reports/jacoco/test/jacocoTestReport.xml
|
|
323
|
-
* (plain JVM Kotlin via the `jacoco` plugin's default `test` task)
|
|
324
|
-
* - build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml
|
|
325
|
-
* (multi-module aggregate; many builds rename the task)
|
|
326
|
-
* - jacocoTestReport.xml (top-level — fixture / direct path)
|
|
327
|
-
*
|
|
328
|
-
* Multi-module projects emit per-module reports under `<module>/build/...`;
|
|
329
|
-
* the cross-ecosystem fixture in step 5 will calibrate which paths show
|
|
330
|
-
* up reliably. Until then, the list above is conservative-priority: most
|
|
331
|
-
* specific (app-module) first, root fallback last.
|
|
332
|
-
*/
|
|
333
|
-
function findJaCoCoReport(cwd) {
|
|
334
|
-
const candidates = [
|
|
335
|
-
'app/build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml',
|
|
336
|
-
'build/reports/jacoco/test/jacocoTestReport.xml',
|
|
337
|
-
'build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml',
|
|
338
|
-
'jacocoTestReport.xml',
|
|
339
|
-
];
|
|
340
|
-
for (const rel of candidates) {
|
|
341
|
-
const abs = path.join(cwd, rel);
|
|
342
|
-
if (fs.existsSync(abs))
|
|
343
|
-
return rel;
|
|
344
|
-
}
|
|
345
|
-
return null;
|
|
346
|
-
}
|
|
347
|
-
function gatherKotlinCoverageResult(cwd) {
|
|
348
|
-
const reportRel = findJaCoCoReport(cwd);
|
|
349
|
-
if (!reportRel)
|
|
350
|
-
return null;
|
|
351
|
-
let raw;
|
|
352
|
-
try {
|
|
353
|
-
raw = fs.readFileSync(path.join(cwd, reportRel), 'utf-8');
|
|
354
|
-
}
|
|
355
|
-
catch {
|
|
356
|
-
return null;
|
|
357
|
-
}
|
|
358
|
-
const coverage = parseJaCoCoXml(raw, reportRel, cwd);
|
|
359
|
-
if (!coverage)
|
|
360
|
-
return null;
|
|
361
|
-
return { schemaVersion: 1, tool: `coverage:${coverage.source}`, coverage };
|
|
362
|
-
}
|
|
219
|
+
//
|
|
220
|
+
// Parser, finder, and gather glue all live in `src/analyzers/tools/jacoco.ts`
|
|
221
|
+
// — language-agnostic SSOT (CLAUDE.md rule #2). The kotlin pack just
|
|
222
|
+
// declares its provider and delegates. Java pack does the same.
|
|
363
223
|
const kotlinCoverageProvider = {
|
|
364
224
|
source: 'kotlin',
|
|
365
225
|
async gather(cwd) {
|
|
366
|
-
return
|
|
226
|
+
return (0, jacoco_1.gatherJaCoCoCoverageResult)(cwd);
|
|
367
227
|
},
|
|
368
228
|
};
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
*/
|
|
378
|
-
function parseOsvScannerMavenFindings(raw) {
|
|
379
|
-
const counts = { critical: 0, high: 0, medium: 0, low: 0 };
|
|
380
|
-
const findings = [];
|
|
381
|
-
const vulnsForCvss = [];
|
|
382
|
-
let data;
|
|
383
|
-
try {
|
|
384
|
-
data = JSON.parse(raw);
|
|
385
|
-
}
|
|
386
|
-
catch {
|
|
387
|
-
return { counts, findings, vulnsForCvss };
|
|
388
|
-
}
|
|
389
|
-
// Dedup at the source: osv-scanner can list the same advisory twice
|
|
390
|
-
// when a transitive dep is reachable through multiple top-level deps.
|
|
391
|
-
// Same (package, version, id) → same fingerprint, so collapse here.
|
|
392
|
-
const seen = new Set();
|
|
393
|
-
for (const result of data.results ?? []) {
|
|
394
|
-
for (const pkg of result.packages ?? []) {
|
|
395
|
-
if (pkg.package?.ecosystem !== 'Maven')
|
|
396
|
-
continue;
|
|
397
|
-
const pkgName = pkg.package.name ?? 'unknown';
|
|
398
|
-
const pkgVersion = pkg.package.version;
|
|
399
|
-
for (const vuln of pkg.vulnerabilities ?? []) {
|
|
400
|
-
if (!vuln.id)
|
|
401
|
-
continue;
|
|
402
|
-
const dedupKey = `${pkgName}\0${pkgVersion ?? ''}\0${vuln.id}`;
|
|
403
|
-
if (seen.has(dedupKey))
|
|
404
|
-
continue;
|
|
405
|
-
seen.add(dedupKey);
|
|
406
|
-
const sev = (0, osv_1.classifyOsvSeverity)(vuln);
|
|
407
|
-
const tier = sev === 'critical' || sev === 'high' || sev === 'medium' || sev === 'low'
|
|
408
|
-
? sev
|
|
409
|
-
: 'medium';
|
|
410
|
-
counts[tier]++;
|
|
411
|
-
const cvss = (0, osv_1.extractOsvCvssScore)(vuln);
|
|
412
|
-
const aliases = (vuln.aliases ?? []).filter((a) => a && a.length > 0);
|
|
413
|
-
const finding = {
|
|
414
|
-
id: vuln.id,
|
|
415
|
-
package: pkgName,
|
|
416
|
-
installedVersion: pkgVersion,
|
|
417
|
-
tool: 'osv-scanner',
|
|
418
|
-
severity: tier,
|
|
419
|
-
};
|
|
420
|
-
if (cvss !== null)
|
|
421
|
-
finding.cvssScore = cvss;
|
|
422
|
-
if (aliases.length > 0)
|
|
423
|
-
finding.aliases = aliases;
|
|
424
|
-
if (vuln.summary)
|
|
425
|
-
finding.summary = vuln.summary;
|
|
426
|
-
// OSV.dev hosts a canonical page per id — synthesize when the
|
|
427
|
-
// record's `references[]` is empty, otherwise keep the
|
|
428
|
-
// tool-supplied URLs.
|
|
429
|
-
const refUrls = (vuln.references ?? []).map((r) => r.url).filter((u) => !!u);
|
|
430
|
-
finding.references =
|
|
431
|
-
refUrls.length > 0 ? refUrls : [`https://osv.dev/vulnerability/${vuln.id}`];
|
|
432
|
-
findings.push(finding);
|
|
433
|
-
vulnsForCvss.push({
|
|
434
|
-
primaryId: vuln.id,
|
|
435
|
-
embeddedCvss: cvss,
|
|
436
|
-
aliases,
|
|
437
|
-
});
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
return { counts, findings, vulnsForCvss };
|
|
442
|
-
}
|
|
443
|
-
/**
|
|
444
|
-
* Single source of truth for the kotlin pack's dep-vuln gathering.
|
|
445
|
-
* Consumed by `kotlinDepVulnsProvider` (capability dispatcher).
|
|
446
|
-
*
|
|
447
|
-
* Tool choice: osv-scanner is the established multi-ecosystem scanner;
|
|
448
|
-
* no Tier-1 native equivalent exists for Maven/Gradle (CLAUDE.md rule
|
|
449
|
-
* #5). osv-scanner-fix.ts in the typescript pack uses the `fix`
|
|
450
|
-
* subcommand for upgrade planning — different mode, no shared logic.
|
|
451
|
-
*
|
|
452
|
-
* Manifest gating: osv-scanner reads `pom.xml`, `gradle.lockfile`,
|
|
453
|
-
* `gradle/verification-metadata.xml`, and (limited) `build.gradle`. Bare
|
|
454
|
-
* `build.gradle.kts` is NOT a reliable input — gradle.lockfile is
|
|
455
|
-
* preferred. Without any of these, return `tool-missing` (matches
|
|
456
|
-
* python/csharp's manifest-gating pattern).
|
|
457
|
-
*/
|
|
458
|
-
async function gatherKotlinDepVulnsResult(cwd) {
|
|
459
|
-
// Find the most reliable manifest. Order matters: lockfile > pom.xml
|
|
460
|
-
// > verification-metadata. We pass it explicitly via --lockfile so
|
|
461
|
-
// osv-scanner doesn't fall back to its (unreliable) build.gradle.kts
|
|
462
|
-
// parser. Multi-module Android projects with per-module lockfiles
|
|
463
|
-
// are not yet handled — first-module-found is the v1 behaviour;
|
|
464
|
-
// future enhancement scoped to 10j.x recipe-gap.
|
|
465
|
-
const manifestCandidates = ['gradle.lockfile', 'pom.xml', 'gradle/verification-metadata.xml'];
|
|
466
|
-
let manifest = null;
|
|
467
|
-
for (const rel of manifestCandidates) {
|
|
468
|
-
if ((0, runner_1.fileExists)(cwd, rel)) {
|
|
469
|
-
manifest = rel;
|
|
470
|
-
break;
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
if (!manifest)
|
|
474
|
-
return { kind: 'tool-missing' };
|
|
475
|
-
const scanner = (0, tool_registry_1.findTool)(tool_registry_1.TOOL_DEFS['osv-scanner'], cwd);
|
|
476
|
-
if (!scanner.available || !scanner.path)
|
|
477
|
-
return { kind: 'tool-missing' };
|
|
478
|
-
// `scan source --lockfile <path>` is the v2.x form. JSON output to
|
|
479
|
-
// stdout. Exit code is non-zero when findings exist — we ignore the
|
|
480
|
-
// exit code and parse the JSON regardless (run() already swallows
|
|
481
|
-
// non-zero exits cleanly via execSync's catch).
|
|
482
|
-
const raw = (0, runner_1.run)(`${scanner.path} scan source --lockfile ${manifest} --format json 2>/dev/null`, cwd, 180000);
|
|
483
|
-
if (!raw)
|
|
484
|
-
return { kind: 'no-output' };
|
|
485
|
-
const { counts, findings, vulnsForCvss } = parseOsvScannerMavenFindings(raw);
|
|
486
|
-
// CVSS alias-fallback: osv-scanner ships CVSS vectors when present,
|
|
487
|
-
// but Maven advisories are inconsistent — some carry only
|
|
488
|
-
// database_specific.severity strings. resolveCvssScores looks up via
|
|
489
|
-
// CVE alias when the primary record lacks a vector.
|
|
490
|
-
if (findings.length > 0) {
|
|
491
|
-
const resolved = await (0, osv_1.resolveCvssScores)(vulnsForCvss);
|
|
492
|
-
for (const f of findings) {
|
|
493
|
-
const score = resolved.get(f.id);
|
|
494
|
-
if (score !== null && score !== undefined)
|
|
495
|
-
f.cvssScore = score;
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
const envelope = {
|
|
499
|
-
schemaVersion: 1,
|
|
500
|
-
tool: 'osv-scanner',
|
|
501
|
-
enrichment: 'osv.dev',
|
|
502
|
-
counts,
|
|
503
|
-
findings,
|
|
504
|
-
};
|
|
505
|
-
return { kind: 'success', envelope };
|
|
506
|
-
}
|
|
229
|
+
// ─── DepVulns (osv-scanner against Maven manifests) ─────────────────────────
|
|
230
|
+
//
|
|
231
|
+
// Parser + gather glue live in `src/analyzers/tools/osv-scanner-deps.ts`
|
|
232
|
+
// — language-agnostic SSOT (CLAUDE.md rule #2). Kotlin/Java/Ruby packs
|
|
233
|
+
// all delegate to the same module, parameterized by ecosystem string +
|
|
234
|
+
// manifest candidate list. parseOsvScannerFindings is exported there
|
|
235
|
+
// for unit tests.
|
|
236
|
+
const KOTLIN_DEP_MANIFESTS = ['gradle.lockfile', 'pom.xml', 'gradle/verification-metadata.xml'];
|
|
507
237
|
const kotlinDepVulnsProvider = {
|
|
508
238
|
source: 'kotlin',
|
|
509
239
|
async gather(cwd) {
|
|
510
|
-
const outcome = await
|
|
240
|
+
const outcome = await (0, osv_scanner_deps_1.gatherOsvScannerDepVulnsResult)(cwd, 'kotlin', 'Maven', KOTLIN_DEP_MANIFESTS);
|
|
511
241
|
return outcome.kind === 'success' ? outcome.envelope : null;
|
|
512
242
|
},
|
|
513
243
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../src/languages/kotlin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../src/languages/kotlin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { type Coverage } from '../analyzers/tools/coverage';
|
|
2
|
+
import type { SeverityCounts } from './capabilities/types';
|
|
3
|
+
import type { LanguageSupport, LintSeverity } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Capture Ruby require / require_relative / autoload specifiers from source
|
|
6
|
+
* text. Three forms recognised:
|
|
7
|
+
*
|
|
8
|
+
* require 'json' → 'json'
|
|
9
|
+
* require_relative '../foo/bar' → '../foo/bar'
|
|
10
|
+
* autoload :Sym, 'foo/bar' → 'foo/bar'
|
|
11
|
+
*
|
|
12
|
+
* Ruby's metaprogramming (`__send__`, `Object.const_missing`, Rails'
|
|
13
|
+
* Zeitwerk autoloader) makes static import analysis fundamentally
|
|
14
|
+
* best-effort — many "imports" in idiomatic Ruby never appear as
|
|
15
|
+
* literal `require` calls. This parser extracts the literal-string
|
|
16
|
+
* cases only; downstream consumers should treat the output as a lower
|
|
17
|
+
* bound. Future v4 candidate: explicit best-effort contract on the
|
|
18
|
+
* imports envelope so consumers can distinguish "exhaustive" (TS, Go)
|
|
19
|
+
* from "best-effort" (Ruby, kotlin/Java reflection paths).
|
|
20
|
+
*
|
|
21
|
+
* Comments are stripped (single-line `#`) before matching so a
|
|
22
|
+
* commented-out `# require 'foo'` does not false-match. Multi-line
|
|
23
|
+
* `=begin ... =end` blocks containing requires are not extracted
|
|
24
|
+
* (acceptable: comment-out-import is intentional non-use).
|
|
25
|
+
*
|
|
26
|
+
* Both single and double quotes are accepted; dynamic `require x` (no
|
|
27
|
+
* literal string) is skipped — there is no specifier to capture.
|
|
28
|
+
*
|
|
29
|
+
* Exported for unit tests; consumed by `gatherRubyImportsResult`.
|
|
30
|
+
*/
|
|
31
|
+
export declare function extractRubyImportsRaw(content: string): string[];
|
|
32
|
+
/**
|
|
33
|
+
* Map RuboCop's severity strings to dxkit's four-tier scheme. RuboCop
|
|
34
|
+
* canonically emits 5 severities (see `RuboCop::Cop::Severity::CODES`
|
|
35
|
+
* in the upstream source — `lib/rubocop/cop/severity.rb`):
|
|
36
|
+
*
|
|
37
|
+
* - `convention` → low (style + naming — the bulk of findings)
|
|
38
|
+
* - `refactor` → low (complexity hints; Metrics/* cops)
|
|
39
|
+
* - `warning` → medium (Lint/* cops — actual code-quality risk)
|
|
40
|
+
* - `error` → high (real defects; rare in default config)
|
|
41
|
+
* - `fatal` → critical (rubocop-internal failure or syntax error)
|
|
42
|
+
*
|
|
43
|
+
* Defensive `'low'` default for unknown severities — matches the
|
|
44
|
+
* mapDetektSeverity / mapRuffSeverity contract: never silently drop a
|
|
45
|
+
* finding, even if rubocop adds a new tier we don't recognize yet.
|
|
46
|
+
*
|
|
47
|
+
* Exported for unit tests.
|
|
48
|
+
*/
|
|
49
|
+
export declare function mapRubocopSeverity(severity: string | null | undefined): LintSeverity;
|
|
50
|
+
/**
|
|
51
|
+
* Pure parser for RuboCop's JSON output (rubocop --format json). The
|
|
52
|
+
* shape is fixed per the upstream `RuboCop::Formatter::JSONFormatter`
|
|
53
|
+
* contract — `metadata` + `files[*].offenses[*]` + `summary`. We only
|
|
54
|
+
* need the offenses; metadata + summary are surface for future
|
|
55
|
+
* enrichment (per-file attribution, top-N rules) but not needed for
|
|
56
|
+
* the dxkit lint envelope which carries SeverityCounts only.
|
|
57
|
+
*
|
|
58
|
+
* Returns zero counts on malformed input rather than throwing —
|
|
59
|
+
* matches mapDetektSeverity / parseEslintFinal conventions. The
|
|
60
|
+
* gather function distinguishes "rubocop ran fine, found nothing"
|
|
61
|
+
* from "rubocop missing / parse error" via LintGatherOutcome's
|
|
62
|
+
* kind field.
|
|
63
|
+
*
|
|
64
|
+
* Exported for unit tests; consumed by `gatherRubyLintResult`.
|
|
65
|
+
*/
|
|
66
|
+
export declare function parseRubocopOutput(raw: string): SeverityCounts;
|
|
67
|
+
/**
|
|
68
|
+
* Pure parser for SimpleCov `.resultset.json`. Returns null when the
|
|
69
|
+
* input has no parseable suites (empty file, missing `coverage` key,
|
|
70
|
+
* or malformed JSON) — distinct from "0% coverage" (where suites
|
|
71
|
+
* exist with zero hits).
|
|
72
|
+
*
|
|
73
|
+
* Exported for unit tests; consumed by `gatherSimpleCovCoverageResult`.
|
|
74
|
+
*/
|
|
75
|
+
export declare function parseSimpleCovResultset(raw: string, sourceFile: string, cwd: string): Coverage | null;
|
|
76
|
+
export declare const ruby: LanguageSupport;
|
|
77
|
+
//# sourceMappingURL=ruby.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ruby.d.ts","sourceRoot":"","sources":["../../src/languages/ruby.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,QAAQ,EAAyC,MAAM,6BAA6B,CAAC;AAMnG,OAAO,KAAK,EAMV,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAqC7D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAoB/D;AAwHD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,CAepF;AAkBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAc9D;AAuED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,GACV,QAAQ,GAAG,IAAI,CAmEjB;AAiFD,eAAO,MAAM,IAAI,EAAE,eAsDlB,CAAC"}
|