phpstan-mcp-mx 0.16.0 → 0.18.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 +17 -4
- package/README.md +53 -54
- package/dist/baseline.js +15 -11
- package/dist/baseline.js.map +1 -1
- package/dist/changed.js +11 -11
- package/dist/changed.js.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/defaults.js +11 -11
- package/dist/defaults.js.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/phpstan/output.js +2 -2
- package/dist/phpstan/output.js.map +1 -1
- package/dist/phpstan/parameters.js +10 -10
- package/dist/phpstan/parameters.js.map +1 -1
- package/dist/phpstan/process.js +2 -2
- package/dist/phpstan/process.js.map +1 -1
- package/dist/phpstan/queue.js +3 -3
- package/dist/phpstan/queue.js.map +1 -1
- package/dist/phpstan.d.ts +13 -0
- package/dist/phpstan.js +71 -36
- package/dist/phpstan.js.map +1 -1
- package/dist/project.js +12 -12
- package/dist/project.js.map +1 -1
- package/dist/report.js +31 -31
- package/dist/report.js.map +1 -1
- package/dist/roots.js +3 -3
- package/dist/roots.js.map +1 -1
- package/dist/runner.js +10 -10
- package/dist/runner.js.map +1 -1
- package/dist/server.js +3 -3
- package/dist/server.js.map +1 -1
- package/dist/tmpdir.js +4 -4
- package/dist/tmpdir.js.map +1 -1
- package/dist/tools/analysis.js +38 -38
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/inspect.js +85 -84
- package/dist/tools/inspect.js.map +1 -1
- package/dist/tools/prompts.js +163 -162
- package/dist/tools/prompts.js.map +1 -1
- package/dist/tools/shared.js +38 -38
- package/dist/tools/shared.js.map +1 -1
- package/dist/tools/writes.js +23 -23
- package/dist/tools/writes.js.map +1 -1
- package/dist/unmatched.d.ts +2 -2
- package/dist/unmatched.js +56 -49
- package/dist/unmatched.js.map +1 -1
- package/dist/version.d.ts +17 -4
- package/dist/version.js +27 -4
- package/dist/version.js.map +1 -1
- package/package.json +1 -2
package/dist/unmatched.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
1
2
|
import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
2
3
|
import { join, normalize, relative } from 'node:path';
|
|
3
4
|
import { readIncludedBaselines } from './baseline.js';
|
|
4
|
-
import { PhpstanError, analyse } from './phpstan.js';
|
|
5
|
+
import { PhpstanError, analyse, writeInRunner } from './phpstan.js';
|
|
5
6
|
import { resolveWithin } from './project.js';
|
|
6
7
|
import { DEFAULT_LIMIT, MAX_LIMIT, displayPath, limitMessages } from './report.js';
|
|
7
|
-
import { runnerFor } from './runner.js';
|
|
8
|
+
import { naarOmgeving, runnerFor } from './runner.js';
|
|
8
9
|
import { TmpDirError, projectTmpDir } from './tmpdir.js';
|
|
9
10
|
/** Naam van de tijdelijke config, in de tijdelijke map van het project. */
|
|
10
11
|
const CONFIG_NAME = 'unmatched-ignores.neon';
|
|
@@ -18,34 +19,38 @@ const MAX_PATTERN_CHARS = 300;
|
|
|
18
19
|
*
|
|
19
20
|
* Via een tijdelijke config die de projectconfig includeert, want PHPStan kent er
|
|
20
21
|
* geen vlag voor en neemt maar één `--configuration`. Die config staat in de
|
|
21
|
-
* tijdelijke map van het project
|
|
22
|
-
* read-only tool.
|
|
22
|
+
* tijdelijke map van het project — met een runner die van díe omgeving — en niet in
|
|
23
|
+
* het project zelf: dan blijft dit een read-only tool.
|
|
23
24
|
*
|
|
24
25
|
* Bewust geen `level` en geen `paths`. Op een ander niveau zijn het andere fouten,
|
|
25
26
|
* en bij een deel van het project lijkt alles buiten dat deel verouderd — in beide
|
|
26
27
|
* gevallen klopt de uitslag niet meer met de baseline die je wilt opschonen.
|
|
27
28
|
*/
|
|
28
29
|
export async function findUnmatchedIgnores(project, options = {}, window = {}) {
|
|
29
|
-
// De tijdelijke config staat op de host. Een runner draait PHPStan in een andere
|
|
30
|
-
// omgeving, waar dat pad niet bestaat; hem ín het project zetten zou wel werken,
|
|
31
|
-
// maar dan schrijft een read-only tool in de repository.
|
|
32
|
-
if (runnerFor(project.path) !== null) {
|
|
33
|
-
throw new PhpstanError(`${project.path} draait PHPStan in een eigen omgeving, en daar kan deze tool niet bij de ` +
|
|
34
|
-
'tijdelijke config die hij nodig heeft. Zet reportUnmatchedIgnoredErrors tijdelijk aan ' +
|
|
35
|
-
'in de config van het project en draai analyse_project, of gebruik baseline_summary ' +
|
|
36
|
-
'om te zien wat de baseline bevat.', 'unsupported_with_runner', { hint: 'Gebruik analyse_project met reportUnmatchedIgnoredErrors aan in de projectconfig.' });
|
|
37
|
-
}
|
|
38
30
|
const baselines = readIncludedBaselines(project);
|
|
39
31
|
// Zonder config zijn er ook geen negeerregels: dat is een uitkomst, geen storing.
|
|
40
32
|
if (project.config === null) {
|
|
41
33
|
return buildUnmatchedReport(project.path, emptyResult(project.path), baselines, window, [
|
|
42
|
-
`${project.path}
|
|
34
|
+
`${project.path} has no phpstan.neon(.dist); without a config there are no ignore rules to check.`,
|
|
43
35
|
]);
|
|
44
36
|
}
|
|
45
|
-
|
|
37
|
+
// Met een runner draait PHPStan in een omgeving die de tijdelijke map van de host niet
|
|
38
|
+
// ziet; dan komt de config in de tijdelijke map van díe omgeving, met het include-pad
|
|
39
|
+
// zoals het daar heet. Ín het project zetten zou ook werken, maar dan schrijft een
|
|
40
|
+
// read-only tool in de repository.
|
|
41
|
+
const runner = runnerFor(project.path);
|
|
42
|
+
const config = runner === null
|
|
43
|
+
? writeUnmatchedConfig(project, project.config)
|
|
44
|
+
: await writeInRunner(project, `${CONFIG_PREFIX}-${projectHash(project.path)}.neon`, unmatchedConfig(naarOmgeving(runner, project.path, resolveWithin(project, project.config))), options);
|
|
46
45
|
const result = await analyse(project, { ...options, config });
|
|
47
46
|
return buildUnmatchedReport(project.path, result, baselines, window);
|
|
48
47
|
}
|
|
48
|
+
/** Begin van de naam van de tijdelijke config in de omgeving van een runner. */
|
|
49
|
+
const CONFIG_PREFIX = 'phpstan-mcp-unmatched';
|
|
50
|
+
/** Een korte hash van het projectpad: twee projecten in één omgeving delen anders één bestand. */
|
|
51
|
+
function projectHash(path) {
|
|
52
|
+
return createHash('sha256').update(path).digest('hex').slice(0, 12);
|
|
53
|
+
}
|
|
49
54
|
const emptyResult = (project) => ({
|
|
50
55
|
project,
|
|
51
56
|
findings: [],
|
|
@@ -61,7 +66,7 @@ const emptyResult = (project) => ({
|
|
|
61
66
|
*/
|
|
62
67
|
export function unmatchedConfig(configPath) {
|
|
63
68
|
if (/[\r\n]/.test(configPath)) {
|
|
64
|
-
throw new PhpstanError(`
|
|
69
|
+
throw new PhpstanError(`The path ${JSON.stringify(configPath)} contains a line break and cannot be put in a config.`);
|
|
65
70
|
}
|
|
66
71
|
const quoted = `'${configPath.replace(/'/g, "''").replace(/%/g, '%%')}'`;
|
|
67
72
|
return ['includes:', `\t- ${quoted}`, '', 'parameters:', '\treportUnmatchedIgnoredErrors: true', ''].join('\n');
|
|
@@ -92,7 +97,7 @@ function writeUnmatchedConfig(project, configName) {
|
|
|
92
97
|
renameSync(tmp, file);
|
|
93
98
|
}
|
|
94
99
|
catch (error) {
|
|
95
|
-
throw new TmpDirError(`
|
|
100
|
+
throw new TmpDirError(`The temporary config ${file} could not be written: ` +
|
|
96
101
|
`${error instanceof Error ? error.message : String(error)}.`);
|
|
97
102
|
}
|
|
98
103
|
return file;
|
|
@@ -100,7 +105,7 @@ function writeUnmatchedConfig(project, configName) {
|
|
|
100
105
|
/** Eindigt de melding van een regel die niets meer matcht. */
|
|
101
106
|
const UNMATCHED_SUFFIX = ' was not matched in reported errors.';
|
|
102
107
|
/** Eindigt de melding van een regel die minder vaak voorkomt dan zijn `count`. */
|
|
103
|
-
const COUNT_SUFFIX =
|
|
108
|
+
const COUNT_SUFFIX = / is expected to occur (\d+) times?, but occurred only (\d+) times?\.$/;
|
|
104
109
|
/** Een algemeen patroon, zonder pad: dat komt als algemene fout en niet bij een bestand. */
|
|
105
110
|
const GENERAL_UNMATCHED = /^Ignored error pattern (.+) was not matched in reported errors\.$/s;
|
|
106
111
|
/**
|
|
@@ -141,8 +146,9 @@ export function buildUnmatchedReport(project, result, baselines, window = {}, no
|
|
|
141
146
|
const warnings = limitMessages(result.warnings);
|
|
142
147
|
const allNotices = [...notices];
|
|
143
148
|
if (baselines.unreadable.length > 0) {
|
|
144
|
-
|
|
145
|
-
|
|
149
|
+
const een = baselines.unreadable.length === 1;
|
|
150
|
+
allNotices.push(`${baselines.unreadable.join(', ')} ${een ? 'is' : 'are'} included but cannot be read, so whether ` +
|
|
151
|
+
`a rule comes from ${een ? 'it' : 'them'} is unknown.`);
|
|
146
152
|
}
|
|
147
153
|
return {
|
|
148
154
|
project,
|
|
@@ -179,10 +185,11 @@ function toStale(project, finding, baselines) {
|
|
|
179
185
|
: null;
|
|
180
186
|
if (kind === null)
|
|
181
187
|
return null;
|
|
182
|
-
//
|
|
183
|
-
//
|
|
184
|
-
//
|
|
185
|
-
|
|
188
|
+
// Op de láátste " in path " knippen is betrouwbaarder dan de hele melding met één
|
|
189
|
+
// regex lezen: het patroon zelf kan van alles bevatten. Niet op " in path " plus
|
|
190
|
+
// finding.file: met een runner staat in de melding het pad in de container, terwijl
|
|
191
|
+
// finding.file al naar de host vertaald is — dan werd de markering nooit gevonden.
|
|
192
|
+
const marker = ' in path ';
|
|
186
193
|
const at = finding.message.lastIndexOf(marker);
|
|
187
194
|
const head = at === -1 ? finding.message : finding.message.slice(0, at);
|
|
188
195
|
const tail = at === -1 ? '' : finding.message.slice(at + marker.length);
|
|
@@ -214,48 +221,48 @@ function inBaseline(path, identifier, baselines) {
|
|
|
214
221
|
export function renderUnmatched(report) {
|
|
215
222
|
const lines = [];
|
|
216
223
|
if (report.warnings.length > 0) {
|
|
217
|
-
lines.push('
|
|
224
|
+
lines.push('WARNING — PHPStan reported this alongside the result:');
|
|
218
225
|
for (const warning of report.warnings)
|
|
219
226
|
lines.push(`- ${warning}`);
|
|
220
227
|
if (report.omitted.warnings > 0)
|
|
221
|
-
lines.push(`- (
|
|
222
|
-
lines.push('
|
|
228
|
+
lines.push(`- (${report.omitted.warnings} more message(s) not shown)`);
|
|
229
|
+
lines.push('When the analysis is incomplete, PHPStan can miss stale rules; a short list below then proves nothing.', '');
|
|
223
230
|
}
|
|
224
231
|
if (report.notices.length > 0) {
|
|
225
|
-
lines.push('
|
|
232
|
+
lines.push('Note:');
|
|
226
233
|
for (const notice of report.notices)
|
|
227
234
|
lines.push(`- ${notice}`);
|
|
228
235
|
lines.push('');
|
|
229
236
|
}
|
|
230
237
|
if (report.generalErrors.length > 0) {
|
|
231
|
-
lines.push('
|
|
238
|
+
lines.push('Errors not tied to a file:');
|
|
232
239
|
for (const error of report.generalErrors)
|
|
233
240
|
lines.push(`- ${error}`);
|
|
234
241
|
if (report.omitted.generalErrors > 0)
|
|
235
|
-
lines.push(`- (
|
|
242
|
+
lines.push(`- (${report.omitted.generalErrors} more error(s) not shown)`);
|
|
236
243
|
lines.push('');
|
|
237
244
|
}
|
|
238
245
|
const { totals } = report;
|
|
239
246
|
if (report.page.total === 0 && totals.general === 0) {
|
|
240
247
|
lines.push(report.baselineFiles.length > 0
|
|
241
|
-
? `
|
|
242
|
-
: '
|
|
248
|
+
? `All ignore rules still match; nothing in ${report.baselineFiles.join(', ')} is stale.`
|
|
249
|
+
: 'No stale ignore rules.');
|
|
243
250
|
return lines.join('\n');
|
|
244
251
|
}
|
|
245
252
|
if (report.page.total > 0) {
|
|
246
|
-
const kop = [`${totals.unmatched}
|
|
253
|
+
const kop = [`${totals.unmatched} ignore rule(s) no longer match anything`];
|
|
247
254
|
if (totals.countTooHigh > 0)
|
|
248
|
-
kop.push(`${totals.countTooHigh}
|
|
255
|
+
kop.push(`${totals.countTooHigh} have a count that is too high`);
|
|
249
256
|
lines.push(`${kop.join(', ')}.`);
|
|
250
257
|
if (report.baselineFiles.length > 0) {
|
|
251
|
-
lines.push(`${totals.inBaseline}
|
|
258
|
+
lines.push(`${totals.inBaseline} of them are in ${report.baselineFiles.join(', ')}.`);
|
|
252
259
|
}
|
|
253
260
|
if (report.byPath.length > 1) {
|
|
254
|
-
lines.push('', '
|
|
261
|
+
lines.push('', 'Most per file:', ...report.byPath.map((row) => ` ${pad(row.count)} ${row.path}`));
|
|
255
262
|
}
|
|
256
263
|
const from = report.page.offset + 1;
|
|
257
264
|
const to = report.page.offset + report.page.returned;
|
|
258
|
-
lines.push('', `
|
|
265
|
+
lines.push('', `Rules ${from}-${to} of ${report.page.total}:`);
|
|
259
266
|
let current = null;
|
|
260
267
|
for (const entry of report.entries) {
|
|
261
268
|
if (entry.path !== current) {
|
|
@@ -264,26 +271,26 @@ export function renderUnmatched(report) {
|
|
|
264
271
|
}
|
|
265
272
|
const aantal = entry.kind === 'countTooHigh'
|
|
266
273
|
? entry.expected === null
|
|
267
|
-
? ' (
|
|
268
|
-
: ` (count ${entry.expected},
|
|
274
|
+
? ' (count too high)'
|
|
275
|
+
: ` (count ${entry.expected}, still occurs ${entry.occurred ?? '?'} time(s))`
|
|
269
276
|
: '';
|
|
270
|
-
const herkomst = entry.inBaseline === false ? ' [
|
|
277
|
+
const herkomst = entry.inBaseline === false ? ' [not from the baseline]' : '';
|
|
271
278
|
lines.push(` ${entry.identifier ?? '-'} ${entry.pattern}${aantal}${herkomst}`);
|
|
272
279
|
}
|
|
273
280
|
}
|
|
274
281
|
if (report.general.length > 0) {
|
|
275
|
-
lines.push('', `${totals.general}
|
|
276
|
-
'baseline
|
|
282
|
+
lines.push('', `${totals.general} pattern(s) without a path no longer match anything. They are not in the ` +
|
|
283
|
+
'baseline but in ignoreErrors of the config, or of a config that a package ships:', ...report.general.map((pattern) => `- ${pattern}`));
|
|
277
284
|
if (report.omitted.general > 0)
|
|
278
|
-
lines.push(`- (
|
|
285
|
+
lines.push(`- (${report.omitted.general} more not shown)`);
|
|
279
286
|
}
|
|
280
|
-
lines.push('', '
|
|
281
|
-
? `- generate_baseline
|
|
282
|
-
'
|
|
283
|
-
: '- generate_baseline
|
|
287
|
+
lines.push('', 'What you can do:', '- A rule that no longer matches anything belongs to an error that has been fixed; it can go.', '- For a count that is too high, lower `count` to what still occurs.', totals.otherFindings > 0
|
|
288
|
+
? `- generate_baseline does both in one go, but also writes the ${totals.otherFindings} current ` +
|
|
289
|
+
'finding(s) into it. Fix those first, or you hide them in the baseline.'
|
|
290
|
+
: '- generate_baseline does both in one go, if writing is enabled on this server.');
|
|
284
291
|
if (report.page.hasMore) {
|
|
285
292
|
const to = report.page.offset + report.page.returned;
|
|
286
|
-
lines.push('',
|
|
293
|
+
lines.push('', `${report.page.total - to} more rule(s). Call the same tool again with offset=${to} for the rest.`);
|
|
287
294
|
}
|
|
288
295
|
return lines.join('\n');
|
|
289
296
|
}
|
|
@@ -298,7 +305,7 @@ function tally(entries) {
|
|
|
298
305
|
.map(([path, count]) => ({ path, count }));
|
|
299
306
|
}
|
|
300
307
|
function shorten(pattern) {
|
|
301
|
-
return pattern.length <= MAX_PATTERN_CHARS ? pattern : `${pattern.slice(0, MAX_PATTERN_CHARS)}… (
|
|
308
|
+
return pattern.length <= MAX_PATTERN_CHARS ? pattern : `${pattern.slice(0, MAX_PATTERN_CHARS)}… (truncated)`;
|
|
302
309
|
}
|
|
303
310
|
function clamp(value, low, high) {
|
|
304
311
|
return Math.min(Math.max(Math.trunc(value), low), high);
|
package/dist/unmatched.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unmatched.js","sourceRoot":"","sources":["../src/unmatched.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unmatched.js","sourceRoot":"","sources":["../src/unmatched.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Versie van de server zoals gemeld in de MCP-handshake
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Versie van de server zoals gemeld in de MCP-handshake, uit package.json.
|
|
3
|
+
*
|
|
4
|
+
* Gelezen bij het starten en niet geïmporteerd: een JSON-import lost TypeScript op bij
|
|
5
|
+
* het compileren en neemt package.json dan mee naar dist/, waarna hij naar het
|
|
6
|
+
* verkeerde bestand wijst. Tot 0.16 stond de versie hier daarom met de hand, bijgewerkt
|
|
7
|
+
* door een apart script in de release — drie onderdelen voor één getal. `src/` en `dist/`
|
|
8
|
+
* liggen allebei één map onder de pakketroot, dus `../package.json` vanaf dit bestand is
|
|
9
|
+
* in de tests, na het bouwen én in een geïnstalleerd pakket hetzelfde bestand.
|
|
5
10
|
*
|
|
6
11
|
* Staat los van server.ts omdat tools.ts hem ook nodig heeft, en server.ts
|
|
7
12
|
* importeert tools.ts — dat zou een cyclus zijn.
|
|
8
13
|
*/
|
|
9
|
-
export declare const VERSION
|
|
14
|
+
export declare const VERSION: string;
|
|
15
|
+
/**
|
|
16
|
+
* Leest `version` uit het package.json op `url`, of `'unknown'` als dat niet lukt.
|
|
17
|
+
*
|
|
18
|
+
* Terugvallen en niet gooien: dit draait bij het importeren, en een exception daar legt
|
|
19
|
+
* de hele server plat voor een getal dat alleen gemeld wordt. `unknown` staat wél
|
|
20
|
+
* zichtbaar in de opstartregel en in `server_config`, dus stil is het niet.
|
|
21
|
+
*/
|
|
22
|
+
export declare function readVersion(url: URL): string;
|
package/dist/version.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
1
2
|
/**
|
|
2
|
-
* Versie van de server zoals gemeld in de MCP-handshake
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* Versie van de server zoals gemeld in de MCP-handshake, uit package.json.
|
|
4
|
+
*
|
|
5
|
+
* Gelezen bij het starten en niet geïmporteerd: een JSON-import lost TypeScript op bij
|
|
6
|
+
* het compileren en neemt package.json dan mee naar dist/, waarna hij naar het
|
|
7
|
+
* verkeerde bestand wijst. Tot 0.16 stond de versie hier daarom met de hand, bijgewerkt
|
|
8
|
+
* door een apart script in de release — drie onderdelen voor één getal. `src/` en `dist/`
|
|
9
|
+
* liggen allebei één map onder de pakketroot, dus `../package.json` vanaf dit bestand is
|
|
10
|
+
* in de tests, na het bouwen én in een geïnstalleerd pakket hetzelfde bestand.
|
|
5
11
|
*
|
|
6
12
|
* Staat los van server.ts omdat tools.ts hem ook nodig heeft, en server.ts
|
|
7
13
|
* importeert tools.ts — dat zou een cyclus zijn.
|
|
8
14
|
*/
|
|
9
|
-
export const VERSION = '
|
|
15
|
+
export const VERSION = readVersion(new URL('../package.json', import.meta.url));
|
|
16
|
+
/**
|
|
17
|
+
* Leest `version` uit het package.json op `url`, of `'unknown'` als dat niet lukt.
|
|
18
|
+
*
|
|
19
|
+
* Terugvallen en niet gooien: dit draait bij het importeren, en een exception daar legt
|
|
20
|
+
* de hele server plat voor een getal dat alleen gemeld wordt. `unknown` staat wél
|
|
21
|
+
* zichtbaar in de opstartregel en in `server_config`, dus stil is het niet.
|
|
22
|
+
*/
|
|
23
|
+
export function readVersion(url) {
|
|
24
|
+
try {
|
|
25
|
+
const pakket = JSON.parse(readFileSync(url, 'utf8'));
|
|
26
|
+
const versie = pakket?.version;
|
|
27
|
+
return typeof versie === 'string' && versie !== '' ? versie : 'unknown';
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return 'unknown';
|
|
31
|
+
}
|
|
32
|
+
}
|
|
10
33
|
//# sourceMappingURL=version.js.map
|
package/dist/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,GAAQ;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAI,MAAuC,EAAE,OAAO,CAAC;QACjE,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "phpstan-mcp-mx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "MCP server that exposes PHPStan as tools, for several PHP projects at once",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -58,7 +58,6 @@
|
|
|
58
58
|
"@eslint/js": "^10.0.1",
|
|
59
59
|
"@forge-for-gitea/semantic-release-gitea": "^1.2.0",
|
|
60
60
|
"@semantic-release/changelog": "^7.0.0",
|
|
61
|
-
"@semantic-release/exec": "^7.1.0",
|
|
62
61
|
"@semantic-release/git": "^11.0.1",
|
|
63
62
|
"@types/node": "^24.13.4",
|
|
64
63
|
"@vitest/coverage-v8": "^5.0.0",
|