phpstan-mcp-mx 0.19.0 → 0.21.0
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 +25 -0
- package/README.md +141 -6
- package/dist/changed.d.ts +42 -0
- package/dist/changed.js +91 -3
- package/dist/changed.js.map +1 -1
- package/dist/compare.d.ts +75 -0
- package/dist/compare.js +102 -0
- package/dist/compare.js.map +1 -0
- package/dist/composer.d.ts +68 -0
- package/dist/composer.js +313 -0
- package/dist/composer.js.map +1 -0
- package/dist/dumptype.js +2 -13
- package/dist/dumptype.js.map +1 -1
- package/dist/phpstan.d.ts +24 -0
- package/dist/phpstan.js +29 -1
- package/dist/phpstan.js.map +1 -1
- package/dist/project.d.ts +15 -0
- package/dist/project.js +54 -3
- package/dist/project.js.map +1 -1
- package/dist/report.d.ts +37 -1
- package/dist/report.js +141 -6
- package/dist/report.js.map +1 -1
- package/dist/runs.d.ts +26 -1
- package/dist/runs.js +22 -3
- package/dist/runs.js.map +1 -1
- package/dist/tools/analysis.js +72 -6
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/inspect.js +102 -17
- package/dist/tools/inspect.js.map +1 -1
- package/dist/tools/prompts.js +24 -16
- package/dist/tools/prompts.js.map +1 -1
- package/dist/tools/shared.d.ts +59 -1
- package/dist/tools/shared.js +103 -7
- package/dist/tools/shared.js.map +1 -1
- package/package.json +1 -1
package/dist/report.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"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"}
|
package/dist/runs.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Comparison } from './compare.js';
|
|
1
2
|
import type { AnalysisResult } from './phpstan.js';
|
|
2
3
|
import type { ChangedLineCheck } from './report.js';
|
|
3
4
|
/**
|
|
@@ -12,6 +13,13 @@ export declare const MAX_RUNS = 16;
|
|
|
12
13
|
* oplevert.
|
|
13
14
|
*/
|
|
14
15
|
export declare const RUN_TTL_MS: number;
|
|
16
|
+
/**
|
|
17
|
+
* Hoe lang een resultaat bruikbaar blijft als uitgangspunt van een vergelijking
|
|
18
|
+
* (`compareTo`). Langer dan voor een pagina, want hier is de oude stand juist het punt:
|
|
19
|
+
* tussen de analyse vóór een reparatie en die erna zit het repareren zelf, en dat duurt
|
|
20
|
+
* al snel langer dan tien minuten. Het geheugen begrenst `MAX_RUNS`, niet de tijd.
|
|
21
|
+
*/
|
|
22
|
+
export declare const COMPARE_TTL_MS: number;
|
|
15
23
|
/** Alles wat nodig is om een pagina opnieuw op te bouwen zonder PHPStan te starten. */
|
|
16
24
|
export interface StoredRun {
|
|
17
25
|
readonly project: string;
|
|
@@ -21,6 +29,16 @@ export interface StoredRun {
|
|
|
21
29
|
readonly notices: readonly string[];
|
|
22
30
|
readonly heading?: string;
|
|
23
31
|
readonly onChangedLine?: ChangedLineCheck;
|
|
32
|
+
/** Bij `analyse_changed` met `scope: "project"`: of een bestand bij de wijziging van toen hoort. */
|
|
33
|
+
readonly inChangedFile?: (file: string) => boolean;
|
|
34
|
+
/**
|
|
35
|
+
* De paden die geanalyseerd zijn, of niets als de config dat bepaalde. Nodig voor een
|
|
36
|
+
* vergelijking bij `analyse_changed`: daar volgt de lijst uit git en niet uit de
|
|
37
|
+
* argumenten, dus dezelfde sleutel kan een andere set bestanden betekenen.
|
|
38
|
+
*/
|
|
39
|
+
readonly scope?: readonly string[];
|
|
40
|
+
/** De vergelijking die bij deze run gemaakt is, zodat een volgende pagina hem ook heeft. */
|
|
41
|
+
readonly comparison?: Comparison;
|
|
24
42
|
}
|
|
25
43
|
/** Een bewaarde run met het moment waarop hij gemaakt is. */
|
|
26
44
|
export interface FoundRun extends StoredRun {
|
|
@@ -39,8 +57,9 @@ export declare class RunStore {
|
|
|
39
57
|
private readonly now;
|
|
40
58
|
private readonly max;
|
|
41
59
|
private readonly ttlMs;
|
|
60
|
+
private readonly keepMs;
|
|
42
61
|
private readonly runs;
|
|
43
|
-
constructor(now?: () => number, max?: number, ttlMs?: number);
|
|
62
|
+
constructor(now?: () => number, max?: number, ttlMs?: number, keepMs?: number);
|
|
44
63
|
/** Bewaart een run en geeft zijn id terug. De oudste valt eruit als het er te veel worden. */
|
|
45
64
|
put(run: StoredRun): string;
|
|
46
65
|
/**
|
|
@@ -49,6 +68,12 @@ export declare class RunStore {
|
|
|
49
68
|
* gevallen zou een pagina eruit iets anders beschrijven dan waar om gevraagd wordt.
|
|
50
69
|
*/
|
|
51
70
|
get(id: string, project: string, key: string): FoundRun | null;
|
|
71
|
+
/**
|
|
72
|
+
* Dezelfde voorwaarden, maar met de langere termijn van een vergelijking. Een run van
|
|
73
|
+
* een half uur oud is geen bruikbare pagina meer, wel een bruikbaar "vóór".
|
|
74
|
+
*/
|
|
75
|
+
forComparison(id: string, project: string, key: string): FoundRun | null;
|
|
76
|
+
private find;
|
|
52
77
|
private prune;
|
|
53
78
|
}
|
|
54
79
|
/**
|
package/dist/runs.js
CHANGED
|
@@ -11,6 +11,13 @@ export const MAX_RUNS = 16;
|
|
|
11
11
|
* oplevert.
|
|
12
12
|
*/
|
|
13
13
|
export const RUN_TTL_MS = 10 * 60_000;
|
|
14
|
+
/**
|
|
15
|
+
* Hoe lang een resultaat bruikbaar blijft als uitgangspunt van een vergelijking
|
|
16
|
+
* (`compareTo`). Langer dan voor een pagina, want hier is de oude stand juist het punt:
|
|
17
|
+
* tussen de analyse vóór een reparatie en die erna zit het repareren zelf, en dat duurt
|
|
18
|
+
* al snel langer dan tien minuten. Het geheugen begrenst `MAX_RUNS`, niet de tijd.
|
|
19
|
+
*/
|
|
20
|
+
export const COMPARE_TTL_MS = 60 * 60_000;
|
|
14
21
|
/**
|
|
15
22
|
* De bewaarde analyses van deze server.
|
|
16
23
|
*
|
|
@@ -23,11 +30,13 @@ export class RunStore {
|
|
|
23
30
|
now;
|
|
24
31
|
max;
|
|
25
32
|
ttlMs;
|
|
33
|
+
keepMs;
|
|
26
34
|
runs = new Map();
|
|
27
|
-
constructor(now = Date.now, max = MAX_RUNS, ttlMs = RUN_TTL_MS) {
|
|
35
|
+
constructor(now = Date.now, max = MAX_RUNS, ttlMs = RUN_TTL_MS, keepMs = Math.max(ttlMs, COMPARE_TTL_MS)) {
|
|
28
36
|
this.now = now;
|
|
29
37
|
this.max = max;
|
|
30
38
|
this.ttlMs = ttlMs;
|
|
39
|
+
this.keepMs = keepMs;
|
|
31
40
|
}
|
|
32
41
|
/** Bewaart een run en geeft zijn id terug. De oudste valt eruit als het er te veel worden. */
|
|
33
42
|
put(run) {
|
|
@@ -49,14 +58,24 @@ export class RunStore {
|
|
|
49
58
|
* gevallen zou een pagina eruit iets anders beschrijven dan waar om gevraagd wordt.
|
|
50
59
|
*/
|
|
51
60
|
get(id, project, key) {
|
|
61
|
+
return this.find(id, project, key, this.ttlMs);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Dezelfde voorwaarden, maar met de langere termijn van een vergelijking. Een run van
|
|
65
|
+
* een half uur oud is geen bruikbare pagina meer, wel een bruikbaar "vóór".
|
|
66
|
+
*/
|
|
67
|
+
forComparison(id, project, key) {
|
|
68
|
+
return this.find(id, project, key, this.keepMs);
|
|
69
|
+
}
|
|
70
|
+
find(id, project, key, maxAgeMs) {
|
|
52
71
|
this.prune();
|
|
53
72
|
const run = this.runs.get(id);
|
|
54
73
|
if (run === undefined || run.project !== project || run.key !== key)
|
|
55
74
|
return null;
|
|
56
|
-
return run;
|
|
75
|
+
return run.createdAt < this.now() - maxAgeMs ? null : run;
|
|
57
76
|
}
|
|
58
77
|
prune() {
|
|
59
|
-
const grens = this.now() - this.
|
|
78
|
+
const grens = this.now() - this.keepMs;
|
|
60
79
|
for (const [id, run] of this.runs) {
|
|
61
80
|
if (run.createdAt < grens)
|
|
62
81
|
this.runs.delete(id);
|
package/dist/runs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runs.js","sourceRoot":"","sources":["../src/runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"runs.js","sourceRoot":"","sources":["../src/runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC;AAE3B;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,CAAC;AAEtC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,GAAG,MAAM,CAAC;AA6B1C;;;;;;;GAOG;AACH,MAAM,OAAO,QAAQ;IAIA;IACA;IACA;IACA;IANF,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEpD,YACmB,MAAoB,IAAI,CAAC,GAAG,EAC5B,MAAc,QAAQ,EACtB,QAAgB,UAAU,EAC1B,SAAiB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC;QAHhD,QAAG,GAAH,GAAG,CAAyB;QAC5B,QAAG,GAAH,GAAG,CAAmB;QACtB,UAAK,GAAL,KAAK,CAAqB;QAC1B,WAAM,GAAN,MAAM,CAA0C;IAChE,CAAC;IAEJ,8FAA8F;IAC9F,GAAG,CAAC,GAAc;QAChB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEzD,mFAAmF;QACnF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC7C,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM;YAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,EAAU,EAAE,OAAe,EAAE,GAAW;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,EAAU,EAAE,OAAe,EAAE,GAAW;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAEO,IAAI,CAAC,EAAU,EAAE,OAAe,EAAE,GAAW,EAAE,QAAgB;QACrE,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACjF,OAAO,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,CAAC;IAEO,KAAK;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACvC,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,GAAG,CAAC,SAAS,GAAG,KAAK;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,IAAY,EAAE,IAA6B;IAChE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7B,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;SAC1C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AACxC,CAAC"}
|
package/dist/tools/analysis.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { DEFAULT_BASE, baselineChanges, changedPhpFiles, isOnChangedLine } from '../changed.js';
|
|
2
|
+
import { DEFAULT_BASE, baselineChanges, changedPhpFiles, fileAtBase, isOnChangedLine } from '../changed.js';
|
|
3
3
|
import { displayPath } from '../report.js';
|
|
4
|
-
import { resolveWithin } from '../project.js';
|
|
4
|
+
import { contains, readConfigPaths, resolveWithin } from '../project.js';
|
|
5
|
+
import { PhpstanError, analyseEdited, tmpCopyName } from '../phpstan.js';
|
|
5
6
|
import { runKey } from '../runs.js';
|
|
6
|
-
import { analysisShape, common, configArgument, projectArgument, readOnly, runAnalysis, window, windowShape, } from './shared.js';
|
|
7
|
+
import { analysisShape, common, compareArgument, configArgument, projectArgument, readOnly, runAnalysis, window, windowShape, } from './shared.js';
|
|
7
8
|
/** Hangt `analyse_project` aan de server: PHPStan over (een deel van) een project. */
|
|
8
9
|
export function registerAnalyseProject(server, roots, runs) {
|
|
9
10
|
server.registerTool('analyse_project', {
|
|
@@ -23,6 +24,7 @@ export function registerAnalyseProject(server, roots, runs) {
|
|
|
23
24
|
.optional()
|
|
24
25
|
.describe('E.g. "1G", if PHPStan hits the PHP memory limit; overrides the server default'),
|
|
25
26
|
timeoutSeconds: z.number().int().positive().max(1800).optional(),
|
|
27
|
+
compareTo: compareArgument,
|
|
26
28
|
...windowShape,
|
|
27
29
|
},
|
|
28
30
|
outputSchema: analysisShape,
|
|
@@ -45,6 +47,7 @@ export function registerAnalyseProject(server, roots, runs) {
|
|
|
45
47
|
runs,
|
|
46
48
|
key: runKey('analyse_project', { paths: args.paths, level: args.level, config: args.config }),
|
|
47
49
|
runId: args.runId,
|
|
50
|
+
compareTo: args.compareTo,
|
|
48
51
|
}));
|
|
49
52
|
}
|
|
50
53
|
/** Hangt `analyse_changed` aan de server: alleen wat git gewijzigd heeft. */
|
|
@@ -73,10 +76,19 @@ export function registerAnalyseChanged(server, roots, runs) {
|
|
|
73
76
|
.optional()
|
|
74
77
|
.describe('Only findings on changed lines. The counts still cover everything, so what ' +
|
|
75
78
|
'is elsewhere in the files stays visible'),
|
|
79
|
+
scope: z
|
|
80
|
+
.enum(['changed', 'project'])
|
|
81
|
+
.optional()
|
|
82
|
+
.describe('"project" analyses what the config\'s paths cover, as analyse_project does, and marks which findings are in the changed ' +
|
|
83
|
+
'files, so you also see what the change breaks elsewhere: an altered signature ' +
|
|
84
|
+
'shows up at its callers. With exactly one changed file, it also analyses the ' +
|
|
85
|
+
'project as it was before the change and says which findings the change introduced. ' +
|
|
86
|
+
'Slower — with a warm cache 1-5s per run on real projects'),
|
|
76
87
|
level: z.string().optional().describe('Level override, 0 to 10 or "max"'),
|
|
77
88
|
config: configArgument,
|
|
78
89
|
memoryLimit: z.string().optional(),
|
|
79
90
|
timeoutSeconds: z.number().int().positive().max(1800).optional(),
|
|
91
|
+
compareTo: compareArgument,
|
|
80
92
|
...windowShape,
|
|
81
93
|
},
|
|
82
94
|
outputSchema: analysisShape,
|
|
@@ -87,10 +99,56 @@ export function registerAnalyseChanged(server, roots, runs) {
|
|
|
87
99
|
if (changed.files.length === 0) {
|
|
88
100
|
return { nothingToDo: describeNothingChanged(changed), notices };
|
|
89
101
|
}
|
|
102
|
+
const heleProject = args.scope === 'project';
|
|
103
|
+
// Zonder config zou PHPStan zonder paden niet weten wat het hele project is;
|
|
104
|
+
// de melding van targets() raadt dan paden aan, en die kent deze tool niet.
|
|
105
|
+
if (heleProject && resolved.config === null) {
|
|
106
|
+
throw new PhpstanError(`${resolved.path} has no phpstan.neon(.dist), so there is no whole project to analyse. ` +
|
|
107
|
+
'Leave out scope to analyse only the changed files.', 'config_missing', { hint: 'Leave out scope, or create a phpstan.neon in the project.' });
|
|
108
|
+
}
|
|
109
|
+
const gewijzigd = new Set(changed.files);
|
|
110
|
+
// Zonder paden analyseert PHPStan alleen de `paths` uit de config. Een gewijzigd
|
|
111
|
+
// bestand daarbuiten (tests/ die niet meedoet, zeg) valt dan weg, terwijl de
|
|
112
|
+
// standaardscope het wél analyseert. Stil weglaten is de fout die deze server overal
|
|
113
|
+
// voorkomt; staan de paden niet leesbaar in de eigen config, dan zegt de kop het.
|
|
114
|
+
const configPaths = heleProject ? readConfigPaths(resolved) : null;
|
|
115
|
+
const buiten = configPaths === null
|
|
116
|
+
? []
|
|
117
|
+
: changed.files.filter((file) => !configPaths.some((path) => contains(path, file)));
|
|
118
|
+
if (buiten.length > 0) {
|
|
119
|
+
notices.push(`${buiten.map((file) => displayPath(resolved.path, file)).join(', ')} ${buiten.length === 1 ? 'is' : 'are'} ` +
|
|
120
|
+
"changed but outside the config's paths, so this analysis does not cover " +
|
|
121
|
+
`${buiten.length === 1 ? 'it' : 'them'}. Leave out scope to analyse the changed files themselves.`);
|
|
122
|
+
}
|
|
123
|
+
// Het echte "vóór": bij precies één gewijzigd bestand zet editor mode de base-versie
|
|
124
|
+
// op zijn plek, en de vergelijking zegt dan wat de wijziging elders brak — zonder de
|
|
125
|
+
// oude fouten ertussen. Nagemeten op `shared`: een extra parameter aan
|
|
126
|
+
// OrderByEnum::apply() gaf exact de vier aanroepen als nieuw en 25 als nog open.
|
|
127
|
+
// Bij meer bestanden kan het niet: editor mode vervangt er maar één per run.
|
|
128
|
+
const [enige] = changed.files;
|
|
129
|
+
const vóór = heleProject && changed.files.length === 1 && enige !== undefined && buiten.length === 0
|
|
130
|
+
? {
|
|
131
|
+
label: `${displayPath(resolved.path, enige)} at ${changed.base}`,
|
|
132
|
+
run: async (signal) => {
|
|
133
|
+
// Een bestand dat bij base nog niet bestond, is daar leeg.
|
|
134
|
+
const oud = await fileAtBase(resolved, changed, enige);
|
|
135
|
+
return analyseEdited(resolved, {
|
|
136
|
+
insteadOf: enige,
|
|
137
|
+
content: oud === '' ? '<?php\n' : oud,
|
|
138
|
+
name: tmpCopyName(resolved.path, 'base'),
|
|
139
|
+
wholeProject: true,
|
|
140
|
+
}, { ...common(resolved, args), ...(signal === undefined ? {} : { signal }) });
|
|
141
|
+
},
|
|
142
|
+
}
|
|
143
|
+
: undefined;
|
|
90
144
|
return {
|
|
91
|
-
|
|
92
|
-
|
|
145
|
+
// Zonder paden: dan bepaalt de config wat er meedoet, net als bij analyse_project,
|
|
146
|
+
// en deelt deze run de resultcache daarmee.
|
|
147
|
+
options: { ...(heleProject ? {} : { paths: [...changed.files] }), ...common(resolved, args) },
|
|
148
|
+
heading: describeChanged(resolved, changed, heleProject),
|
|
93
149
|
onChangedLine: (file, line) => isOnChangedLine(changed, file, line),
|
|
150
|
+
...(heleProject ? { inChangedFile: (file) => gewijzigd.has(file) } : {}),
|
|
151
|
+
...(vóór === undefined ? {} : { before: vóór }),
|
|
94
152
|
notices,
|
|
95
153
|
};
|
|
96
154
|
}, window(args), extra.signal, {
|
|
@@ -100,10 +158,13 @@ export function registerAnalyseChanged(server, roots, runs) {
|
|
|
100
158
|
key: runKey('analyse_changed', {
|
|
101
159
|
base: args.base,
|
|
102
160
|
staged: args.staged,
|
|
161
|
+
// Alleen gezet bij "project", zodat een runId van vóór deze optie blijft passen.
|
|
162
|
+
scope: args.scope === 'project' ? 'project' : undefined,
|
|
103
163
|
level: args.level,
|
|
104
164
|
config: args.config,
|
|
105
165
|
}),
|
|
106
166
|
runId: args.runId,
|
|
167
|
+
compareTo: args.compareTo,
|
|
107
168
|
}));
|
|
108
169
|
}
|
|
109
170
|
/** Hoeveel losse items een melding hoogstens noemt; de rest als aantal. */
|
|
@@ -152,12 +213,15 @@ function describeNothingChanged(changed) {
|
|
|
152
213
|
return lines.join('\n');
|
|
153
214
|
}
|
|
154
215
|
/** Wat er geanalyseerd is, zodat zichtbaar is waarop het rapport eronder betrekking heeft. */
|
|
155
|
-
function describeChanged(resolved, changed) {
|
|
216
|
+
function describeChanged(resolved, changed, heleProject = false) {
|
|
156
217
|
const waar = changed.staged ? 'staged relative to' : 'changed relative to';
|
|
157
218
|
const lines = [
|
|
158
219
|
`${String(changed.files.length)} PHP file(s) ${waar} ${changed.base}:`,
|
|
159
220
|
...changed.files.map((file) => ` ${displayPath(resolved.path, file)}`),
|
|
160
221
|
];
|
|
222
|
+
if (heleProject) {
|
|
223
|
+
lines.push('', "Analysed: everything the config's paths cover, so findings in files you did not change are included.");
|
|
224
|
+
}
|
|
161
225
|
if (changed.skipped.length > 0)
|
|
162
226
|
lines.push('', ...skippedLines(changed));
|
|
163
227
|
return lines.join('\n');
|
|
@@ -181,6 +245,7 @@ export function registerAnalyseFile(server, roots, runs) {
|
|
|
181
245
|
config: configArgument,
|
|
182
246
|
memoryLimit: z.string().optional(),
|
|
183
247
|
timeoutSeconds: z.number().int().positive().max(1800).optional(),
|
|
248
|
+
compareTo: compareArgument,
|
|
184
249
|
...windowShape,
|
|
185
250
|
},
|
|
186
251
|
outputSchema: analysisShape,
|
|
@@ -194,6 +259,7 @@ export function registerAnalyseFile(server, roots, runs) {
|
|
|
194
259
|
runs,
|
|
195
260
|
key: runKey('analyse_file', { path: args.path, level: args.level, config: args.config }),
|
|
196
261
|
runId: args.runId,
|
|
262
|
+
compareTo: args.compareTo,
|
|
197
263
|
}));
|
|
198
264
|
}
|
|
199
265
|
//# sourceMappingURL=analysis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/tools/analysis.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/tools/analysis.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/inspect.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { baselineEntriesFor, renderBaseline, summariseBaseline } from '../baseline.js';
|
|
3
|
-
import {
|
|
3
|
+
import { GitError, countInlineIgnores } from '../changed.js';
|
|
4
|
+
import { diagnose, loadDefaultMemoryLimit, loadMaxParallel, serverInvocation } from '../phpstan.js';
|
|
5
|
+
import { findMissingExtensions, readComposerScripts, renderComposerScripts, renderMissingExtensions } from '../composer.js';
|
|
4
6
|
import { discoverProjects, resolveProject } from '../project.js';
|
|
5
7
|
import { ROOTS_ENV_VAR } from '../roots.js';
|
|
6
8
|
import { PROJECTS_ENV_VAR, loadProjectDefaults } from '../defaults.js';
|
|
@@ -209,8 +211,10 @@ export function registerDiagnose(server, roots) {
|
|
|
209
211
|
'configs that Composer packages bring along (such as Larastan) and whether the turbo ' +
|
|
210
212
|
'extension is enabled — plus the configuration as PHPStan ends up using it: the level ' +
|
|
211
213
|
'(also when it is set in a config from vendor/), the paths, the number of ignore rules ' +
|
|
212
|
-
'and the temp directory.
|
|
213
|
-
'
|
|
214
|
+
'and the temp directory. Also lists the Composer scripts that run PHPStan and how they ' +
|
|
215
|
+
'differ from this server, such as another config or memory limit. Does not run an ' +
|
|
216
|
+
'analysis. Use this when a project behaves differently from another project, or ' +
|
|
217
|
+
'differently from what its developers see, before you start doubting the code.',
|
|
214
218
|
inputSchema: {
|
|
215
219
|
project: projectArgument,
|
|
216
220
|
timeoutSeconds: z.number().int().positive().max(1800).optional(),
|
|
@@ -228,6 +232,20 @@ export function registerDiagnose(server, roots) {
|
|
|
228
232
|
bootstrapFiles: z.array(z.string()),
|
|
229
233
|
})).describe('The configuration as PHPStan ends up using it, including what comes from vendor/'),
|
|
230
234
|
parametersProblem: nullable(z.string()).describe('Why parameters is missing, e.g. a bootstrap that fails to start'),
|
|
235
|
+
composerScripts: nullable(z.array(z.object({
|
|
236
|
+
name: z.string(),
|
|
237
|
+
command: z.string(),
|
|
238
|
+
differences: z
|
|
239
|
+
.array(z.string())
|
|
240
|
+
.describe('How it runs PHPStan differently from this server, with what to pass to match; empty if it does not'),
|
|
241
|
+
}))).describe('Composer scripts in composer.json that run phpstan analyse; they are read, never run'),
|
|
242
|
+
composerScriptsProblem: nullable(z.string()).describe('Why composerScripts is null'),
|
|
243
|
+
missingExtensions: nullable(z.array(z.object({
|
|
244
|
+
framework: z.string(),
|
|
245
|
+
extension: z.string(),
|
|
246
|
+
installed: z.boolean().describe('Installed but not included in the config'),
|
|
247
|
+
sees: z.string().describe('What PHPStan does not see without it'),
|
|
248
|
+
}))).describe('Frameworks in composer.lock whose PHPStan extension is not loaded; null if that cannot be told'),
|
|
231
249
|
},
|
|
232
250
|
annotations: readOnly(),
|
|
233
251
|
}, async (args, extra) => {
|
|
@@ -249,9 +267,22 @@ export function registerDiagnose(server, roots) {
|
|
|
249
267
|
const aanvulling = diagnosis.parameters === null
|
|
250
268
|
? `Effective configuration: not available. ${diagnosis.parametersProblem ?? ''}`.trim()
|
|
251
269
|
: renderParameters(diagnosis.parameters);
|
|
270
|
+
// Alleen gelezen, nooit uitgevoerd: een script uit het project dat bepaalt hoe de
|
|
271
|
+
// server aanroept, is het "commando uit een aanroep" dat bij de runners afgewezen is.
|
|
272
|
+
const scripts = readComposerScripts(resolved.path, serverInvocation(resolved));
|
|
273
|
+
const scriptsText = renderComposerScripts(scripts.composerScripts, scripts.composerScriptsProblem);
|
|
274
|
+
// Bovenaan de aanvullingen: een ontbrekende Larastan verklaart meer dan al het andere.
|
|
275
|
+
const missingExtensions = findMissingExtensions(resolved.path, diagnosis.output);
|
|
252
276
|
return {
|
|
253
|
-
content: [
|
|
254
|
-
|
|
277
|
+
content: [
|
|
278
|
+
{
|
|
279
|
+
type: 'text',
|
|
280
|
+
text: [diagnosis.output, renderMissingExtensions(missingExtensions), aanvulling, scriptsText]
|
|
281
|
+
.filter((deel) => deel !== '')
|
|
282
|
+
.join('\n\n'),
|
|
283
|
+
},
|
|
284
|
+
],
|
|
285
|
+
structuredContent: { ...diagnosis, ...scripts, missingExtensions },
|
|
255
286
|
};
|
|
256
287
|
}
|
|
257
288
|
catch (error) {
|
|
@@ -264,10 +295,10 @@ export function registerBaselineSummary(server, roots) {
|
|
|
264
295
|
server.registerTool('baseline_summary', {
|
|
265
296
|
title: 'Summarise baseline',
|
|
266
297
|
description: 'Reads the phpstan-baseline*.neon of a project and counts what is ignored, per ' +
|
|
267
|
-
'identifier and per file
|
|
268
|
-
'
|
|
269
|
-
'
|
|
270
|
-
'identifier, count and pattern.',
|
|
298
|
+
'identifier and per file, and also counts the inline @phpstan-ignore comments in the ' +
|
|
299
|
+
'code. Does not run an analysis. Note: what is in here is exactly what analyse_project ' +
|
|
300
|
+
'does NOT report — a project that includes its baseline only reports the errors that ' +
|
|
301
|
+
'are new. With `path`, also the entries for one file, with identifier, count and pattern.',
|
|
271
302
|
inputSchema: {
|
|
272
303
|
project: projectArgument,
|
|
273
304
|
path: z
|
|
@@ -283,21 +314,31 @@ export function registerBaselineSummary(server, roots) {
|
|
|
283
314
|
byIdentifier: z.array(z.object({ identifier: z.string(), count: z.number() })),
|
|
284
315
|
byPath: z.array(z.object({ path: z.string(), count: z.number() })),
|
|
285
316
|
entries: nullable(z.array(z.object({ file: z.string(), identifier: z.string(), count: z.number(), message: nullable(z.string()) }))).describe('The entries for `path`; null if no path was given'),
|
|
317
|
+
inlineIgnores: nullable(z.object({
|
|
318
|
+
total: z.number().describe('Comment lines with an @phpstan-ignore'),
|
|
319
|
+
files: z.number(),
|
|
320
|
+
withoutIdentifier: z
|
|
321
|
+
.number()
|
|
322
|
+
.describe('@phpstan-ignore-line and -next-line: these ignore every error on their line'),
|
|
323
|
+
withoutReason: z.number().describe('With an identifier but without a reason in parentheses'),
|
|
324
|
+
byIdentifier: z.array(z.object({ identifier: z.string(), count: z.number() })),
|
|
325
|
+
byPath: z.array(z.object({ path: z.string(), count: z.number() })),
|
|
326
|
+
})).describe('Inline @phpstan-ignore comments in the PHP files git knows; null if they could not be counted'),
|
|
327
|
+
inlineIgnoresProblem: nullable(z.string()).describe('Why inlineIgnores is null'),
|
|
286
328
|
},
|
|
287
329
|
annotations: readOnly(),
|
|
288
|
-
}, ({ project, path }) => {
|
|
330
|
+
}, async ({ project, path }) => {
|
|
289
331
|
try {
|
|
290
332
|
const resolved = resolveProject(project, roots);
|
|
291
333
|
const summary = summariseBaseline(resolved);
|
|
292
334
|
const entries = path === undefined || path === '' ? null : baselineEntriesFor(resolved, path);
|
|
335
|
+
const inline = await inlineIgnoresOf(resolved);
|
|
336
|
+
const delen = [renderBaseline(summary), renderInlineIgnores(inline)];
|
|
337
|
+
if (entries !== null)
|
|
338
|
+
delen.push(renderEntries(path ?? '', entries));
|
|
293
339
|
return {
|
|
294
|
-
content: [
|
|
295
|
-
|
|
296
|
-
type: 'text',
|
|
297
|
-
text: entries === null ? renderBaseline(summary) : `${renderBaseline(summary)}\n\n${renderEntries(path ?? '', entries)}`,
|
|
298
|
-
},
|
|
299
|
-
],
|
|
300
|
-
structuredContent: { ...summary, entries },
|
|
340
|
+
content: [{ type: 'text', text: delen.join('\n\n') }],
|
|
341
|
+
structuredContent: { ...summary, entries, ...inline },
|
|
301
342
|
};
|
|
302
343
|
}
|
|
303
344
|
catch (error) {
|
|
@@ -305,6 +346,50 @@ export function registerBaselineSummary(server, roots) {
|
|
|
305
346
|
}
|
|
306
347
|
});
|
|
307
348
|
}
|
|
349
|
+
/**
|
|
350
|
+
* De inline ignores, of waarom die er niet zijn. Geen fout als git ontbreekt: de baseline is
|
|
351
|
+
* dan nog steeds te lezen, en die was de vraag. Wel null en niet nul — nul zou zeggen dat er
|
|
352
|
+
* niets verstopt wordt, en dat is dan juist niet bekend.
|
|
353
|
+
*/
|
|
354
|
+
async function inlineIgnoresOf(project) {
|
|
355
|
+
try {
|
|
356
|
+
return { inlineIgnores: await countInlineIgnores(project), inlineIgnoresProblem: null };
|
|
357
|
+
}
|
|
358
|
+
catch (error) {
|
|
359
|
+
if (!(error instanceof GitError))
|
|
360
|
+
throw error;
|
|
361
|
+
// Een eigen zin en niet error.message: die is geschreven voor analyse_changed, en raadt
|
|
362
|
+
// "analyse_project met paden" aan — dat telt geen inline ignores.
|
|
363
|
+
const waarom = error.reason === 'not_a_git_repository'
|
|
364
|
+
? 'the project is not under git, and they are counted with git grep.'
|
|
365
|
+
: error.reason === 'git_missing' && /not found/i.test(error.message)
|
|
366
|
+
? 'git was not found, and they are counted with git grep.'
|
|
367
|
+
: error.message;
|
|
368
|
+
return { inlineIgnores: null, inlineIgnoresProblem: waarom };
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
/** De inline ignores als tekst, onder de baseline. */
|
|
372
|
+
function renderInlineIgnores({ inlineIgnores: inline, inlineIgnoresProblem: problem, }) {
|
|
373
|
+
if (inline === null)
|
|
374
|
+
return `Inline @phpstan-ignore comments were not counted: ${problem ?? 'unknown reason'}`;
|
|
375
|
+
if (inline.total === 0)
|
|
376
|
+
return 'No inline @phpstan-ignore comments in the code.';
|
|
377
|
+
const lines = [
|
|
378
|
+
`${String(inline.total)} inline @phpstan-ignore comment(s) in ${String(inline.files)} file(s) — counted in all PHP ` +
|
|
379
|
+
'files git knows, also outside the analysed paths. These are hidden too, and a new baseline does not touch them.',
|
|
380
|
+
];
|
|
381
|
+
if (inline.withoutIdentifier > 0) {
|
|
382
|
+
lines.push(`${String(inline.withoutIdentifier)} have no identifier (@phpstan-ignore-line, -next-line): they ignore every error on their line.`);
|
|
383
|
+
}
|
|
384
|
+
if (inline.withoutReason > 0) {
|
|
385
|
+
lines.push(`${String(inline.withoutReason)} name an identifier but give no reason in parentheses.`);
|
|
386
|
+
}
|
|
387
|
+
if (inline.byIdentifier.length > 0) {
|
|
388
|
+
lines.push('', 'Most ignored inline:', ...inline.byIdentifier.map((row) => ` ${String(row.count).padStart(5)} ${row.identifier}`));
|
|
389
|
+
}
|
|
390
|
+
lines.push('', 'Files with the most:', ...inline.byPath.map((row) => ` ${String(row.count).padStart(5)} ${row.path}`));
|
|
391
|
+
return lines.join('\n');
|
|
392
|
+
}
|
|
308
393
|
/** Hoe lang een patroon mag zijn in de tekst; een baseline-regex kan lang uitvallen. */
|
|
309
394
|
const MAX_PATTERN_CHARS = 200;
|
|
310
395
|
/** De baseline-regels voor één bestand, als tekst. */
|