@livestore/adapter-node 0.4.0-dev.15 → 0.4.0-dev.17
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/make-leader-worker.d.ts +2 -1
- package/dist/make-leader-worker.d.ts.map +1 -1
- package/dist/make-leader-worker.js +8 -6
- package/dist/make-leader-worker.js.map +1 -1
- package/dist/worker-schema.d.ts +3 -3
- package/package.json +6 -6
- package/src/make-leader-worker.ts +9 -18
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import './thread-polyfill.ts';
|
|
2
2
|
import type { SyncOptions } from '@livestore/common';
|
|
3
|
+
import { LogConfig } from '@livestore/common';
|
|
3
4
|
import type { LiveStoreSchema } from '@livestore/common/schema';
|
|
4
5
|
import { Effect, Schema } from '@livestore/utils/effect';
|
|
5
6
|
import type * as otel from '@opentelemetry/api';
|
|
@@ -14,7 +15,7 @@ export type WorkerOptions = {
|
|
|
14
15
|
serviceName?: string;
|
|
15
16
|
};
|
|
16
17
|
testing?: TestingOverrides;
|
|
17
|
-
};
|
|
18
|
+
} & LogConfig.WithLoggerOptions;
|
|
18
19
|
export declare const getWorkerArgs: () => {
|
|
19
20
|
readonly clientId: string;
|
|
20
21
|
readonly storeId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-leader-worker.d.ts","sourceRoot":"","sources":["../src/make-leader-worker.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAS7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"make-leader-worker.d.ts","sourceRoot":"","sources":["../src/make-leader-worker.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAS7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAmB,MAAM,mBAAmB,CAAA;AAE9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAI/D,OAAO,EAAE,MAAM,EAAsC,MAAM,EAAwB,MAAM,yBAAyB,CAAA;AAElH,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAIjE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACtC,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAA;QACpB,8CAA8C;QAC9C,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC3B,GAAG,SAAS,CAAC,iBAAiB,CAAA;AAE/B,eAAO,MAAM,aAAa;;;;;CAAqE,CAAA;AAE/F,eAAO,MAAM,UAAU,GAAI,SAAS,aAAa,SAEhD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,aAAa,mFAyItD,CAAA"}
|
|
@@ -4,18 +4,18 @@ if (process.execArgv.includes('--inspect')) {
|
|
|
4
4
|
inspector.open();
|
|
5
5
|
inspector.waitForDebugger();
|
|
6
6
|
}
|
|
7
|
-
import { UnexpectedError } from '@livestore/common';
|
|
7
|
+
import { LogConfig, UnexpectedError } from '@livestore/common';
|
|
8
8
|
import { Eventlog, LeaderThreadCtx } from '@livestore/common/leader-thread';
|
|
9
9
|
import { LiveStoreEvent } from '@livestore/common/schema';
|
|
10
10
|
import { loadSqlite3Wasm } from '@livestore/sqlite-wasm/load-wasm';
|
|
11
11
|
import { sqliteDbFactory } from '@livestore/sqlite-wasm/node';
|
|
12
|
-
import { Effect, FetchHttpClient, Layer,
|
|
12
|
+
import { Effect, FetchHttpClient, Layer, OtelTracer, Schema, Stream, WorkerRunner } from '@livestore/utils/effect';
|
|
13
13
|
import { PlatformNode } from '@livestore/utils/node';
|
|
14
14
|
import { makeLeaderThread } from "./leader-thread-shared.js";
|
|
15
15
|
import * as WorkerSchema from "./worker-schema.js";
|
|
16
16
|
export const getWorkerArgs = () => Schema.decodeSync(WorkerSchema.WorkerArgv)(process.argv[2]);
|
|
17
17
|
export const makeWorker = (options) => {
|
|
18
|
-
makeWorkerEffect(options).pipe(
|
|
18
|
+
makeWorkerEffect(options).pipe(PlatformNode.NodeRuntime.runMain);
|
|
19
19
|
};
|
|
20
20
|
export const makeWorkerEffect = (options) => {
|
|
21
21
|
const TracingLive = options.otelOptions?.tracer
|
|
@@ -77,7 +77,9 @@ export const makeWorkerEffect = (options) => {
|
|
|
77
77
|
const snapshot = workerCtx.dbState.export();
|
|
78
78
|
return { snapshot, migrationsReport: workerCtx.initialState.migrationsReport };
|
|
79
79
|
}).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/adapter-node:worker:GetRecreateSnapshot')),
|
|
80
|
-
Shutdown: () =>
|
|
80
|
+
Shutdown: () =>
|
|
81
|
+
// @effect-diagnostics-next-line unnecessaryEffectGen:off
|
|
82
|
+
Effect.gen(function* () {
|
|
81
83
|
// const { db, dbEventlog } = yield* LeaderThreadCtx
|
|
82
84
|
yield* Effect.logDebug('[@livestore/adapter-node:worker] Shutdown');
|
|
83
85
|
// if (devtools.enabled) {
|
|
@@ -93,10 +95,10 @@ export const makeWorkerEffect = (options) => {
|
|
|
93
95
|
}).pipe(Layer.provide(PlatformNode.NodeWorkerRunner.layer), WorkerRunner.launch, Effect.scoped, Effect.tapCauseLogPretty, Effect.annotateLogs({
|
|
94
96
|
thread: options.otelOptions?.serviceName ?? 'livestore-node-leader-thread',
|
|
95
97
|
processId: process.pid,
|
|
96
|
-
}),
|
|
98
|
+
}), LogConfig.withLoggerConfig({ logger: options.logger, logLevel: options.logLevel }, { threadName: options.otelOptions?.serviceName ?? 'livestore-node-leader-thread' }),
|
|
97
99
|
// TODO bring back with Effect 4 once it's easier to work with replacing loggers.
|
|
98
100
|
// We basically only want to provide this logger if it's replacing the default logger, not if there's a custom logger already provided.
|
|
99
101
|
// Effect.provide(Logger.prettyWithThread(options.otelOptions?.serviceName ?? 'livestore-node-leader-thread')),
|
|
100
|
-
Effect.provide(runtimeLayer)
|
|
102
|
+
Effect.provide(runtimeLayer));
|
|
101
103
|
};
|
|
102
104
|
//# sourceMappingURL=make-leader-worker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-leader-worker.js","sourceRoot":"","sources":["../src/make-leader-worker.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAE7B,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;IAC3C,SAAS,CAAC,IAAI,EAAE,CAAA;IAChB,SAAS,CAAC,eAAe,EAAE,CAAA;AAC7B,CAAC;AAGD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"make-leader-worker.js","sourceRoot":"","sources":["../src/make-leader-worker.ts"],"names":[],"mappings":"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"}
|
package/dist/worker-schema.d.ts
CHANGED
|
@@ -231,19 +231,19 @@ declare const LeaderWorkerInnerExtraDevtoolsMessage_base: Schema.TaggedRequestCl
|
|
|
231
231
|
data: Schema.Schema<Uint8Array<ArrayBuffer>>;
|
|
232
232
|
} & {
|
|
233
233
|
readonly requestId: typeof Schema.String;
|
|
234
|
-
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.
|
|
234
|
+
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.16"]>;
|
|
235
235
|
readonly clientId: typeof Schema.String;
|
|
236
236
|
}>, typeof Devtools.Leader.EventlogReq, Schema.TaggedStruct<"LSD.Leader.ResetAllData.Request", {
|
|
237
237
|
mode: Schema.Literal<["all-data", "only-app-db"]>;
|
|
238
238
|
} & {
|
|
239
239
|
readonly requestId: typeof Schema.String;
|
|
240
|
-
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.
|
|
240
|
+
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.16"]>;
|
|
241
241
|
readonly clientId: typeof Schema.String;
|
|
242
242
|
}>, typeof Devtools.Leader.NetworkStatusSubscribe, typeof Devtools.Leader.NetworkStatusUnsubscribe, typeof Devtools.Leader.Disconnect, typeof Devtools.Leader.CommitEventReq, typeof Devtools.Leader.Ping, typeof Devtools.Leader.DatabaseFileInfoReq, typeof Devtools.Leader.SyncHistorySubscribe, typeof Devtools.Leader.SyncHistoryUnsubscribe, typeof Devtools.Leader.SyncingInfoReq, typeof Devtools.Leader.SyncHeadSubscribe, typeof Devtools.Leader.SyncHeadUnsubscribe, Schema.TaggedStruct<"LSD.Leader.SetSyncLatch.Request", {
|
|
243
243
|
closeLatch: typeof Schema.Boolean;
|
|
244
244
|
} & {
|
|
245
245
|
readonly requestId: typeof Schema.String;
|
|
246
|
-
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.
|
|
246
|
+
readonly liveStoreVersion: Schema.Literal<["0.4.0-dev.16"]>;
|
|
247
247
|
readonly clientId: typeof Schema.String;
|
|
248
248
|
}>]>;
|
|
249
249
|
}, typeof Schema.Void, typeof UnexpectedError>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/adapter-node",
|
|
3
|
-
"version": "0.4.0-dev.
|
|
3
|
+
"version": "0.4.0-dev.17",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"exports": {
|
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
"./worker": "./dist/make-leader-worker.js"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@livestore/devtools-vite": "0.4.0-dev.
|
|
12
|
+
"@livestore/devtools-vite": "0.4.0-dev.17",
|
|
13
13
|
"@opentelemetry/api": "1.9.0",
|
|
14
14
|
"vite": "7.1.7",
|
|
15
|
-
"@livestore/common": "0.4.0-dev.
|
|
16
|
-
"@livestore/
|
|
17
|
-
"@livestore/utils": "0.4.0-dev.
|
|
18
|
-
"@livestore/
|
|
15
|
+
"@livestore/common": "0.4.0-dev.17",
|
|
16
|
+
"@livestore/webmesh": "0.4.0-dev.17",
|
|
17
|
+
"@livestore/utils": "0.4.0-dev.17",
|
|
18
|
+
"@livestore/sqlite-wasm": "0.4.0-dev.17"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@rollup/plugin-commonjs": "^28.0.6",
|
|
@@ -8,23 +8,13 @@ if (process.execArgv.includes('--inspect')) {
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
import type { SyncOptions } from '@livestore/common'
|
|
11
|
-
import { UnexpectedError } from '@livestore/common'
|
|
11
|
+
import { LogConfig, UnexpectedError } from '@livestore/common'
|
|
12
12
|
import { Eventlog, LeaderThreadCtx } from '@livestore/common/leader-thread'
|
|
13
13
|
import type { LiveStoreSchema } from '@livestore/common/schema'
|
|
14
14
|
import { LiveStoreEvent } from '@livestore/common/schema'
|
|
15
15
|
import { loadSqlite3Wasm } from '@livestore/sqlite-wasm/load-wasm'
|
|
16
16
|
import { sqliteDbFactory } from '@livestore/sqlite-wasm/node'
|
|
17
|
-
import {
|
|
18
|
-
Effect,
|
|
19
|
-
FetchHttpClient,
|
|
20
|
-
Layer,
|
|
21
|
-
Logger,
|
|
22
|
-
LogLevel,
|
|
23
|
-
OtelTracer,
|
|
24
|
-
Schema,
|
|
25
|
-
Stream,
|
|
26
|
-
WorkerRunner,
|
|
27
|
-
} from '@livestore/utils/effect'
|
|
17
|
+
import { Effect, FetchHttpClient, Layer, OtelTracer, Schema, Stream, WorkerRunner } from '@livestore/utils/effect'
|
|
28
18
|
import { PlatformNode } from '@livestore/utils/node'
|
|
29
19
|
import type * as otel from '@opentelemetry/api'
|
|
30
20
|
|
|
@@ -42,15 +32,12 @@ export type WorkerOptions = {
|
|
|
42
32
|
serviceName?: string
|
|
43
33
|
}
|
|
44
34
|
testing?: TestingOverrides
|
|
45
|
-
}
|
|
35
|
+
} & LogConfig.WithLoggerOptions
|
|
46
36
|
|
|
47
37
|
export const getWorkerArgs = () => Schema.decodeSync(WorkerSchema.WorkerArgv)(process.argv[2]!)
|
|
48
38
|
|
|
49
39
|
export const makeWorker = (options: WorkerOptions) => {
|
|
50
|
-
makeWorkerEffect(options).pipe(
|
|
51
|
-
Effect.provide(Logger.prettyWithThread(options.otelOptions?.serviceName ?? 'livestore-node-leader-thread')),
|
|
52
|
-
PlatformNode.NodeRuntime.runMain,
|
|
53
|
-
)
|
|
40
|
+
makeWorkerEffect(options).pipe(PlatformNode.NodeRuntime.runMain)
|
|
54
41
|
}
|
|
55
42
|
|
|
56
43
|
export const makeWorkerEffect = (options: WorkerOptions) => {
|
|
@@ -152,6 +139,7 @@ export const makeWorkerEffect = (options: WorkerOptions) => {
|
|
|
152
139
|
Effect.withSpan('@livestore/adapter-node:worker:GetRecreateSnapshot'),
|
|
153
140
|
),
|
|
154
141
|
Shutdown: () =>
|
|
142
|
+
// @effect-diagnostics-next-line unnecessaryEffectGen:off
|
|
155
143
|
Effect.gen(function* () {
|
|
156
144
|
// const { db, dbEventlog } = yield* LeaderThreadCtx
|
|
157
145
|
yield* Effect.logDebug('[@livestore/adapter-node:worker] Shutdown')
|
|
@@ -180,10 +168,13 @@ export const makeWorkerEffect = (options: WorkerOptions) => {
|
|
|
180
168
|
thread: options.otelOptions?.serviceName ?? 'livestore-node-leader-thread',
|
|
181
169
|
processId: process.pid,
|
|
182
170
|
}),
|
|
171
|
+
LogConfig.withLoggerConfig(
|
|
172
|
+
{ logger: options.logger, logLevel: options.logLevel },
|
|
173
|
+
{ threadName: options.otelOptions?.serviceName ?? 'livestore-node-leader-thread' },
|
|
174
|
+
),
|
|
183
175
|
// TODO bring back with Effect 4 once it's easier to work with replacing loggers.
|
|
184
176
|
// We basically only want to provide this logger if it's replacing the default logger, not if there's a custom logger already provided.
|
|
185
177
|
// Effect.provide(Logger.prettyWithThread(options.otelOptions?.serviceName ?? 'livestore-node-leader-thread')),
|
|
186
178
|
Effect.provide(runtimeLayer),
|
|
187
|
-
Logger.withMinimumLogLevel(LogLevel.Debug),
|
|
188
179
|
)
|
|
189
180
|
}
|