@livestore/utils-dev 0.4.0-dev.22 → 0.4.0-dev.23

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.
Files changed (55) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/node/DockerComposeService/DockerComposeService.d.ts +8 -3
  3. package/dist/node/DockerComposeService/DockerComposeService.d.ts.map +1 -1
  4. package/dist/node/DockerComposeService/DockerComposeService.js +47 -42
  5. package/dist/node/DockerComposeService/DockerComposeService.js.map +1 -1
  6. package/dist/node/DockerComposeService/DockerComposeService.test.js +2 -2
  7. package/dist/node/DockerComposeService/DockerComposeService.test.js.map +1 -1
  8. package/dist/node/FileLogger.d.ts.map +1 -1
  9. package/dist/node/FileLogger.js +3 -3
  10. package/dist/node/FileLogger.js.map +1 -1
  11. package/dist/node/cmd-log.d.ts +2 -2
  12. package/dist/node/cmd-log.d.ts.map +1 -1
  13. package/dist/node/cmd-log.js +6 -6
  14. package/dist/node/cmd-log.js.map +1 -1
  15. package/dist/node/cmd.d.ts +1 -1
  16. package/dist/node/cmd.d.ts.map +1 -1
  17. package/dist/node/cmd.js +25 -27
  18. package/dist/node/cmd.js.map +1 -1
  19. package/dist/node/cmd.test.js +2 -1
  20. package/dist/node/cmd.test.js.map +1 -1
  21. package/dist/node/mod.d.ts +2 -2
  22. package/dist/node/mod.d.ts.map +1 -1
  23. package/dist/node/mod.js +17 -16
  24. package/dist/node/mod.js.map +1 -1
  25. package/dist/node/workspace.d.ts.map +1 -1
  26. package/dist/node/workspace.js.map +1 -1
  27. package/dist/node-vitest/Vitest.d.ts.map +1 -1
  28. package/dist/node-vitest/Vitest.js +11 -11
  29. package/dist/node-vitest/Vitest.js.map +1 -1
  30. package/dist/node-vitest/Vitest.test.d.ts +8 -0
  31. package/dist/node-vitest/Vitest.test.d.ts.map +1 -1
  32. package/dist/node-vitest/Vitest.test.js +11 -7
  33. package/dist/node-vitest/Vitest.test.js.map +1 -1
  34. package/dist/wrangler/WranglerDevServer.d.ts +2 -2
  35. package/dist/wrangler/WranglerDevServer.d.ts.map +1 -1
  36. package/dist/wrangler/WranglerDevServer.js +7 -7
  37. package/dist/wrangler/WranglerDevServer.js.map +1 -1
  38. package/dist/wrangler/WranglerDevServer.test.js +2 -2
  39. package/dist/wrangler/WranglerDevServer.test.js.map +1 -1
  40. package/package.json +68 -15
  41. package/src/node/DockerComposeService/DockerComposeService.test.ts +5 -2
  42. package/src/node/DockerComposeService/DockerComposeService.ts +105 -90
  43. package/src/node/DockerComposeService/test-fixtures/docker-compose.yml +1 -1
  44. package/src/node/FileLogger.ts +4 -3
  45. package/src/node/cmd-log.ts +52 -55
  46. package/src/node/cmd.test.ts +54 -50
  47. package/src/node/cmd.ts +54 -57
  48. package/src/node/mod.ts +20 -18
  49. package/src/node/workspace.ts +1 -0
  50. package/src/node-vitest/Vitest.test.ts +12 -7
  51. package/src/node-vitest/Vitest.ts +28 -24
  52. package/src/wrangler/WranglerDevServer.test.ts +4 -2
  53. package/src/wrangler/WranglerDevServer.ts +9 -8
  54. package/src/wrangler/fixtures/wrangler.toml +1 -1
  55. package/dist/.tsbuildinfo.json +0 -1
@@ -10,6 +10,8 @@ export declare class DockerComposeError extends DockerComposeError_base {
10
10
  export interface DockerComposeArgs {
11
11
  readonly cwd: string;
12
12
  readonly serviceName?: string;
13
+ /** Unique project name to isolate this compose instance. If not provided, a random one is generated. */
14
+ readonly projectName?: string;
13
15
  }
14
16
  export interface StartOptions {
15
17
  readonly detached?: boolean;
@@ -35,19 +37,22 @@ export interface DockerComposeOperations {
35
37
  readonly removeOrphans?: boolean;
36
38
  }) => Effect.Effect<void, DockerComposeError | PlatformError.PlatformError>;
37
39
  readonly logs: (options?: LogsOptions) => Stream.Stream<string, DockerComposeError | PlatformError.PlatformError, Scope.Scope>;
40
+ /** The unique project name used to isolate this compose instance */
41
+ readonly projectName: string;
38
42
  }
39
43
  declare const DockerComposeService_base: Effect.Service.Class<DockerComposeService, "DockerComposeService", {
40
44
  readonly scoped: (args: DockerComposeArgs) => Effect.Effect<{
41
45
  pull: Effect.Effect<undefined, PlatformError.PlatformError | DockerComposeError, never>;
42
- start: (options?: StartOptions) => Effect.Effect<void, PlatformError.PlatformError | DockerComposeError, Scope.Scope>;
46
+ start: (options?: StartOptions | undefined) => Effect.Effect<void, PlatformError.PlatformError | DockerComposeError, Scope.Scope>;
43
47
  stop: Effect.Effect<void, PlatformError.PlatformError | DockerComposeError, never>;
44
48
  down: (options?: {
45
49
  readonly env?: Record<string, string>;
46
50
  readonly volumes?: boolean;
47
51
  readonly removeOrphans?: boolean;
48
- }) => Effect.Effect<void, PlatformError.PlatformError | DockerComposeError, never>;
52
+ } | undefined) => Effect.Effect<void, PlatformError.PlatformError | DockerComposeError, never>;
49
53
  logs: (options?: LogsOptions) => Stream.Stream<string, DockerComposeError, never>;
50
- }, never, CommandExecutor.CommandExecutor>;
54
+ projectName: string;
55
+ }, never, Scope.Scope | CommandExecutor.CommandExecutor>;
51
56
  }>;
52
57
  export declare class DockerComposeService extends DockerComposeService_base {
53
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DockerComposeService.d.ts","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,eAAe,EACpB,QAAQ,EACR,MAAM,EAEN,KAAK,aAAa,EAElB,MAAM,EACN,KAAK,KAAK,EACV,MAAM,EACP,MAAM,yBAAyB,CAAA;;;;;;;AAEhC,qBAAa,kBAAmB,SAAQ,uBAGtC;CAAG;AAEL,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAA;QACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAA;KACtC,CAAA;CACF;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IACpF,QAAQ,CAAC,KAAK,EAAE,CACd,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IACpF,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;QACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;QAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KACjC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IAC3E,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,CAAC,EAAE,WAAW,KAClB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;CAC1F;;4BAGgB,iBAAiB;;0BA+DJ,YAAY;;yBAgHZ;YACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;YAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;SACjC;yBAzCsB,WAAW;;;AA3IxC,qBAAa,oBAAqB,SAAQ,yBAmNxC;CAAG;AAyCL,eAAO,MAAM,gCAAgC,GAC3C,MAAM,iBAAiB,GAAG;IACxB,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;CAC1C,KACA,MAAM,CAAC,MAAM,CACd,IAAI,EACJ,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAChD,oBAAoB,GAAG,eAAe,CAAC,eAAe,GAAG,KAAK,CAAC,KAAK,CAYlE,CAAA"}
1
+ {"version":3,"file":"DockerComposeService.d.ts","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,eAAe,EACpB,QAAQ,EACR,MAAM,EAEN,KAAK,aAAa,EAElB,MAAM,EACN,KAAK,KAAK,EACV,MAAM,EACP,MAAM,yBAAyB,CAAA;;;;;;;AAEhC,qBAAa,kBAAmB,SAAQ,uBAGtC;CAAG;AAEL,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,wGAAwG;IACxG,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAA;QACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAA;KACtC,CAAA;CACF;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IACpF,QAAQ,CAAC,KAAK,EAAE,CACd,OAAO,CAAC,EAAE,YAAY,KACnB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IACpF,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;QACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;QAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KACjC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IAC3E,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,CAAC,EAAE,WAAW,KAClB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACzF,oEAAoE;IACpE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;;4BAKgB,iBAAiB;;;;;2BAiLX,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;+BAClB,OAAO;qCACD,OAAO;;yBAvCX,WAAW;;;;AA7IxC,qBAAa,oBAAqB,SAAQ,yBA6NxC;CAAG;AAwCL,eAAO,MAAM,gCAAgC,GAC3C,MAAM,iBAAiB,GAAG;IACxB,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;CAC1C,KACA,MAAM,CAAC,MAAM,CACd,IAAI,EACJ,kBAAkB,GAAG,aAAa,CAAC,aAAa,EAChD,oBAAoB,GAAG,eAAe,CAAC,eAAe,GAAG,KAAK,CAAC,KAAK,CAYlE,CAAA"}
@@ -1,18 +1,21 @@
1
- import { omitUndefineds } from '@livestore/utils';
1
+ import { objectToString, omitUndefineds } from '@livestore/utils';
2
2
  import { Command, Duration, Effect, Fiber, Schedule, Schema, Stream, } from '@livestore/utils/effect';
3
- export class DockerComposeError extends Schema.TaggedError()('DockerComposeError', {
3
+ export class DockerComposeError extends Schema.TaggedError('~@livestore/utils-dev/DockerComposeError')('DockerComposeError', {
4
4
  cause: Schema.Defect,
5
5
  note: Schema.String,
6
6
  }) {
7
7
  }
8
+ const generateProjectName = () => `ls-test-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
8
9
  export class DockerComposeService extends Effect.Service()('DockerComposeService', {
9
10
  scoped: (args) => Effect.gen(function* () {
10
11
  const { cwd, serviceName } = args;
12
+ const projectName = args.projectName ?? generateProjectName();
11
13
  const commandExecutorContext = yield* Effect.context();
14
+ const baseComposeArgs = ['-p', projectName];
12
15
  const pull = Effect.gen(function* () {
13
16
  yield* Effect.log(`Pulling Docker Compose images in ${cwd}`);
14
17
  // TODO (@IMax153) Refactor the effect command related code below as there is probably a much more elegant way to accomplish what we want here in a more effect idiomatic way.
15
- const pullCommand = Command.make('docker', 'compose', 'pull').pipe(Command.workingDirectory(cwd), Command.stdout('pipe'), Command.stderr('pipe'));
18
+ const pullCommand = Command.make('docker', 'compose', ...baseComposeArgs, 'pull').pipe(Command.workingDirectory(cwd), Command.stdout('pipe'), Command.stderr('pipe'));
16
19
  const process = yield* pullCommand.pipe(Command.start, Effect.provide(commandExecutorContext));
17
20
  const stdoutFiber = yield* process.stdout.pipe(Stream.decodeText('utf8'), Stream.runFold('', (acc, chunk) => acc + chunk), Effect.fork);
18
21
  const stderrFiber = yield* process.stderr.pipe(Stream.decodeText('utf8'), Stream.runFold('', (acc, chunk) => acc + chunk), Effect.fork);
@@ -39,18 +42,18 @@ export class DockerComposeService extends Effect.Service()('DockerComposeService
39
42
  schedule: Schedule.exponentialBackoff10Sec,
40
43
  while: Schema.is(DockerComposeError),
41
44
  }), Effect.withSpan('pullDockerComposeImages'), Effect.scoped);
42
- const start = (options = {}) => Effect.gen(function* () {
45
+ const start = Effect.fn('startDockerCompose')(function* (options = {}) {
43
46
  const { detached = true, healthCheck } = options;
44
47
  // Build start command
45
- const baseArgs = ['docker', 'compose', 'up'];
46
- if (detached)
47
- baseArgs.push('-d');
48
- if (serviceName)
49
- baseArgs.push(serviceName);
50
- const command = yield* Command.make(baseArgs[0], ...baseArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.env(options.env ?? {}), Command.stderr('inherit'), Command.stdout('inherit'), Command.start, Effect.catchAll((cause) => Effect.fail(new DockerComposeError({
48
+ const startArgs = ['docker', 'compose', ...baseComposeArgs, 'up'];
49
+ if (detached === true)
50
+ startArgs.push('-d');
51
+ if (serviceName !== undefined)
52
+ startArgs.push(serviceName);
53
+ const command = yield* Command.make(startArgs[0], ...startArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.env(options.env ?? {}), Command.stderr('inherit'), Command.stdout('inherit'), Command.start, Effect.mapError((cause) => new DockerComposeError({
51
54
  cause,
52
55
  note: `Failed to start Docker Compose services in ${cwd}`,
53
- }))), Effect.provide(commandExecutorContext));
56
+ })), Effect.provide(commandExecutorContext));
54
57
  // Wait for command completion
55
58
  yield* command.exitCode.pipe(Effect.flatMap((exitCode) => exitCode === 0
56
59
  ? Effect.void
@@ -59,16 +62,16 @@ export class DockerComposeService extends Effect.Service()('DockerComposeService
59
62
  note: `Docker Compose failed to start with exit code ${exitCode}. Env: ${JSON.stringify(options.env)}`,
60
63
  }))), Effect.provide(commandExecutorContext));
61
64
  // Perform health check if requested
62
- if (healthCheck) {
65
+ if (healthCheck !== undefined) {
63
66
  yield* performHealthCheck(healthCheck).pipe(Effect.provide(commandExecutorContext));
64
67
  }
65
68
  yield* Effect.log(`Docker Compose services started successfully in ${cwd}`);
66
- }).pipe(Effect.withSpan('startDockerCompose'));
69
+ });
67
70
  const stop = Effect.gen(function* () {
68
71
  yield* Effect.log(`Stopping Docker Compose services in ${cwd}`);
69
- const stopCommand = serviceName
70
- ? Command.make('docker', 'compose', 'stop', serviceName)
71
- : Command.make('docker', 'compose', 'stop');
72
+ const stopCommand = serviceName !== undefined
73
+ ? Command.make('docker', 'compose', ...baseComposeArgs, 'stop', serviceName)
74
+ : Command.make('docker', 'compose', ...baseComposeArgs, 'stop');
72
75
  yield* stopCommand.pipe(Command.workingDirectory(cwd), Command.exitCode, Effect.flatMap((exitCode) => exitCode === 0
73
76
  ? Effect.void
74
77
  : Effect.fail(new DockerComposeError({
@@ -79,42 +82,44 @@ export class DockerComposeService extends Effect.Service()('DockerComposeService
79
82
  }).pipe(Effect.withSpan('stopDockerCompose'));
80
83
  const logs = (options = {}) => Effect.gen(function* () {
81
84
  const { follow = false, tail, since } = options;
82
- const baseArgs = ['docker', 'compose', 'logs'];
83
- if (follow)
84
- baseArgs.push('-f');
85
- if (tail)
86
- baseArgs.push('--tail', tail.toString());
87
- if (since)
88
- baseArgs.push('--since', since);
89
- if (serviceName)
90
- baseArgs.push(serviceName);
91
- const command = yield* Command.make(baseArgs[0], ...baseArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.start, Effect.catchAll((cause) => Effect.fail(new DockerComposeError({
85
+ const logsArgs = ['docker', 'compose', ...baseComposeArgs, 'logs'];
86
+ if (follow === true)
87
+ logsArgs.push('-f');
88
+ if (tail !== undefined)
89
+ logsArgs.push('--tail', tail.toString());
90
+ if (since !== undefined)
91
+ logsArgs.push('--since', since);
92
+ if (serviceName !== undefined)
93
+ logsArgs.push(serviceName);
94
+ const command = yield* Command.make(logsArgs[0], ...logsArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.start, Effect.mapError((cause) => new DockerComposeError({
92
95
  cause,
93
96
  note: `Failed to read Docker Compose logs in ${cwd}`,
94
- }))), Effect.provide(commandExecutorContext));
97
+ })), Effect.provide(commandExecutorContext));
95
98
  return command.stdout.pipe(Stream.decodeText('utf8'), Stream.splitLines, Stream.mapError((cause) => new DockerComposeError({
96
99
  cause,
97
100
  note: `Error reading Docker Compose logs in ${cwd}`,
98
101
  })));
99
102
  }).pipe(Stream.unwrapScoped);
100
- const down = (options) => Effect.gen(function* () {
103
+ const down = Effect.fn('downDockerCompose')(function* (options) {
101
104
  yield* Effect.log(`Tearing down Docker Compose services in ${cwd}`);
102
- const baseArgs = ['docker', 'compose', 'down'];
103
- if (options?.volumes)
104
- baseArgs.push('-v');
105
- if (options?.removeOrphans)
106
- baseArgs.push('--remove-orphans');
107
- if (serviceName)
108
- baseArgs.push(serviceName);
109
- yield* Command.make(baseArgs[0], ...baseArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.env(options?.env ?? {}), Command.exitCode, Effect.flatMap((exitCode) => exitCode === 0
105
+ const downArgs = ['docker', 'compose', ...baseComposeArgs, 'down'];
106
+ if (options?.volumes === true)
107
+ downArgs.push('-v');
108
+ if (options?.removeOrphans === true)
109
+ downArgs.push('--remove-orphans');
110
+ if (serviceName !== undefined)
111
+ downArgs.push(serviceName);
112
+ yield* Command.make(downArgs[0], ...downArgs.slice(1)).pipe(Command.workingDirectory(cwd), Command.env(options?.env ?? {}), Command.exitCode, Effect.flatMap((exitCode) => exitCode === 0
110
113
  ? Effect.void
111
114
  : Effect.fail(new DockerComposeError({
112
115
  cause: new Error(`Docker compose down exited with code ${exitCode}`),
113
116
  note: `Failed to tear down Docker Compose services`,
114
117
  }))), Effect.provide(commandExecutorContext));
115
118
  yield* Effect.log(`Docker Compose services torn down successfully`);
116
- }).pipe(Effect.withSpan('downDockerCompose'));
117
- return { pull, start, stop, down, logs };
119
+ });
120
+ // Register cleanup finalizer to ensure containers are removed when scope closes
121
+ yield* Effect.addFinalizer(() => down({ volumes: true, removeOrphans: true }).pipe(Effect.tap(() => Effect.log(`Docker Compose cleanup completed for project ${projectName}`)), Effect.catchAll((error) => Effect.log('Docker Compose cleanup failed for project', projectName, objectToString(error)))));
122
+ return { pull, start, stop, down, logs, projectName };
118
123
  }),
119
124
  }) {
120
125
  }
@@ -122,12 +127,12 @@ const performHealthCheck = ({ url, timeout = Duration.minutes(2), interval = Dur
122
127
  yield* Effect.log(`Performing health check on ${url}`);
123
128
  const checkHealth = Command.make('curl', '-f', '-s', url).pipe(Command.exitCode, Effect.map((code) => code === 0), Effect.catchAll(() => Effect.succeed(false)));
124
129
  const healthCheck = checkHealth.pipe(Effect.repeat({
125
- while: (healthy) => !healthy,
130
+ while: (healthy) => healthy === false,
126
131
  schedule: Schedule.fixed(interval),
127
- }), Effect.timeout(timeout), Effect.catchAll(() => Effect.fail(new DockerComposeError({
132
+ }), Effect.timeout(timeout), Effect.mapError(() => new DockerComposeError({
128
133
  cause: new Error('Health check timeout'),
129
134
  note: `Health check failed for ${url} after ${Duration.toMillis(timeout)}ms`,
130
- }))));
135
+ })));
131
136
  yield* healthCheck;
132
137
  yield* Effect.log(`Health check passed for ${url}`);
133
138
  });
@@ -136,7 +141,7 @@ export const startDockerComposeServicesScoped = (args) => Effect.gen(function* (
136
141
  const dockerCompose = yield* DockerComposeService;
137
142
  // Start the services
138
143
  yield* dockerCompose.start({
139
- ...omitUndefineds({ healthCheck: args.healthCheck ? args.healthCheck : undefined }),
144
+ ...omitUndefineds({ healthCheck: args.healthCheck !== undefined ? args.healthCheck : undefined }),
140
145
  });
141
146
  // Add cleanup finalizer to the current scope
142
147
  yield* Effect.addFinalizer(() => dockerCompose.stop.pipe(Effect.orDie));
@@ -1 +1 @@
1
- {"version":3,"file":"DockerComposeService.js","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DockerComposeService.js","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import path from 'node:path';
2
+ import { expect } from 'vitest';
3
+ import { Vitest } from '@livestore/utils-dev/node-vitest';
2
4
  import { Duration, Effect, Layer, Stream } from '@livestore/utils/effect';
3
5
  import { PlatformNode } from '@livestore/utils/node';
4
- import { Vitest } from '@livestore/utils-dev/node-vitest';
5
- import { expect } from 'vitest';
6
6
  import { DockerComposeService } from "./DockerComposeService.js";
7
7
  const testTimeout = 30_000;
8
8
  const testFixturePath = path.join(import.meta.dirname, 'test-fixtures');
@@ -1 +1 @@
1
- {"version":3,"file":"DockerComposeService.test.js","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DockerComposeService.test.js","sourceRoot":"","sources":["../../../src/node/DockerComposeService/DockerComposeService.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileLogger.d.ts","sourceRoot":"","sources":["../../src/node/FileLogger.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,KAAK,EAEL,MAAM,EAIP,MAAM,yBAAyB,CAAA;AAEhC,eAAO,MAAM,cAAc,GACzB,aAAa,MAAM,EACnB,UAAU;IACR,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B,qCAqBA,CAAA;AAmCH,eAAO,MAAM,iBAAiB,GAAI,MAAM,IAAI,KAAG,MAI8B,CAAA;AAE7E,eAAO,MAAM,iBAAiB,GAAI,GAAG,OAAO,KAAG,OAW9C,CAAA;AAqBD,eAAO,MAAM,eAAe,GAAI,SAAS;IACvC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAA;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,mCAoFA,CAAA"}
1
+ {"version":3,"file":"FileLogger.d.ts","sourceRoot":"","sources":["../../src/node/FileLogger.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,EAEL,MAAM,EAIP,MAAM,yBAAyB,CAAA;AAEhC,eAAO,MAAM,cAAc,GACzB,aAAa,MAAM,EACnB,UAAU;IACR,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B,qCAqBA,CAAA;AAmCH,eAAO,MAAM,iBAAiB,GAAI,MAAM,IAAI,KAAG,MAI8B,CAAA;AAE7E,eAAO,MAAM,iBAAiB,GAAI,GAAG,OAAO,KAAG,OAW9C,CAAA;AAqBD,eAAO,MAAM,eAAe,GAAI,SAAS;IACvC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAA;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,mCAoFA,CAAA"}
@@ -79,7 +79,7 @@ const consoleLogToString = (...s) => {
79
79
  .join(' ');
80
80
  };
81
81
  export const prettyLoggerTty = (options) => {
82
- const color = options.colors ? withColor : withColorNoop;
82
+ const color = options.colors === true ? withColor : withColorNoop;
83
83
  return Logger.make(({ annotations, cause, date, fiberId, logLevel, message: message_, spans }) => {
84
84
  let str = '';
85
85
  const log = (...s) => {
@@ -94,7 +94,7 @@ export const prettyLoggerTty = (options) => {
94
94
  let firstLine = color(`[${options.formatDate(date)}]`, colors.white) +
95
95
  ` ${color(logLevel.label, ...logLevelColors[logLevel._tag])}` +
96
96
  ` (${FiberId.threadName(fiberId)})`;
97
- if (List.isCons(spans)) {
97
+ if (List.isCons(spans) === true) {
98
98
  const now = date.getTime();
99
99
  const render = LogSpan.render(now);
100
100
  for (const span of spans) {
@@ -112,7 +112,7 @@ export const prettyLoggerTty = (options) => {
112
112
  }
113
113
  log(firstLine);
114
114
  // if (!processIsBun) console.group()
115
- if (!Cause.isEmpty(cause)) {
115
+ if (Cause.isEmpty(cause) === false) {
116
116
  logIndented(Cause.pretty(cause, { renderErrorCause: true }));
117
117
  }
118
118
  if (messageIndex < message.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"FileLogger.js","sourceRoot":"","sources":["../../src/node/FileLogger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EACL,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,WAAW,EACX,KAAK,EACL,IAAI,EACJ,MAAM,EAEN,OAAO,EACP,aAAa,GACd,MAAM,yBAAyB,CAAA;AAEhC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,WAAmB,EACnB,OAGC,EACD,EAAE,CACF,KAAK,CAAC,YAAY,CAChB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAEtF,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,EACvD,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAC5C,CAAA;IAED,OAAO,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,aAAa,EACpB,eAAe,CAAC;QACd,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK;QAChC,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,UAAU,IAAI,EAAE,EAAE;QAC/E,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC;KAC3C,CAAC,CACH,CAAA;AACH,CAAC,CAAC,CACH,CAAA;AAEH,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,GAAG,MAA6B,EAAE,EAAE;IACnE,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,GAAG,IAAI,QAAQ,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA;IAC7B,CAAC;IACD,OAAO,GAAG,GAAG,GAAG,IAAI,SAAS,CAAA;AAC/B,CAAC,CAAA;AACD,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,GAAG,OAA8B,EAAE,EAAE,CAAC,IAAI,CAAA;AAE/E,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,IAAI;IACT,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,WAAW,EAAE,KAAK;CACV,CAAA;AAEV,MAAM,cAAc,GAA6D;IAC/E,IAAI,EAAE,EAAE;IACR,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;IACpB,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;IACpB,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IACpB,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IACxB,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;IACnB,KAAK,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC;CAC1C,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAU,EAAU,EAAE,CACtD,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI;KACpG,UAAU,EAAE;KACZ,QAAQ,EAAE;KACV,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAA;AAE7E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAU,EAAW,EAAE;IACvD,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;QAClB,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,GAAG,CAAQ,EAAE,EAAE;IACzC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC7B,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACrF,CAAC;IACD,OAAO,CAAC;SACL,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAA;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;YACxC,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,GAAG;SACjB,CAAC,CAAA;IACJ,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAK/B,EAAE,EAAE;IACH,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAA;IACxD,OAAO,MAAM,CAAC,IAAI,CAAkB,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;QAChH,IAAI,GAAG,GAAG,EAAE,CAAA;QAEZ,MAAM,GAAG,GAAG,CAAC,GAAG,CAAQ,EAAE,EAAE;YAC1B,GAAG,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;YACtC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAAC,GAAG,CAAQ,EAAE,EAAE;YAClC,GAAG,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAA;YAC3D,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAE9C,IAAI,SAAS,GACX,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC;YACpD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;YAC7D,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAA;QAErC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;YAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,SAAS,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAA;YACjC,CAAC;QACH,CAAC;QAED,SAAS,IAAI,GAAG,CAAA;QAChB,IAAI,YAAY,GAAG,CAAC,CAAA;QACpB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YACtD,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;gBACzC,SAAS,IAAI,IAAI,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAA;gBACpE,YAAY,EAAE,CAAA;YAChB,CAAC;QACH,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,CAAA;QACd,qCAAqC;QAErC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED,IAAI,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC;gBACrD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;gBACjC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBAC5C,WAAW,CACT,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;wBACnC,KAAK,EAAE,CAAC;wBACR,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,KAAK;wBACd,WAAW,EAAE,GAAG;qBACjB,CAAC,CACH,CAAA;gBACH,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC;gBACvC,MAAM,cAAc,GAClB,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;oBACzC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;wBACrC,KAAK,EAAE,CAAC;wBACR,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,KAAK;wBACd,WAAW,EAAE,GAAG;qBACjB,CAAC;oBACJ,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBAC/B,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,CAAA;YAC1E,CAAC;QACH,CAAC;QAED,wCAAwC;QAExC,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"FileLogger.js","sourceRoot":"","sources":["../../src/node/FileLogger.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export type TCmdLoggingOptions = {
8
8
  * Prepares logging directories, archives previous canonical log and prunes archives.
9
9
  * Returns the canonical current log path if logging is enabled, otherwise undefined.
10
10
  */
11
- export declare const prepareCmdLogging: (options: TCmdLoggingOptions) => Effect.Effect<string | undefined, never, never>;
11
+ export declare const prepareCmdLogging: (options: TCmdLoggingOptions) => Effect.Effect<string | undefined>;
12
12
  /**
13
13
  * Given a command input, applies logging by piping output through `tee` to the
14
14
  * canonical log file. Returns the transformed input and whether a shell is required.
@@ -17,5 +17,5 @@ export declare const applyLoggingToCommand: (commandInput: string | (string | un
17
17
  input: string | string[];
18
18
  subshell: boolean;
19
19
  logPath?: string;
20
- }, never, never>;
20
+ }>;
21
21
  //# sourceMappingURL=cmd-log.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-log.d.ts","sourceRoot":"","sources":["../../src/node/cmd-log.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,CAgD3G,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAClC,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,EAAE,kBAAkB,KACxB,MAAM,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,KAAK,EAAE,KAAK,CAahG,CAAA"}
1
+ {"version":3,"file":"cmd-log.d.ts","sourceRoot":"","sources":["../../src/node/cmd-log.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAC/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CA6C/F,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAClC,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,EAAE,kBAAkB,KACxB,MAAM,CAAC,MAAM,CAAC;IAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAanF,CAAA"}
@@ -6,8 +6,8 @@ import { Effect } from '@livestore/utils/effect';
6
6
  * Prepares logging directories, archives previous canonical log and prunes archives.
7
7
  * Returns the canonical current log path if logging is enabled, otherwise undefined.
8
8
  */
9
- export const prepareCmdLogging = Effect.fn('cmd.logging.prepare')(function* ({ logDir, logFileName = 'dev.log', logRetention = 50, }) {
10
- if (!logDir || logDir === '')
9
+ export const prepareCmdLogging = Effect.fn('cmd.logging.prepare')(function* ({ logDir, logFileName = 'dev.log', logRetention = 50 }) {
10
+ if (logDir == null || logDir === '')
11
11
  return undefined;
12
12
  const logsDir = logDir;
13
13
  const archiveDir = path.join(logsDir, 'archive');
@@ -15,7 +15,7 @@ export const prepareCmdLogging = Effect.fn('cmd.logging.prepare')(function* ({ l
15
15
  // Ensure directories exist
16
16
  yield* Effect.sync(() => fs.mkdirSync(archiveDir, { recursive: true }));
17
17
  // Archive previous log if present
18
- if (fs.existsSync(currentLogPath)) {
18
+ if (fs.existsSync(currentLogPath) === true) {
19
19
  const safeIso = new Date().toISOString().replaceAll(':', '-');
20
20
  const archivedBase = `${path.parse(logFileName).name}-${safeIso}.log`;
21
21
  const archivedLog = path.join(archiveDir, archivedBase);
@@ -36,12 +36,12 @@ export const prepareCmdLogging = Effect.fn('cmd.logging.prepare')(function* ({ l
36
36
  */
37
37
  export const applyLoggingToCommand = Effect.fn('cmd.logging.apply')(function* (commandInput, options) {
38
38
  const asArray = Array.isArray(commandInput);
39
- const parts = asArray ? commandInput.filter(isNotUndefined) : undefined;
39
+ const parts = asArray === true ? commandInput.filter(isNotUndefined) : undefined;
40
40
  const logPath = yield* prepareCmdLogging(options);
41
41
  return {
42
- input: asArray ? (parts ?? []) : commandInput,
42
+ input: asArray === true ? (parts ?? []) : commandInput,
43
43
  subshell: false,
44
- ...(logPath ? { logPath } : {}),
44
+ ...(logPath !== undefined ? { logPath } : {}),
45
45
  };
46
46
  });
47
47
  //# sourceMappingURL=cmd-log.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-log.js","sourceRoot":"","sources":["../../src/node/cmd-log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmd-log.js","sourceRoot":"","sources":["../../src/node/cmd-log.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export declare const cmd: (commandInput: string | (string | undefined)[], option
14
14
  logFileName?: string;
15
15
  /** Optional number of archived logs to retain; defaults to 50 */
16
16
  logRetention?: number;
17
- } | undefined) => Effect.Effect<CommandExecutor.ExitCode, PlatformError.PlatformError | CmdError, CommandExecutor.CommandExecutor | CurrentWorkingDirectory>;
17
+ }) => Effect.Effect<CommandExecutor.ExitCode, PlatformError.PlatformError | CmdError, CommandExecutor.CommandExecutor | CurrentWorkingDirectory>;
18
18
  export declare const cmdText: (commandInput: string | (string | undefined)[], options?: {
19
19
  stderr?: 'inherit' | 'pipe';
20
20
  runInShell?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"cmd.d.ts","sourceRoot":"","sources":["../../src/node/cmd.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,eAAe,EACpB,MAAM,EAQN,KAAK,aAAa,EAClB,MAAM,EAEP,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAKxD,eAAO,MAAM,GAAG,EAAE,CAChB,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,CAAC,EACJ;IACE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GACD,SAAS,KACV,MAAM,CAAC,MAAM,CAChB,eAAe,CAAC,QAAQ,EACxB,aAAa,CAAC,aAAa,GAAG,QAAQ,EACtC,eAAe,CAAC,eAAe,GAAG,uBAAuB,CAiEzD,CAAA;AAEF,eAAO,MAAM,OAAO,EAAE,CACpB,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CACzC,KACE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,eAAe,CAAC,eAAe,GAAG,uBAAuB,CAwB7G,CAAA;;;;;;;;;;AAEJ,qBAAa,QAAS,SAAQ,aAM5B;CAAG"}
1
+ {"version":3,"file":"cmd.d.ts","sourceRoot":"","sources":["../../src/node/cmd.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,eAAe,EACpB,MAAM,EAQN,KAAK,aAAa,EAClB,MAAM,EAEP,MAAM,yBAAyB,CAAA;AAIhC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAKxD,eAAO,MAAM,GAAG,EAAE,CAChB,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACxC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,KACE,MAAM,CAAC,MAAM,CAChB,eAAe,CAAC,QAAQ,EACxB,aAAa,CAAC,aAAa,GAAG,QAAQ,EACtC,eAAe,CAAC,eAAe,GAAG,uBAAuB,CA8DzD,CAAA;AAEF,eAAO,MAAM,OAAO,EAAE,CACpB,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAC7C,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CACzC,KACE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,eAAe,CAAC,eAAe,GAAG,uBAAuB,CAuB7G,CAAA;;;;;;;;;;AAEJ,qBAAa,QAAS,SAAQ,aAM5B;CAAG"}
package/dist/node/cmd.js CHANGED
@@ -9,22 +9,22 @@ const SUCCESS_EXIT_CODE = 0;
9
9
  export const cmd = Effect.fn('cmd')(function* (commandInput, options) {
10
10
  const cwd = yield* CurrentWorkingDirectory;
11
11
  const asArray = Array.isArray(commandInput);
12
- const parts = asArray ? commandInput.filter(isNotUndefined) : undefined;
13
- const [command, ...args] = asArray ? parts : commandInput.split(' ');
12
+ const parts = asArray === true ? commandInput.filter(isNotUndefined) : undefined;
13
+ const [command, ...args] = asArray === true ? parts : commandInput.split(' ');
14
14
  const debugEnvStr = Object.entries(options?.env ?? {})
15
- .map(([key, value]) => `${key}='${value}' `)
15
+ .map(([key, value]) => `${key}='${String(value)}' `)
16
16
  .join('');
17
17
  const loggingOpts = {
18
- ...(options?.logDir ? { logDir: options.logDir } : {}),
19
- ...(options?.logFileName ? { logFileName: options.logFileName } : {}),
20
- ...(options?.logRetention ? { logRetention: options.logRetention } : {}),
18
+ ...(options?.logDir !== undefined ? { logDir: options.logDir } : {}),
19
+ ...(options?.logFileName !== undefined ? { logFileName: options.logFileName } : {}),
20
+ ...(options?.logRetention !== undefined ? { logRetention: options.logRetention } : {}),
21
21
  };
22
22
  const { input: finalInput, subshell: needsShell, logPath } = yield* applyLoggingToCommand(commandInput, loggingOpts);
23
23
  const stdoutMode = options?.stdout ?? 'inherit';
24
24
  const stderrMode = options?.stderr ?? 'inherit';
25
- const useShell = (options?.shell ? true : false) || needsShell;
26
- const commandDebugStr = debugEnvStr + (Array.isArray(finalInput) ? finalInput.join(' ') : finalInput);
27
- const subshellStr = useShell ? ' (in subshell)' : '';
25
+ const useShell = (options?.shell === true ? true : false) || needsShell;
26
+ const commandDebugStr = debugEnvStr + (Array.isArray(finalInput) === true ? finalInput.join(' ') : finalInput);
27
+ const subshellStr = useShell === true ? ' (in subshell)' : '';
28
28
  yield* Effect.logDebug(`Running '${commandDebugStr}' in '${cwd}'${subshellStr}`);
29
29
  yield* Effect.annotateCurrentSpan({
30
30
  'span.label': commandDebugStr,
@@ -41,40 +41,38 @@ export const cmd = Effect.fn('cmd')(function* (commandInput, options) {
41
41
  stderrMode,
42
42
  useShell,
43
43
  };
44
- const exitCode = yield* isNotUndefined(logPath)
44
+ const exitCode = yield* isNotUndefined(logPath) === true
45
45
  ? Effect.gen(function* () {
46
46
  yield* Effect.sync(() => console.log(`Logging output to ${logPath}`));
47
47
  return yield* runWithLogging({ ...baseArgs, logPath, threadName: commandDebugStr });
48
48
  })
49
49
  : runWithoutLogging(baseArgs);
50
50
  if (exitCode !== SUCCESS_EXIT_CODE) {
51
- return yield* Effect.fail(CmdError.make({
51
+ return yield* CmdError.make({
52
52
  command: command,
53
53
  args,
54
54
  cwd,
55
55
  env: options?.env ?? {},
56
56
  stderr: stderrMode,
57
- }));
57
+ });
58
58
  }
59
59
  return exitCode;
60
60
  });
61
61
  export const cmdText = Effect.fn('cmdText')(function* (commandInput, options) {
62
62
  const cwd = yield* CurrentWorkingDirectory;
63
- const [command, ...args] = Array.isArray(commandInput)
64
- ? commandInput.filter(isNotUndefined)
65
- : commandInput.split(' ');
63
+ const [command, ...args] = Array.isArray(commandInput) === true ? commandInput.filter(isNotUndefined) : commandInput.split(' ');
66
64
  const debugEnvStr = Object.entries(options?.env ?? {})
67
- .map(([key, value]) => `${key}='${value}' `)
65
+ .map(([key, value]) => `${key}='${String(value)}' `)
68
66
  .join('');
69
67
  const commandDebugStr = debugEnvStr + [command, ...args].join(' ');
70
- const subshellStr = options?.runInShell ? ' (in subshell)' : '';
68
+ const subshellStr = options?.runInShell === true ? ' (in subshell)' : '';
71
69
  yield* Effect.logDebug(`Running '${commandDebugStr}' in '${cwd}'${subshellStr}`);
72
70
  yield* Effect.annotateCurrentSpan({ 'span.label': commandDebugStr, command, cwd });
73
71
  return yield* Command.make(command, ...args).pipe(
74
72
  // inherit = Stream stderr to process.stderr, pipe = Stream stderr to process.stdout
75
- Command.stderr(options?.stderr ?? 'inherit'), Command.workingDirectory(cwd), options?.runInShell ? Command.runInShell(true) : identity, Command.env(options?.env ?? {}), Command.string);
73
+ Command.stderr(options?.stderr ?? 'inherit'), Command.workingDirectory(cwd), options?.runInShell === true ? Command.runInShell(true) : identity, Command.env(options?.env ?? {}), Command.string);
76
74
  });
77
- export class CmdError extends Schema.TaggedError()('CmdError', {
75
+ export class CmdError extends Schema.TaggedError('~@livestore/utils-dev/CmdError')('CmdError', {
78
76
  command: Schema.String,
79
77
  args: Schema.Array(Schema.String),
80
78
  cwd: Schema.String,
@@ -82,7 +80,7 @@ export class CmdError extends Schema.TaggedError()('CmdError', {
82
80
  stderr: Schema.Literal('inherit', 'pipe'),
83
81
  }) {
84
82
  }
85
- const runWithoutLogging = ({ commandInput, cwd, env, stdoutMode, stderrMode, useShell }) => buildCommand(commandInput, useShell).pipe(Command.stdin('inherit'), Command.stdout(stdoutMode), Command.stderr(stderrMode), Command.workingDirectory(cwd), useShell ? Command.runInShell(true) : identity, Command.env(env), Command.exitCode);
83
+ const runWithoutLogging = ({ commandInput, cwd, env, stdoutMode, stderrMode, useShell }) => buildCommand(commandInput, useShell).pipe(Command.stdin('inherit'), Command.stdout(stdoutMode), Command.stderr(stderrMode), Command.workingDirectory(cwd), useShell === true ? Command.runInShell(true) : identity, Command.env(env), Command.exitCode);
86
84
  const runWithLogging = ({ commandInput, cwd, env, stdoutMode, stderrMode, useShell, logPath, threadName, }) =>
87
85
  // When logging is enabled we have to replace the `2>&1 | tee` pipeline the
88
86
  // shell used to give us. We now pipe both streams through Effect so we can
@@ -109,9 +107,9 @@ Effect.scoped(Effect.gen(function* () {
109
107
  });
110
108
  fs.writeSync(logFile, formatted);
111
109
  });
112
- const command = buildCommand(commandInput, useShell).pipe(Command.stdin('inherit'), Command.stdout('pipe'), Command.stderr('pipe'), Command.workingDirectory(cwd), useShell ? Command.runInShell(true) : identity, Command.env(envWithColor));
110
+ const command = buildCommand(commandInput, useShell).pipe(Command.stdin('inherit'), Command.stdout('pipe'), Command.stderr('pipe'), Command.workingDirectory(cwd), useShell === true ? Command.runInShell(true) : identity, Command.env(envWithColor));
113
111
  // Acquire/start the command and make sure we kill it on interruption.
114
- const runningProcess = yield* Effect.acquireRelease(command.pipe(Command.start), (proc) => proc.isRunning.pipe(Effect.flatMap((running) => (running ? proc.kill().pipe(Effect.catchAll(() => Effect.void)) : Effect.void)), Effect.ignore));
112
+ const runningProcess = yield* Effect.acquireRelease(command.pipe(Command.start), (proc) => proc.isRunning.pipe(Effect.flatMap((running) => running === true ? proc.kill().pipe(Effect.catchAll(() => Effect.void)) : Effect.void), Effect.ignore));
115
113
  const stdoutHandler = makeStreamHandler({
116
114
  channel: 'stdout',
117
115
  ...(stdoutMode === 'inherit' ? { mirrorTarget: process.stdout } : {}),
@@ -127,7 +125,7 @@ Effect.scoped(Effect.gen(function* () {
127
125
  // Dump any buffered data and finish both stream fibers before we return.
128
126
  const flushOutputs = Effect.gen(function* () {
129
127
  const stillRunning = yield* runningProcess.isRunning.pipe(Effect.catchAll(() => Effect.succeed(false)));
130
- if (stillRunning) {
128
+ if (stillRunning === true) {
131
129
  yield* Effect.ignore(runningProcess.kill());
132
130
  }
133
131
  yield* Effect.ignore(Fiber.join(stdoutFiber));
@@ -139,11 +137,11 @@ Effect.scoped(Effect.gen(function* () {
139
137
  return exitCode;
140
138
  }));
141
139
  const buildCommand = (input, useShell) => {
142
- if (Array.isArray(input)) {
140
+ if (Array.isArray(input) === true) {
143
141
  const [c, ...a] = input;
144
142
  return Command.make(c, ...a);
145
143
  }
146
- if (useShell) {
144
+ if (useShell === true) {
147
145
  return Command.make(input);
148
146
  }
149
147
  const [c, ...a] = input.split(' ');
@@ -159,7 +157,7 @@ const makeStreamHandler = ({ channel, mirrorTarget, appendLog, }) => {
159
157
  channel,
160
158
  content,
161
159
  terminator,
162
- ...(mirrorTarget ? { mirrorTarget } : {}),
160
+ ...(mirrorTarget !== undefined ? { mirrorTarget } : {}),
163
161
  appendLog,
164
162
  });
165
163
  const consumeBuffer = () => {
@@ -210,7 +208,7 @@ const makeStreamHandler = ({ channel, mirrorTarget, appendLog, }) => {
210
208
  };
211
209
  };
212
210
  const emitSegment = ({ channel, content, terminator, mirrorTarget, appendLog, }) => Effect.gen(function* () {
213
- if (mirrorTarget) {
211
+ if (mirrorTarget !== undefined) {
214
212
  yield* Effect.sync(() => mirrorSegment(mirrorTarget, content, terminator));
215
213
  }
216
214
  const contentForLog = terminator === 'carriage-return' ? `${content}\r` : content;