rivetkit 2.0.27 → 2.0.29-rc.1
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/schemas/file-system-driver/v3.ts +167 -0
- package/dist/tsup/actor/errors.cjs +2 -2
- package/dist/tsup/actor/errors.js +1 -1
- package/dist/tsup/{chunk-TJ2PJ5C7.cjs → chunk-2Q6FJITJ.cjs} +3 -3
- package/dist/tsup/{chunk-TJ2PJ5C7.cjs.map → chunk-2Q6FJITJ.cjs.map} +1 -1
- package/dist/tsup/{chunk-GUH2PNPG.js → chunk-5RN6O2RW.js} +3 -3
- package/dist/tsup/{chunk-F3SQLO3X.cjs → chunk-AJ36VBHL.cjs} +13 -12
- package/dist/tsup/chunk-AJ36VBHL.cjs.map +1 -0
- package/dist/tsup/{chunk-4GJQDTAG.cjs → chunk-BAEMOCS7.cjs} +666 -342
- package/dist/tsup/chunk-BAEMOCS7.cjs.map +1 -0
- package/dist/tsup/chunk-CGIRSKRW.js +891 -0
- package/dist/tsup/chunk-CGIRSKRW.js.map +1 -0
- package/dist/tsup/{chunk-BBTOBXEO.js → chunk-CHPLLKNL.js} +579 -103
- package/dist/tsup/chunk-CHPLLKNL.js.map +1 -0
- package/dist/tsup/{chunk-D7A47BVR.js → chunk-EU7VV5PU.js} +2 -2
- package/dist/tsup/{chunk-2NNICHGY.js → chunk-EVQJYFFP.js} +2 -2
- package/dist/tsup/{chunk-C3UREFUI.js → chunk-HXWPIIEM.js} +15 -6
- package/dist/tsup/chunk-HXWPIIEM.js.map +1 -0
- package/dist/tsup/chunk-IRGPMCKQ.cjs +129 -0
- package/dist/tsup/chunk-IRGPMCKQ.cjs.map +1 -0
- package/dist/tsup/{chunk-QC4AE54W.cjs → chunk-J3M5ATO5.cjs} +3 -3
- package/dist/tsup/{chunk-QC4AE54W.cjs.map → chunk-J3M5ATO5.cjs.map} +1 -1
- package/dist/tsup/{chunk-DRJCTDDT.cjs → chunk-J74MGKP5.cjs} +20 -11
- package/dist/tsup/chunk-J74MGKP5.cjs.map +1 -0
- package/dist/tsup/{chunk-XJMYGATE.cjs → chunk-MAQSR26X.cjs} +8 -3
- package/dist/tsup/chunk-MAQSR26X.cjs.map +1 -0
- package/dist/tsup/{chunk-XNKWXMIT.cjs → chunk-MG2TWYPF.cjs} +794 -318
- package/dist/tsup/chunk-MG2TWYPF.cjs.map +1 -0
- package/dist/tsup/{chunk-LQOCWGP6.js → chunk-P2RZJPYI.js} +1 -1
- package/dist/tsup/{chunk-XU4GGB6J.js → chunk-QKDCNAPW.js} +504 -181
- package/dist/tsup/chunk-QKDCNAPW.js.map +1 -0
- package/dist/tsup/{chunk-G7YZSSWV.cjs → chunk-QT7PPLSB.cjs} +6 -6
- package/dist/tsup/{chunk-G7YZSSWV.cjs.map → chunk-QT7PPLSB.cjs.map} +1 -1
- package/dist/tsup/{chunk-VRZNWBDK.js → chunk-SDJFBUFE.js} +45 -46
- package/dist/tsup/chunk-SDJFBUFE.js.map +1 -0
- package/dist/tsup/chunk-SE37OCA2.cjs +891 -0
- package/dist/tsup/chunk-SE37OCA2.cjs.map +1 -0
- package/dist/tsup/{chunk-6F2NCX7R.js → chunk-WUFUT7CZ.js} +2 -2
- package/dist/tsup/{chunk-LZADH4QA.cjs → chunk-XVBIJET6.cjs} +10 -10
- package/dist/tsup/{chunk-LZADH4QA.cjs.map → chunk-XVBIJET6.cjs.map} +1 -1
- package/dist/tsup/{chunk-KSQQU7NC.js → chunk-YJXB7BPR.js} +8 -7
- package/dist/tsup/chunk-YJXB7BPR.js.map +1 -0
- package/dist/tsup/client/mod.cjs +9 -9
- package/dist/tsup/client/mod.d.cts +3 -2
- package/dist/tsup/client/mod.d.ts +3 -2
- package/dist/tsup/client/mod.js +8 -8
- package/dist/tsup/common/log.cjs +3 -3
- package/dist/tsup/common/log.d.cts +9 -1
- package/dist/tsup/common/log.d.ts +9 -1
- package/dist/tsup/common/log.js +2 -2
- package/dist/tsup/common/websocket.cjs +4 -4
- package/dist/tsup/common/websocket.js +3 -3
- package/dist/tsup/{config-Bo-blHpJ.d.ts → config-CcMdKDv9.d.ts} +301 -899
- package/dist/tsup/{config-BRDYDraU.d.cts → config-DxlmiJS1.d.cts} +301 -899
- package/dist/tsup/driver-helpers/mod.cjs +5 -5
- package/dist/tsup/driver-helpers/mod.d.cts +2 -1
- package/dist/tsup/driver-helpers/mod.d.ts +2 -1
- package/dist/tsup/driver-helpers/mod.js +4 -4
- package/dist/tsup/driver-test-suite/mod.cjs +74 -74
- package/dist/tsup/driver-test-suite/mod.d.cts +2 -1
- package/dist/tsup/driver-test-suite/mod.d.ts +2 -1
- package/dist/tsup/driver-test-suite/mod.js +11 -11
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.d.cts +5 -4
- package/dist/tsup/inspector/mod.d.ts +5 -4
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/mod.cjs +10 -10
- package/dist/tsup/mod.d.cts +3 -2
- package/dist/tsup/mod.d.ts +3 -2
- package/dist/tsup/mod.js +9 -9
- package/dist/tsup/test/mod.cjs +12 -11
- package/dist/tsup/test/mod.cjs.map +1 -1
- package/dist/tsup/test/mod.d.cts +2 -6
- package/dist/tsup/test/mod.d.ts +2 -6
- package/dist/tsup/test/mod.js +11 -10
- package/dist/tsup/utils.cjs +3 -3
- package/dist/tsup/utils.js +2 -2
- package/package.json +7 -6
- package/src/actor/config.ts +21 -20
- package/src/actor/conn/mod.ts +5 -1
- package/src/actor/instance/connection-manager.ts +5 -1
- package/src/actor/instance/event-manager.ts +5 -1
- package/src/actor/instance/state-manager.ts +19 -3
- package/src/actor/protocol/old.ts +3 -0
- package/src/actor/protocol/serde.ts +5 -1
- package/src/actor/router-endpoints.ts +2 -0
- package/src/client/actor-conn.ts +2 -0
- package/src/client/actor-handle.ts +3 -0
- package/src/client/config.ts +1 -1
- package/src/client/utils.ts +4 -1
- package/src/common/router.ts +5 -1
- package/src/driver-helpers/utils.ts +8 -2
- package/src/drivers/engine/config.ts +6 -3
- package/src/drivers/file-system/global-state.ts +46 -1
- package/src/drivers/file-system/manager.ts +4 -0
- package/src/inspector/config.ts +1 -2
- package/src/manager/driver.ts +4 -0
- package/src/manager/router-schema.ts +7 -7
- package/src/manager/router.ts +4 -4
- package/src/registry/run-config.ts +9 -5
- package/src/remote-manager-driver/actor-http-client.ts +1 -1
- package/src/remote-manager-driver/api-utils.ts +2 -0
- package/src/schemas/actor-persist/versioned.ts +126 -54
- package/src/schemas/client-protocol/versioned.ts +173 -42
- package/src/schemas/file-system-driver/mod.ts +1 -1
- package/src/schemas/file-system-driver/versioned.ts +129 -45
- package/src/serde.ts +9 -2
- package/src/test/config.ts +13 -12
- package/src/test/mod.ts +56 -82
- package/dist/tsup/chunk-2TZH6VO6.cjs +0 -514
- package/dist/tsup/chunk-2TZH6VO6.cjs.map +0 -1
- package/dist/tsup/chunk-4GJQDTAG.cjs.map +0 -1
- package/dist/tsup/chunk-5YDKTW6Y.js +0 -514
- package/dist/tsup/chunk-5YDKTW6Y.js.map +0 -1
- package/dist/tsup/chunk-BBTOBXEO.js.map +0 -1
- package/dist/tsup/chunk-C3UREFUI.js.map +0 -1
- package/dist/tsup/chunk-DRJCTDDT.cjs.map +0 -1
- package/dist/tsup/chunk-F3SQLO3X.cjs.map +0 -1
- package/dist/tsup/chunk-FYZLEH57.cjs +0 -130
- package/dist/tsup/chunk-FYZLEH57.cjs.map +0 -1
- package/dist/tsup/chunk-KSQQU7NC.js.map +0 -1
- package/dist/tsup/chunk-VRZNWBDK.js.map +0 -1
- package/dist/tsup/chunk-XJMYGATE.cjs.map +0 -1
- package/dist/tsup/chunk-XNKWXMIT.cjs.map +0 -1
- package/dist/tsup/chunk-XU4GGB6J.js.map +0 -1
- package/src/common/versioned-data.ts +0 -95
- /package/dist/tsup/{chunk-GUH2PNPG.js.map → chunk-5RN6O2RW.js.map} +0 -0
- /package/dist/tsup/{chunk-D7A47BVR.js.map → chunk-EU7VV5PU.js.map} +0 -0
- /package/dist/tsup/{chunk-2NNICHGY.js.map → chunk-EVQJYFFP.js.map} +0 -0
- /package/dist/tsup/{chunk-LQOCWGP6.js.map → chunk-P2RZJPYI.js.map} +0 -0
- /package/dist/tsup/{chunk-6F2NCX7R.js.map → chunk-WUFUT7CZ.js.map} +0 -0
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
export interface VersionedData<T> {
|
|
2
|
-
version: number;
|
|
3
|
-
data: T;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
export type MigrationFn<TFrom, TTo> = (data: TFrom) => TTo;
|
|
7
|
-
|
|
8
|
-
export interface VersionedDataConfig<T> {
|
|
9
|
-
currentVersion: number;
|
|
10
|
-
migrations: Map<number, MigrationFn<any, any>>;
|
|
11
|
-
serializeVersion: (data: T) => Uint8Array;
|
|
12
|
-
deserializeVersion: (bytes: Uint8Array) => T;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export class VersionedDataHandler<T> {
|
|
16
|
-
constructor(private config: VersionedDataConfig<T>) {}
|
|
17
|
-
|
|
18
|
-
serializeWithEmbeddedVersion(data: T): Uint8Array {
|
|
19
|
-
const versioned: VersionedData<Uint8Array> = {
|
|
20
|
-
version: this.config.currentVersion,
|
|
21
|
-
data: this.config.serializeVersion(data),
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
return this.embedVersion(versioned);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
deserializeWithEmbeddedVersion(bytes: Uint8Array): T {
|
|
28
|
-
const versioned = this.extractVersion(bytes);
|
|
29
|
-
return this.deserialize(versioned.data, versioned.version);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
serialize(data: T, version: number): Uint8Array {
|
|
33
|
-
return this.config.serializeVersion(data);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
deserialize(bytes: Uint8Array, version: number): T {
|
|
37
|
-
if (version === this.config.currentVersion) {
|
|
38
|
-
return this.config.deserializeVersion(bytes);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
if (version > this.config.currentVersion) {
|
|
42
|
-
throw new Error(
|
|
43
|
-
`Cannot decode data from version ${version}, current version is ${this.config.currentVersion}`,
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
let currentData: any = this.config.deserializeVersion(bytes);
|
|
48
|
-
let currentVersion = version;
|
|
49
|
-
|
|
50
|
-
while (currentVersion < this.config.currentVersion) {
|
|
51
|
-
const migration = this.config.migrations.get(currentVersion);
|
|
52
|
-
if (!migration) {
|
|
53
|
-
throw new Error(
|
|
54
|
-
`No migration found from version ${currentVersion} to ${currentVersion + 1}`,
|
|
55
|
-
);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
currentData = migration(currentData);
|
|
59
|
-
currentVersion++;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return currentData;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
private embedVersion(data: VersionedData<Uint8Array>): Uint8Array {
|
|
66
|
-
const versionBytes = new Uint8Array(2);
|
|
67
|
-
new DataView(versionBytes.buffer).setUint16(0, data.version, true);
|
|
68
|
-
|
|
69
|
-
const result = new Uint8Array(versionBytes.length + data.data.length);
|
|
70
|
-
result.set(versionBytes);
|
|
71
|
-
result.set(data.data, versionBytes.length);
|
|
72
|
-
|
|
73
|
-
return result;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
private extractVersion(bytes: Uint8Array): VersionedData<Uint8Array> {
|
|
77
|
-
if (bytes.length < 2) {
|
|
78
|
-
throw new Error("Invalid versioned data: too short");
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
const version = new DataView(bytes.buffer, bytes.byteOffset).getUint16(
|
|
82
|
-
0,
|
|
83
|
-
true,
|
|
84
|
-
);
|
|
85
|
-
const data = bytes.slice(2);
|
|
86
|
-
|
|
87
|
-
return { version, data };
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
export function createVersionedDataHandler<T>(
|
|
92
|
-
config: VersionedDataConfig<T>,
|
|
93
|
-
): VersionedDataHandler<T> {
|
|
94
|
-
return new VersionedDataHandler(config);
|
|
95
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|