@livestore/webmesh 0.0.0-snapshot-ee8e0fc3b894cf3159269c9c8969a8fc4b398dca → 0.0.0-snapshot-b12fe44662a4a2f917d402ea2562edb3c404f26a
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/.tsbuildinfo +1 -1
- package/dist/channel/proxy-channel.d.ts.map +1 -1
- package/dist/channel/proxy-channel.js +9 -5
- package/dist/channel/proxy-channel.js.map +1 -1
- package/dist/common.d.ts +8 -0
- package/dist/common.d.ts.map +1 -1
- package/dist/mesh-schema.d.ts +24 -1
- package/dist/mesh-schema.d.ts.map +1 -1
- package/dist/mesh-schema.js +13 -1
- package/dist/mesh-schema.js.map +1 -1
- package/dist/node.d.ts +12 -5
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +66 -2
- package/dist/node.js.map +1 -1
- package/dist/node.test.js +17 -0
- package/dist/node.test.js.map +1 -1
- package/dist/websocket-connection.d.ts.map +1 -1
- package/dist/websocket-connection.js +5 -4
- package/dist/websocket-connection.js.map +1 -1
- package/package.json +3 -3
- package/src/channel/proxy-channel.ts +9 -5
- package/src/mesh-schema.ts +14 -0
- package/src/node.test.ts +35 -0
- package/src/node.ts +109 -5
- package/src/websocket-connection.ts +9 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-channel.d.ts","sourceRoot":"","sources":["../../src/channel/proxy-channel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAEL,MAAM,EAKN,KAAK,EAEL,MAAM,EACN,KAAK,EAGL,UAAU,EACX,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,UAAU,oBAAoB;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAClC,QAAQ,EAAE,YAAY,CAAA;IACtB,4BAA4B,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACzD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,UAAU,CAAC,kBAAkB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACtF,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;KAChC,CAAA;CACF;AAED,eAAO,MAAM,gBAAgB,GAAI,6FAQ9B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"proxy-channel.d.ts","sourceRoot":"","sources":["../../src/channel/proxy-channel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAEL,MAAM,EAKN,KAAK,EAEL,MAAM,EACN,KAAK,EAGL,UAAU,EACX,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,UAAU,oBAAoB;IAC5B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAClC,QAAQ,EAAE,YAAY,CAAA;IACtB,4BAA4B,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACzD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,UAAU,CAAC,kBAAkB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACtF,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;KAChC,CAAA;CACF;AAED,eAAO,MAAM,gBAAgB,GAAI,6FAQ9B,oBAAoB,8EAsTpB,CAAA"}
|
|
@@ -74,7 +74,7 @@ export const makeProxyChannel = ({ queue, nodeName, newConnectionAvailablePubSub
|
|
|
74
74
|
// return shouldNeverHappen(`Expected proxy channel to be pending but got ${channelState._tag}`)
|
|
75
75
|
if (channelState._tag === 'Established' &&
|
|
76
76
|
channelState.combinedChannelId !== packet.combinedChannelId) {
|
|
77
|
-
return shouldNeverHappen(`Expected proxy channel to have the same combinedChannelId as the packet:\n${channelState.combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
77
|
+
return shouldNeverHappen(`ProxyChannel[${channelKey}]: Expected proxy channel to have the same combinedChannelId as the packet:\n${channelState.combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
78
78
|
}
|
|
79
79
|
else {
|
|
80
80
|
// for now just ignore it but should be looked into (there seems to be some kind of race condition/inefficiency)
|
|
@@ -82,7 +82,7 @@ export const makeProxyChannel = ({ queue, nodeName, newConnectionAvailablePubSub
|
|
|
82
82
|
}
|
|
83
83
|
const combinedChannelId = getCombinedChannelId(packet.channelIdCandidate);
|
|
84
84
|
if (combinedChannelId !== packet.combinedChannelId) {
|
|
85
|
-
return yield* Effect.die(`Expected proxy channel to have the same combinedChannelId as the packet:\n${combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
85
|
+
return yield* Effect.die(`ProxyChannel[${channelKey}]: Expected proxy channel to have the same combinedChannelId as the packet:\n${combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
86
86
|
}
|
|
87
87
|
yield* setStateToEstablished(packet.combinedChannelId);
|
|
88
88
|
return;
|
|
@@ -94,7 +94,7 @@ export const makeProxyChannel = ({ queue, nodeName, newConnectionAvailablePubSub
|
|
|
94
94
|
return;
|
|
95
95
|
}
|
|
96
96
|
if (channelState.combinedChannelId !== packet.combinedChannelId) {
|
|
97
|
-
return yield* Effect.die(`Expected proxy channel to have the same combinedChannelId as the packet:\n${channelState.combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
97
|
+
return yield* Effect.die(`ProxyChannel[${channelKey}]: Expected proxy channel to have the same combinedChannelId as the packet:\n${channelState.combinedChannelId} (channel) === ${packet.combinedChannelId} (packet)`);
|
|
98
98
|
}
|
|
99
99
|
yield* respondToSender(MeshSchema.ProxyChannelPayloadAck.make({
|
|
100
100
|
reqId: packet.id,
|
|
@@ -115,7 +115,7 @@ export const makeProxyChannel = ({ queue, nodeName, newConnectionAvailablePubSub
|
|
|
115
115
|
return;
|
|
116
116
|
}
|
|
117
117
|
const ack = channelState.ackMap.get(packet.reqId) ??
|
|
118
|
-
shouldNeverHappen(`Expected ack for ${packet.reqId}
|
|
118
|
+
shouldNeverHappen(`[ProxyChannel[${channelKey}]] Expected ack for ${packet.reqId}`);
|
|
119
119
|
yield* Deferred.succeed(ack, void 0);
|
|
120
120
|
channelState.ackMap.delete(packet.reqId);
|
|
121
121
|
return;
|
|
@@ -164,13 +164,17 @@ export const makeProxyChannel = ({ queue, nodeName, newConnectionAvailablePubSub
|
|
|
164
164
|
target,
|
|
165
165
|
combinedChannelId,
|
|
166
166
|
});
|
|
167
|
+
// TODO consider handling previous ackMap entries which might leak/fill-up memory
|
|
168
|
+
// as only successful acks are removed from the map
|
|
167
169
|
ackMap.set(packet.id, ack);
|
|
168
170
|
yield* sendPacket(packet);
|
|
169
171
|
yield* ack;
|
|
170
172
|
yield* Deferred.succeed(sentDeferred, void 0);
|
|
171
173
|
debugInfo.pendingSends--;
|
|
172
174
|
});
|
|
173
|
-
|
|
175
|
+
// TODO make this configurable
|
|
176
|
+
// Schedule.exponential(10): 10, 20, 40, 80, 160, 320, ...
|
|
177
|
+
yield* innerSend.pipe(Effect.timeout(100), Effect.retry(Schedule.exponential(10)), Effect.orDie);
|
|
174
178
|
}).pipe(Effect.tapErrorCause(Effect.logError));
|
|
175
179
|
const rerunOnNewChannelFiber = yield* connectedStateRef.changes.pipe(Stream.filter((_) => _ === false), Stream.tap(() => FiberHandle.run(sendFiberHandle, trySend)), Stream.runDrain, Effect.fork);
|
|
176
180
|
yield* FiberHandle.run(sendFiberHandle, trySend);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-channel.js","sourceRoot":"","sources":["../../src/channel/proxy-channel.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"proxy-channel.js","sourceRoot":"","sources":["../../src/channel/proxy-channel.ts"],"names":[],"mappings":"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"}
|
package/dist/common.d.ts
CHANGED
|
@@ -94,6 +94,14 @@ export declare const packetAsOtelAttributes: (packet: typeof Packet.Type) => {
|
|
|
94
94
|
readonly _tag: "NetworkConnectionTopologyResponse";
|
|
95
95
|
readonly nodeName: string;
|
|
96
96
|
readonly connections: readonly string[];
|
|
97
|
+
} | {
|
|
98
|
+
readonly id: string;
|
|
99
|
+
readonly target: "-";
|
|
100
|
+
readonly source: string;
|
|
101
|
+
readonly channelName: string;
|
|
102
|
+
readonly hops: readonly string[];
|
|
103
|
+
readonly _tag: "BroadcastChannelPacket";
|
|
104
|
+
readonly payload: any;
|
|
97
105
|
} | undefined;
|
|
98
106
|
packetId: string;
|
|
99
107
|
'span.label': string;
|
package/dist/common.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAa,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAExE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAExF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,OAAO,kBAAkB,CAAC,IAAI,CAAA;IACtC,eAAe,EAAE,CAAC,GAAG,EAAE,OAAO,kBAAkB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAC9E,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,OAAO,oBAAoB,CAAC,IAAI,CAAA;IACxC,eAAe,EAAE,CAAC,GAAG,EAAE,OAAO,oBAAoB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAChF,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAA;AAEjC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAChC,MAAM,MAAM,UAAU,GAAG,UAAU,YAAY,iBAAiB,WAAW,EAAE,CAAA;;;;AAG7E,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAKjD;CAAG;AAEJ,eAAO,MAAM,sBAAsB,GAAI,QAAQ,OAAO,MAAM,CAAC,IAAI
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAa,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAExE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAExF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,OAAO,kBAAkB,CAAC,IAAI,CAAA;IACtC,eAAe,EAAE,CAAC,GAAG,EAAE,OAAO,kBAAkB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAC9E,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,OAAO,oBAAoB,CAAC,IAAI,CAAA;IACxC,eAAe,EAAE,CAAC,GAAG,EAAE,OAAO,oBAAoB,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAChF,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAA;AAEjC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAChC,MAAM,MAAM,UAAU,GAAG,UAAU,YAAY,iBAAiB,WAAW,EAAE,CAAA;;;;AAG7E,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAKjD;CAAG;AAEJ,eAAO,MAAM,sBAAsB,GAAI,QAAQ,OAAO,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK/D,CAAA"}
|
package/dist/mesh-schema.d.ts
CHANGED
|
@@ -128,13 +128,36 @@ declare const NetworkConnectionTopologyResponse_base: Schema.TaggedStruct<"Netwo
|
|
|
128
128
|
}>;
|
|
129
129
|
export declare class NetworkConnectionTopologyResponse extends NetworkConnectionTopologyResponse_base {
|
|
130
130
|
}
|
|
131
|
+
export declare const BroadcastChannelPacket: Schema.TaggedStruct<"BroadcastChannelPacket", {
|
|
132
|
+
id: Schema.PropertySignature<":", string, never, "?:", string | undefined, true, never>;
|
|
133
|
+
channelName: typeof Schema.String;
|
|
134
|
+
/**
|
|
135
|
+
* The payload is expected to be encoded/decoded by the send/listen schema.
|
|
136
|
+
* Transferables are not supported.
|
|
137
|
+
*/
|
|
138
|
+
payload: typeof Schema.Any;
|
|
139
|
+
hops: Schema.Array$<typeof Schema.String>;
|
|
140
|
+
source: typeof Schema.String;
|
|
141
|
+
target: Schema.Literal<["-"]>;
|
|
142
|
+
}>;
|
|
131
143
|
declare const MessageChannelPacket_base: Schema.Union<[typeof MessageChannelRequest, typeof MessageChannelResponseSuccess, typeof MessageChannelResponseNoTransferables]>;
|
|
132
144
|
export declare class MessageChannelPacket extends MessageChannelPacket_base {
|
|
133
145
|
}
|
|
134
146
|
declare const ProxyChannelPacket_base: Schema.Union<[typeof ProxyChannelRequest, typeof ProxyChannelResponseSuccess, typeof ProxyChannelPayload, typeof ProxyChannelPayloadAck]>;
|
|
135
147
|
export declare class ProxyChannelPacket extends ProxyChannelPacket_base {
|
|
136
148
|
}
|
|
137
|
-
declare const Packet_base: Schema.Union<[typeof MessageChannelPacket, typeof ProxyChannelPacket, typeof NetworkConnectionAdded, typeof NetworkConnectionTopologyRequest, typeof NetworkConnectionTopologyResponse
|
|
149
|
+
declare const Packet_base: Schema.Union<[typeof MessageChannelPacket, typeof ProxyChannelPacket, typeof NetworkConnectionAdded, typeof NetworkConnectionTopologyRequest, typeof NetworkConnectionTopologyResponse, Schema.TaggedStruct<"BroadcastChannelPacket", {
|
|
150
|
+
id: Schema.PropertySignature<":", string, never, "?:", string | undefined, true, never>;
|
|
151
|
+
channelName: typeof Schema.String;
|
|
152
|
+
/**
|
|
153
|
+
* The payload is expected to be encoded/decoded by the send/listen schema.
|
|
154
|
+
* Transferables are not supported.
|
|
155
|
+
*/
|
|
156
|
+
payload: typeof Schema.Any;
|
|
157
|
+
hops: Schema.Array$<typeof Schema.String>;
|
|
158
|
+
source: typeof Schema.String;
|
|
159
|
+
target: Schema.Literal<["-"]>;
|
|
160
|
+
}>]>;
|
|
138
161
|
export declare class Packet extends Packet_base {
|
|
139
162
|
}
|
|
140
163
|
declare const MessageChannelPing_base: Schema.TaggedStruct<"MessageChannelPing", {}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-schema.d.ts","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,yBAAyB,CAAA;;;;IA6B5D,oEAAoE;;IAEpE;;;OAGG;;;;;;;;AAhBL;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,0BAWzC;CAAG;;;;;;;;;;;;AAEL,qBAAa,6BAA8B,SAAQ,kCAOjD;CAAG;;;;;;;;;;AAEL,qBAAa,qCAAsC,SAAQ,0CAO1D;CAAG;;;;;;;;;;AAEJ,qBAAa,mBAAoB,SAAQ,wBAIvC;CAAG;;;;;;;;;;;;AAEL,qBAAa,2BAA4B,SAAQ,gCAM/C;CAAG;;;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBAKvC;CAAG;;;;;;;;;;;AAEL,qBAAa,sBAAuB,SAAQ,2BAK1C;CAAG;;;;;;AAEL;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,2BAI1C;CAAG;;;;IAKH,iDAAiD;;;;AAHnD,qBAAa,gCAAiC,SAAQ,qCAMpD;CAAG;;;;;;;IAQH,iDAAiD;;;;AANnD,qBAAa,iCAAkC,SAAQ,sCASrD;CAAG
|
|
1
|
+
{"version":3,"file":"mesh-schema.d.ts","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,yBAAyB,CAAA;;;;IA6B5D,oEAAoE;;IAEpE;;;OAGG;;;;;;;;AAhBL;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,0BAWzC;CAAG;;;;;;;;;;;;AAEL,qBAAa,6BAA8B,SAAQ,kCAOjD;CAAG;;;;;;;;;;AAEL,qBAAa,qCAAsC,SAAQ,0CAO1D;CAAG;;;;;;;;;;AAEJ,qBAAa,mBAAoB,SAAQ,wBAIvC;CAAG;;;;;;;;;;;;AAEL,qBAAa,2BAA4B,SAAQ,gCAM/C;CAAG;;;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBAKvC;CAAG;;;;;;;;;;;AAEL,qBAAa,sBAAuB,SAAQ,2BAK1C;CAAG;;;;;;AAEL;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,2BAI1C;CAAG;;;;IAKH,iDAAiD;;;;AAHnD,qBAAa,gCAAiC,SAAQ,qCAMpD;CAAG;;;;;;;IAQH,iDAAiD;;;;AANnD,qBAAa,iCAAkC,SAAQ,sCASrD;CAAG;AAEL,eAAO,MAAM,sBAAsB;;;IAGjC;;;OAGG;;;;;EAKH,CAAA;;AAEF,qBAAa,oBAAqB,SAAQ,yBAIzC;CAAG;;AAEJ,qBAAa,kBAAmB,SAAQ,uBAKvC;CAAG;;;;IArBF;;;OAGG;;;;;;AAoBL,qBAAa,MAAO,SAAQ,WAO3B;CAAG;;AAEJ,qBAAa,kBAAmB,SAAQ,uBAA6C;CAAG;;AACxF,qBAAa,kBAAmB,SAAQ,uBAA6C;CAAG"}
|
package/dist/mesh-schema.js
CHANGED
|
@@ -101,11 +101,23 @@ export class NetworkConnectionTopologyResponse extends Schema.TaggedStruct('Netw
|
|
|
101
101
|
target: Schema.Literal('-'),
|
|
102
102
|
}) {
|
|
103
103
|
}
|
|
104
|
+
export const BroadcastChannelPacket = Schema.TaggedStruct('BroadcastChannelPacket', {
|
|
105
|
+
id,
|
|
106
|
+
channelName: Schema.String,
|
|
107
|
+
/**
|
|
108
|
+
* The payload is expected to be encoded/decoded by the send/listen schema.
|
|
109
|
+
* Transferables are not supported.
|
|
110
|
+
*/
|
|
111
|
+
payload: Schema.Any,
|
|
112
|
+
hops: Schema.Array(Schema.String),
|
|
113
|
+
source: Schema.String,
|
|
114
|
+
target: Schema.Literal('-'),
|
|
115
|
+
});
|
|
104
116
|
export class MessageChannelPacket extends Schema.Union(MessageChannelRequest, MessageChannelResponseSuccess, MessageChannelResponseNoTransferables) {
|
|
105
117
|
}
|
|
106
118
|
export class ProxyChannelPacket extends Schema.Union(ProxyChannelRequest, ProxyChannelResponseSuccess, ProxyChannelPayload, ProxyChannelPayloadAck) {
|
|
107
119
|
}
|
|
108
|
-
export class Packet extends Schema.Union(MessageChannelPacket, ProxyChannelPacket, NetworkConnectionAdded, NetworkConnectionTopologyRequest, NetworkConnectionTopologyResponse) {
|
|
120
|
+
export class Packet extends Schema.Union(MessageChannelPacket, ProxyChannelPacket, NetworkConnectionAdded, NetworkConnectionTopologyRequest, NetworkConnectionTopologyResponse, BroadcastChannelPacket) {
|
|
109
121
|
}
|
|
110
122
|
export class MessageChannelPing extends Schema.TaggedStruct('MessageChannelPing', {}) {
|
|
111
123
|
}
|
package/dist/mesh-schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-schema.js","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mesh-schema.js","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"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"}
|
package/dist/node.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Cause, Duration, Effect, Schema, WebChannel } from '@livestore/utils/effect';
|
|
1
|
+
import { Cause, Duration, Effect, Schema, Scope, WebChannel } from '@livestore/utils/effect';
|
|
3
2
|
import type { MeshNodeName } from './common.js';
|
|
4
3
|
import { ConnectionAlreadyExistsError } from './common.js';
|
|
5
4
|
import * as WebmeshSchema from './mesh-schema.js';
|
|
6
5
|
type ConnectionChannel = WebChannel.WebChannel<typeof WebmeshSchema.Packet.Type, typeof WebmeshSchema.Packet.Type>;
|
|
7
|
-
export interface MeshNode {
|
|
8
|
-
nodeName:
|
|
6
|
+
export interface MeshNode<TName extends MeshNodeName = MeshNodeName> {
|
|
7
|
+
nodeName: TName;
|
|
9
8
|
connectionKeys: Effect.Effect<Set<MeshNodeName>>;
|
|
10
9
|
debug: {
|
|
11
10
|
print: () => void;
|
|
@@ -74,7 +73,15 @@ export interface MeshNode {
|
|
|
74
73
|
*/
|
|
75
74
|
timeout?: Duration.DurationInput;
|
|
76
75
|
}) => Effect.Effect<WebChannel.WebChannel<MsgListen, MsgSend>, never, Scope.Scope>;
|
|
76
|
+
/**
|
|
77
|
+
* Creates a WebChannel that is broadcasted to all connected nodes.
|
|
78
|
+
* Messages won't be buffered for nodes that join the network after the broadcast channel has been created.
|
|
79
|
+
*/
|
|
80
|
+
makeBroadcastChannel: <Msg>(args: {
|
|
81
|
+
channelName: string;
|
|
82
|
+
schema: Schema.Schema<Msg, any>;
|
|
83
|
+
}) => Effect.Effect<WebChannel.WebChannel<Msg, Msg>, never, Scope.Scope>;
|
|
77
84
|
}
|
|
78
|
-
export declare const makeMeshNode: (nodeName:
|
|
85
|
+
export declare const makeMeshNode: <TName extends MeshNodeName>(nodeName: TName) => Effect.Effect<MeshNode<TName>, never, Scope.Scope>;
|
|
79
86
|
export {};
|
|
80
87
|
//# sourceMappingURL=node.d.ts.map
|
package/dist/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
package/dist/node.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { indent, LS_DEV, shouldNeverHappen } from '@livestore/utils';
|
|
2
|
-
import { Cause, Duration, Effect, Fiber, Option, PubSub, Queue, Schema, Stream, WebChannel, } from '@livestore/utils/effect';
|
|
2
|
+
import { Cause, Deferred, Duration, Effect, Exit, Fiber, Option, PubSub, Queue, Schema, Scope, Stream, WebChannel, } from '@livestore/utils/effect';
|
|
3
3
|
import { makeMessageChannel } from './channel/message-channel.js';
|
|
4
4
|
import { makeProxyChannel } from './channel/proxy-channel.js';
|
|
5
5
|
import { ConnectionAlreadyExistsError, packetAsOtelAttributes } from './common.js';
|
|
@@ -16,6 +16,7 @@ export const makeMeshNode = (nodeName) => Effect.gen(function* () {
|
|
|
16
16
|
// )
|
|
17
17
|
const channelMap = new Map();
|
|
18
18
|
const topologyRequestsMap = new Map();
|
|
19
|
+
const broadcastChannelListenQueueMap = new Map();
|
|
19
20
|
const checkTransferableConnections = (packet) => {
|
|
20
21
|
if ((packet._tag === 'MessageChannelRequest' &&
|
|
21
22
|
(connectionChannels.size === 0 ||
|
|
@@ -48,6 +49,26 @@ export const makeMeshNode = (nodeName) => Effect.gen(function* () {
|
|
|
48
49
|
yield* Effect.forEach(connectionsToForwardTo, (con) => con.send(packet), { concurrency: 'unbounded' });
|
|
49
50
|
return;
|
|
50
51
|
}
|
|
52
|
+
if (Schema.is(WebmeshSchema.BroadcastChannelPacket)(packet)) {
|
|
53
|
+
const connectionsToForwardTo = Array.from(connectionChannels)
|
|
54
|
+
.filter(([name]) => !packet.hops.includes(name))
|
|
55
|
+
.map(([_, con]) => con.channel);
|
|
56
|
+
const adjustedPacket = {
|
|
57
|
+
...packet,
|
|
58
|
+
hops: [...packet.hops, nodeName],
|
|
59
|
+
};
|
|
60
|
+
yield* Effect.forEach(connectionsToForwardTo, (con) => con.send(adjustedPacket), { concurrency: 'unbounded' });
|
|
61
|
+
// Don't emit the packet to the own node listen queue
|
|
62
|
+
if (packet.source === nodeName) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const queue = broadcastChannelListenQueueMap.get(packet.channelName);
|
|
66
|
+
// In case this node is listening to this channel, add the packet to the listen queue
|
|
67
|
+
if (queue !== undefined) {
|
|
68
|
+
yield* Queue.offer(queue, packet);
|
|
69
|
+
}
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
51
72
|
if (Schema.is(WebmeshSchema.NetworkConnectionTopologyRequest)(packet)) {
|
|
52
73
|
if (packet.source !== nodeName) {
|
|
53
74
|
const backConnectionName = packet.hops.at(-1) ?? shouldNeverHappen(`${nodeName}: Expected hops for packet`, packet);
|
|
@@ -262,6 +283,37 @@ export const makeMeshNode = (nodeName) => Effect.gen(function* () {
|
|
|
262
283
|
Effect.withSpanScoped(`makeChannel:${nodeName}→${target}(${channelName})`, {
|
|
263
284
|
attributes: { target, channelName, mode, timeout },
|
|
264
285
|
}), Effect.annotateLogs({ nodeName }));
|
|
286
|
+
const makeBroadcastChannel = ({ channelName, schema }) => Effect.scopeWithCloseable((scope) => Effect.gen(function* () {
|
|
287
|
+
if (broadcastChannelListenQueueMap.has(channelName)) {
|
|
288
|
+
return shouldNeverHappen(`Broadcast channel ${channelName} already exists`, broadcastChannelListenQueueMap.get(channelName));
|
|
289
|
+
}
|
|
290
|
+
const debugInfo = {};
|
|
291
|
+
const queue = yield* Queue.unbounded().pipe(Effect.acquireRelease(Queue.shutdown));
|
|
292
|
+
broadcastChannelListenQueueMap.set(channelName, queue);
|
|
293
|
+
const send = (message) => Effect.gen(function* () {
|
|
294
|
+
const payload = yield* Schema.encode(schema)(message);
|
|
295
|
+
const packet = WebmeshSchema.BroadcastChannelPacket.make({
|
|
296
|
+
channelName,
|
|
297
|
+
payload,
|
|
298
|
+
source: nodeName,
|
|
299
|
+
target: '-',
|
|
300
|
+
hops: [],
|
|
301
|
+
});
|
|
302
|
+
yield* sendPacket(packet);
|
|
303
|
+
});
|
|
304
|
+
const listen = Stream.fromQueue(queue).pipe(Stream.filter(Schema.is(WebmeshSchema.BroadcastChannelPacket)), Stream.map((_) => Schema.decodeEither(schema)(_.payload)));
|
|
305
|
+
const closedDeferred = yield* Deferred.make().pipe(Effect.acquireRelease(Deferred.done(Exit.void)));
|
|
306
|
+
return {
|
|
307
|
+
[WebChannel.WebChannelSymbol]: WebChannel.WebChannelSymbol,
|
|
308
|
+
send,
|
|
309
|
+
listen,
|
|
310
|
+
closedDeferred,
|
|
311
|
+
supportsTransferables: true,
|
|
312
|
+
schema: { listen: schema, send: schema },
|
|
313
|
+
shutdown: Scope.close(scope, Exit.void),
|
|
314
|
+
debugInfo,
|
|
315
|
+
};
|
|
316
|
+
}));
|
|
265
317
|
const connectionKeys = Effect.sync(() => new Set(connectionChannels.keys()));
|
|
266
318
|
const runtime = yield* Effect.runtime();
|
|
267
319
|
const debug = {
|
|
@@ -281,6 +333,10 @@ export const makeMeshNode = (nodeName) => Effect.gen(function* () {
|
|
|
281
333
|
.map(([key, value]) => indent(`${key}=${value}`, 4))
|
|
282
334
|
.join('\n'), ' ', value.debugInfo?.channel, '\n', indent(`Queue: ${value.queue.unsafeSize().pipe(Option.getOrUndefined)}`, 4), value.queue);
|
|
283
335
|
}
|
|
336
|
+
console.log('Broadcast channels:', broadcastChannelListenQueueMap.size);
|
|
337
|
+
for (const [key, _value] of broadcastChannelListenQueueMap) {
|
|
338
|
+
console.log(indent(key, 2));
|
|
339
|
+
}
|
|
284
340
|
},
|
|
285
341
|
ping: (payload) => {
|
|
286
342
|
Effect.gen(function* () {
|
|
@@ -314,6 +370,14 @@ export const makeMeshNode = (nodeName) => Effect.gen(function* () {
|
|
|
314
370
|
}
|
|
315
371
|
}).pipe(Effect.provide(runtime), Effect.tapCauseLogPretty, Effect.runPromise),
|
|
316
372
|
};
|
|
317
|
-
return {
|
|
373
|
+
return {
|
|
374
|
+
nodeName,
|
|
375
|
+
addConnection,
|
|
376
|
+
removeConnection,
|
|
377
|
+
makeChannel,
|
|
378
|
+
makeBroadcastChannel,
|
|
379
|
+
connectionKeys,
|
|
380
|
+
debug,
|
|
381
|
+
};
|
|
318
382
|
}).pipe(Effect.withSpan(`makeMeshNode:${nodeName}`));
|
|
319
383
|
//# sourceMappingURL=node.js.map
|
package/dist/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
package/dist/node.test.js
CHANGED
|
@@ -562,6 +562,23 @@ Vitest.describe('webmesh node', { timeout: testTimeout }, () => {
|
|
|
562
562
|
yield* Effect.all([nodeACode, nodeCCode], { concurrency: 'unbounded' });
|
|
563
563
|
}).pipe(withCtx(test)));
|
|
564
564
|
});
|
|
565
|
+
Vitest.describe('broadcast channel', () => {
|
|
566
|
+
Vitest.scopedLive('should work', (test) => Effect.gen(function* () {
|
|
567
|
+
const nodeA = yield* makeMeshNode('A');
|
|
568
|
+
const nodeB = yield* makeMeshNode('B');
|
|
569
|
+
const nodeC = yield* makeMeshNode('C');
|
|
570
|
+
yield* connectNodesViaMessageChannel(nodeA, nodeB);
|
|
571
|
+
yield* connectNodesViaMessageChannel(nodeB, nodeC);
|
|
572
|
+
const channelOnA = yield* nodeA.makeBroadcastChannel({ channelName: 'test', schema: Schema.String });
|
|
573
|
+
const channelOnC = yield* nodeC.makeBroadcastChannel({ channelName: 'test', schema: Schema.String });
|
|
574
|
+
const listenOnAFiber = yield* channelOnA.listen.pipe(Stream.flatten(), Stream.runHead, Effect.flatten, Effect.fork);
|
|
575
|
+
const listenOnCFiber = yield* channelOnC.listen.pipe(Stream.flatten(), Stream.runHead, Effect.flatten, Effect.fork);
|
|
576
|
+
yield* channelOnA.send('A1');
|
|
577
|
+
yield* channelOnC.send('C1');
|
|
578
|
+
expect(yield* listenOnAFiber).toEqual('C1');
|
|
579
|
+
expect(yield* listenOnCFiber).toEqual('A1');
|
|
580
|
+
}).pipe(withCtx(test)));
|
|
581
|
+
});
|
|
565
582
|
});
|
|
566
583
|
const otelLayer = IS_CI ? Layer.empty : OtelLiveHttp({ serviceName: 'webmesh-node-test', skipLogUrl: false });
|
|
567
584
|
const withCtx = (testContext, { suffix, skipOtel = false, timeout = testTimeout } = {}) => (self) => self.pipe(Effect.timeout(timeout), Effect.provide(Logger.pretty), Effect.scoped, // We need to scope the effect manually here because otherwise the span is not closed
|