@savvy-web/silk 3.4.1 → 3.4.2
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/changesets-changelog.cjs +1708 -396
- package/changesets-changelog.d.cts +254 -32
- package/changesets-changelog.d.ts +254 -32
- package/changesets-changelog.js +2682 -1268
- package/changesets-markdownlint.cjs +1708 -396
- package/changesets-markdownlint.d.cts +254 -32
- package/changesets-markdownlint.d.ts +254 -32
- package/changesets-markdownlint.js +2682 -1268
- package/package.json +4 -4
- package/tsconfig/node/dist/tsconfig.tsbuildinfo +1 -1
|
@@ -4395,9 +4395,9 @@ declare class UnsatisfiableConstraintError extends UnsatisfiableConstraintError_
|
|
|
4395
4395
|
get message(): string;
|
|
4396
4396
|
}
|
|
4397
4397
|
//#endregion
|
|
4398
|
-
//#region ../../node_modules/.pnpm/@effected+npm@0.8.
|
|
4398
|
+
//#region ../../node_modules/.pnpm/@effected+npm@0.8.3_@effected+semver@0.3.2_effect@4.0.0-beta.101__effect@4.0.0-beta.101/node_modules/@effected/npm/index.d.ts
|
|
4399
4399
|
//#region src/CatalogAssemblyError.d.ts
|
|
4400
|
-
declare const CatalogAssemblyError_base: Schema.Class<CatalogAssemblyError, Schema.TaggedStruct<"CatalogAssemblyError", {
|
|
4400
|
+
declare const CatalogAssemblyError_base$1: Schema.Class<CatalogAssemblyError$1, Schema.TaggedStruct<"CatalogAssemblyError", {
|
|
4401
4401
|
/**
|
|
4402
4402
|
* Which input failed: `manifest` for a file-level or top-level shape problem,
|
|
4403
4403
|
* `catalog` for a malformed catalog block or the double-default duplication,
|
|
@@ -4430,13 +4430,13 @@ declare const CatalogAssemblyError_base: Schema.Class<CatalogAssemblyError, Sche
|
|
|
4430
4430
|
*
|
|
4431
4431
|
* @public
|
|
4432
4432
|
*/
|
|
4433
|
-
declare class CatalogAssemblyError extends CatalogAssemblyError_base {
|
|
4433
|
+
declare class CatalogAssemblyError$1 extends CatalogAssemblyError_base$1 {
|
|
4434
4434
|
/** Renders the failing source into a one-line message. */
|
|
4435
4435
|
get message(): string;
|
|
4436
4436
|
}
|
|
4437
4437
|
//#endregion
|
|
4438
4438
|
//#region src/WorkspaceResolver.d.ts
|
|
4439
|
-
declare const DependencyResolutionError_base: Schema.Class<DependencyResolutionError, Schema.TaggedStruct<"DependencyResolutionError", {
|
|
4439
|
+
declare const DependencyResolutionError_base$1: Schema.Class<DependencyResolutionError$1, Schema.TaggedStruct<"DependencyResolutionError", {
|
|
4440
4440
|
readonly specifier: Schema.String;
|
|
4441
4441
|
readonly cause: Schema.Defect;
|
|
4442
4442
|
}>, import("effect/Cause").YieldableError>;
|
|
@@ -4453,12 +4453,12 @@ declare const DependencyResolutionError_base: Schema.Class<DependencyResolutionE
|
|
|
4453
4453
|
*
|
|
4454
4454
|
* @public
|
|
4455
4455
|
*/
|
|
4456
|
-
declare class DependencyResolutionError extends DependencyResolutionError_base {
|
|
4456
|
+
declare class DependencyResolutionError$1 extends DependencyResolutionError_base$1 {
|
|
4457
4457
|
/** Renders `specifier` into a one-line failure message. */
|
|
4458
4458
|
get message(): string;
|
|
4459
4459
|
}
|
|
4460
|
-
declare const WorkspaceResolver_base: Context.ServiceClass<WorkspaceResolver, "@effected/npm/WorkspaceResolver", {
|
|
4461
|
-
readonly versionOf: (packageName: string) => Effect.Effect<Option.Option<string>, DependencyResolutionError>;
|
|
4460
|
+
declare const WorkspaceResolver_base$1: Context.ServiceClass<WorkspaceResolver$1, "@effected/npm/WorkspaceResolver", {
|
|
4461
|
+
readonly versionOf: (packageName: string) => Effect.Effect<Option.Option<string>, DependencyResolutionError$1>;
|
|
4462
4462
|
}>;
|
|
4463
4463
|
/**
|
|
4464
4464
|
* Contract for resolving pnpm `workspace:` dependency specifiers to concrete
|
|
@@ -4489,18 +4489,18 @@ declare const WorkspaceResolver_base: Context.ServiceClass<WorkspaceResolver, "@
|
|
|
4489
4489
|
*
|
|
4490
4490
|
* @public
|
|
4491
4491
|
*/
|
|
4492
|
-
declare class WorkspaceResolver extends WorkspaceResolver_base {
|
|
4492
|
+
declare class WorkspaceResolver$1 extends WorkspaceResolver_base$1 {
|
|
4493
4493
|
/**
|
|
4494
4494
|
* No-op default: `versionOf` always succeeds with `Option.none()`, never
|
|
4495
4495
|
* consulting an actual workspace. A pure `Layer.succeed`, bound to a
|
|
4496
4496
|
* const so it memoizes by reference.
|
|
4497
4497
|
*/
|
|
4498
|
-
static readonly noop: Layer.Layer<WorkspaceResolver>;
|
|
4498
|
+
static readonly noop: Layer.Layer<WorkspaceResolver$1>;
|
|
4499
4499
|
}
|
|
4500
4500
|
//#endregion
|
|
4501
4501
|
//#region src/CatalogResolver.d.ts
|
|
4502
|
-
declare const CatalogResolver_base: Context.ServiceClass<CatalogResolver, "@effected/npm/CatalogResolver", {
|
|
4503
|
-
readonly rangeOf: (packageName: string, catalog: Option.Option<string>) => Effect.Effect<Option.Option<string>, CatalogAssemblyError | DependencyResolutionError>;
|
|
4502
|
+
declare const CatalogResolver_base$1: Context.ServiceClass<CatalogResolver$1, "@effected/npm/CatalogResolver", {
|
|
4503
|
+
readonly rangeOf: (packageName: string, catalog: Option.Option<string>) => Effect.Effect<Option.Option<string>, CatalogAssemblyError$1 | DependencyResolutionError$1>;
|
|
4504
4504
|
}>;
|
|
4505
4505
|
/**
|
|
4506
4506
|
* Contract for resolving pnpm `catalog:` dependency specifiers to concrete
|
|
@@ -4537,21 +4537,15 @@ declare const CatalogResolver_base: Context.ServiceClass<CatalogResolver, "@effe
|
|
|
4537
4537
|
*
|
|
4538
4538
|
* @public
|
|
4539
4539
|
*/
|
|
4540
|
-
declare class CatalogResolver extends CatalogResolver_base {
|
|
4540
|
+
declare class CatalogResolver$1 extends CatalogResolver_base$1 {
|
|
4541
4541
|
/**
|
|
4542
4542
|
* No-op default: `rangeOf` always succeeds with `Option.none()`, never
|
|
4543
4543
|
* consulting an actual catalog. A pure `Layer.succeed`, bound to a const
|
|
4544
4544
|
* so it memoizes by reference — the layer is built once, not once per
|
|
4545
4545
|
* reference to `CatalogResolver.noop`.
|
|
4546
4546
|
*/
|
|
4547
|
-
static readonly noop: Layer.Layer<CatalogResolver>;
|
|
4547
|
+
static readonly noop: Layer.Layer<CatalogResolver$1>;
|
|
4548
4548
|
}
|
|
4549
|
-
/**
|
|
4550
|
-
* The classification of a dependency specifier's protocol.
|
|
4551
|
-
*
|
|
4552
|
-
* @public
|
|
4553
|
-
*/
|
|
4554
|
-
type DependencyProtocol = "range" | "tag" | "git" | "url" | "npm" | "file" | "link" | "portal" | "catalog" | "workspace" | "unknown";
|
|
4555
4549
|
declare const CatalogSpecifier_base: Schema.Class<CatalogSpecifier, Schema.TaggedStruct<"catalog", {
|
|
4556
4550
|
/** The original specifier string. */
|
|
4557
4551
|
readonly raw: Schema.String;
|
|
@@ -4969,7 +4963,7 @@ declare class GlobPattern extends GlobPattern_base {
|
|
|
4969
4963
|
static readonly FromString: Schema.Codec<GlobPattern, string>;
|
|
4970
4964
|
}
|
|
4971
4965
|
//#endregion
|
|
4972
|
-
//#region ../../node_modules/.pnpm/@effected+lockfiles@0.3.2_@effected+jsonc@0.5.2_effect@4.0.0-beta.101__@effected+npm@0.
|
|
4966
|
+
//#region ../../node_modules/.pnpm/@effected+lockfiles@0.3.2_@effected+jsonc@0.5.2_effect@4.0.0-beta.101__@effected+npm@0._3c1784fba62fde9a5bac4cf15387fd04/node_modules/@effected/lockfiles/index.d.ts
|
|
4973
4967
|
//#region src/BunExtension.d.ts
|
|
4974
4968
|
declare const BunExtension_base: Schema.Class<BunExtension, Schema.Struct<{
|
|
4975
4969
|
readonly _tag: Schema.tag<"bun">;
|
|
@@ -5399,6 +5393,164 @@ declare class LockfileIntegrity extends LockfileIntegrity_base {
|
|
|
5399
5393
|
static compare(lockfile: Lockfile, manifests: ReadonlyArray<WorkspaceManifest>): LockfileIntegrity;
|
|
5400
5394
|
}
|
|
5401
5395
|
//#endregion
|
|
5396
|
+
//#region ../../node_modules/.pnpm/@effected+npm@0.8.2_@effected+semver@0.3.2_effect@4.0.0-beta.101__effect@4.0.0-beta.101/node_modules/@effected/npm/index.d.ts
|
|
5397
|
+
//#region src/CatalogAssemblyError.d.ts
|
|
5398
|
+
declare const CatalogAssemblyError_base: Schema.Class<CatalogAssemblyError, Schema.TaggedStruct<"CatalogAssemblyError", {
|
|
5399
|
+
/**
|
|
5400
|
+
* Which input failed: `manifest` for a file-level or top-level shape problem,
|
|
5401
|
+
* `catalog` for a malformed catalog block or the double-default duplication,
|
|
5402
|
+
* `hooks` for a config-dependency `pnpmfile.cjs` load or replay failure.
|
|
5403
|
+
*/
|
|
5404
|
+
readonly source: Schema.Literals<readonly ["manifest", "catalog", "hooks"]>;
|
|
5405
|
+
/** The file, the catalog name, or the config dependency name. */
|
|
5406
|
+
readonly path: Schema.String;
|
|
5407
|
+
/** The originating failure. */
|
|
5408
|
+
readonly cause: Schema.Defect;
|
|
5409
|
+
}>, import("effect/Cause").YieldableError>;
|
|
5410
|
+
/**
|
|
5411
|
+
* Raised when a workspace's catalogs cannot be assembled — a `pnpm-workspace.yaml`
|
|
5412
|
+
* that is unreadable or not valid YAML, a root `package.json` `workspaces` field
|
|
5413
|
+
* whose shape or catalog blocks are malformed in a way pnpm itself rejects
|
|
5414
|
+
* (including the default catalog declared twice), or a config dependency whose
|
|
5415
|
+
* `pnpmfile.cjs` cannot be loaded or replayed.
|
|
5416
|
+
*
|
|
5417
|
+
* @remarks
|
|
5418
|
+
* A *missing* `pnpm-workspace.yaml`, an *absent* `workspaces` field, or one
|
|
5419
|
+
* explicitly `null` is not an error: there is simply nothing to misread, so
|
|
5420
|
+
* assembly yields the empty set. The reader is otherwise **hard-fail by design** —
|
|
5421
|
+
* a silently-empty catalog read is the "every dependency looks newly added" bug,
|
|
5422
|
+
* because catalog output is load-bearing for snapshot diffing.
|
|
5423
|
+
*
|
|
5424
|
+
* Defined here, next to the {@link CatalogResolver} contract that raises it,
|
|
5425
|
+
* rather than in the implementing package (`@effected/workspaces`): folding it
|
|
5426
|
+
* into `DependencyResolutionError`'s defect `cause` forced every consumer to
|
|
5427
|
+
* `_tag`-sniff `unknown` to tell an assembly failure from a resolution failure.
|
|
5428
|
+
*
|
|
5429
|
+
* @public
|
|
5430
|
+
*/
|
|
5431
|
+
declare class CatalogAssemblyError extends CatalogAssemblyError_base {
|
|
5432
|
+
/** Renders the failing source into a one-line message. */
|
|
5433
|
+
get message(): string;
|
|
5434
|
+
}
|
|
5435
|
+
//#endregion
|
|
5436
|
+
//#region src/WorkspaceResolver.d.ts
|
|
5437
|
+
declare const DependencyResolutionError_base: Schema.Class<DependencyResolutionError, Schema.TaggedStruct<"DependencyResolutionError", {
|
|
5438
|
+
readonly specifier: Schema.String;
|
|
5439
|
+
readonly cause: Schema.Defect;
|
|
5440
|
+
}>, import("effect/Cause").YieldableError>;
|
|
5441
|
+
/**
|
|
5442
|
+
* Raised when a `catalog:` or `workspace:` specifier cannot be resolved
|
|
5443
|
+
* because the resolution mechanism itself failed — not for an ordinary
|
|
5444
|
+
* unmatched specifier, which resolves to `Option.none()` instead. Both
|
|
5445
|
+
* {@link CatalogResolver} and {@link WorkspaceResolver} fail with it.
|
|
5446
|
+
*
|
|
5447
|
+
* `cause` preserves the originating failure on a structured `Schema.Defect`
|
|
5448
|
+
* field rather than folding it into a string, so callers can branch on the
|
|
5449
|
+
* original value (an `Error`, a parsed diagnostic, anything); `specifier`
|
|
5450
|
+
* records the specifier string that failed to resolve.
|
|
5451
|
+
*
|
|
5452
|
+
* @public
|
|
5453
|
+
*/
|
|
5454
|
+
declare class DependencyResolutionError extends DependencyResolutionError_base {
|
|
5455
|
+
/** Renders `specifier` into a one-line failure message. */
|
|
5456
|
+
get message(): string;
|
|
5457
|
+
}
|
|
5458
|
+
declare const WorkspaceResolver_base: Context.ServiceClass<WorkspaceResolver, "@effected/npm/WorkspaceResolver", {
|
|
5459
|
+
readonly versionOf: (packageName: string) => Effect.Effect<Option.Option<string>, DependencyResolutionError>;
|
|
5460
|
+
}>;
|
|
5461
|
+
/**
|
|
5462
|
+
* Contract for resolving pnpm `workspace:` dependency specifiers to concrete
|
|
5463
|
+
* versions.
|
|
5464
|
+
*
|
|
5465
|
+
* `versionOf` takes a workspace package name and returns its concrete
|
|
5466
|
+
* version (the range modifier stripped) as `Option.some`, or
|
|
5467
|
+
* `Option.none()` when the name is not a known workspace member.
|
|
5468
|
+
*
|
|
5469
|
+
* This is a contract-only service: {@link WorkspaceResolver.noop} is the
|
|
5470
|
+
* sole implementation this package ships, and it resolves nothing. Real
|
|
5471
|
+
* consumers (e.g. `@effected/workspaces`) provide a working implementation
|
|
5472
|
+
* at the application boundary.
|
|
5473
|
+
*
|
|
5474
|
+
* @example
|
|
5475
|
+
* ```ts
|
|
5476
|
+
* import { Effect } from "effect";
|
|
5477
|
+
* import { WorkspaceResolver } from "@effected/npm";
|
|
5478
|
+
*
|
|
5479
|
+
* const program = Effect.gen(function* () {
|
|
5480
|
+
* const resolver = yield* WorkspaceResolver;
|
|
5481
|
+
* return yield* resolver.versionOf("@effected/semver");
|
|
5482
|
+
* });
|
|
5483
|
+
*
|
|
5484
|
+
* Effect.runPromise(Effect.provide(program, WorkspaceResolver.noop));
|
|
5485
|
+
* // => Option.none()
|
|
5486
|
+
* ```
|
|
5487
|
+
*
|
|
5488
|
+
* @public
|
|
5489
|
+
*/
|
|
5490
|
+
declare class WorkspaceResolver extends WorkspaceResolver_base {
|
|
5491
|
+
/**
|
|
5492
|
+
* No-op default: `versionOf` always succeeds with `Option.none()`, never
|
|
5493
|
+
* consulting an actual workspace. A pure `Layer.succeed`, bound to a
|
|
5494
|
+
* const so it memoizes by reference.
|
|
5495
|
+
*/
|
|
5496
|
+
static readonly noop: Layer.Layer<WorkspaceResolver>;
|
|
5497
|
+
}
|
|
5498
|
+
//#endregion
|
|
5499
|
+
//#region src/CatalogResolver.d.ts
|
|
5500
|
+
declare const CatalogResolver_base: Context.ServiceClass<CatalogResolver, "@effected/npm/CatalogResolver", {
|
|
5501
|
+
readonly rangeOf: (packageName: string, catalog: Option.Option<string>) => Effect.Effect<Option.Option<string>, CatalogAssemblyError | DependencyResolutionError>;
|
|
5502
|
+
}>;
|
|
5503
|
+
/**
|
|
5504
|
+
* Contract for resolving pnpm `catalog:` dependency specifiers to concrete
|
|
5505
|
+
* version ranges.
|
|
5506
|
+
*
|
|
5507
|
+
* `rangeOf` takes a package name and an optional catalog name
|
|
5508
|
+
* (`Option.none()` selects the default catalog) and returns the configured
|
|
5509
|
+
* range as `Option.some`, or `Option.none()` when the specifier is absent
|
|
5510
|
+
* from the catalog. By convention the error channel is reserved for a
|
|
5511
|
+
* failure in the resolution mechanism itself — an unmatched package or
|
|
5512
|
+
* catalog name is an `Option.none()` success, never an error. A failure to
|
|
5513
|
+
* *assemble* the catalogs (an unreadable or malformed catalog source)
|
|
5514
|
+
* surfaces typed as a {@link CatalogAssemblyError}; any other mechanism
|
|
5515
|
+
* failure is a {@link DependencyResolutionError}.
|
|
5516
|
+
*
|
|
5517
|
+
* This is a contract-only service: {@link CatalogResolver.noop} is the sole
|
|
5518
|
+
* implementation this package ships, and it resolves nothing. Real consumers
|
|
5519
|
+
* (e.g. `@effected/workspaces`) provide a working implementation at the
|
|
5520
|
+
* application boundary.
|
|
5521
|
+
*
|
|
5522
|
+
* @example
|
|
5523
|
+
* ```ts
|
|
5524
|
+
* import { Effect, Option } from "effect";
|
|
5525
|
+
* import { CatalogResolver } from "@effected/npm";
|
|
5526
|
+
*
|
|
5527
|
+
* const program = Effect.gen(function* () {
|
|
5528
|
+
* const resolver = yield* CatalogResolver;
|
|
5529
|
+
* return yield* resolver.rangeOf("effect", Option.none());
|
|
5530
|
+
* });
|
|
5531
|
+
*
|
|
5532
|
+
* Effect.runPromise(Effect.provide(program, CatalogResolver.noop));
|
|
5533
|
+
* // => Option.none()
|
|
5534
|
+
* ```
|
|
5535
|
+
*
|
|
5536
|
+
* @public
|
|
5537
|
+
*/
|
|
5538
|
+
declare class CatalogResolver extends CatalogResolver_base {
|
|
5539
|
+
/**
|
|
5540
|
+
* No-op default: `rangeOf` always succeeds with `Option.none()`, never
|
|
5541
|
+
* consulting an actual catalog. A pure `Layer.succeed`, bound to a const
|
|
5542
|
+
* so it memoizes by reference — the layer is built once, not once per
|
|
5543
|
+
* reference to `CatalogResolver.noop`.
|
|
5544
|
+
*/
|
|
5545
|
+
static readonly noop: Layer.Layer<CatalogResolver>;
|
|
5546
|
+
}
|
|
5547
|
+
/**
|
|
5548
|
+
* The classification of a dependency specifier's protocol.
|
|
5549
|
+
*
|
|
5550
|
+
* @public
|
|
5551
|
+
*/
|
|
5552
|
+
type DependencyProtocol = "range" | "tag" | "git" | "url" | "npm" | "file" | "link" | "portal" | "catalog" | "workspace" | "unknown";
|
|
5553
|
+
//#endregion
|
|
5402
5554
|
//#region ../../node_modules/.pnpm/@effected+package-json@0.7.3_effect@4.0.0-beta.101/node_modules/@effected/package-json/index.d.ts
|
|
5403
5555
|
//#region src/Dependency.d.ts
|
|
5404
5556
|
declare const Dependency_base: Schema.Class<Dependency, Schema.Struct<{
|
|
@@ -5981,7 +6133,7 @@ declare class Package extends Package_base {
|
|
|
5981
6133
|
toJsonString(options?: PackageFormatOptions): string;
|
|
5982
6134
|
}
|
|
5983
6135
|
//#endregion
|
|
5984
|
-
//#region ../../node_modules/.pnpm/@effected+workspaces@0.
|
|
6136
|
+
//#region ../../node_modules/.pnpm/@effected+workspaces@0.10.0_@effected+jsonc@0.5.2_effect@4.0.0-beta.101__effect@4.0.0-beta.101/node_modules/@effected/workspaces/index.d.ts
|
|
5985
6137
|
//#region src/WorkspacePackage.d.ts
|
|
5986
6138
|
declare const PublishConfig_base: Schema.Class<PublishConfig, Schema.Struct<{
|
|
5987
6139
|
/** Scoped-package visibility. Its presence overrides `private`. */
|
|
@@ -6645,7 +6797,7 @@ declare class WorkspaceDiscovery extends WorkspaceDiscovery_base {
|
|
|
6645
6797
|
* // `Package.resolve` now resolves `workspace:*` for real.
|
|
6646
6798
|
* ```
|
|
6647
6799
|
*/
|
|
6648
|
-
static readonly workspaceResolver: Layer.Layer<WorkspaceResolver, never, WorkspaceDiscovery>;
|
|
6800
|
+
static readonly workspaceResolver: Layer.Layer<WorkspaceResolver$1, never, WorkspaceDiscovery>;
|
|
6649
6801
|
}
|
|
6650
6802
|
//#endregion
|
|
6651
6803
|
//#region src/ConfigDependencyHooks.d.ts
|
|
@@ -6706,7 +6858,7 @@ interface ConfigDependencyHooksShape {
|
|
|
6706
6858
|
* version+integrity) declared in `pnpm-workspace.yaml`.
|
|
6707
6859
|
* @param seed - The inline catalogs, as `catalog name → dependency → range`.
|
|
6708
6860
|
*/
|
|
6709
|
-
readonly inject: (root: string, configDependencies: Readonly<Record<string, string>>, seed: Readonly<Record<string, Readonly<Record<string, string>>>>) => Effect.Effect<HookInjection, CatalogAssemblyError>;
|
|
6861
|
+
readonly inject: (root: string, configDependencies: Readonly<Record<string, string>>, seed: Readonly<Record<string, Readonly<Record<string, string>>>>) => Effect.Effect<HookInjection, CatalogAssemblyError$1>;
|
|
6710
6862
|
}
|
|
6711
6863
|
declare const ConfigDependencyHooks_base: Context.ServiceClass<ConfigDependencyHooks, "@effected/workspaces/ConfigDependencyHooks", ConfigDependencyHooksShape>;
|
|
6712
6864
|
/**
|
|
@@ -6748,6 +6900,58 @@ declare class ConfigDependencyHooks extends ConfigDependencyHooks_base {
|
|
|
6748
6900
|
* `WorkspaceCatalogs.layerWithConfigDependencies`.
|
|
6749
6901
|
*/
|
|
6750
6902
|
static readonly layerLive: Layer.Layer<ConfigDependencyHooks>;
|
|
6903
|
+
/**
|
|
6904
|
+
* The subprocess layer: replays each config dependency's pnpmfile in a `node`
|
|
6905
|
+
* child process instead of an in-process dynamic `import()`, with identical
|
|
6906
|
+
* typed semantics to {@link ConfigDependencyHooks.layerLive} — the two are
|
|
6907
|
+
* drop-in interchangeable.
|
|
6908
|
+
*
|
|
6909
|
+
* @remarks
|
|
6910
|
+
* `layerLive` computes the `import()` path at runtime, and a bundler (rspack,
|
|
6911
|
+
* for one) compiles a *computed* dynamic import into a context module that
|
|
6912
|
+
* throws `Cannot find module 'file:///…'` at runtime — so in any bundled
|
|
6913
|
+
* consumer, a GitHub Action above all, the in-process replay is unreachable.
|
|
6914
|
+
* This layer keeps every computed load out of the bundle graph: the replay
|
|
6915
|
+
* program is a **static** string constant passed via argv
|
|
6916
|
+
* (`node --input-type=module -e <script> <root> <seed> <...names>`), and the
|
|
6917
|
+
* child process performs the computed imports where no bundler rewrote them.
|
|
6918
|
+
* A subprocess also keeps config-dependency code out of the consumer's own
|
|
6919
|
+
* process.
|
|
6920
|
+
*
|
|
6921
|
+
* The contract's semantics are unchanged, not the downstream fail-open shape:
|
|
6922
|
+
* an empty `configDependencies` returns the seed without spawning anything; a
|
|
6923
|
+
* `..` path segment in a dependency name fails typed **before** any spawn; a
|
|
6924
|
+
* missing pnpmfile (neither `.mjs` nor `.cjs`) is the one legitimate skip,
|
|
6925
|
+
* discriminated inside the child by `err.url` equality exactly as
|
|
6926
|
+
* `layerLive` discriminates in process; any other load failure — a syntax
|
|
6927
|
+
* error, a throwing top level, an `ERR_MODULE_NOT_FOUND` for a module the
|
|
6928
|
+
* pnpmfile itself imports — and a hook that throws when called are serialized
|
|
6929
|
+
* back per-name and surface typed as a `hooks`-source `CatalogAssemblyError`
|
|
6930
|
+
* naming that dependency. A hook's returned *data* stays tolerantly threaded
|
|
6931
|
+
* (last well-formed write wins), never fatal. Spawn and transport failures —
|
|
6932
|
+
* `node` absent, a non-zero exit without a result payload, unparseable
|
|
6933
|
+
* output — fail typed too, never a defect and never a silent skip.
|
|
6934
|
+
*
|
|
6935
|
+
* Two bounds this layer imposes that `layerLive` cannot: the replay is
|
|
6936
|
+
* given thirty seconds (a pnpmfile that loops or awaits forever fails typed
|
|
6937
|
+
* instead of hanging the memoized assemble pass — a subprocess is killable,
|
|
6938
|
+
* while `layerLive`'s in-process synchronous hook call is not interruptible
|
|
6939
|
+
* by any means, so the asymmetry is inherent, not a parity violation), and
|
|
6940
|
+
* the child's stdout is captured under `Run.jsonLine`'s 16 MiB default
|
|
6941
|
+
* ceiling (a hook that logs more than that fails typed as `tooLarge`, where
|
|
6942
|
+
* `layerLive` — which captures nothing — would succeed).
|
|
6943
|
+
*
|
|
6944
|
+
* Catalog folding and normalization stay in the **parent** (the same
|
|
6945
|
+
* `@pnpm/catalogs`-derived path `layerLive` uses); the child returns only the
|
|
6946
|
+
* raw threaded config slice, since the script cannot import kit code.
|
|
6947
|
+
*
|
|
6948
|
+
* Requires core's `ChildProcessSpawner`, resolved when the layer is built —
|
|
6949
|
+
* the consumer provides it once at the edge (`@effect/platform-node`'s
|
|
6950
|
+
* `NodeServices.layer`), the same discharge `@effected/git` uses. Wired by
|
|
6951
|
+
* `WorkspaceCatalogs.layerWithConfigDependenciesSubprocess` /
|
|
6952
|
+
* `Workspaces.layerWithConfigDependenciesSubprocess`.
|
|
6953
|
+
*/
|
|
6954
|
+
static readonly layerSubprocess: Layer.Layer<ConfigDependencyHooks, never, ChildProcessSpawner.ChildProcessSpawner>;
|
|
6751
6955
|
}
|
|
6752
6956
|
declare const DetectedPackageManager_base: Schema.Class<DetectedPackageManager, Schema.Struct<{
|
|
6753
6957
|
/** The detected manager. */
|
|
@@ -7297,7 +7501,7 @@ declare class CatalogSet extends CatalogSet_base {
|
|
|
7297
7501
|
*
|
|
7298
7502
|
* @param text - The raw YAML text.
|
|
7299
7503
|
*/
|
|
7300
|
-
static readonly fromWorkspaceYaml: (text: string) => Effect.Effect<CatalogSet, CatalogAssemblyError, never>;
|
|
7504
|
+
static readonly fromWorkspaceYaml: (text: string) => Effect.Effect<CatalogSet, CatalogAssemblyError$1, never>;
|
|
7301
7505
|
/**
|
|
7302
7506
|
* The `catalogs:` section of a pnpm lockfile, whose entries are either a bare
|
|
7303
7507
|
* range or a `{ specifier, version }` pair.
|
|
@@ -7345,7 +7549,7 @@ declare class CatalogSet extends CatalogSet_base {
|
|
|
7345
7549
|
*
|
|
7346
7550
|
* @param text - The raw root `package.json` text.
|
|
7347
7551
|
*/
|
|
7348
|
-
static readonly fromManifestWorkspaces: (text: string) => Effect.Effect<CatalogSet, CatalogAssemblyError, never>;
|
|
7552
|
+
static readonly fromManifestWorkspaces: (text: string) => Effect.Effect<CatalogSet, CatalogAssemblyError$1, never>;
|
|
7349
7553
|
/** Merge sets. Later sets win per dependency within a catalog. */
|
|
7350
7554
|
static merge(...sets: ReadonlyArray<CatalogSet>): CatalogSet;
|
|
7351
7555
|
/** Whether any catalog declares anything. */
|
|
@@ -7377,7 +7581,7 @@ declare class CatalogSet extends CatalogSet_base {
|
|
|
7377
7581
|
*
|
|
7378
7582
|
* @public
|
|
7379
7583
|
*/
|
|
7380
|
-
type CatalogAssemblyFailure = CatalogAssemblyError | WorkspaceRootNotFoundError;
|
|
7584
|
+
type CatalogAssemblyFailure = CatalogAssemblyError$1 | WorkspaceRootNotFoundError;
|
|
7381
7585
|
/**
|
|
7382
7586
|
* The {@link WorkspaceCatalogs} service shape.
|
|
7383
7587
|
*
|
|
@@ -7480,6 +7684,24 @@ declare class WorkspaceCatalogs extends WorkspaceCatalogs_base {
|
|
|
7480
7684
|
* Parameterized, so bind it to a `const` and reuse it.
|
|
7481
7685
|
*/
|
|
7482
7686
|
static readonly layerWithConfigDependencies: (options?: WorkspaceCatalogsOptions) => Layer.Layer<WorkspaceCatalogs, never, WorkspaceRoot | LockfileReader | FileSystem.FileSystem | Path.Path>;
|
|
7687
|
+
/**
|
|
7688
|
+
* The opt-in layer that replays config-dependency `pnpmfile` hooks in a
|
|
7689
|
+
* `node` **child process**: it wires
|
|
7690
|
+
* {@link ConfigDependencyHooks.layerSubprocess} in place of the in-process
|
|
7691
|
+
* `layerLive`.
|
|
7692
|
+
*
|
|
7693
|
+
* @remarks
|
|
7694
|
+
* Same typed semantics as {@link WorkspaceCatalogs.layerWithConfigDependencies}
|
|
7695
|
+
* — the two hook layers are drop-in interchangeable — but the replay's
|
|
7696
|
+
* computed dynamic `import()` runs in the subprocess, so it survives bundling
|
|
7697
|
+
* (a bundler compiles a computed in-process `import()` into a context module
|
|
7698
|
+
* that cannot resolve at runtime — every bundled GitHub Action hits this).
|
|
7699
|
+
* The cost is one extra requirement: core's `ChildProcessSpawner`, provided
|
|
7700
|
+
* once at the edge (`@effect/platform-node`'s `NodeServices.layer`) — the
|
|
7701
|
+
* same sanctioned R-widening as `Workspaces.layerWithGit`. Parameterized, so
|
|
7702
|
+
* bind it to a `const` and reuse it.
|
|
7703
|
+
*/
|
|
7704
|
+
static readonly layerWithConfigDependenciesSubprocess: (options?: WorkspaceCatalogsOptions) => Layer.Layer<WorkspaceCatalogs, never, WorkspaceRoot | LockfileReader | FileSystem.FileSystem | Path.Path | ChildProcessSpawner.ChildProcessSpawner>;
|
|
7483
7705
|
/**
|
|
7484
7706
|
* A test double satisfying the full {@link WorkspaceCatalogsShape} with no
|
|
7485
7707
|
* filesystem, lockfile read, or hook replay.
|
|
@@ -7548,7 +7770,7 @@ declare class WorkspaceCatalogs extends WorkspaceCatalogs_base {
|
|
|
7548
7770
|
* consumers to `_tag`-sniff `unknown`); only the remaining mechanism failure,
|
|
7549
7771
|
* an unfindable workspace root, is wrapped as `DependencyResolutionError`.
|
|
7550
7772
|
*/
|
|
7551
|
-
static readonly catalogResolver: Layer.Layer<CatalogResolver, never, WorkspaceCatalogs>;
|
|
7773
|
+
static readonly catalogResolver: Layer.Layer<CatalogResolver$1, never, WorkspaceCatalogs>;
|
|
7552
7774
|
}
|
|
7553
7775
|
//#endregion
|
|
7554
7776
|
//#region src/WorkspaceStateSnapshot.d.ts
|
|
@@ -7708,15 +7930,15 @@ declare class WorkspaceStateSnapshot extends WorkspaceStateSnapshot_base {
|
|
|
7708
7930
|
* were already assembled when it was captured, so this resolver is total —
|
|
7709
7931
|
* `rangeOf` never fails.
|
|
7710
7932
|
*/
|
|
7711
|
-
get catalogResolver(): Layer.Layer<CatalogResolver>;
|
|
7933
|
+
get catalogResolver(): Layer.Layer<CatalogResolver$1>;
|
|
7712
7934
|
/**
|
|
7713
7935
|
* A `WorkspaceResolver` layer implementing `@effected/npm`'s contract against
|
|
7714
7936
|
* THIS snapshot's captured versions — so code written to the contract resolves
|
|
7715
7937
|
* `workspace:` specifiers as of this ref. Built once per instance and cached.
|
|
7716
7938
|
*/
|
|
7717
|
-
get workspaceResolver(): Layer.Layer<WorkspaceResolver>;
|
|
7939
|
+
get workspaceResolver(): Layer.Layer<WorkspaceResolver$1>;
|
|
7718
7940
|
/** Both snapshot-scoped resolver layers merged. Built once per instance and cached. */
|
|
7719
|
-
get resolvers(): Layer.Layer<CatalogResolver | WorkspaceResolver>;
|
|
7941
|
+
get resolvers(): Layer.Layer<CatalogResolver$1 | WorkspaceResolver$1>;
|
|
7720
7942
|
}
|
|
7721
7943
|
//#endregion
|
|
7722
7944
|
//#region src/WorkspaceSnapshots.d.ts
|
|
@@ -7734,7 +7956,7 @@ declare class WorkspaceStateSnapshot extends WorkspaceStateSnapshot_base {
|
|
|
7734
7956
|
*
|
|
7735
7957
|
* @public
|
|
7736
7958
|
*/
|
|
7737
|
-
type WorkspaceSnapshotAtFailure = GitCommandError | NotARepositoryError | UnknownRefError | CatalogAssemblyError | WorkspaceRootNotFoundError;
|
|
7959
|
+
type WorkspaceSnapshotAtFailure = GitCommandError | NotARepositoryError | UnknownRefError | CatalogAssemblyError$1 | WorkspaceRootNotFoundError;
|
|
7738
7960
|
/**
|
|
7739
7961
|
* Every failure `WorkspaceSnapshots.worktree` can surface: the discovery
|
|
7740
7962
|
* failures plus a catalog-assembly failure.
|
|
@@ -7746,7 +7968,7 @@ type WorkspaceSnapshotAtFailure = GitCommandError | NotARepositoryError | Unknow
|
|
|
7746
7968
|
*
|
|
7747
7969
|
* @public
|
|
7748
7970
|
*/
|
|
7749
|
-
type WorkspaceSnapshotWorktreeFailure = WorkspaceDiscoveryFailure | CatalogAssemblyError;
|
|
7971
|
+
type WorkspaceSnapshotWorktreeFailure = WorkspaceDiscoveryFailure | CatalogAssemblyError$1;
|
|
7750
7972
|
/**
|
|
7751
7973
|
* Options for the {@link WorkspaceSnapshots} layer.
|
|
7752
7974
|
*
|