alchemy 2.0.0-beta.51 → 2.0.0-beta.52
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/exec.js +16 -22
- package/bin/exec.js.map +1 -1
- package/lib/Apply.js +15 -3
- package/lib/Apply.js.map +1 -1
- package/lib/Auth/AuthProvider.js +1 -1
- package/lib/Auth/AuthProvider.js.map +1 -1
- package/lib/Binding.d.ts.map +1 -1
- package/lib/Binding.js +12 -8
- package/lib/Binding.js.map +1 -1
- package/lib/Build/DevServer.d.ts +113 -0
- package/lib/Build/DevServer.d.ts.map +1 -0
- package/lib/Build/DevServer.js +212 -0
- package/lib/Build/DevServer.js.map +1 -0
- package/lib/Build/Local.d.ts +2 -0
- package/lib/Build/Local.d.ts.map +1 -0
- package/lib/Build/Local.js +4 -0
- package/lib/Build/Local.js.map +1 -0
- package/lib/Bundle/Bundle.js +1 -1
- package/lib/Bundle/Bundle.js.map +1 -1
- package/lib/Cloudflare/Access.js +1 -1
- package/lib/Cloudflare/Access.js.map +1 -1
- package/lib/Cloudflare/AiGateway/AiGateway.d.ts +1 -1
- package/lib/Cloudflare/AiGateway/AiGateway.js +1 -1
- package/lib/Cloudflare/Browser/Browser.d.ts +84 -12
- package/lib/Cloudflare/Browser/Browser.d.ts.map +1 -1
- package/lib/Cloudflare/Browser/Browser.js +80 -9
- package/lib/Cloudflare/Browser/Browser.js.map +1 -1
- package/lib/Cloudflare/Browser/BrowserBinding.d.ts +90 -16
- package/lib/Cloudflare/Browser/BrowserBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Browser/BrowserBinding.js +41 -6
- package/lib/Cloudflare/Browser/BrowserBinding.js.map +1 -1
- package/lib/Cloudflare/Browser/index.d.ts +1 -1
- package/lib/Cloudflare/Browser/index.d.ts.map +1 -1
- package/lib/Cloudflare/Browser/index.js.map +1 -1
- package/lib/Cloudflare/Container/ContainerBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Container/ContainerBinding.js +2 -4
- package/lib/Cloudflare/Container/ContainerBinding.js.map +1 -1
- package/lib/Cloudflare/Images/Images.d.ts +4 -3
- package/lib/Cloudflare/Images/Images.d.ts.map +1 -1
- package/lib/Cloudflare/Images/Images.js.map +1 -1
- package/lib/Cloudflare/Providers.d.ts +1 -1
- package/lib/Cloudflare/Providers.d.ts.map +1 -1
- package/lib/Cloudflare/Providers.js +4 -1
- package/lib/Cloudflare/Providers.js.map +1 -1
- package/lib/Cloudflare/RateLimit/RateLimit.d.ts +4 -3
- package/lib/Cloudflare/RateLimit/RateLimit.d.ts.map +1 -1
- package/lib/Cloudflare/RateLimit/RateLimit.js.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.d.ts +64 -12
- package/lib/Cloudflare/Website/StaticSite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.js +80 -30
- package/lib/Cloudflare/Website/StaticSite.js.map +1 -1
- package/lib/Cloudflare/Website/Vite.d.ts +36 -7
- package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Vite.js +26 -8
- package/lib/Cloudflare/Website/Vite.js.map +1 -1
- package/lib/Cloudflare/Workers/Assets.d.ts +10 -4
- package/lib/Cloudflare/Workers/Assets.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Assets.js +6 -6
- package/lib/Cloudflare/Workers/Assets.js.map +1 -1
- package/lib/Cloudflare/Workers/DynamicWorkerLoader.d.ts +4 -4
- package/lib/Cloudflare/Workers/InferEnv.d.ts +1 -1
- package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js +45 -11
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.d.ts +5 -4
- package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.js +4 -2
- package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.js.map +1 -1
- package/lib/Cloudflare/Workers/RpcWorker.d.ts +3 -2
- package/lib/Cloudflare/Workers/RpcWorker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/RpcWorker.js +5 -3
- package/lib/Cloudflare/Workers/RpcWorker.js.map +1 -1
- package/lib/Cloudflare/Workers/VersionMetadata.d.ts +99 -0
- package/lib/Cloudflare/Workers/VersionMetadata.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/VersionMetadata.js +65 -0
- package/lib/Cloudflare/Workers/VersionMetadata.js.map +1 -0
- package/lib/Cloudflare/Workers/VersionMetadataBinding.d.ts +35 -0
- package/lib/Cloudflare/Workers/VersionMetadataBinding.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/VersionMetadataBinding.js +31 -0
- package/lib/Cloudflare/Workers/VersionMetadataBinding.js.map +1 -0
- package/lib/Cloudflare/Workers/Worker.d.ts +18 -18
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js +23 -37
- package/lib/Cloudflare/Workers/Worker.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +7 -0
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts +2 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
- package/lib/Cloudflare/Workers/Workflow.d.ts +8 -1
- package/lib/Cloudflare/Workers/Workflow.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Workflow.js +1 -0
- package/lib/Cloudflare/Workers/Workflow.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkflowBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkflowBridge.js +31 -2
- package/lib/Cloudflare/Workers/WorkflowBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/index.d.ts +2 -0
- package/lib/Cloudflare/Workers/index.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/index.js +2 -0
- package/lib/Cloudflare/Workers/index.js.map +1 -1
- package/lib/Cloudflare/Zaraz/ZarazConfig.d.ts.map +1 -1
- package/lib/Diff.d.ts.map +1 -1
- package/lib/Diff.js +7 -0
- package/lib/Diff.js.map +1 -1
- package/lib/Drizzle/Postgres.d.ts +13 -12
- package/lib/Drizzle/Postgres.d.ts.map +1 -1
- package/lib/Drizzle/Postgres.js +13 -12
- package/lib/Drizzle/Postgres.js.map +1 -1
- package/lib/Drizzle/Schema.d.ts +1 -1
- package/lib/Drizzle/Schema.d.ts.map +1 -1
- package/lib/Drizzle/Schema.js +14 -6
- package/lib/Drizzle/Schema.js.map +1 -1
- package/lib/Local/RpcSerialization.js +5 -2
- package/lib/Local/RpcSerialization.js.map +1 -1
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +27 -25
- package/lib/Platform.js.map +1 -1
- package/lib/Resource.d.ts +1 -1
- package/lib/Resource.d.ts.map +1 -1
- package/lib/Resource.js +9 -12
- package/lib/Resource.js.map +1 -1
- package/lib/Runtime.d.ts +1 -1
- package/lib/Runtime.d.ts.map +1 -1
- package/lib/Runtime.js +3 -4
- package/lib/Runtime.js.map +1 -1
- package/lib/Util/effect.d.ts.map +1 -1
- package/lib/Util/effect.js +13 -15
- package/lib/Util/effect.js.map +1 -1
- package/lib/Util/poll.d.ts +0 -1
- package/lib/Util/poll.d.ts.map +1 -1
- package/lib/Util/poll.js +2 -2
- package/lib/Util/poll.js.map +1 -1
- package/lib/tsconfig.test.tsbuildinfo +1 -1
- package/package.json +20 -20
- package/src/Apply.ts +22 -3
- package/src/Auth/AuthProvider.ts +1 -1
- package/src/Binding.ts +45 -38
- package/src/Build/DevServer.ts +330 -0
- package/src/Build/Local.ts +4 -0
- package/src/Bundle/Bundle.ts +1 -1
- package/src/Cloudflare/Access.ts +1 -1
- package/src/Cloudflare/AiGateway/AiGateway.ts +1 -1
- package/src/Cloudflare/Browser/Browser.ts +84 -12
- package/src/Cloudflare/Browser/BrowserBinding.ts +205 -33
- package/src/Cloudflare/Browser/index.ts +15 -2
- package/src/Cloudflare/Container/ContainerBinding.ts +5 -10
- package/src/Cloudflare/Images/Images.ts +4 -3
- package/src/Cloudflare/Providers.ts +5 -0
- package/src/Cloudflare/RateLimit/RateLimit.ts +4 -3
- package/src/Cloudflare/Website/StaticSite.ts +154 -41
- package/src/Cloudflare/Website/Vite.ts +73 -25
- package/src/Cloudflare/Workers/Assets.ts +10 -8
- package/src/Cloudflare/Workers/DynamicWorkerLoader.ts +4 -4
- package/src/Cloudflare/Workers/InferEnv.ts +14 -12
- package/src/Cloudflare/Workers/LocalWorkerProvider.ts +54 -13
- package/src/Cloudflare/Workers/RpcDurableObjectNamespace.ts +11 -8
- package/src/Cloudflare/Workers/RpcWorker.ts +8 -7
- package/src/Cloudflare/Workers/VersionMetadata.ts +129 -0
- package/src/Cloudflare/Workers/VersionMetadataBinding.ts +82 -0
- package/src/Cloudflare/Workers/Worker.ts +60 -81
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +6 -0
- package/src/Cloudflare/Workers/WorkerBinding.ts +2 -0
- package/src/Cloudflare/Workers/Workflow.ts +12 -1
- package/src/Cloudflare/Workers/WorkflowBridge.ts +47 -6
- package/src/Cloudflare/Workers/index.ts +2 -0
- package/src/Diff.ts +7 -0
- package/src/Drizzle/Postgres.ts +13 -12
- package/src/Drizzle/Schema.ts +16 -6
- package/src/Local/RpcSerialization.ts +5 -2
- package/src/Platform.ts +36 -32
- package/src/Resource.ts +12 -13
- package/src/Runtime.ts +3 -7
- package/src/Util/effect.ts +13 -17
- package/src/Util/poll.ts +3 -3
package/bin/exec.js
CHANGED
|
@@ -24,7 +24,7 @@ import * as Data from "effect/Data";
|
|
|
24
24
|
import * as Duration from "effect/Duration";
|
|
25
25
|
import { flow, pipe } from "effect/Function";
|
|
26
26
|
import { SingleShotGen } from "effect/Utils";
|
|
27
|
-
import
|
|
27
|
+
import * as Effectable from "effect/Effectable";
|
|
28
28
|
import "effect/Predicate";
|
|
29
29
|
import "effect/Record";
|
|
30
30
|
import * as Cause from "effect/Cause";
|
|
@@ -798,24 +798,12 @@ const loadConfigProvider = (envFile$1) => {
|
|
|
798
798
|
|
|
799
799
|
//#endregion
|
|
800
800
|
//#region lib/Util/effect.js
|
|
801
|
-
const effectClass = ((impl) => impl === void 0 ? (innerImpl) => effectClass(innerImpl) : Object.assign(class {
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
static [Symbol.iterator]() {
|
|
806
|
-
return new SingleShotGen(this.asEffect());
|
|
807
|
-
}
|
|
808
|
-
static pipe(...fns) {
|
|
809
|
-
return pipeArguments(this, fns);
|
|
810
|
-
}
|
|
811
|
-
}, impl));
|
|
801
|
+
const effectClass = ((impl) => impl === void 0 ? (innerImpl) => effectClass(innerImpl) : Object.assign(class {}, Effectable.Prototype({
|
|
802
|
+
label: "alchemy/EffectClass",
|
|
803
|
+
evaluate: () => impl
|
|
804
|
+
})));
|
|
812
805
|
const taggedFunction = (tag$1, fn) => {
|
|
813
|
-
const overrides = {
|
|
814
|
-
asEffect: () => tag$1,
|
|
815
|
-
[Symbol.iterator]: () => tag$1[Symbol.iterator](),
|
|
816
|
-
pipe: (...fns) => pipeArguments(tag$1, fns),
|
|
817
|
-
toString: () => `${tag$1.toString()}.${fn.name}`
|
|
818
|
-
};
|
|
806
|
+
const overrides = { toString: () => `${tag$1.toString()}.${fn.name}` };
|
|
819
807
|
return new Proxy(fn, {
|
|
820
808
|
get: (target, prop, receiver) => Reflect.has(overrides, prop) ? Reflect.get(overrides, prop, receiver) : Reflect.has(target, prop) ? Reflect.get(target, prop, receiver) : Reflect.get(tag$1, prop, tag$1),
|
|
821
809
|
has: (target, prop) => Reflect.has(overrides, prop) || Reflect.has(target, prop) || Reflect.has(tag$1, prop)
|
|
@@ -907,7 +895,7 @@ const platform = Layer.mergeAll(PlatformServices, FetchHttpClient.layer, Logger.
|
|
|
907
895
|
const unwrapRpcHandlers = (handlers, streamKeys) => {
|
|
908
896
|
return Object.fromEntries(Object.entries(handlers).map(([key, value]) => [key, typeof value === "function" ? streamKeys?.includes(key) ? unwrapRpcStreamHandler(value) : unwrapRpcEffectHandler(value) : typeof value === "object" && value !== null ? unwrapRpcHandlers(value) : value]));
|
|
909
897
|
};
|
|
910
|
-
const serializeError = Schema.encodeSync(Schema.Defect);
|
|
898
|
+
const serializeError = Schema.encodeSync(Schema.Defect());
|
|
911
899
|
const unwrapRpcEffectHandler = (handler) => flow((...args) => serializeRpcArgs(args), (args) => Effect.promise(() => handler(args)), Effect.flatMap((exit) => {
|
|
912
900
|
if (exit._tag === "Success") return Exit.succeed(exit.value);
|
|
913
901
|
return Exit.failCause(Cause.fromReasons(exit.cause.map((reason) => {
|
|
@@ -981,6 +969,10 @@ const _hasUnresolved = (value) => {
|
|
|
981
969
|
const havePropsChanged = (oldProps, newProps) => hasOutputs(newProps) || JSON.stringify(canonicalize(oldProps ?? {}, false)) !== JSON.stringify(canonicalize(newProps ?? {}, false));
|
|
982
970
|
const canonicalize = (value, stripNullish) => {
|
|
983
971
|
if (stripNullish && value == null) return void 0;
|
|
972
|
+
if (Redacted.isRedacted(value)) return {
|
|
973
|
+
_tag: "Redacted",
|
|
974
|
+
value: Redacted.value(value)
|
|
975
|
+
};
|
|
984
976
|
if (Array.isArray(value)) return value.map((v) => canonicalize(v, stripNullish));
|
|
985
977
|
if (value && typeof value === "object") return Object.fromEntries(Object.entries(value).filter(([, nested]) => !stripNullish || nested != null).sort(([a], [b]) => a.localeCompare(b)).map(([key, nested]) => [key, canonicalize(nested, stripNullish)]));
|
|
986
978
|
return value;
|
|
@@ -2487,7 +2479,9 @@ const collectGarbage = Effect.fnUntraced(function* (plan, session) {
|
|
|
2487
2479
|
removalPolicy: node.resource.RemovalPolicy
|
|
2488
2480
|
});
|
|
2489
2481
|
}
|
|
2490
|
-
|
|
2482
|
+
const retainOldGeneration = !isDeleteNode(node) && node.removalPolicy === "retain";
|
|
2483
|
+
if (retainOldGeneration) yield* scopedSession.note("Retaining replaced resource (removal policy: retain)...");
|
|
2484
|
+
if (attr !== void 0 && !retainOldGeneration) yield* provider.delete({
|
|
2491
2485
|
id: logicalId,
|
|
2492
2486
|
instanceId,
|
|
2493
2487
|
olds: props,
|
|
@@ -2503,7 +2497,7 @@ const collectGarbage = Effect.fnUntraced(function* (plan, session) {
|
|
|
2503
2497
|
});
|
|
2504
2498
|
yield* report("deleted");
|
|
2505
2499
|
} else {
|
|
2506
|
-
yield* scopedSession.note("Cleaning up replaced resource...");
|
|
2500
|
+
if (!retainOldGeneration) yield* scopedSession.note("Cleaning up replaced resource...");
|
|
2507
2501
|
if (node.old.status === "replacing" || node.old.status === "replaced") yield* commit({
|
|
2508
2502
|
status: "replaced",
|
|
2509
2503
|
fqn,
|
|
@@ -2532,7 +2526,7 @@ const collectGarbage = Effect.fnUntraced(function* (plan, session) {
|
|
|
2532
2526
|
bindings: excludeDeletedBindings(node.bindings),
|
|
2533
2527
|
removalPolicy: node.removalPolicy
|
|
2534
2528
|
});
|
|
2535
|
-
yield* scopedSession.note("Replaced resource cleanup complete.");
|
|
2529
|
+
yield* scopedSession.note(retainOldGeneration ? "Replaced resource retained." : "Replaced resource cleanup complete.");
|
|
2536
2530
|
}
|
|
2537
2531
|
}));
|
|
2538
2532
|
});
|