rolldown-pnpm-config 2.1.3 → 2.1.4
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/bin/rolldown-pnpm-config.js +1 -2
- package/catalogs.js +1 -2
- package/cli/ast.js +1 -2
- package/cli/commands/export.js +1 -2
- package/cli/commands/preview.js +1 -2
- package/cli/commands/upgrade.js +1 -2
- package/cli/cwd.js +1 -2
- package/cli/diff/build.js +1 -2
- package/cli/diff/render.js +1 -2
- package/cli/discover.js +1 -2
- package/cli/drift.js +1 -2
- package/cli/edits.js +1 -2
- package/cli/effective.js +1 -2
- package/cli/evaluate.js +1 -2
- package/cli/interop-live.js +1 -2
- package/cli/interop.js +1 -2
- package/cli/load-config.js +1 -2
- package/cli/local-merge.js +1 -2
- package/cli/main.js +1 -2
- package/cli/peer-range.js +1 -2
- package/cli/plan.js +1 -2
- package/cli/preview-views.js +1 -2
- package/cli/release-age.js +1 -2
- package/cli/render/legend.js +1 -2
- package/cli/render/print.js +1 -2
- package/cli/render/report.js +1 -2
- package/cli/render/tone.js +1 -2
- package/cli/resolve.js +1 -2
- package/cli/rewrite.js +1 -2
- package/cli/root.js +1 -2
- package/cli/select-file.js +1 -2
- package/cli/simulated-view.js +1 -2
- package/cli/summary.js +1 -2
- package/cli/ui/preview-screen.js +1 -2
- package/cli/ui/progress-view.js +1 -2
- package/cli/ui/progress.js +1 -2
- package/cli/ui/screens.js +1 -2
- package/cli/ui/walk-screen.js +1 -2
- package/cli/validate.js +1 -2
- package/cli/version-key.js +1 -2
- package/cli/version.js +2 -3
- package/cli/walk-plan.js +1 -2
- package/cli/walk-reducer.js +1 -2
- package/cli/workspace-file.js +1 -2
- package/cli/workspace-overlay.js +1 -2
- package/cli/workspace-resolve.js +1 -2
- package/descriptors/build.js +1 -2
- package/descriptors/hoisting.js +1 -2
- package/descriptors/index.js +1 -2
- package/descriptors/lockfile.js +1 -2
- package/descriptors/misc.js +1 -2
- package/descriptors/network.js +1 -2
- package/descriptors/resolution.js +1 -2
- package/descriptors/runtime-cfg.js +1 -2
- package/descriptors/schemas.js +1 -2
- package/descriptors/workspace.js +1 -2
- package/index.d.ts +0 -12
- package/package.json +11 -11
- package/patches/build.js +1 -2
- package/patches/discover.js +1 -2
- package/patches/keys.js +1 -2
- package/patches/paths.js +1 -2
- package/patches/reconcile.js +1 -2
- package/plugin/allowed-versions.js +1 -2
- package/plugin/freeze.js +1 -2
- package/plugin/index.js +1 -2
- package/plugin/overrides-from-catalogs.js +1 -2
- package/plugin/serialize.js +1 -2
- package/registry.js +1 -2
- package/runtime/ctx.js +1 -2
- package/runtime/enforcement.js +1 -2
- package/runtime/strategies/arrays.js +1 -2
- package/runtime/strategies/catalogs.js +1 -2
- package/runtime/strategies/maps.js +1 -2
- package/runtime/strategies/overrides.js +1 -2
- package/runtime/strategies/scalar.js +1 -2
- package/runtime/strategies/table.js +1 -2
- package/runtime/warnings.js +1 -2
- package/runtime.d.ts +0 -4
- package/runtime.js +1 -2
- package/semver-util.js +1 -2
package/cli/workspace-file.js
CHANGED
|
@@ -3,7 +3,7 @@ import { existsSync } from "node:fs";
|
|
|
3
3
|
import { dirname, join } from "node:path";
|
|
4
4
|
import { Yaml, YamlStringifyOptions } from "@effected/yaml";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/cli/workspace-file.ts
|
|
7
7
|
const FILENAME = "pnpm-workspace.yaml";
|
|
8
8
|
const STRINGIFY_OPTIONS = YamlStringifyOptions.make({
|
|
9
9
|
indent: 2,
|
|
@@ -54,5 +54,4 @@ function renderWorkspace(obj) {
|
|
|
54
54
|
return Result.getOrThrow(Yaml.stringifyResult(canonicalize(obj), STRINGIFY_OPTIONS));
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
//#endregion
|
|
58
57
|
export { canonicalize, findWorkspaceFile, parseWorkspace, renderWorkspace };
|
package/cli/workspace-overlay.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/cli/workspace-overlay.ts
|
|
2
2
|
/**
|
|
3
3
|
* Overlay the plugin's managed fields onto a parsed pnpm-workspace.yaml object.
|
|
4
4
|
* Managed top-level fields overwrite; `catalogs` is overlaid by catalog name
|
|
@@ -17,5 +17,4 @@ function overlayWorkspace(managed, parsed) {
|
|
|
17
17
|
return out;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
//#endregion
|
|
21
20
|
export { overlayWorkspace };
|
package/cli/workspace-resolve.js
CHANGED
|
@@ -7,7 +7,7 @@ import { dirname, join, resolve } from "node:path";
|
|
|
7
7
|
import { getWorkspacePackagesSync } from "@effected/workspaces";
|
|
8
8
|
import { nodeSyncOps } from "@effected/workspaces/node-sync";
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
// src/cli/workspace-resolve.ts
|
|
11
11
|
const BUMP_ORDER = {
|
|
12
12
|
patch: 0,
|
|
13
13
|
minor: 1,
|
|
@@ -161,5 +161,4 @@ function findWorkspaceRoot(startDir) {
|
|
|
161
161
|
return file === null ? resolve(startDir) : dirname(file);
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
//#endregion
|
|
165
164
|
export { findWorkspaceRoot, makeWorkspaceResolver, readManifests, readWorkspaceVersions };
|
package/descriptors/build.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, Num, Str, StringArray, StringRecord, UnknownRecord } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/build.ts
|
|
5
5
|
/** The 26 build / scripts + patches + injection fields. @internal */
|
|
6
6
|
const build = {
|
|
7
7
|
onlyBuiltDependencies: {
|
|
@@ -249,5 +249,4 @@ const build = {
|
|
|
249
249
|
}
|
|
250
250
|
};
|
|
251
251
|
|
|
252
|
-
//#endregion
|
|
253
252
|
export { build };
|
package/descriptors/hoisting.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, Num, Str, StringArray } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/hoisting.ts
|
|
5
5
|
/** The 17 hoisting + node-modules + store fields. @internal */
|
|
6
6
|
const hoisting = {
|
|
7
7
|
hoist: {
|
|
@@ -185,5 +185,4 @@ const hoisting = {
|
|
|
185
185
|
}
|
|
186
186
|
};
|
|
187
187
|
|
|
188
|
-
//#endregion
|
|
189
188
|
export { hoisting };
|
package/descriptors/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { resolution } from "./resolution.js";
|
|
|
7
7
|
import { runtimeCfg } from "./runtime-cfg.js";
|
|
8
8
|
import { workspace } from "./workspace.js";
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
// src/descriptors/index.ts
|
|
11
11
|
const DESCRIPTORS = {
|
|
12
12
|
...resolution,
|
|
13
13
|
...hoisting,
|
|
@@ -34,5 +34,4 @@ function deriveRegistry(d) {
|
|
|
34
34
|
return out;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
//#endregion
|
|
38
37
|
export { DESCRIPTORS, deriveRegistry, deriveSchemas };
|
package/descriptors/lockfile.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Bool, Num, StringArray } from "./schemas.js";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/descriptors/lockfile.ts
|
|
4
4
|
/** The 12 lockfile + peers fields. @internal */
|
|
5
5
|
const lockfile = {
|
|
6
6
|
lockfile: {
|
|
@@ -113,5 +113,4 @@ const lockfile = {
|
|
|
113
113
|
}
|
|
114
114
|
};
|
|
115
115
|
|
|
116
|
-
//#endregion
|
|
117
116
|
export { lockfile };
|
package/descriptors/misc.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, Str } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/misc.ts
|
|
5
5
|
/** The 14 resolution/misc preference fields. @internal */
|
|
6
6
|
const misc = {
|
|
7
7
|
resolutionMode: {
|
|
@@ -148,5 +148,4 @@ const misc = {
|
|
|
148
148
|
}
|
|
149
149
|
};
|
|
150
150
|
|
|
151
|
-
//#endregion
|
|
152
151
|
export { misc };
|
package/descriptors/network.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Bool, Num, Str, StringArray } from "./schemas.js";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/descriptors/network.ts
|
|
4
4
|
/** The 11 network tuning + publish fields. @internal */
|
|
5
5
|
const network = {
|
|
6
6
|
networkConcurrency: {
|
|
@@ -104,5 +104,4 @@ const network = {
|
|
|
104
104
|
}
|
|
105
105
|
};
|
|
106
106
|
|
|
107
|
-
//#endregion
|
|
108
107
|
export { network };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, BooleanRecord, Num, Str, StringArray, StringArrayRecord, StringRecord, UnknownRecord } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/resolution.ts
|
|
5
5
|
const PeerRulesSchema = Schema.Struct({
|
|
6
6
|
allowedVersions: Schema.optional(StringRecord),
|
|
7
7
|
ignoreMissing: Schema.optional(StringArray),
|
|
@@ -243,5 +243,4 @@ const resolution = {
|
|
|
243
243
|
}
|
|
244
244
|
};
|
|
245
245
|
|
|
246
|
-
//#endregion
|
|
247
246
|
export { resolution };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, Str, UnknownRecord } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/runtime-cfg.ts
|
|
5
5
|
/** The 8 package-manager version + node-version fields. @internal */
|
|
6
6
|
const runtimeCfg = {
|
|
7
7
|
packageManagerStrict: {
|
|
@@ -96,5 +96,4 @@ const runtimeCfg = {
|
|
|
96
96
|
}
|
|
97
97
|
};
|
|
98
98
|
|
|
99
|
-
//#endregion
|
|
100
99
|
export { runtimeCfg };
|
package/descriptors/schemas.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/descriptors/schemas.ts
|
|
4
4
|
/** @internal */ const Bool = Schema.Boolean;
|
|
5
5
|
/** @internal */ const Num = Schema.Number;
|
|
6
6
|
/** @internal */ const Str = Schema.String;
|
|
@@ -10,5 +10,4 @@ import { Schema } from "effect";
|
|
|
10
10
|
/** @internal */ const UnknownRecord = Schema.Record(Schema.String, Schema.Unknown);
|
|
11
11
|
/** @internal */ const StringArrayRecord = Schema.Record(Schema.String, StringArray);
|
|
12
12
|
|
|
13
|
-
//#endregion
|
|
14
13
|
export { Bool, BooleanRecord, Num, Str, StringArray, StringArrayRecord, StringRecord, UnknownRecord };
|
package/descriptors/workspace.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bool, Num } from "./schemas.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/descriptors/workspace.ts
|
|
5
5
|
/** The 10 catalog + workspace + audit fields. @internal */
|
|
6
6
|
const workspace = {
|
|
7
7
|
catalogMode: {
|
|
@@ -121,5 +121,4 @@ const workspace = {
|
|
|
121
121
|
}
|
|
122
122
|
};
|
|
123
123
|
|
|
124
|
-
//#endregion
|
|
125
124
|
export { workspace };
|
package/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import "effect";
|
|
2
2
|
import { Plugin } from "rolldown";
|
|
3
|
-
//#region src/catalogs.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* How the `upgrade` CLI recomputes a materialized peer range when the package
|
|
6
5
|
* range is bumped. CLI-only metadata; the runtime ignores it.
|
|
@@ -42,8 +41,6 @@ interface CatalogDeclaration {
|
|
|
42
41
|
/** Map of package name to version spec or range object. */
|
|
43
42
|
readonly packages: Record<string, CatalogPackageSpec>;
|
|
44
43
|
}
|
|
45
|
-
//#endregion
|
|
46
|
-
//#region src/plugin/allowed-versions.d.ts
|
|
47
44
|
/**
|
|
48
45
|
* A directive that derives `peerDependencyRules.allowedVersions` rules from a
|
|
49
46
|
* catalog. For each catalog entry with an exact pinned version, a version-
|
|
@@ -69,8 +66,6 @@ interface AllowedVersionsFromCatalogs {
|
|
|
69
66
|
*/
|
|
70
67
|
readonly prefix?: string | null;
|
|
71
68
|
}
|
|
72
|
-
//#endregion
|
|
73
|
-
//#region src/plugin/overrides-from-catalogs.d.ts
|
|
74
69
|
/**
|
|
75
70
|
* A directive that derives pnpm `overrides` from a catalog, so every member of
|
|
76
71
|
* a release family resolves to the catalog's exact version everywhere in a
|
|
@@ -103,8 +98,6 @@ interface OverridesFromCatalogs {
|
|
|
103
98
|
*/
|
|
104
99
|
readonly scope?: "line" | "any";
|
|
105
100
|
}
|
|
106
|
-
//#endregion
|
|
107
|
-
//#region src/runtime/types.d.ts
|
|
108
101
|
/**
|
|
109
102
|
* How a field's divergences are enforced: silent, console warning, or a thrown
|
|
110
103
|
* error that fails the install. Part of the public authoring API via
|
|
@@ -113,8 +106,6 @@ interface OverridesFromCatalogs {
|
|
|
113
106
|
* @public
|
|
114
107
|
*/
|
|
115
108
|
type Enforcement = "absent" | "warn" | "error";
|
|
116
|
-
//#endregion
|
|
117
|
-
//#region src/define-plugin.d.ts
|
|
118
109
|
/**
|
|
119
110
|
* A field value, bare or wrapped with an explicit enforcement override.
|
|
120
111
|
*
|
|
@@ -452,8 +443,6 @@ interface PluginConfig {
|
|
|
452
443
|
/** Branch that is allowed to publish packages; publishing from other branches is blocked. */
|
|
453
444
|
readonly publishBranch?: FieldInput<string>;
|
|
454
445
|
}
|
|
455
|
-
//#endregion
|
|
456
|
-
//#region src/plugin/index.d.ts
|
|
457
446
|
/**
|
|
458
447
|
* Rolldown plugin that serves the two virtual pnpm-config modules. Pass a
|
|
459
448
|
* `PluginConfig` object and the plugin handles the rest.
|
|
@@ -461,6 +450,5 @@ interface PluginConfig {
|
|
|
461
450
|
* @public
|
|
462
451
|
*/
|
|
463
452
|
export declare function PnpmConfigPlugin(config: PluginConfig): Plugin;
|
|
464
|
-
//#endregion
|
|
465
453
|
export type { AllowedVersionsFromCatalogs, CatalogDeclaration, CatalogPackageSpec, Enforcement, FieldInput, LocalDirective, OverridesFromCatalogs, PeerStrategy, PluginConfig, VersionSource };
|
|
466
454
|
//# sourceMappingURL=index.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rolldown-pnpm-config",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A dogfooding example of our plugin",
|
|
6
6
|
"repository": {
|
|
@@ -35,16 +35,16 @@
|
|
|
35
35
|
"rolldown-pnpm-config": "bin/rolldown-pnpm-config.js"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@effect/platform-node": "^4.0.
|
|
39
|
-
"@effected/cli": "^0.
|
|
40
|
-
"@effected/env": "^0.
|
|
41
|
-
"@effected/glob": "^0.
|
|
42
|
-
"@effected/npm": "^0.
|
|
43
|
-
"@effected/semver": "^0.
|
|
44
|
-
"@effected/walker": "^0.
|
|
45
|
-
"@effected/workspaces": "^0.
|
|
46
|
-
"@effected/yaml": "^0.
|
|
47
|
-
"effect": "^4.0.
|
|
38
|
+
"@effect/platform-node": "^4.0.6",
|
|
39
|
+
"@effected/cli": "^0.20.0",
|
|
40
|
+
"@effected/env": "^0.5.0",
|
|
41
|
+
"@effected/glob": "^0.14.0",
|
|
42
|
+
"@effected/npm": "^0.25.0",
|
|
43
|
+
"@effected/semver": "^0.15.0",
|
|
44
|
+
"@effected/walker": "^0.19.0",
|
|
45
|
+
"@effected/workspaces": "^0.36.1",
|
|
46
|
+
"@effected/yaml": "^0.23.0",
|
|
47
|
+
"effect": "^4.0.6",
|
|
48
48
|
"ink": "^8.0.0",
|
|
49
49
|
"oxc-parser": "^0.155.0",
|
|
50
50
|
"react": "^19.3.1"
|
package/patches/build.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { discoverPatches } from "./discover.js";
|
|
2
2
|
import { Predicate } from "effect";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/patches/build.ts
|
|
5
5
|
/** True only for the `{ strategy: "rewrite" }` directive. @internal */
|
|
6
6
|
function isRewriteDirective(v) {
|
|
7
7
|
return Predicate.isObject(v) && Object.keys(v).length === 1 && v.strategy === "rewrite";
|
|
@@ -54,5 +54,4 @@ function withResolvedBuildPatches(config, baseDir, owned = discoverOwnedPatches(
|
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
//#endregion
|
|
58
57
|
export { discoverOwnedPatches, isRewriteDirective, readLocalPatchesDir, withResolvedBuildPatches };
|
package/patches/discover.js
CHANGED
|
@@ -3,7 +3,7 @@ import { distributedPatchPath, distributedRel } from "./paths.js";
|
|
|
3
3
|
import { existsSync, readdirSync } from "node:fs";
|
|
4
4
|
import { isAbsolute, join } from "node:path";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/patches/discover.ts
|
|
7
7
|
/**
|
|
8
8
|
* Discover owned patches in the two convention folders adjacent to the build
|
|
9
9
|
* file: `public/patches/` (distributed, rewritten) and `patches/` (local-only).
|
|
@@ -35,5 +35,4 @@ function discoverPatches(opts) {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
//#endregion
|
|
39
38
|
export { discoverPatches };
|
package/patches/keys.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/patches/keys.ts
|
|
2
2
|
/**
|
|
3
3
|
* Derive the `patchedDependencies` key from a `.patch` filename, reversing pnpm's
|
|
4
4
|
* `/`→`__` mangling (`@scope__pkg@1.0.0.patch` → `@scope/pkg@1.0.0`). Returns
|
|
@@ -13,5 +13,4 @@ function patchKeyFromFileName(fileName) {
|
|
|
13
13
|
return stem.replace(/__/g, "/");
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
//#endregion
|
|
17
16
|
export { patchKeyFromFileName };
|
package/patches/paths.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { basename, join, posix, relative } from "node:path";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/patches/paths.ts
|
|
4
4
|
/**
|
|
5
5
|
* Consumer-resolved distributed patch path for a config dependency:
|
|
6
6
|
* `node_modules/.pnpm-config/<name>/<rel>`, POSIX separators. `<name>` is used
|
|
@@ -26,5 +26,4 @@ function distributedRel(baseDir, distRoot, fileName) {
|
|
|
26
26
|
return `${(rel === "" || rel.startsWith("..") ? basename(distRoot) : rel).split(/[\\/]/).filter(Boolean).join("/")}/${fileName}`;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
//#endregion
|
|
30
29
|
export { distributedPatchPath, distributedRel };
|
package/patches/reconcile.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { patchKeyFromFileName } from "./keys.js";
|
|
2
2
|
import { basename, join } from "node:path";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/patches/reconcile.ts
|
|
5
5
|
/**
|
|
6
6
|
* Report `patchedDependencies` entries whose file is missing (`staleEntries`) or
|
|
7
7
|
* whose key does not derive from its filename (`keyMismatches`). `exists` is
|
|
@@ -23,5 +23,4 @@ function reconcilePatches(args) {
|
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
//#endregion
|
|
27
26
|
export { reconcilePatches };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { rangeOf } from "../catalogs.js";
|
|
2
2
|
import { bareVersion } from "../semver-util.js";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/plugin/allowed-versions.ts
|
|
5
5
|
/** An exact version: no range operator, no wildcard — `X.Y.Z` with an optional prerelease. */
|
|
6
6
|
const EXACT_VERSION = /^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/;
|
|
7
7
|
/** Apply the `prefix` transform to a peer value: verbatim, re-prefixed, or stripped to exact. */
|
|
@@ -55,5 +55,4 @@ function resolvePeerDependencyRules(value, catalogs) {
|
|
|
55
55
|
};
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
//#endregion
|
|
59
58
|
export { deriveAllowedVersions, resolvePeerDependencyRules };
|
package/plugin/freeze.js
CHANGED
|
@@ -5,7 +5,7 @@ import { resolvePeerDependencyRules } from "./allowed-versions.js";
|
|
|
5
5
|
import { resolveOverrides } from "./overrides-from-catalogs.js";
|
|
6
6
|
import { Data, Effect, Schema } from "effect";
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
// src/plugin/freeze.ts
|
|
9
9
|
/**
|
|
10
10
|
* Typed failure for invalid plugin configuration, surfaced as a build error.
|
|
11
11
|
*
|
|
@@ -93,5 +93,4 @@ function freeze(config) {
|
|
|
93
93
|
});
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
-
//#endregion
|
|
97
96
|
export { ConfigError, freeze, isWrappedField };
|
package/plugin/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { freeze } from "./freeze.js";
|
|
|
3
3
|
import { emitCatalogsModule, emitPnpmfileModule } from "./serialize.js";
|
|
4
4
|
import { Effect } from "effect";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/plugin/index.ts
|
|
7
7
|
const PNPMFILE_SPEC = "rolldown-pnpm-config/virtual/pnpmfile";
|
|
8
8
|
const CATALOGS_SPEC = "rolldown-pnpm-config/virtual/catalogs";
|
|
9
9
|
/**
|
|
@@ -45,5 +45,4 @@ function PnpmConfigPlugin(config) {
|
|
|
45
45
|
return createPnpmConfigPlugin(config);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
//#endregion
|
|
49
48
|
export { PnpmConfigPlugin, createPnpmConfigPlugin };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { rangeOf } from "../catalogs.js";
|
|
2
2
|
import { bareVersion } from "../semver-util.js";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/plugin/overrides-from-catalogs.ts
|
|
5
5
|
/** A plain release version: `X.Y.Z`, no prerelease, no build metadata. */
|
|
6
6
|
const PLAIN_VERSION = /^(\d+)\.(\d+)\.(\d+)$/;
|
|
7
7
|
/** A simple-operator range: an optional `^`, `~`, `>=` or `=` on one version. */
|
|
@@ -65,5 +65,4 @@ function resolveOverrides(authored, directives, catalogs) {
|
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
//#endregion
|
|
69
68
|
export { deriveOverrides, resolveOverrides };
|
package/plugin/serialize.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/plugin/serialize.ts
|
|
2
2
|
/** Recursively sort object keys for deterministic output; arrays keep order. */
|
|
3
3
|
function sortKeys(value) {
|
|
4
4
|
if (Array.isArray(value)) return value.map(sortKeys);
|
|
@@ -22,5 +22,4 @@ function emitPnpmfileModule(base, manifest, name) {
|
|
|
22
22
|
].join("\n");
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
//#endregion
|
|
26
25
|
export { emitCatalogsModule, emitPnpmfileModule, sortKeys };
|
package/registry.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { DESCRIPTORS, deriveRegistry } from "./descriptors/index.js";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/registry.ts
|
|
4
4
|
/** Maps each known pnpm field to its strategy + default enforcement. Derived from the descriptor table. @internal */
|
|
5
5
|
const FIELD_REGISTRY = deriveRegistry(DESCRIPTORS);
|
|
6
6
|
|
|
7
|
-
//#endregion
|
|
8
7
|
export { FIELD_REGISTRY };
|
package/runtime/ctx.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/runtime/ctx.ts
|
|
5
5
|
/**
|
|
6
6
|
* Resolve the consuming repo's root package name. Prefers pnpm's
|
|
7
7
|
* `rootProjectManifest.name`, falling back to reading `package.json` from the
|
|
@@ -35,5 +35,4 @@ function excludeByRepo(merged, ctx, byRepo) {
|
|
|
35
35
|
return merged.filter((p) => !set.has(p));
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
//#endregion
|
|
39
38
|
export { excludeByRepo, resolveRootName };
|
package/runtime/enforcement.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/runtime/enforcement.ts
|
|
2
2
|
/**
|
|
3
3
|
* Thrown when an `error`-enforced field diverges. A zero-dependency plain
|
|
4
4
|
* `Error` subclass (NOT an Effect type) so it survives in the bundled pnpmfile.
|
|
@@ -32,5 +32,4 @@ function applyEnforcement(field, result, enforcement) {
|
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
//#endregion
|
|
36
35
|
export { EnforcementError, applyEnforcement };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/runtime/strategies/arrays.ts
|
|
2
2
|
/** Union `managed` with `local` (when present), deduped and sorted for a stable render. @internal */
|
|
3
3
|
function unionSort(managed, local) {
|
|
4
4
|
const set = new Set(managed);
|
|
@@ -34,5 +34,4 @@ const arrayRecordUnion = (base, local) => {
|
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
36
|
|
|
37
|
-
//#endregion
|
|
38
37
|
export { arrayRecordUnion, arrayUnion, unionSort };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mergeMapDetect } from "./overrides.js";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/runtime/strategies/catalogs.ts
|
|
4
4
|
/**
|
|
5
5
|
* Merge each named catalog; child wins per package. Emits override divergences
|
|
6
6
|
* when a local version differs from the managed one.
|
|
@@ -23,5 +23,4 @@ const catalogs = (base, local) => {
|
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
//#endregion
|
|
27
26
|
export { catalogs };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/runtime/strategies/maps.ts
|
|
2
2
|
/**
|
|
3
3
|
* `{...managed, ...child}` — child wins per key. Quiet. Merges two maps,
|
|
4
4
|
* preferring child values.
|
|
@@ -42,5 +42,4 @@ const allowBuilds = (base, local) => {
|
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
44
|
|
|
45
|
-
//#endregion
|
|
46
45
|
export { allowBuilds, mapChildWins };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { unionSort } from "./arrays.js";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// src/runtime/strategies/overrides.ts
|
|
4
4
|
/**
|
|
5
5
|
* Child wins per key over a managed string map; any differing key is reported
|
|
6
6
|
* as an override divergence under `<prefix>.<key>`.
|
|
@@ -60,5 +60,4 @@ const peerDependencyRules = (base, local) => {
|
|
|
60
60
|
};
|
|
61
61
|
};
|
|
62
62
|
|
|
63
|
-
//#endregion
|
|
64
63
|
export { mergeMapDetect, overrides, peerDependencyRules };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/runtime/strategies/scalar.ts
|
|
2
2
|
/**
|
|
3
3
|
* `child ?? base` — quiet (no divergences). Prefer local, fall back to managed.
|
|
4
4
|
*
|
|
@@ -53,5 +53,4 @@ const securityMin = (base, local) => {
|
|
|
53
53
|
};
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
//#endregion
|
|
57
56
|
export { scalar, securityFlag, securityMin };
|
|
@@ -4,7 +4,7 @@ import { catalogs } from "./catalogs.js";
|
|
|
4
4
|
import { allowBuilds, mapChildWins } from "./maps.js";
|
|
5
5
|
import { scalar, securityFlag, securityMin } from "./scalar.js";
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
// src/runtime/strategies/table.ts
|
|
8
8
|
/**
|
|
9
9
|
* Built-in strategies keyed by manifest name.
|
|
10
10
|
*
|
|
@@ -23,5 +23,4 @@ const STRATEGY_TABLE = {
|
|
|
23
23
|
allowBuilds
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
//#endregion
|
|
27
26
|
export { STRATEGY_TABLE };
|
package/runtime/warnings.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/runtime/warnings.ts
|
|
2
2
|
const WARNING_BOX_WIDTH = 75;
|
|
3
3
|
function pad(line) {
|
|
4
4
|
return `│${line}${" ".repeat(Math.max(0, WARNING_BOX_WIDTH - line.length - 2))}│`;
|
|
@@ -57,5 +57,4 @@ function formatSecurityWarning(divergences, name) {
|
|
|
57
57
|
return lines.join("\n");
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
//#endregion
|
|
61
60
|
export { formatOverrideWarning, formatSecurityWarning };
|
package/runtime.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/runtime/types.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Minimal pnpm config shape — only the fields this plugin reads/writes.
|
|
4
3
|
*
|
|
@@ -90,8 +89,6 @@ export type Manifest = Record<string, ManifestEntry>;
|
|
|
90
89
|
* @public
|
|
91
90
|
*/
|
|
92
91
|
export type Base = Record<string, unknown>;
|
|
93
|
-
//#endregion
|
|
94
|
-
//#region src/runtime/index.d.ts
|
|
95
92
|
/**
|
|
96
93
|
* Build the pnpm hooks from frozen base data + a field→strategy manifest.
|
|
97
94
|
* Zero dependencies — bundled verbatim into the shipped pnpmfile.
|
|
@@ -106,5 +103,4 @@ export type Base = Record<string, unknown>;
|
|
|
106
103
|
* @public
|
|
107
104
|
*/
|
|
108
105
|
export declare function createHooks(base: Base, manifest: Manifest, name: string): PnpmHooks;
|
|
109
|
-
//#endregion
|
|
110
106
|
//# sourceMappingURL=runtime.d.ts.map
|
package/runtime.js
CHANGED
|
@@ -3,7 +3,7 @@ import { applyEnforcement } from "./runtime/enforcement.js";
|
|
|
3
3
|
import { STRATEGY_TABLE } from "./runtime/strategies/table.js";
|
|
4
4
|
import { formatOverrideWarning, formatSecurityWarning } from "./runtime/warnings.js";
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
// src/runtime/index.ts
|
|
7
7
|
/**
|
|
8
8
|
* Build the pnpm hooks from frozen base data + a field→strategy manifest.
|
|
9
9
|
* Zero dependencies — bundled verbatim into the shipped pnpmfile.
|
|
@@ -50,5 +50,4 @@ function createHooks(base, manifest, name) {
|
|
|
50
50
|
} };
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
//#endregion
|
|
54
53
|
export { createHooks };
|
package/semver-util.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Result } from "effect";
|
|
2
2
|
import { Range, SemVer } from "@effected/semver";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// src/semver-util.ts
|
|
5
5
|
/**
|
|
6
6
|
* Parse a version string synchronously, returning null instead of failing
|
|
7
7
|
* (filters junk dist-tags and unparseable literals). Build-time only.
|
|
@@ -25,5 +25,4 @@ const parseRange = (r) => Result.getOrNull(Range.parseResult(r));
|
|
|
25
25
|
*/
|
|
26
26
|
const bareVersion = (range) => range.replace(/^[\^~>=<\s]+/, "").split(/\s/)[0] ?? range;
|
|
27
27
|
|
|
28
|
-
//#endregion
|
|
29
28
|
export { bareVersion, parseRange, parseVersion };
|