checkly 8.22.0 → 8.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.
- package/dist/ai-context/skills-command/references/configure-playwright-checks.md +24 -19
- package/dist/commands/debug/parse-project.js +3 -0
- package/dist/commands/debug/parse-project.js.map +1 -1
- package/dist/commands/deploy.js +3 -0
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/pw-test.js +3 -0
- package/dist/commands/pw-test.js.map +1 -1
- package/dist/commands/test.js +3 -0
- package/dist/commands/test.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js.map +1 -1
- package/dist/constructs/playwright-check-bundle.d.ts +5 -5
- package/dist/constructs/playwright-check-bundle.js.map +1 -1
- package/dist/constructs/project.js +5 -2
- package/dist/constructs/project.js.map +1 -1
- package/dist/constructs/session.d.ts +2 -1
- package/dist/constructs/session.js +2 -1
- package/dist/constructs/session.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/services/check-parser/bundler.d.ts +79 -8
- package/dist/services/check-parser/bundler.js +567 -9
- package/dist/services/check-parser/bundler.js.map +1 -1
- package/dist/services/check-parser/cache-hash.d.ts +141 -17
- package/dist/services/check-parser/cache-hash.js +78 -12
- package/dist/services/check-parser/cache-hash.js.map +1 -1
- package/dist/services/check-parser/faux-package.d.ts +5 -0
- package/dist/services/check-parser/faux-package.js +9 -1
- package/dist/services/check-parser/faux-package.js.map +1 -1
- package/dist/services/check-parser/lockfile-pruner.d.ts +104 -0
- package/dist/services/check-parser/lockfile-pruner.js +1107 -0
- package/dist/services/check-parser/lockfile-pruner.js.map +1 -0
- package/dist/services/check-parser/package-files/package-manager.d.ts +34 -0
- package/dist/services/check-parser/package-files/package-manager.js +131 -3
- package/dist/services/check-parser/package-files/package-manager.js.map +1 -1
- package/dist/services/check-parser/package-files/pnpmfile.d.ts +40 -0
- package/dist/services/check-parser/package-files/pnpmfile.js +322 -0
- package/dist/services/check-parser/package-files/pnpmfile.js.map +1 -0
- package/dist/services/check-parser/package-files/resolver.d.ts +6 -1
- package/dist/services/check-parser/package-files/resolver.js +34 -0
- package/dist/services/check-parser/package-files/resolver.js.map +1 -1
- package/dist/services/check-parser/package-files/workspace.d.ts +16 -1
- package/dist/services/check-parser/package-files/workspace.js +17 -2
- package/dist/services/check-parser/package-files/workspace.js.map +1 -1
- package/dist/services/check-parser/package-prune.d.ts +68 -0
- package/dist/services/check-parser/package-prune.js +274 -0
- package/dist/services/check-parser/package-prune.js.map +1 -0
- package/dist/services/check-parser/parser.js +9 -0
- package/dist/services/check-parser/parser.js.map +1 -1
- package/dist/services/check-parser/patched-dependencies.d.ts +133 -0
- package/dist/services/check-parser/patched-dependencies.js +428 -0
- package/dist/services/check-parser/patched-dependencies.js.map +1 -0
- package/dist/services/checkly-config-loader.d.ts +164 -10
- package/dist/services/checkly-config-loader.js +39 -0
- package/dist/services/checkly-config-loader.js.map +1 -1
- package/dist/services/embedded-packages/cache.d.ts +8 -4
- package/dist/services/embedded-packages/cache.js +27 -6
- package/dist/services/embedded-packages/cache.js.map +1 -1
- package/dist/services/embedded-packages/diagnostics.d.ts +129 -0
- package/dist/services/embedded-packages/diagnostics.js +212 -0
- package/dist/services/embedded-packages/diagnostics.js.map +1 -0
- package/dist/services/embedded-packages/lockfile-filter.d.ts +20 -0
- package/dist/services/embedded-packages/lockfile-filter.js +40 -0
- package/dist/services/embedded-packages/lockfile-filter.js.map +1 -0
- package/dist/services/embedded-packages/lockfile-packages.d.ts +31 -2
- package/dist/services/embedded-packages/lockfile-packages.js +234 -30
- package/dist/services/embedded-packages/lockfile-packages.js.map +1 -1
- package/dist/services/embedded-packages/materializer.d.ts +19 -5
- package/dist/services/embedded-packages/materializer.js +445 -91
- package/dist/services/embedded-packages/materializer.js.map +1 -1
- package/dist/services/embedded-packages/npmrc.d.ts +163 -21
- package/dist/services/embedded-packages/npmrc.js +440 -75
- package/dist/services/embedded-packages/npmrc.js.map +1 -1
- package/dist/services/embedded-packages/spec.d.ts +89 -17
- package/dist/services/embedded-packages/spec.js +199 -30
- package/dist/services/embedded-packages/spec.js.map +1 -1
- package/dist/services/embedded-packages/url.d.ts +39 -0
- package/dist/services/embedded-packages/url.js +60 -0
- package/dist/services/embedded-packages/url.js.map +1 -0
- package/dist/services/playwright-project-bundler.js +27 -23
- package/dist/services/playwright-project-bundler.js.map +1 -1
- package/dist/services/runner/registries.d.ts +144 -0
- package/dist/services/runner/registries.js +232 -0
- package/dist/services/runner/registries.js.map +1 -0
- package/oclif.manifest.json +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { PackageNamePattern } from '../embedded-packages/spec.js';
|
|
2
|
+
export declare const DEPENDENCY_CLASSES: readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"];
|
|
3
|
+
export type DependencyClass = typeof DEPENDENCY_CLASSES[number];
|
|
4
|
+
/**
|
|
5
|
+
* The `bundle.packages.prune` config surface: a pattern array applied to
|
|
6
|
+
* every dependency class, or a per-class map where `true` removes the
|
|
7
|
+
* whole class and a pattern array removes matching entries from it.
|
|
8
|
+
*/
|
|
9
|
+
export type BundlePackagesPrune = string[] | {
|
|
10
|
+
[K in DependencyClass]?: true | string[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Normalized form: per class, `true` (remove all) or parsed patterns.
|
|
14
|
+
* A class absent from the map is left untouched.
|
|
15
|
+
*/
|
|
16
|
+
export type NormalizedPackagePrune = {
|
|
17
|
+
[K in DependencyClass]?: true | PackageNamePattern[];
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Validates and normalizes a `bundle.packages.prune` value. Returns
|
|
21
|
+
* `undefined` when there is nothing to do — the value is absent, or every
|
|
22
|
+
* shape it carries is empty. Throws `InvalidPackageNamePatternError` on an
|
|
23
|
+
* invalid pattern and a plain `Error` on an invalid shape; the config
|
|
24
|
+
* loader relies on that to reject plain-JS configs that bypass the
|
|
25
|
+
* TypeScript type.
|
|
26
|
+
*/
|
|
27
|
+
export declare function normalizePackagePrune(raw: BundlePackagesPrune | undefined): NormalizedPackagePrune | undefined;
|
|
28
|
+
export interface PrunePackageJsonResult {
|
|
29
|
+
content: string;
|
|
30
|
+
/**
|
|
31
|
+
* `class:name` labels of removed entries. Can be empty while `changed`
|
|
32
|
+
* is true: `peerDependencies: true` on a manifest with an empty peer
|
|
33
|
+
* section, or with only `peerDependenciesMeta`, removes no entries but
|
|
34
|
+
* still edits the manifest.
|
|
35
|
+
*/
|
|
36
|
+
removed: string[];
|
|
37
|
+
/** Whether `content` differs from the input. */
|
|
38
|
+
changed: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Applies a normalized `bundle.packages.prune` to a package.json's
|
|
42
|
+
* contents. Returns the rewritten content and the removed entries, or
|
|
43
|
+
* `undefined` when the content cannot be parsed or the rewrite fails
|
|
44
|
+
* verification — the caller ships the original in that case. A prune that
|
|
45
|
+
* changes nothing returns the original content with `changed: false`, so
|
|
46
|
+
* the caller can leave the bundle entry untouched.
|
|
47
|
+
*/
|
|
48
|
+
export declare function prunePackageJson(content: string, prune: NormalizedPackagePrune): PrunePackageJsonResult | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Asserts that a prune rewrite changed nothing but the reported entries,
|
|
51
|
+
* by replaying the deletion on a fresh parse of the original — from the
|
|
52
|
+
* `class:name` labels rather than the pattern matching, with each label
|
|
53
|
+
* additionally checked against the configured prune — so a matcher that
|
|
54
|
+
* deleted the wrong entry, deleted from a class the prune never
|
|
55
|
+
* configured, or strayed outside the dependency classes fails the
|
|
56
|
+
* comparison instead of shipping. The structural rules (`true` deleting a
|
|
57
|
+
* class, emptied sections and meta dropping out) are mirrored from
|
|
58
|
+
* applyPrune rather than independently derived, so only the per-entry
|
|
59
|
+
* path carries independent evidence; a maintainer extending the
|
|
60
|
+
* structural rules must extend both sides. What the comparison cannot see
|
|
61
|
+
* is a field whose value is already altered by JSON.parse itself (an
|
|
62
|
+
* integer beyond 2^53 loses precision on both sides alike); asymmetric
|
|
63
|
+
* serialization loss (`1e999` parses to `Infinity` but stringifies as
|
|
64
|
+
* `null`) does fail it. The patch filtering keeps an analogous
|
|
65
|
+
* fail-closed verifier in patched-dependencies.ts (`verifyRewrite`);
|
|
66
|
+
* hardening either against a manifest quirk likely applies to both.
|
|
67
|
+
*/
|
|
68
|
+
export declare function verifyPrunedManifest(original: string, rewritten: string, prune: NormalizedPackagePrune, removed: string[]): string | undefined;
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import { isDeepStrictEqual } from 'node:util';
|
|
2
|
+
import Debug from 'debug';
|
|
3
|
+
import { parsePackageNamePattern, patternsSelectName, } from '../embedded-packages/spec.js';
|
|
4
|
+
const debug = Debug('checkly:cli:services:check-parser:package-prune');
|
|
5
|
+
export const DEPENDENCY_CLASSES = [
|
|
6
|
+
'dependencies',
|
|
7
|
+
'devDependencies',
|
|
8
|
+
'peerDependencies',
|
|
9
|
+
'optionalDependencies',
|
|
10
|
+
];
|
|
11
|
+
const SHAPE_ERROR = `must be an array of package name patterns or an object keyed by dependency class`;
|
|
12
|
+
/**
|
|
13
|
+
* Validates and normalizes a `bundle.packages.prune` value. Returns
|
|
14
|
+
* `undefined` when there is nothing to do — the value is absent, or every
|
|
15
|
+
* shape it carries is empty. Throws `InvalidPackageNamePatternError` on an
|
|
16
|
+
* invalid pattern and a plain `Error` on an invalid shape; the config
|
|
17
|
+
* loader relies on that to reject plain-JS configs that bypass the
|
|
18
|
+
* TypeScript type.
|
|
19
|
+
*/
|
|
20
|
+
export function normalizePackagePrune(raw) {
|
|
21
|
+
if (raw === undefined) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
let perClass;
|
|
25
|
+
if (Array.isArray(raw)) {
|
|
26
|
+
perClass = Object.fromEntries(DEPENDENCY_CLASSES.map(dependencyClass => [dependencyClass, raw]));
|
|
27
|
+
}
|
|
28
|
+
else if (raw !== null && typeof raw === 'object') {
|
|
29
|
+
// A non-plain object (a Set, a Map, a Date) has no own enumerable
|
|
30
|
+
// string keys, so without this check it would silently normalize to
|
|
31
|
+
// "nothing to do" instead of being rejected.
|
|
32
|
+
const proto = Object.getPrototypeOf(raw);
|
|
33
|
+
if (proto !== Object.prototype && proto !== null) {
|
|
34
|
+
throw new Error(SHAPE_ERROR);
|
|
35
|
+
}
|
|
36
|
+
perClass = raw;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
throw new Error(SHAPE_ERROR);
|
|
40
|
+
}
|
|
41
|
+
const normalized = {};
|
|
42
|
+
for (const [key, value] of Object.entries(perClass)) {
|
|
43
|
+
if (!DEPENDENCY_CLASSES.includes(key)) {
|
|
44
|
+
throw new Error(`'${key}' is not a dependency class (expected one of ${DEPENDENCY_CLASSES.join(', ')})`);
|
|
45
|
+
}
|
|
46
|
+
if (value === undefined) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
if (value === true) {
|
|
50
|
+
normalized[key] = true;
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
if (Array.isArray(value)) {
|
|
54
|
+
if (value.length === 0) {
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
// Parsed per class even for the array shape, so no two classes share
|
|
58
|
+
// one pattern array instance and a consumer mutating one cannot
|
|
59
|
+
// silently change the others.
|
|
60
|
+
normalized[key] = value.map(entry => parsePackageNamePattern(entry));
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
throw new Error(`'${key}' must be true or an array of package name patterns`);
|
|
64
|
+
}
|
|
65
|
+
if (Object.keys(normalized).length === 0) {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
return normalized;
|
|
69
|
+
}
|
|
70
|
+
function isPlainSection(section) {
|
|
71
|
+
return section !== null && typeof section === 'object' && !Array.isArray(section);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Deletes the pruned entries from a parsed manifest, recording removals as
|
|
75
|
+
* `class:name` labels. The verification below replays the same edit from
|
|
76
|
+
* those labels — independently of the pattern matching — so the two
|
|
77
|
+
* functions must agree on the structural rules: a dependency class that is
|
|
78
|
+
* not a plain object is never touched; `true` deletes the class (and, for
|
|
79
|
+
* `peerDependencies`, the whole `peerDependenciesMeta`); a removed peer
|
|
80
|
+
* takes its meta entry with it; and a section or meta object emptied by
|
|
81
|
+
* these removals is deleted. `dependenciesMeta` is deliberately not
|
|
82
|
+
* followed: only the peer meta matters for the auto-install-peers
|
|
83
|
+
* promotion this feature exists to counter, and a dangling
|
|
84
|
+
* `dependenciesMeta` entry is inert for the regenerated lockfile.
|
|
85
|
+
*/
|
|
86
|
+
function applyPrune(parsed, prune) {
|
|
87
|
+
const removed = [];
|
|
88
|
+
let changed = false;
|
|
89
|
+
for (const dependencyClass of DEPENDENCY_CLASSES) {
|
|
90
|
+
const matcher = prune[dependencyClass];
|
|
91
|
+
if (matcher === undefined) {
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
const section = parsed[dependencyClass];
|
|
95
|
+
if (matcher === true) {
|
|
96
|
+
if (isPlainSection(section)) {
|
|
97
|
+
for (const name of Object.keys(section)) {
|
|
98
|
+
removed.push(`${dependencyClass}:${name}`);
|
|
99
|
+
}
|
|
100
|
+
delete parsed[dependencyClass];
|
|
101
|
+
changed = true;
|
|
102
|
+
}
|
|
103
|
+
// Meta without its peers is meaningless — with pnpm's
|
|
104
|
+
// auto-install-peers a dangling optional marker is exactly the noise
|
|
105
|
+
// this feature removes. Cleared even when the manifest has no
|
|
106
|
+
// `peerDependencies` object at all.
|
|
107
|
+
if (dependencyClass === 'peerDependencies' && 'peerDependenciesMeta' in parsed) {
|
|
108
|
+
delete parsed.peerDependenciesMeta;
|
|
109
|
+
changed = true;
|
|
110
|
+
}
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
if (!isPlainSection(section)) {
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
let lost = false;
|
|
117
|
+
for (const name of Object.keys(section)) {
|
|
118
|
+
if (!patternsSelectName(matcher, name)) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
delete section[name];
|
|
122
|
+
removed.push(`${dependencyClass}:${name}`);
|
|
123
|
+
changed = true;
|
|
124
|
+
lost = true;
|
|
125
|
+
if (dependencyClass === 'peerDependencies') {
|
|
126
|
+
const meta = parsed.peerDependenciesMeta;
|
|
127
|
+
if (isPlainSection(meta)) {
|
|
128
|
+
delete meta[name];
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
// Only a section (or meta object) this pass emptied is dropped; one
|
|
133
|
+
// that was already empty is none of this feature's business.
|
|
134
|
+
if (lost && Object.keys(section).length === 0) {
|
|
135
|
+
delete parsed[dependencyClass];
|
|
136
|
+
}
|
|
137
|
+
if (lost && dependencyClass === 'peerDependencies'
|
|
138
|
+
&& isPlainSection(parsed.peerDependenciesMeta)
|
|
139
|
+
&& Object.keys(parsed.peerDependenciesMeta).length === 0) {
|
|
140
|
+
delete parsed.peerDependenciesMeta;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return { removed, changed };
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Applies a normalized `bundle.packages.prune` to a package.json's
|
|
147
|
+
* contents. Returns the rewritten content and the removed entries, or
|
|
148
|
+
* `undefined` when the content cannot be parsed or the rewrite fails
|
|
149
|
+
* verification — the caller ships the original in that case. A prune that
|
|
150
|
+
* changes nothing returns the original content with `changed: false`, so
|
|
151
|
+
* the caller can leave the bundle entry untouched.
|
|
152
|
+
*/
|
|
153
|
+
export function prunePackageJson(content, prune) {
|
|
154
|
+
let parsed;
|
|
155
|
+
try {
|
|
156
|
+
parsed = JSON.parse(content);
|
|
157
|
+
}
|
|
158
|
+
catch (err) {
|
|
159
|
+
debug(`Could not parse package.json for pruning: ${err}`);
|
|
160
|
+
return undefined;
|
|
161
|
+
}
|
|
162
|
+
if (!isPlainSection(parsed)) {
|
|
163
|
+
debug(`Refusing to prune a package.json that is not an object`);
|
|
164
|
+
return undefined;
|
|
165
|
+
}
|
|
166
|
+
const { removed, changed } = applyPrune(parsed, prune);
|
|
167
|
+
if (!changed) {
|
|
168
|
+
return { content, removed, changed };
|
|
169
|
+
}
|
|
170
|
+
// Unlike a byte-preserving edit, this reformats the whole manifest. The
|
|
171
|
+
// bundled copy is only ever an install input — nothing reads it back as
|
|
172
|
+
// text — and matching the original's formatting would mean carrying a
|
|
173
|
+
// JSON editor for no behavioral gain.
|
|
174
|
+
const rewritten = JSON.stringify(parsed, null, 2);
|
|
175
|
+
if (verifyPrunedManifest(content, rewritten, prune, removed) === undefined) {
|
|
176
|
+
return undefined;
|
|
177
|
+
}
|
|
178
|
+
return { content: rewritten, removed, changed };
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Asserts that a prune rewrite changed nothing but the reported entries,
|
|
182
|
+
* by replaying the deletion on a fresh parse of the original — from the
|
|
183
|
+
* `class:name` labels rather than the pattern matching, with each label
|
|
184
|
+
* additionally checked against the configured prune — so a matcher that
|
|
185
|
+
* deleted the wrong entry, deleted from a class the prune never
|
|
186
|
+
* configured, or strayed outside the dependency classes fails the
|
|
187
|
+
* comparison instead of shipping. The structural rules (`true` deleting a
|
|
188
|
+
* class, emptied sections and meta dropping out) are mirrored from
|
|
189
|
+
* applyPrune rather than independently derived, so only the per-entry
|
|
190
|
+
* path carries independent evidence; a maintainer extending the
|
|
191
|
+
* structural rules must extend both sides. What the comparison cannot see
|
|
192
|
+
* is a field whose value is already altered by JSON.parse itself (an
|
|
193
|
+
* integer beyond 2^53 loses precision on both sides alike); asymmetric
|
|
194
|
+
* serialization loss (`1e999` parses to `Infinity` but stringifies as
|
|
195
|
+
* `null`) does fail it. The patch filtering keeps an analogous
|
|
196
|
+
* fail-closed verifier in patched-dependencies.ts (`verifyRewrite`);
|
|
197
|
+
* hardening either against a manifest quirk likely applies to both.
|
|
198
|
+
*/
|
|
199
|
+
export function verifyPrunedManifest(original, rewritten, prune, removed) {
|
|
200
|
+
let expected;
|
|
201
|
+
let actual;
|
|
202
|
+
try {
|
|
203
|
+
expected = JSON.parse(original);
|
|
204
|
+
actual = JSON.parse(rewritten);
|
|
205
|
+
}
|
|
206
|
+
catch (err) {
|
|
207
|
+
debug(`Could not reparse a pruned package.json for verification: ${err}`);
|
|
208
|
+
return undefined;
|
|
209
|
+
}
|
|
210
|
+
// Every reported removal must be one the configuration allows: its class
|
|
211
|
+
// a known dependency class the prune configured, and its name selected
|
|
212
|
+
// by `true` or a configured pattern. The class-membership check comes
|
|
213
|
+
// first so a label like `__proto__:x` fails closed instead of reading a
|
|
214
|
+
// matcher off Object.prototype.
|
|
215
|
+
for (const label of removed) {
|
|
216
|
+
const separator = label.indexOf(':');
|
|
217
|
+
const dependencyClass = label.slice(0, separator);
|
|
218
|
+
const name = label.slice(separator + 1);
|
|
219
|
+
const matcher = DEPENDENCY_CLASSES.includes(dependencyClass) ? prune[dependencyClass] : undefined;
|
|
220
|
+
if (matcher === undefined
|
|
221
|
+
|| (matcher !== true && !patternsSelectName(matcher, name))) {
|
|
222
|
+
debug(`A pruned package.json removed '${label}', which the configuration does not select;`
|
|
223
|
+
+ ` leaving the bundle alone`);
|
|
224
|
+
return undefined;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
// Replay the removals from the labels. The structural rules mirror
|
|
228
|
+
// applyPrune exactly; see its doc comment.
|
|
229
|
+
const lostClasses = new Set();
|
|
230
|
+
let lostPeers = false;
|
|
231
|
+
for (const label of removed) {
|
|
232
|
+
const separator = label.indexOf(':');
|
|
233
|
+
const dependencyClass = label.slice(0, separator);
|
|
234
|
+
const name = label.slice(separator + 1);
|
|
235
|
+
const section = expected?.[dependencyClass];
|
|
236
|
+
if (!isPlainSection(section)) {
|
|
237
|
+
continue;
|
|
238
|
+
}
|
|
239
|
+
delete section[name];
|
|
240
|
+
lostClasses.add(dependencyClass);
|
|
241
|
+
if (dependencyClass === 'peerDependencies' && prune.peerDependencies !== true) {
|
|
242
|
+
lostPeers = true;
|
|
243
|
+
const meta = expected.peerDependenciesMeta;
|
|
244
|
+
if (isPlainSection(meta)) {
|
|
245
|
+
delete meta[name];
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
for (const dependencyClass of DEPENDENCY_CLASSES) {
|
|
250
|
+
if (prune[dependencyClass] === true) {
|
|
251
|
+
if (isPlainSection(expected[dependencyClass])) {
|
|
252
|
+
delete expected[dependencyClass];
|
|
253
|
+
}
|
|
254
|
+
if (dependencyClass === 'peerDependencies') {
|
|
255
|
+
delete expected.peerDependenciesMeta;
|
|
256
|
+
}
|
|
257
|
+
continue;
|
|
258
|
+
}
|
|
259
|
+
const section = expected[dependencyClass];
|
|
260
|
+
if (lostClasses.has(dependencyClass) && isPlainSection(section) && Object.keys(section).length === 0) {
|
|
261
|
+
delete expected[dependencyClass];
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
if (lostPeers && isPlainSection(expected.peerDependenciesMeta)
|
|
265
|
+
&& Object.keys(expected.peerDependenciesMeta).length === 0) {
|
|
266
|
+
delete expected.peerDependenciesMeta;
|
|
267
|
+
}
|
|
268
|
+
if (!isDeepStrictEqual(expected, actual)) {
|
|
269
|
+
debug('A pruned package.json did not match the expected structure; leaving the bundle alone');
|
|
270
|
+
return undefined;
|
|
271
|
+
}
|
|
272
|
+
return rewritten;
|
|
273
|
+
}
|
|
274
|
+
//# sourceMappingURL=package-prune.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-prune.js","sourceRoot":"","sources":["../../../src/services/check-parser/package-prune.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ import { PackageFilesResolver } from './package-files/resolver.js';
|
|
|
10
10
|
import { pathToPosix } from '../util.js';
|
|
11
11
|
import { isCoreExtension, isTSExtension } from './package-files/extension.js';
|
|
12
12
|
import { createFauxPackageFiles } from './faux-package.js';
|
|
13
|
+
import { isPnpmfilePath } from './package-files/pnpmfile.js';
|
|
13
14
|
import { PlaywrightConfigExpander } from './playwright-config-expander.js';
|
|
14
15
|
const debug = Debug('checkly:cli:services:check-parser:parser');
|
|
15
16
|
// Our custom configuration to handle walking errors
|
|
@@ -146,6 +147,14 @@ export class Parser {
|
|
|
146
147
|
}
|
|
147
148
|
determineFileOps(filePath) {
|
|
148
149
|
const extension = path.extname(filePath);
|
|
150
|
+
// Pnpmfiles are pnpm install-time configuration, not check code: they are
|
|
151
|
+
// bundled verbatim and must never be parsed. Parsing would treat their
|
|
152
|
+
// require/import statements as check dependencies, and e.g. an optional
|
|
153
|
+
// `try { require(...) } catch {}` of a gitignored file would fail the
|
|
154
|
+
// whole bundle as a missing dependency.
|
|
155
|
+
if (isPnpmfilePath(filePath)) {
|
|
156
|
+
return 0;
|
|
157
|
+
}
|
|
149
158
|
if (this.restricted) {
|
|
150
159
|
if (isLegacySupportedFileExtension(extension)) {
|
|
151
160
|
return FILEOP_RESOLVE | FILEOP_PARSE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/services/check-parser/parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/services/check-parser/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,IAAI,MAAM,YAAY,CAAA;AAGlC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAoD,MAAM,6BAA6B,CAAA;AAEpH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAE1E,MAAM,KAAK,GAAG,KAAK,CAAC,0CAA0C,CAAC,CAAA;AAE/D,oDAAoD;AAEpD,6DAA6D;AAC7D,MAAM,MAAM,GAAG,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAO,EAAE,EAAE,GAAE,CAAC,CAAA;AAQpD,SAAS,8BAA8B,CAAE,KAAa;IACpD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,IAAI,CAAA;QACb;YACE,OAAO,KAAK,CAAA;IAChB,CAAC;AACH,CAAC;AAED,MAAM,uBAAuB,GAAG;IAC9B,aAAa;IACb,aAAa;IACb,aAAa;IACb,UAAU;IACV,SAAS;IACT,WAAW;IACX,kBAAkB;IAClB,eAAe;IACf,aAAa;IACb,qBAAqB;IACrB,aAAa;IACb,UAAU;IACV,UAAU;IACV,WAAW;IACX,WAAW;CACZ,CAAA;AAED,IAAI,QAAa,CAAA;AACjB,SAAS,WAAW;IAClB,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC9C,QAAQ,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAA;QAC1D,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAgC,CAAA;QAChE,oDAAoD;QAEpD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC9C,uCAAuC;YACvC,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1D,MAAM,IAAI,GAAQ,IAAI,CAAC,IAAI,CAAA;gBAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAA;YACzC,CAAC;QACH,CAAC,CAAC,CAAA;QACF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,IAAI,KAAK,sBAAsB,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,mEAAmE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;QACtG,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC;AAED,MAAM,sBAAsB;IAC1B,aAAa,GAAoB,EAAE,CAAA;IAEnC,GAAG,CAAE,UAAyB;QAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,2BAA2B;IAC/B,SAAS,GAAG,IAAI,GAAG,EAAW,CAAA;IAC9B,WAAW,GAAG,IAAI,GAAG,EAAW,CAAA;IAEhC,YAAY,CAAE,GAAG,GAAc;QAC7B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED,cAAc,CAAE,GAAG,GAAc;QAC/B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACpB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,4BAA4B;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC7E,CAAC;CACF;AA0CD,MAAM,YAAY,GAAG,CAAC,CAAA;AACtB,MAAM,cAAc,GAAG,CAAC,CAAA;AAExB,MAAM,OAAO,MAAM;IACjB,gBAAgB,CAAa;IAC7B,uBAAuB,CAAS;IAChC,SAAS,CAAY;IACrB,QAAQ,CAAsB;IAC9B,UAAU,CAAS;IAEnB,WAAW,GAAG,IAAI,GAAG,EAGhB,CAAA;IAEL,aAAa,GAAG,IAAI,GAAG,EAAiC,CAAA;IAExD,eAAe,GAAG,IAAI,wBAAwB,EAAE,CAAA;IAEhD,mDAAmD;IACnD,6EAA6E;IAC7E,YAAa,OAAsB;QACjC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAA;QAC5C,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAA;QAClG,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,IAAI,IAAI,CAAA;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,oBAAoB,CAAC;YACvC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAA;IACJ,CAAC;IAED,cAAc,CAAE,UAAkB;QAChC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC;YACpD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,kBAAkB,CACxB,QAAgB;QAEhB,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;QAC3C,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,QAAQ,CACpB,QAAgB;QAEhB,KAAK,CAAC,gBAAgB,QAAQ,EAAE,CAAC,CAAA;QACjC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;YAClE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,uBAAuB,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAA;YAChD,MAAM,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAE,QAAgB;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAExC,0EAA0E;QAC1E,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,wCAAwC;QACxC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,8BAA8B,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9C,OAAO,cAAc,GAAG,YAAY,CAAA;YACtC,CAAC;YAED,OAAO,CAAC,CAAA;QACV,CAAC;QAED,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBAC1B,OAAO,cAAc,CAAA;YACvB,CAAC;YAED,OAAO,cAAc,GAAG,YAAY,CAAA;QACtC,CAAC;QAED,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,cAAc,GAAG,YAAY,CAAA;QACtC,CAAC;QAED,OAAO,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,gBAAkC;QAKlC,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,gBAAgB,EAAE;YAC/E,qEAAqE;YACrE,oEAAoE;YACpE,0EAA0E;YAC1E,oCAAoC;YACpC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI;SACtC,CAAC,CAAC,CAAA;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;QAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;QACtC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;QACvC,MAAM,SAAS,GAAG,IAAI,2BAA2B,EAAE,CAAA;QACnD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,SAAQ;YACV,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAE3C,6CAA6C;YAC7C,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;gBACd,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAC3B,SAAQ;YACV,CAAC;YAED,IAAI,YAAY,GAAoB,EAAE,CAAA;YACtC,IAAI,GAAG,GAAG,YAAY,EAAE,CAAC;gBACvB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;gBAExD,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;oBACpB,SAAQ;gBACV,CAAC;gBAED,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;YACpC,CAAC;YAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC;gBACzB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;gBAEnF,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,OAAO,EAAE,CAAC;oBAC/C,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAChC,CAAC;gBAED,SAAS,CAAC,YAAY,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBACjE,SAAS,CAAC,cAAc,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;gBAEtE,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC;oBAC7C,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACpD,SAAQ;oBACV,CAAC;oBACD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAA;oBAC7C,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC;YAED,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7B,CAAC;QAED,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QACjF,CAAC;QAED,MAAM,WAAW,GAAW,EAAE,CAAA;QAE9B,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;gBAC/B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,4BAA4B,EAAE;aAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;QAE9C,WAAW,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAA;QAElC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;QAEF,OAAO;YACL,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;SAC3B,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,SAAS,CACrB,QAAgB;QAEhB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,MAAM,CAAA;QACrB,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,mEAAmE;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACpC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACvC,OAAO,MAAM,OAAO,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,QAAgB,EAChB,OAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,MAAM,CAAA;QACrB,CAAC;QACD,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAC5E,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACvC,OAAO,MAAM,OAAO,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,QAAgB,EAChB,YAA6B;QAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,MAAM,CAAA;QACrB,CAAC;QACD,sEAAsE;QACtE,yEAAyE;QACzE,yCAAyC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;QACpF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACzC,OAAO,MAAM,OAAO,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,KAAK,CAAE,UAAkB;QAC7B,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;QAEnC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QAEnD;;;;;QAKA;QACA,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACpD,MAAM,SAAS,GAAG,IAAI,2BAA2B,EAAE,CAAA;QACnD,MAAM,QAAQ,GAAgB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAA;QACjE,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,yEAAyE;YACzE,gDAAgD;YAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAG,CAAA;YAE9B,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAEhD,6CAA6C;YAC7C,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;gBACd,SAAQ;YACV,CAAC;YAED,IAAI,YAAY,GAAoB,EAAE,CAAA;YACtC,IAAI,GAAG,GAAG,YAAY,EAAE,CAAC;gBACvB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBAElF,IAAI,KAAK,EAAE,CAAC;oBACV,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;oBACvD,SAAQ;gBACV,CAAC;gBAED,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;YACpC,CAAC;YAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC;gBACzB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;gBAExF,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBACjC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;wBAC1E,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;4BACzC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBACzB,CAAC;6BAAM,CAAC;4BACN,OAAO,EAAE,CAAA;wBACX,CAAC;oBACH,CAAC,CAAC,CAAA;oBACF,IAAI,uBAAuB,CAAC,MAAM,EAAE,CAAC;wBACnC,SAAS,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAA;oBACjF,CAAC;gBACH,CAAC;gBAED,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,OAAO,EAAE,CAAC;oBAC/C,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACxC,CAAC;gBAED,KAAK,MAAM,GAAG,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC;oBAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAA;oBAC7C,IAAI,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACtC,SAAQ;oBACV,CAAC;oBACD,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;oBAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC/D,CAAC;gBAED,SAAS,CAAC,YAAY,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBACjE,SAAS,CAAC,cAAc,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;YACxE,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,4BAA4B,EAAE,EAAE,CAAC;YAC3D,KAAK,MAAM,CAAC,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;QAED,SAAS,CAAC,QAAQ,EAAE,CAAA;QAEpB,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAA;IAC7B,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAE,QAAgB,EAAE,QAAgB;QAE1D,KAAK,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAA;QAC5C,MAAM,YAAY,GAAG,IAAI,sBAAsB,EAAE,CAAA;QAEjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACxC,IAAI,CAAC;YACH,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBACxD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;oBAChC,0BAA0B,EAAE,IAAI;oBAChC,WAAW,EAAE,QAAQ;oBACrB,2BAA2B,EAAE,IAAI;oBACjC,yBAAyB,EAAE,IAAI;iBAChC,CAAC,CAAA;gBACF,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;gBAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE;oBACnC,qEAAqE;oBACrE,6CAA6C;oBAC7C,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;iBAC7B,CAAC,CAAA;gBACF,yFAAyF;gBACzF,sGAAsG;gBACtG,aAAa;gBACb,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAA;YAChE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,mCAAmC,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAA;YAE5D,OAAO;gBACL,MAAM,EAAE;oBACN,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE;iBACnC;gBACD,KAAK,EAAE,GAAG;aACX,CAAA;QACH,CAAC;QAED,OAAO;YACL,MAAM,EAAE;gBACN,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE;aACnC;SACF,CAAA;IACH,CAAC;IAED,MAAM,CAAC,aAAa,CAAE,YAAoC;QACxD,OAAO;YACL,cAAc,CAAE,IAAU;gBACxB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC;oBAAE,OAAM;gBAC7C,MAAM,gBAAgB,GAAG,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;gBACzD,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,iBAAiB,CAAE,IAAS;gBAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;oBAAE,OAAM;gBAC1C,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,sBAAsB,CAAE,IAAS;gBAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAChC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;oBAAE,OAAM;gBAC1C,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,oBAAoB,CAAE,IAAS;gBAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAChC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;oBAAE,OAAM;gBAC1C,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;SACF,CAAA;IACH,CAAC;IAED,MAAM,CAAC,aAAa,CAAE,QAAa,EAAE,YAAoC;QACvE,OAAO;YACL,qDAAqD;YACrD,cAAc,CAAE,IAAU;gBACxB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC;oBAAE,OAAM;gBAC7C,MAAM,gBAAgB,GAAG,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;gBACzD,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,iBAAiB,CAAE,IAAgC;gBACnD,mEAAmE;gBACjE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO;oBAAE,OAAM;gBACzE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,sBAAsB,CAAE,IAAqC;gBAC7D,mDAAmD;gBACjD,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAChC,mEAAmE;gBACnE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO;oBAAE,OAAM;gBACzE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;YACD,oBAAoB,CAAE,IAAmC;gBACvD,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAChC,mEAAmE;gBACnE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO;oBAAE,OAAM;gBACzE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;YACtE,CAAC;SACF,CAAA;IACH,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAE,IAAS;QACnC,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACrC,gDAAgD;YAC9C,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,oEAAoE;YAClE,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC/C,8DAA8D;YAC5D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAA;QACvC,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACrD,iDAAiD;YAC/C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;YACxC,OAAO,MAAM,CAAC,IAAI,KAAK,YAAY;mBAC9B,MAAM,CAAC,IAAI,KAAK,QAAQ;mBACxB,QAAQ,CAAC,IAAI,KAAK,YAAY;mBAC9B,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAA;QAClC,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAE,IAAS;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAChC,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACxD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;QACjD,CAAC;aAAM,CAAC;YACR;;;;cAIE;YACA,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,MAAM,CAAC,kBAAkB,CACvB,UAAyB,EACzB,MAA2B,EAC3B,YAAoC;QAEpC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,yDAAyD;YACzD,OAAM;QACR,CAAC;QAED,YAAY,CAAC,GAAG,CAAC;YACf,UAAU;YACV,MAAM;SACP,CAAC,CAAA;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The directory pnpm's own `pnpm patch-commit` writes patches to, relative to
|
|
3
|
+
* the workspace root. Shared so that the auto-include that bundles patches and
|
|
4
|
+
* the filtering that removes them cannot drift apart: widening one without the
|
|
5
|
+
* other would silently leave orphaned patch files in every bundle.
|
|
6
|
+
*/
|
|
7
|
+
export declare const PNPM_PATCHES_DIR = "patches";
|
|
8
|
+
/**
|
|
9
|
+
* Whether an archive path names a patch file the filtering may remove from a
|
|
10
|
+
* bundle: a `.patch` directly under {@link PNPM_PATCHES_DIR}. A declaration
|
|
11
|
+
* may point anywhere, including at a file bundled for an unrelated reason, so
|
|
12
|
+
* only the conventional location is removable.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isRemovablePatchPath(archivePath: string): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Where a pnpm project can declare `patchedDependencies`. Both are live:
|
|
17
|
+
* pnpm 10 reads the `package.json` field (and prefers it over
|
|
18
|
+
* `pnpm-workspace.yaml` when both are populated), while pnpm 11 ignores it
|
|
19
|
+
* and reads only `pnpm-workspace.yaml`.
|
|
20
|
+
*/
|
|
21
|
+
export type PatchConfigKind = 'pnpm-workspace.yaml' | 'package.json';
|
|
22
|
+
/** One of the bundle's declaring config files. */
|
|
23
|
+
export interface PatchConfigFile {
|
|
24
|
+
/** Posix path of the file within the archive, e.g. `pnpm-workspace.yaml`. */
|
|
25
|
+
archivePath: string;
|
|
26
|
+
kind: PatchConfigKind;
|
|
27
|
+
content: string;
|
|
28
|
+
}
|
|
29
|
+
export interface RewrittenFile {
|
|
30
|
+
archivePath: string;
|
|
31
|
+
content: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A complete, ready-to-apply description of the patch declarations to remove
|
|
35
|
+
* from a bundle. Everything is computed up front so that applying it is pure
|
|
36
|
+
* map mutation: a half-applied filter ships a bundle whose config and lockfile
|
|
37
|
+
* disagree, which fails the remote install outright.
|
|
38
|
+
*/
|
|
39
|
+
export interface PatchFilterPlan {
|
|
40
|
+
/** The `patchedDependencies` keys that no longer apply to anything. */
|
|
41
|
+
unusedKeys: string[];
|
|
42
|
+
/** The declaring config, rewritten without those keys. */
|
|
43
|
+
rewrittenConfig: RewrittenFile;
|
|
44
|
+
/**
|
|
45
|
+
* Archive paths of patch files that only the removed declarations
|
|
46
|
+
* referenced. Paths resolving outside the workspace root are never listed.
|
|
47
|
+
*/
|
|
48
|
+
droppedPatchPaths: string[];
|
|
49
|
+
/** The pruned lockfile, rewritten without those keys. */
|
|
50
|
+
lockfileContent: string;
|
|
51
|
+
}
|
|
52
|
+
export interface PlanPatchFilterOptions {
|
|
53
|
+
configs: PatchConfigFile[];
|
|
54
|
+
/** The workspace's own lockfile, as committed — before pruning. */
|
|
55
|
+
originalLockfileContent: string;
|
|
56
|
+
/**
|
|
57
|
+
* The lockfile the prune regenerated. Must come from a prune that passed the
|
|
58
|
+
* pruner's own verification (see `verifyPrunedLockfile`): that check is what
|
|
59
|
+
* guarantees the two lockfiles spell `patch_hash=` markers comparably, which
|
|
60
|
+
* is the premise the used/unused decision rests on. Handed an unverified
|
|
61
|
+
* regeneration — one written by a pnpm that disagrees about which
|
|
62
|
+
* declaration site is live — the comparison could read a patch that is
|
|
63
|
+
* genuinely in force as no longer applied.
|
|
64
|
+
*/
|
|
65
|
+
prunedLockfileContent: string;
|
|
66
|
+
}
|
|
67
|
+
interface PatchDeclaration {
|
|
68
|
+
key: string;
|
|
69
|
+
/** The patch file path exactly as the config spells it. */
|
|
70
|
+
patchPath: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Reads a config's `patchedDependencies` map. Returns an empty map when the
|
|
74
|
+
* config declares none, and `undefined` when the file cannot be parsed or the
|
|
75
|
+
* map is not shaped as expected — callers treat that as "do not filter".
|
|
76
|
+
*/
|
|
77
|
+
export declare function readPatchedDependencies(config: PatchConfigFile): PatchDeclaration[] | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Reads a lockfile's `patchedDependencies` section as key → patch hash.
|
|
80
|
+
* pnpm 10 records `{ hash, path }` objects and pnpm 11 a bare hash string;
|
|
81
|
+
* both are accepted. Returns `undefined` when the lockfile cannot be parsed.
|
|
82
|
+
*/
|
|
83
|
+
export declare function readLockfilePatchHashes(lockfileContent: string): Map<string, string> | undefined;
|
|
84
|
+
/**
|
|
85
|
+
* Computes the patch declarations a bundle should stop shipping, together with
|
|
86
|
+
* the rewritten files that carry the removal. Returns `undefined` whenever the
|
|
87
|
+
* evidence is incomplete or an edit cannot be verified — the caller then ships
|
|
88
|
+
* the bundle unchanged, which is always safe.
|
|
89
|
+
*/
|
|
90
|
+
export declare function planPatchFilter(options: PlanPatchFilterOptions): PatchFilterPlan | undefined;
|
|
91
|
+
/**
|
|
92
|
+
* Removes keys from a YAML document's top-level `patchedDependencies` map,
|
|
93
|
+
* dropping the map itself once it empties. Shared by `pnpm-workspace.yaml` and
|
|
94
|
+
* `pnpm-lock.yaml`, whose sections have the same shape.
|
|
95
|
+
*
|
|
96
|
+
* The result is verified structurally before it is returned: a serializer that
|
|
97
|
+
* reformatted or dropped anything else would ship silently, and for the
|
|
98
|
+
* lockfile it would also invalidate the verification the pruner already ran
|
|
99
|
+
* over the bytes it produced.
|
|
100
|
+
*/
|
|
101
|
+
export declare function rewriteYamlSection(content: string, removed: Set<string>): string | undefined;
|
|
102
|
+
/**
|
|
103
|
+
* Asserts that a rewrite changed nothing but the intended keys, by comparing
|
|
104
|
+
* the reparsed result against the reparsed original with those keys deleted.
|
|
105
|
+
* A config can carry anything else pnpm understands — `catalog:`, `overrides`,
|
|
106
|
+
* `onlyBuiltDependencies` — and nothing downstream would notice it being
|
|
107
|
+
* mangled, so the check is what makes the edit safe to ship.
|
|
108
|
+
*
|
|
109
|
+
* Exported so that the rejection path — which no legitimate serializer output
|
|
110
|
+
* reaches, and which therefore cannot be driven through the callers — is
|
|
111
|
+
* directly testable.
|
|
112
|
+
*
|
|
113
|
+
* Package pruning keeps an analogous fail-closed verifier in
|
|
114
|
+
* package-prune.ts (`verifyPrunedManifest`); hardening either against a
|
|
115
|
+
* manifest quirk likely applies to both.
|
|
116
|
+
*/
|
|
117
|
+
export declare function verifyRewrite(original: string, rewritten: string, removed: Set<string>, parse: (content: string) => any): string | undefined;
|
|
118
|
+
export interface FindUnrepairedPatchKeysOptions {
|
|
119
|
+
configs: PatchConfigFile[];
|
|
120
|
+
originalLockfileContent: string;
|
|
121
|
+
/** The lockfile the bundle is about to ship. */
|
|
122
|
+
shippedLockfileContent: string;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Reports declarations the shipped bundle still carries but its shipped
|
|
126
|
+
* lockfile no longer records — the precondition for the remote install failing
|
|
127
|
+
* with `ERR_PNPM_LOCKFILE_CONFIG_MISMATCH`.
|
|
128
|
+
*
|
|
129
|
+
* Scoped to keys the project's original lockfile recorded, so a declaration
|
|
130
|
+
* the project's own pnpm never honoured is not reported as a bundling problem.
|
|
131
|
+
*/
|
|
132
|
+
export declare function findUnrepairedPatchKeys(options: FindUnrepairedPatchKeysOptions): string[];
|
|
133
|
+
export {};
|