phpstan-mcp-mx 0.21.1 → 0.23.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.
Files changed (98) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/README.md +128 -79
  3. package/dist/baseline.d.ts +1 -1
  4. package/dist/baseline.js +27 -15
  5. package/dist/baseline.js.map +1 -1
  6. package/dist/changed.d.ts +5 -5
  7. package/dist/changed.js +68 -35
  8. package/dist/changed.js.map +1 -1
  9. package/dist/compare.d.ts +3 -3
  10. package/dist/compare.js +14 -8
  11. package/dist/compare.js.map +1 -1
  12. package/dist/composer.d.ts +2 -2
  13. package/dist/composer.js +49 -27
  14. package/dist/composer.js.map +1 -1
  15. package/dist/config.d.ts +4 -3
  16. package/dist/config.js +11 -7
  17. package/dist/config.js.map +1 -1
  18. package/dist/defaults.d.ts +1 -1
  19. package/dist/defaults.js +3 -2
  20. package/dist/defaults.js.map +1 -1
  21. package/dist/dumptype.d.ts +1 -1
  22. package/dist/dumptype.js +20 -12
  23. package/dist/dumptype.js.map +1 -1
  24. package/dist/failure.d.ts +2 -2
  25. package/dist/failure.js.map +1 -1
  26. package/dist/index.js +27 -4
  27. package/dist/index.js.map +1 -1
  28. package/dist/php.d.ts +46 -0
  29. package/dist/php.js +100 -0
  30. package/dist/php.js.map +1 -0
  31. package/dist/phpstan/error.js.map +1 -1
  32. package/dist/phpstan/output.d.ts +2 -2
  33. package/dist/phpstan/output.js +16 -10
  34. package/dist/phpstan/output.js.map +1 -1
  35. package/dist/phpstan/parameters.d.ts +2 -2
  36. package/dist/phpstan/parameters.js +1 -1
  37. package/dist/phpstan/parameters.js.map +1 -1
  38. package/dist/phpstan/process.d.ts +16 -5
  39. package/dist/phpstan/process.js +48 -19
  40. package/dist/phpstan/process.js.map +1 -1
  41. package/dist/phpstan/queue.d.ts +1 -1
  42. package/dist/phpstan/queue.js +6 -4
  43. package/dist/phpstan/queue.js.map +1 -1
  44. package/dist/phpstan.d.ts +6 -6
  45. package/dist/phpstan.js +51 -31
  46. package/dist/phpstan.js.map +1 -1
  47. package/dist/project.d.ts +7 -3
  48. package/dist/project.js +60 -21
  49. package/dist/project.js.map +1 -1
  50. package/dist/report.d.ts +5 -5
  51. package/dist/report.js +47 -28
  52. package/dist/report.js.map +1 -1
  53. package/dist/root-source.d.ts +43 -0
  54. package/dist/root-source.js +124 -0
  55. package/dist/root-source.js.map +1 -0
  56. package/dist/roots.d.ts +13 -1
  57. package/dist/roots.js +24 -7
  58. package/dist/roots.js.map +1 -1
  59. package/dist/runner.d.ts +3 -3
  60. package/dist/runner.js +17 -10
  61. package/dist/runner.js.map +1 -1
  62. package/dist/runs.d.ts +3 -3
  63. package/dist/runs.js +9 -6
  64. package/dist/runs.js.map +1 -1
  65. package/dist/schema-dialect.d.ts +2 -2
  66. package/dist/schema-dialect.js +8 -5
  67. package/dist/schema-dialect.js.map +1 -1
  68. package/dist/server.d.ts +3 -2
  69. package/dist/server.js +10 -6
  70. package/dist/server.js.map +1 -1
  71. package/dist/tmpdir.d.ts +3 -3
  72. package/dist/tmpdir.js +10 -7
  73. package/dist/tmpdir.js.map +1 -1
  74. package/dist/tools/analysis.d.ts +4 -4
  75. package/dist/tools/analysis.js +7 -5
  76. package/dist/tools/analysis.js.map +1 -1
  77. package/dist/tools/inspect.d.ts +7 -7
  78. package/dist/tools/inspect.js +111 -45
  79. package/dist/tools/inspect.js.map +1 -1
  80. package/dist/tools/prompts.d.ts +5 -5
  81. package/dist/tools/prompts.js +15 -15
  82. package/dist/tools/prompts.js.map +1 -1
  83. package/dist/tools/shared.d.ts +4 -4
  84. package/dist/tools/shared.js +13 -11
  85. package/dist/tools/shared.js.map +1 -1
  86. package/dist/tools/writes.d.ts +3 -3
  87. package/dist/tools/writes.js +4 -4
  88. package/dist/tools/writes.js.map +1 -1
  89. package/dist/tools.d.ts +2 -2
  90. package/dist/tools.js +2 -1
  91. package/dist/tools.js.map +1 -1
  92. package/dist/unmatched.d.ts +3 -3
  93. package/dist/unmatched.js +35 -20
  94. package/dist/unmatched.js.map +1 -1
  95. package/dist/version.d.ts +2 -2
  96. package/dist/version.js +2 -2
  97. package/dist/version.js.map +1 -1
  98. package/package.json +1 -1
package/dist/compare.js CHANGED
@@ -7,7 +7,7 @@ const MAX_NOT_COMPARED_FILES = 10;
7
7
  /**
8
8
  * Legt een analyse naast een eerdere en telt wat er opgelost, nieuw en nog open is.
9
9
  *
10
- * Gekoppeld op bestand, identifier en melding — niet op het regelnummer: een reparatie
10
+ * Gekoppeld op bestand, identifier en melding niet op het regelnummer: een reparatie
11
11
  * verschuift regels, en dan zou elke bevinding eronder als opgelost én nieuw tellen.
12
12
  * Om die reden negeert PHPStans eigen baseline de regel ook. Nagemeten: drie lege regels
13
13
  * bovenin het drukste bestand van `lasouris-lease-shared` verschoven alle elf bevindingen
@@ -19,7 +19,7 @@ const MAX_NOT_COMPARED_FILES = 10;
19
19
  *
20
20
  * Alleen bestanden die beide analyses dekten doen mee. Bij `analyse_changed` volgt de
21
21
  * lijst uit git: wie tijdens een reparatie een tweede bestand aanraakt, krijgt dat bestand
22
- * erbij, en diens bestaande fouten zouden anders als nieuw tellen — een antwoord dat klopt
22
+ * erbij, en diens bestaande fouten zouden anders als nieuw tellen een antwoord dat klopt
23
23
  * maar misleidt.
24
24
  */
25
25
  export function compareRuns(project, before, after, meta) {
@@ -39,10 +39,12 @@ export function compareRuns(project, before, after, meta) {
39
39
  group[side].push(finding.line);
40
40
  groups.set(key, group);
41
41
  };
42
- for (const finding of before.result.findings)
42
+ for (const finding of before.result.findings) {
43
43
  add(finding, 'before');
44
- for (const finding of after.result.findings)
44
+ }
45
+ for (const finding of after.result.findings) {
45
46
  add(finding, 'after');
47
+ }
46
48
  const fixed = [];
47
49
  const added = [];
48
50
  let remaining = 0;
@@ -55,10 +57,12 @@ export function compareRuns(project, before, after, meta) {
55
57
  count,
56
58
  lines: [...lines].sort(byLine),
57
59
  });
58
- if (group.before.length > group.after.length)
60
+ if (group.before.length > group.after.length) {
59
61
  fixed.push(entry(group.before.length - group.after.length, group.before));
60
- if (group.after.length > group.before.length)
62
+ }
63
+ if (group.after.length > group.before.length) {
61
64
  added.push(entry(group.after.length - group.before.length, group.after));
65
+ }
62
66
  }
63
67
  fixed.sort(byPlace);
64
68
  added.sort(byPlace);
@@ -79,10 +83,12 @@ export function compareRuns(project, before, after, meta) {
79
83
  };
80
84
  }
81
85
  function equalScopes(a, b) {
82
- if (a === null || b === null)
86
+ if (a === null || b === null) {
83
87
  return a === b;
84
- if (a.length !== b.length)
88
+ }
89
+ if (a.length !== b.length) {
85
90
  return false;
91
+ }
86
92
  const set = new Set(a);
87
93
  return b.every((path) => set.has(path));
88
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../src/compare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compare.js","sourceRoot":"","sources":["../src/compare.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ export interface Invocation {
30
30
  * en `code:analyze:strict`, is een lijst met `Composer\Config::disableProcessTimeout`
31
31
  * ervoor, en schrijft `--memory-limit 1G` met een spatie. Herkennen gaat dus op het
32
32
  * commando, niet op de naam. Een script via `make` of via een ander script (`@naam`) is
33
- * niet te lezen zonder het uit te voeren, en dat gebeurt hier nooit — die vallen weg.
33
+ * niet te lezen zonder het uit te voeren, en dat gebeurt hier nooit die vallen weg.
34
34
  */
35
35
  export declare function readComposerScripts(project: string, server: ServerInvocation): {
36
36
  composerScripts: ComposerScript[] | null;
@@ -61,7 +61,7 @@ export interface MissingExtension {
61
61
  * Welke frameworks uit `composer.lock` hun extensie missen. Wat geladen is, komt uit PHPStans
62
62
  * eigen diagnose ("Included configs from Composer packages"): die noemt ook een extensie die
63
63
  * zonder extension-installer met de hand in de config staat. Is de uitvoer niet te lezen —
64
- * een andere PHPStan-versie — dan null: niet te zeggen, en een vals alarm is erger dan stilte.
64
+ * een andere PHPStan-versie dan null: niet te zeggen, en een vals alarm is erger dan stilte.
65
65
  */
66
66
  export declare function findMissingExtensions(project: string, diagnoseOutput: string): MissingExtension[] | null;
67
67
  /** De ontbrekende extensies als tekst; leeg als er niets ontbreekt of het niet te zeggen is. */
package/dist/composer.js CHANGED
@@ -23,7 +23,7 @@ const DISCOVERED = ['phpstan.neon', 'phpstan.neon.dist', 'phpstan.dist.neon'];
23
23
  * en `code:analyze:strict`, is een lijst met `Composer\Config::disableProcessTimeout`
24
24
  * ervoor, en schrijft `--memory-limit 1G` met een spatie. Herkennen gaat dus op het
25
25
  * commando, niet op de naam. Een script via `make` of via een ander script (`@naam`) is
26
- * niet te lezen zonder het uit te voeren, en dat gebeurt hier nooit — die vallen weg.
26
+ * niet te lezen zonder het uit te voeren, en dat gebeurt hier nooit die vallen weg.
27
27
  */
28
28
  export function readComposerScripts(project, server) {
29
29
  let scripts;
@@ -36,8 +36,9 @@ export function readComposerScripts(project, server) {
36
36
  composerScriptsProblem: `composer.json could not be read: ${error instanceof Error ? error.message : String(error)}`,
37
37
  };
38
38
  }
39
- if (typeof scripts !== 'object' || scripts === null)
39
+ if (typeof scripts !== 'object' || scripts === null) {
40
40
  return { composerScripts: [], composerScriptsProblem: null };
41
+ }
41
42
  const found = [];
42
43
  for (const [name, value] of Object.entries(scripts)) {
43
44
  const commands = typeof value === 'string' ? [value] : Array.isArray(value) ? value.filter((v) => typeof v === 'string') : [];
@@ -45,8 +46,9 @@ export function readComposerScripts(project, server) {
45
46
  for (const segment of splitCommands(command)) {
46
47
  const tokens = tokenize(segment);
47
48
  const start = analyseStart(tokens);
48
- if (start === null)
49
+ if (start === null) {
49
50
  continue;
51
+ }
50
52
  const invocation = parseInvocation(tokens.slice(start.args));
51
53
  found.push({
52
54
  name,
@@ -66,8 +68,9 @@ export function splitCommands(command) {
66
68
  for (let i = 0; i < command.length; i++) {
67
69
  const char = command[i] ?? '';
68
70
  if (quote !== null) {
69
- if (char === quote)
71
+ if (char === quote) {
70
72
  quote = null;
73
+ }
71
74
  current += char;
72
75
  continue;
73
76
  }
@@ -79,8 +82,9 @@ export function splitCommands(command) {
79
82
  if (char === ';' || char === '|' || (char === '&' && command[i + 1] === '&')) {
80
83
  parts.push(current);
81
84
  current = '';
82
- if (command[i + 1] === char)
85
+ if (command[i + 1] === char) {
83
86
  i++;
87
+ }
84
88
  continue;
85
89
  }
86
90
  current += char;
@@ -96,10 +100,12 @@ export function tokenize(segment) {
96
100
  let quote = null;
97
101
  for (const char of segment) {
98
102
  if (quote !== null) {
99
- if (char === quote)
103
+ if (char === quote) {
100
104
  quote = null;
101
- else
105
+ }
106
+ else {
102
107
  current += char;
108
+ }
103
109
  continue;
104
110
  }
105
111
  if (char === '"' || char === "'") {
@@ -107,8 +113,9 @@ export function tokenize(segment) {
107
113
  started = true;
108
114
  }
109
115
  else if (/\s/.test(char)) {
110
- if (started)
116
+ if (started) {
111
117
  tokens.push(current);
118
+ }
112
119
  current = '';
113
120
  started = false;
114
121
  }
@@ -117,8 +124,9 @@ export function tokenize(segment) {
117
124
  started = true;
118
125
  }
119
126
  }
120
- if (started)
127
+ if (started) {
121
128
  tokens.push(current);
129
+ }
122
130
  return tokens;
123
131
  }
124
132
  /**
@@ -128,8 +136,9 @@ export function tokenize(segment) {
128
136
  */
129
137
  function analyseStart(tokens) {
130
138
  const binary = tokens.findIndex((token) => /(^|[/\\])phpstan(\.phar)?$/.test(token));
131
- if (binary === -1)
139
+ if (binary === -1) {
132
140
  return null;
141
+ }
133
142
  const sub = tokens[binary + 1];
134
143
  return sub === 'analyse' || sub === 'analyze' ? { binary, args: binary + 2 } : null;
135
144
  }
@@ -161,18 +170,23 @@ export function parseInvocation(args) {
161
170
  // `--optie=waarde`, `--optie waarde`, `-c waarde` en `-cwaarde`.
162
171
  const eq = arg.indexOf('=');
163
172
  const name = arg.startsWith('--') ? (eq === -1 ? arg : arg.slice(0, eq)) : arg.slice(0, 2);
164
- if (!(name in VALUE_OPTIONS))
173
+ if (!(name in VALUE_OPTIONS)) {
165
174
  continue;
175
+ }
166
176
  const field = VALUE_OPTIONS[name] ?? null;
167
177
  let value;
168
- if (arg.startsWith('--') && eq !== -1)
178
+ if (arg.startsWith('--') && eq !== -1) {
169
179
  value = arg.slice(eq + 1);
170
- else if (!arg.startsWith('--') && arg.length > 2)
180
+ }
181
+ else if (!arg.startsWith('--') && arg.length > 2) {
171
182
  value = arg.slice(2);
172
- else
183
+ }
184
+ else {
173
185
  value = args[++i];
174
- if (field !== null && field !== 'paths' && field !== 'writes' && value !== undefined)
186
+ }
187
+ if (field !== null && field !== 'paths' && field !== 'writes' && value !== undefined) {
175
188
  found[field] = value;
189
+ }
176
190
  }
177
191
  found.paths = paths;
178
192
  return found;
@@ -220,30 +234,34 @@ export function compareWithServer(project, invocation, server) {
220
234
  }
221
235
  /** De scripts als tekst, onder de rest van de diagnose. Leeg als er geen enkel is. */
222
236
  export function renderComposerScripts(scripts, problem) {
223
- if (scripts === null)
237
+ if (scripts === null) {
224
238
  return `Composer scripts: not available. ${problem ?? ''}`.trim();
225
- if (scripts.length === 0)
239
+ }
240
+ if (scripts.length === 0) {
226
241
  return '';
242
+ }
227
243
  const lines = ['Composer scripts that run PHPStan:'];
228
244
  for (const script of scripts) {
229
245
  lines.push(`- ${script.name}: ${script.command}`);
230
- if (script.differences.length === 0)
246
+ if (script.differences.length === 0) {
231
247
  lines.push(' runs PHPStan the same way as this server');
232
- for (const difference of script.differences)
248
+ }
249
+ for (const difference of script.differences) {
233
250
  lines.push(` ${difference}`);
251
+ }
234
252
  }
235
253
  return lines.join('\n');
236
254
  }
237
255
  /**
238
- * Frameworks waarvan PHPStan de magie niet ziet zonder extensie — en die dan vals-positieven
239
- * geven (`Access to an undefined property App\Models\User::$name`) — met de extensie die
256
+ * Frameworks waarvan PHPStan de magie niet ziet zonder extensie en die dan vals-positieven
257
+ * geven (`Access to an undefined property App\Models\User::$name`) met de extensie die
240
258
  * daarvoor bestaat. Nagemeten op `cms/app`, level 5: zonder Larastan 187 bevindingen tegen 147
241
259
  * met, vooral `property.notFound` (+16) en `method.notFound` (+18). Een eigen lijst, maar een kleine en stabiele: pakketnamen,
242
260
  * geen uitleg die bij een release afdrijft.
243
261
  *
244
262
  * Bewust zonder testtools (`phpunit`, `mockery`, `webmozart/assert`). Nagemeten op vijf echte
245
263
  * projecten: die staan in elk Laravel-project, vaak als afhankelijkheid van een
246
- * afhankelijkheid, en hun extensie ontbrak overal — een melding bij elk project is ruis, en
264
+ * afhankelijkheid, en hun extensie ontbrak overal een melding bij elk project is ruis, en
247
265
  * geen van de bevindingen daar had er iets mee te maken.
248
266
  */
249
267
  const FRAMEWORK_EXTENSIONS = [
@@ -252,7 +270,9 @@ const FRAMEWORK_EXTENSIONS = [
252
270
  extensions: ['larastan/larastan', 'nunomaduro/larastan'],
253
271
  sees: "Laravel's magic (Eloquent properties and relations, facades, the container)",
254
272
  },
255
- { framework: 'doctrine/orm', extensions: ['phpstan/phpstan-doctrine'], sees: 'Doctrine repositories, entities and DQL' },
273
+ { framework: 'doctrine/orm',
274
+ extensions: ['phpstan/phpstan-doctrine'],
275
+ sees: 'Doctrine repositories, entities and DQL' },
256
276
  {
257
277
  framework: 'symfony/framework-bundle',
258
278
  extensions: ['phpstan/phpstan-symfony'],
@@ -263,15 +283,16 @@ const FRAMEWORK_EXTENSIONS = [
263
283
  * Welke frameworks uit `composer.lock` hun extensie missen. Wat geladen is, komt uit PHPStans
264
284
  * eigen diagnose ("Included configs from Composer packages"): die noemt ook een extensie die
265
285
  * zonder extension-installer met de hand in de config staat. Is de uitvoer niet te lezen —
266
- * een andere PHPStan-versie — dan null: niet te zeggen, en een vals alarm is erger dan stilte.
286
+ * een andere PHPStan-versie dan null: niet te zeggen, en een vals alarm is erger dan stilte.
267
287
  */
268
288
  export function findMissingExtensions(project, diagnoseOutput) {
269
- // Nagemeten: zonder één enkele config uit een pakket laat PHPStan de hele sectie weg — juist
289
+ // Nagemeten: zonder één enkele config uit een pakket laat PHPStan de hele sectie weg juist
270
290
  // het geval waar het om gaat. De regel "Extension installer:" komt uit hetzelfde deel van de
271
291
  // diagnose en staat er dan wél; alleen als ook die ontbreekt, is het een andere uitvoer.
272
292
  const section = /Included configs from Composer packages:\n([\s\S]*?)(?:\n\s*\n|$)/.exec(diagnoseOutput);
273
- if (section === null && !/^Extension installer:/m.test(diagnoseOutput))
293
+ if (section === null && !/^Extension installer:/m.test(diagnoseOutput)) {
274
294
  return null;
295
+ }
275
296
  const loaded = new Set((section?.[1] ?? '')
276
297
  .split('\n')
277
298
  .map((line) => line.trim().split(/\s+/)[0] ?? '')
@@ -299,8 +320,9 @@ export function findMissingExtensions(project, diagnoseOutput) {
299
320
  }
300
321
  /** De ontbrekende extensies als tekst; leeg als er niets ontbreekt of het niet te zeggen is. */
301
322
  export function renderMissingExtensions(missing) {
302
- if (missing === null || missing.length === 0)
323
+ if (missing === null || missing.length === 0) {
303
324
  return '';
325
+ }
304
326
  return [
305
327
  'Missing PHPStan extensions:',
306
328
  ...missing.map((entry) => `- ${entry.framework} is installed, but ${entry.extension} is not loaded, so PHPStan does not see ` +
@@ -1 +1 @@
1
- {"version":3,"file":"composer.js","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"composer.js","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AA6BxD,mEAAmE;AACnE,MAAM,aAAa,GAA4C;IAC7D,IAAI,EAAE,eAAe;IACrB,iBAAiB,EAAE,eAAe;IAClC,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,OAAO;IAClB,gBAAgB,EAAE,aAAa;IAC/B,IAAI,EAAE,cAAc;IACpB,iBAAiB,EAAE,cAAc;IACjC,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;CACrB,CAAC;AAEF,4FAA4F;AAC5F,MAAM,UAAU,GAAG,CAAC,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAAwB;IAGxB,IAAI,OAAgB,CAAC;IAErB,IAAI,CAAC;QACH,OAAO,GAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAA2B,CAAC,OAAO,CAAC;IAChH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;SACrH,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,KAAK,GAAqB,EAAE,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE9H,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,KAAK,MAAM,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACjC,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;gBAEnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,SAAS;gBACX,CAAC;gBAED,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI;oBACJ,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC7C,WAAW,EAAE,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC;iBAC5D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;AAClE,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,aAAa,CAAC,OAAe;IAE3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,KAAK,GAAkB,IAAI,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE9B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;YAED,OAAO,IAAI,IAAI,CAAC;YAChB,SAAS;QACX,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,IAAI,IAAI,CAAC;YAChB,SAAS;QACX,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC7E,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,GAAG,EAAE,CAAC;YAEb,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC5B,CAAC,EAAE,CAAC;YACN,CAAC;YAED,SAAS;QACX,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,QAAQ,CAAC,OAAe;IAEtC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,KAAK,GAAkB,IAAI,CAAC;IAEhC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YAED,SAAS;QACX,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YAED,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,CAAC;YAChB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAyB;IAE7C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAErF,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,eAAe,CAAC,IAAuB;IAErD,MAAM,KAAK,GAAyD;QAClE,aAAa,EAAE,IAAI;QACnB,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,KAAK;KACd,CAAC;IACF,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE1B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM;QACR,CAAC;QAED,IAAI,GAAG,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YAC7D,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,SAAS;QACX,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QAED,iEAAiE;QACjE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE3F,IAAI,CAAC,CAAC,IAAI,IAAI,aAAa,CAAC,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;QAC1C,IAAI,KAAyB,CAAC;QAE9B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACtC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACrF,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,UAAsB,EAAE,MAAwB;IAEjG,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,CAAC,2EAA2E,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACxF,6FAA6F;IAC7F,8FAA8F;IAC9F,mFAAmF;IACnF,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACtF,MAAM,YAAY,GAAG,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC;IAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC;IACjD,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAE,KAAc,EAAE,EAAE,CAC3D,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,4BAA4B,CAAC;IAEpF,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACzJ,WAAW,CAAC,IAAI,CACd,mBAAmB,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,aAAa,KAAK,IAAI,CAAC,eAAe;YAC3F,GAAG,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE;YACrD,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,YAAY,2BAA2B,CAAC,CAC5F,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;IAEnE,IAAI,YAAY,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QACjE,WAAW,CAAC,IAAI,CACd,QAAQ,UAAU,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,kBAAkB,UAAU,CAAC,WAAW,EAAE,IAAI;YAC9H,cAAc,MAAM,CAAC,WAAW,IAAI,wBAAwB,EAAE;YAC9D,CAAC,UAAU,CAAC,WAAW,KAAK,IAAI;gBAC9B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,wBAAwB,UAAU,CAAC,WAAW,uDAAuD,CAAC,CAC7G,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAC9B,WAAW,CAAC,IAAI,CACd,cAAc,UAAU,CAAC,KAAK,6DAA6D,UAAU,CAAC,KAAK,YAAY,CACxH,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,WAAW,CAAC,IAAI,CACd,YAAY,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gFAAgF,CACxH,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QACrC,WAAW,CAAC,IAAI,CACd,SAAS,UAAU,CAAC,YAAY,gFAAgF,CACjH,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,qBAAqB,CAAC,OAAyC,EAAE,OAAsB;IAErG,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,oCAAoC,OAAO,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAErD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAElD,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC7D,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,OAAO,UAAU,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,oBAAoB,GAAkF;IAC1G;QACE,SAAS,EAAE,mBAAmB;QAC9B,UAAU,EAAE,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;QACxD,IAAI,EAAE,6EAA6E;KACpF;IACD,EAAE,SAAS,EAAE,cAAc;QACzB,UAAU,EAAE,CAAC,0BAA0B,CAAC;QACxC,IAAI,EAAE,yCAAyC,EAAE;IACnD;QACE,SAAS,EAAE,0BAA0B;QACrC,UAAU,EAAE,CAAC,yBAAyB,CAAC;QACvC,IAAI,EAAE,wDAAwD;KAC/D;CACF,CAAC;AAWF;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,cAAsB;IAE3E,2FAA2F;IAC3F,6FAA6F;IAC7F,yFAAyF;IACzF,MAAM,OAAO,GAAG,mEAAmE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAEzG,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACjB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAChD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CACxC,CAAC;IAEF,IAAI,SAAsB,CAAC;IAE3B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAG3E,CAAC;QACF,SAAS,GAAG,IAAI,GAAG,CACjB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;aACxD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC;aACtB,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAC9D,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,oBAAoB,CAAC,MAAM,CAChC,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAC1G,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACd,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/E,OAAO;YACL,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;YAC/C,SAAS,EAAE,OAAO,KAAK,SAAS;YAChC,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,uBAAuB,CAAC,OAA2C;IAEjF,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,6BAA6B;QAC7B,GAAG,OAAO,CAAC,GAAG,CACZ,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,KAAK,CAAC,SAAS,sBAAsB,KAAK,CAAC,SAAS,0CAA0C;YACnG,GAAG,KAAK,CAAC,IAAI,gFAAgF;YAC7F,CAAC,KAAK,CAAC,SAAS;gBACd,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,gHAAgH;gBACpI,CAAC,CAAC,WAAW,KAAK,CAAC,SAAS,uBAAuB,CAAC,CACzD;KACF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
package/dist/config.d.ts CHANGED
@@ -16,11 +16,12 @@ export interface FileConfig {
16
16
  readonly maxParallel?: number;
17
17
  readonly tmpDir?: string;
18
18
  readonly allowWrites?: boolean;
19
+ readonly php?: string;
19
20
  readonly runners?: Record<string, unknown>;
20
21
  readonly projects?: Record<string, unknown>;
21
22
  }
22
23
  /**
23
- * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` — de
24
+ * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` de
24
25
  * plek waar dit soort bestanden op Linux en macOS gezocht wordt.
25
26
  */
26
27
  export declare function configPath(env?: NodeJS.ProcessEnv): string;
@@ -30,7 +31,7 @@ export declare function configPath(env?: NodeJS.ProcessEnv): string;
30
31
  * Ontbreken is uitdrukkelijk géén fout: zonder bestand geldt alleen wat er in de
31
32
  * omgeving staat, en zonder allebei heeft de server geen roots en weigert hij alles.
32
33
  * Dat is de veilige kant. Een bestand dat er wél is maar niet klopt, is dat juist
33
- * wél — dan heeft iemand iets bedoeld wat niet gebeurt.
34
+ * wél dan heeft iemand iets bedoeld wat niet gebeurt.
34
35
  */
35
36
  export declare function loadConfig(env?: NodeJS.ProcessEnv): FileConfig;
36
37
  /**
@@ -39,7 +40,7 @@ export declare function loadConfig(env?: NodeJS.ProcessEnv): FileConfig;
39
40
  *
40
41
  * Die sleutels worden letterlijk vergeleken met het geresolvede pad. Zonder deze stap
41
42
  * matcht `/pad/project/` met een slash erachter niet, en een pad via een symlink ook
42
- * niet — en op Windows nooit `C:/Users/…` tegen `C:\Users\…`. Een instelling die om
43
+ * niet en op Windows nooit `C:/Users/…` tegen `C:\Users\…`. Een instelling die om
43
44
  * zo'n reden niet matcht, doet stil niets. Bestaat het pad niet, dan alleen
44
45
  * normaliseren: dan valt er ook niets te matchen, maar de melding blijft leesbaar.
45
46
  */
package/dist/config.js CHANGED
@@ -11,13 +11,14 @@ export class ConfigError extends ToolFailure {
11
11
  /** Env-variabele die een ander configbestand aanwijst dan de standaardplek. */
12
12
  export const CONFIG_ENV_VAR = 'PHPSTAN_MCP_CONFIG';
13
13
  /**
14
- * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` — de
14
+ * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` de
15
15
  * plek waar dit soort bestanden op Linux en macOS gezocht wordt.
16
16
  */
17
17
  export function configPath(env = process.env) {
18
18
  const expliciet = env[CONFIG_ENV_VAR]?.trim();
19
- if (expliciet !== undefined && expliciet !== '')
19
+ if (expliciet !== undefined && expliciet !== '') {
20
20
  return expliciet;
21
+ }
21
22
  const basis = env['XDG_CONFIG_HOME']?.trim();
22
23
  return join(basis !== undefined && basis !== '' ? basis : join(homedir(), '.config'), 'phpstan-mcp', 'config.json');
23
24
  }
@@ -27,7 +28,7 @@ export function configPath(env = process.env) {
27
28
  * Ontbreken is uitdrukkelijk géén fout: zonder bestand geldt alleen wat er in de
28
29
  * omgeving staat, en zonder allebei heeft de server geen roots en weigert hij alles.
29
30
  * Dat is de veilige kant. Een bestand dat er wél is maar niet klopt, is dat juist
30
- * wél — dan heeft iemand iets bedoeld wat niet gebeurt.
31
+ * wél dan heeft iemand iets bedoeld wat niet gebeurt.
31
32
  */
32
33
  export function loadConfig(env = process.env) {
33
34
  const pad = configPath(env);
@@ -56,7 +57,7 @@ export function loadConfig(env = process.env) {
56
57
  *
57
58
  * Die sleutels worden letterlijk vergeleken met het geresolvede pad. Zonder deze stap
58
59
  * matcht `/pad/project/` met een slash erachter niet, en een pad via een symlink ook
59
- * niet — en op Windows nooit `C:/Users/…` tegen `C:\Users\…`. Een instelling die om
60
+ * niet en op Windows nooit `C:/Users/…` tegen `C:\Users\…`. Een instelling die om
60
61
  * zo'n reden niet matcht, doet stil niets. Bestaat het pad niet, dan alleen
61
62
  * normaliseren: dan valt er ook niets te matchen, maar de melding blijft leesbaar.
62
63
  */
@@ -75,12 +76,15 @@ export function normaliseProjectKey(key) {
75
76
  */
76
77
  export function fromConfig(sleutel, env = process.env) {
77
78
  const waarde = loadConfig(env)[sleutel];
78
- if (waarde === undefined)
79
+ if (waarde === undefined) {
79
80
  return undefined;
80
- if (Array.isArray(waarde))
81
+ }
82
+ if (Array.isArray(waarde)) {
81
83
  return waarde.join(':');
82
- if (typeof waarde === 'object')
84
+ }
85
+ if (typeof waarde === 'object') {
83
86
  return JSON.stringify(waarde);
87
+ }
84
88
  return String(waarde);
85
89
  }
86
90
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ export declare function isValidMemoryLimit(value: string): boolean;
30
30
  *
31
31
  * Een onbekende sleutel wordt geweigerd en niet genegeerd: `memorylimit` met een
32
32
  * kleine l doet anders stilzwijgend niets, en dan heeft iemand iets bedoeld wat niet
33
- * gebeurt — dezelfde reden waarom een kapot configbestand de server niet laat starten.
33
+ * gebeurt dezelfde reden waarom een kapot configbestand de server niet laat starten.
34
34
  */
35
35
  export declare function loadProjectDefaults(env?: NodeJS.ProcessEnv): Map<string, ProjectDefaults>;
36
36
  /** De standaarden voor dit project; leeg als er niets bijzonders voor geldt. */
package/dist/defaults.js CHANGED
@@ -30,12 +30,13 @@ export function isValidMemoryLimit(value) {
30
30
  *
31
31
  * Een onbekende sleutel wordt geweigerd en niet genegeerd: `memorylimit` met een
32
32
  * kleine l doet anders stilzwijgend niets, en dan heeft iemand iets bedoeld wat niet
33
- * gebeurt — dezelfde reden waarom een kapot configbestand de server niet laat starten.
33
+ * gebeurt dezelfde reden waarom een kapot configbestand de server niet laat starten.
34
34
  */
35
35
  export function loadProjectDefaults(env = process.env) {
36
36
  const ruw = (env[PROJECTS_ENV_VAR] ?? fromConfig('projects', env))?.trim();
37
- if (ruw === undefined || ruw === '')
37
+ if (ruw === undefined || ruw === '') {
38
38
  return new Map();
39
+ }
39
40
  let ontleed;
40
41
  try {
41
42
  ontleed = JSON.parse(ruw);
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
@@ -66,7 +66,7 @@ export declare function inspectType(project: ResolvedProject, request: TypeReque
66
66
  * Voegt vóór `line` één regel `\PHPStan\dumpType(<expressie>);` per expressie in.
67
67
  *
68
68
  * Elke expressie op een eigen regel, want PHPStan rapporteert twee dumps op één regel
69
- * niet in een vaste volgorde (nagemeten) — het regelnummer is dan het enige dat een type
69
+ * niet in een vaste volgorde (nagemeten) het regelnummer is dan het enige dat een type
70
70
  * aan zijn expressie koppelt. Een regeleinde in een expressie zou die telling verschuiven,
71
71
  * en wordt daarom geweigerd.
72
72
  */
package/dist/dumptype.js CHANGED
@@ -31,7 +31,7 @@ export async function inspectType(project, request, options = {}) {
31
31
  * Voegt vóór `line` één regel `\PHPStan\dumpType(<expressie>);` per expressie in.
32
32
  *
33
33
  * Elke expressie op een eigen regel, want PHPStan rapporteert twee dumps op één regel
34
- * niet in een vaste volgorde (nagemeten) — het regelnummer is dan het enige dat een type
34
+ * niet in een vaste volgorde (nagemeten) het regelnummer is dan het enige dat een type
35
35
  * aan zijn expressie koppelt. Een regeleinde in een expressie zou die telling verschuiven,
36
36
  * en wordt daarom geweigerd.
37
37
  */
@@ -50,8 +50,8 @@ export function insertProbes(source, line, expressions) {
50
50
  return { content: lines.join('\n'), line, expressions: cleaned };
51
51
  }
52
52
  /**
53
- * Een expressie zoals hij tussen de haakjes past. Een afsluitende `;` is vergeeflijk — wie
54
- * `$rows;` meegeeft bedoelt `$rows` — maar een lege of meerregelige expressie niet.
53
+ * Een expressie zoals hij tussen de haakjes past. Een afsluitende `;` is vergeeflijk wie
54
+ * `$rows;` meegeeft bedoelt `$rows` maar een lege of meerregelige expressie niet.
55
55
  */
56
56
  function cleanExpression(expression) {
57
57
  const cleaned = expression.trim().replace(/[\s;]+$/, '');
@@ -86,8 +86,9 @@ export function readProbes(project, file, probe, result) {
86
86
  }));
87
87
  const parseErrors = [];
88
88
  for (const finding of result.findings) {
89
- if (finding.file !== file)
89
+ if (finding.file !== file) {
90
90
  continue;
91
+ }
91
92
  const at = finding.line;
92
93
  const onProbe = at !== null && at >= first && at < first + inserted;
93
94
  if (finding.identifier === 'phpstan.parse') {
@@ -99,11 +100,13 @@ export function readProbes(project, file, probe, result) {
99
100
  });
100
101
  continue;
101
102
  }
102
- if (!onProbe)
103
+ if (!onProbe) {
103
104
  continue;
105
+ }
104
106
  const entry = types[at - first];
105
- if (entry === undefined)
107
+ if (entry === undefined) {
106
108
  continue;
109
+ }
107
110
  if (finding.identifier === 'phpstan.dumpType' && finding.message.startsWith(DUMPED)) {
108
111
  entry.type = finding.message.slice(DUMPED.length);
109
112
  }
@@ -132,19 +135,23 @@ export function readProbes(project, file, probe, result) {
132
135
  export function renderTypes(report) {
133
136
  const lines = [];
134
137
  if (report.warnings.length > 0) {
135
- lines.push('WARNING — PHPStan reported this alongside the result:');
136
- for (const warning of report.warnings)
138
+ lines.push('WARNING PHPStan reported this alongside the result:');
139
+ for (const warning of report.warnings) {
137
140
  lines.push(`- ${warning}`);
138
- if (report.omitted.warnings > 0)
141
+ }
142
+ if (report.omitted.warnings > 0) {
139
143
  lines.push(`- (${String(report.omitted.warnings)} more message(s) not shown)`);
144
+ }
140
145
  lines.push('');
141
146
  }
142
147
  if (report.generalErrors.length > 0) {
143
148
  lines.push('Errors not tied to a file:');
144
- for (const error of report.generalErrors)
149
+ for (const error of report.generalErrors) {
145
150
  lines.push(`- ${error}`);
146
- if (report.omitted.generalErrors > 0)
151
+ }
152
+ if (report.omitted.generalErrors > 0) {
147
153
  lines.push(`- (${String(report.omitted.generalErrors)} more error(s) not shown)`);
154
+ }
148
155
  lines.push('');
149
156
  }
150
157
  if (report.parseErrors.length > 0) {
@@ -153,8 +160,9 @@ export function renderTypes(report) {
153
160
  const waar = error.inserted ? 'inserted line' : error.line === null ? 'no line' : `line ${String(error.line)}`;
154
161
  lines.push(`- ${waar}: ${error.message}`);
155
162
  }
156
- if (report.omitted.parseErrors > 0)
163
+ if (report.omitted.parseErrors > 0) {
157
164
  lines.push(`- (${String(report.omitted.parseErrors)} more not shown)`);
165
+ }
158
166
  lines.push('', `If the file parses without them, line ${String(report.line)} is not a place where a statement can go: ` +
159
167
  'for example in the middle of an expression that spans several lines, or directly in a class ' +
160
168
  'body. Pick the first line of a statement inside a function or method.');