dirsql 0.3.17 → 0.3.18

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=die.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"die.test.d.ts","sourceRoot":"","sources":["../../src/cli/die.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ // Unit tests for `die`.
2
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
3
+ import { die } from "./die.js";
4
+ describe("die", () => {
5
+ let stderrWrite;
6
+ let exit;
7
+ beforeEach(() => {
8
+ stderrWrite = vi.fn();
9
+ exit = vi.fn().mockImplementation((code) => {
10
+ throw new Error(`EXIT_${code}`);
11
+ });
12
+ vi.stubGlobal("process", {
13
+ ...process,
14
+ stderr: { write: stderrWrite },
15
+ exit,
16
+ });
17
+ });
18
+ afterEach(() => vi.unstubAllGlobals());
19
+ it("writes a 'dirsql: ' prefixed message to stderr and exits with the given code", () => {
20
+ expect(() => die("boom", 2)).toThrow("EXIT_2");
21
+ expect(stderrWrite).toHaveBeenCalledWith("dirsql: boom\n");
22
+ expect(exit).toHaveBeenCalledWith(2);
23
+ });
24
+ it("defaults the exit code to 1", () => {
25
+ expect(() => die("boom")).toThrow("EXIT_1");
26
+ expect(exit).toHaveBeenCalledWith(1);
27
+ });
28
+ });
29
+ //# sourceMappingURL=die.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"die.test.js","sourceRoot":"","sources":["../../src/cli/die.test.ts"],"names":[],"mappings":"AAAA,wBAAwB;AAExB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACnB,IAAI,WAAqC,CAAC;IAC1C,IAAI,IAA8B,CAAC;IAEnC,UAAU,CAAC,GAAG,EAAE;QACd,WAAW,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACtB,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,IAAY,EAAE,EAAE;YACjD,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE;YACvB,GAAG,OAAO;YACV,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;YAC9B,IAAI;SACL,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAEvC,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;QAC3D,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AAOA,wBAAgB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,KAAK,CAMlE"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AAOA,wBAAgB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,KAAK,CAUlE"}
package/dist/cli/main.js CHANGED
@@ -6,10 +6,12 @@ import { resolveBinary } from "./resolveBinary.js";
6
6
  export function main(argv = process.argv.slice(2)) {
7
7
  const binary = resolveBinary();
8
8
  const result = spawnSync(binary, argv, { stdio: "inherit" });
9
- if (result.error)
9
+ if (result.error) {
10
10
  die(result.error.message, 1);
11
- if (result.signal)
11
+ }
12
+ if (result.signal) {
12
13
  process.kill(process.pid, result.signal);
14
+ }
13
15
  process.exit(result.status ?? 1);
14
16
  }
15
17
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,0BAA0B;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,UAAU,IAAI,CAAC,OAAiB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,KAAK;QAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,0BAA0B;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,UAAU,IAAI,CAAC,OAAiB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=main.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.test.d.ts","sourceRoot":"","sources":["../../src/cli/main.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,83 @@
1
+ // Unit tests for `main`.
2
+ import { spawnSync } from "node:child_process";
3
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
4
+ import { die } from "./die.js";
5
+ import { main } from "./main.js";
6
+ import { resolveBinary } from "./resolveBinary.js";
7
+ vi.mock("./resolveBinary.js");
8
+ vi.mock("./die.js");
9
+ vi.mock("node:child_process");
10
+ const TEST_PID = 42;
11
+ function fakeResult(overrides) {
12
+ return {
13
+ pid: TEST_PID,
14
+ stdout: Buffer.from(""),
15
+ stderr: Buffer.from(""),
16
+ output: [],
17
+ status: 0,
18
+ signal: null,
19
+ ...overrides,
20
+ };
21
+ }
22
+ describe("main", () => {
23
+ let exit;
24
+ let kill;
25
+ beforeEach(() => {
26
+ vi.mocked(resolveBinary).mockReturnValue("/bin/dirsql");
27
+ vi.mocked(die).mockImplementation(((msg) => {
28
+ throw new Error(`DIE: ${msg}`);
29
+ }));
30
+ exit = vi.fn().mockImplementation((code) => {
31
+ throw new Error(`EXIT_${code}`);
32
+ });
33
+ kill = vi.fn();
34
+ vi.stubGlobal("process", {
35
+ ...process,
36
+ exit,
37
+ kill,
38
+ pid: TEST_PID,
39
+ });
40
+ });
41
+ afterEach(() => {
42
+ vi.unstubAllGlobals();
43
+ vi.resetAllMocks();
44
+ });
45
+ it("spawns the resolved binary with the argv and exits with the spawn status", () => {
46
+ vi.mocked(spawnSync).mockReturnValue(fakeResult({ status: 0 }));
47
+ expect(() => main(["--version"])).toThrow("EXIT_0");
48
+ expect(spawnSync).toHaveBeenCalledWith("/bin/dirsql", ["--version"], {
49
+ stdio: "inherit",
50
+ });
51
+ expect(exit).toHaveBeenCalledWith(0);
52
+ });
53
+ it("falls back to exit code 1 when spawn returns a null status", () => {
54
+ vi.mocked(spawnSync).mockReturnValue(fakeResult({ status: null }));
55
+ expect(() => main([])).toThrow("EXIT_1");
56
+ expect(exit).toHaveBeenCalledWith(1);
57
+ });
58
+ it("calls die with the spawn error message when spawn reports an error", () => {
59
+ vi.mocked(spawnSync).mockReturnValue(fakeResult({ status: null, error: new Error("spawn ENOENT") }));
60
+ expect(() => main([])).toThrow("DIE: spawn ENOENT");
61
+ expect(die).toHaveBeenCalledWith("spawn ENOENT", 1);
62
+ });
63
+ it("re-raises the spawned process's signal against the current pid before exiting", () => {
64
+ vi.mocked(spawnSync).mockReturnValue(fakeResult({ status: 0, signal: "SIGINT" }));
65
+ expect(() => main([])).toThrow("EXIT_0");
66
+ expect(kill).toHaveBeenCalledWith(TEST_PID, "SIGINT");
67
+ });
68
+ it("defaults argv to process.argv.slice(2) when called with no args", () => {
69
+ vi.mocked(spawnSync).mockReturnValue(fakeResult({ status: 0 }));
70
+ vi.stubGlobal("process", {
71
+ ...process,
72
+ argv: ["node", "dirsql", "--help"],
73
+ exit,
74
+ kill,
75
+ pid: TEST_PID,
76
+ });
77
+ expect(() => main()).toThrow("EXIT_0");
78
+ expect(spawnSync).toHaveBeenCalledWith("/bin/dirsql", ["--help"], {
79
+ stdio: "inherit",
80
+ });
81
+ });
82
+ });
83
+ //# sourceMappingURL=main.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.test.js","sourceRoot":"","sources":["../../src/cli/main.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=resolveBinary.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBinary.test.d.ts","sourceRoot":"","sources":["../../src/cli/resolveBinary.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ // Unit tests for `resolveBinary` and `defaultResolver`.
2
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
3
+ import { die } from "./die.js";
4
+ import { defaultResolver, resolveBinary } from "./resolveBinary.js";
5
+ vi.mock("./die.js");
6
+ describe("resolveBinary", () => {
7
+ beforeEach(() => {
8
+ vi.mocked(die).mockImplementation(((msg) => {
9
+ throw new Error(`DIE: ${msg}`);
10
+ }));
11
+ });
12
+ afterEach(() => {
13
+ vi.unstubAllGlobals();
14
+ vi.resetAllMocks();
15
+ });
16
+ describe("when the host triple is unknown", () => {
17
+ it("calls die with a 'no prebuilt binary' message", () => {
18
+ expect(() => resolveBinary("unknown-triple", () => "ignored")).toThrow(/^DIE: no prebuilt binary for unknown-triple\./);
19
+ });
20
+ });
21
+ describe("when the host triple is known", () => {
22
+ beforeEach(() => {
23
+ vi.stubGlobal("process", {
24
+ ...process,
25
+ platform: "linux",
26
+ arch: "x64",
27
+ });
28
+ });
29
+ it("resolves the binary via the injected resolver", () => {
30
+ const resolver = vi.fn().mockReturnValue("/abs/path/to/dirsql");
31
+ const result = resolveBinary(undefined, resolver);
32
+ expect(result).toBe("/abs/path/to/dirsql");
33
+ expect(resolver).toHaveBeenCalledWith("@dirsql/cli-linux-x64-gnu/dirsql");
34
+ });
35
+ it("uses `dirsql.exe` on win32", () => {
36
+ vi.stubGlobal("process", { ...process, platform: "win32", arch: "x64" });
37
+ const resolver = vi.fn().mockReturnValue("C:/dirsql.exe");
38
+ resolveBinary(undefined, resolver);
39
+ expect(resolver).toHaveBeenCalledWith("@dirsql/cli-win32-x64-msvc/dirsql.exe");
40
+ });
41
+ it("calls die with a 'not installed' message when the resolver throws", () => {
42
+ const resolver = () => {
43
+ throw new Error("MODULE_NOT_FOUND");
44
+ };
45
+ expect(() => resolveBinary(undefined, resolver)).toThrow(/^DIE: @dirsql\/cli-linux-x64-gnu is not installed\./);
46
+ });
47
+ });
48
+ });
49
+ describe("defaultResolver", () => {
50
+ it("returns a require.resolve-shaped function", () => {
51
+ expect(typeof defaultResolver()).toBe("function");
52
+ });
53
+ });
54
+ //# sourceMappingURL=resolveBinary.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBinary.test.js","sourceRoot":"","sources":["../../src/cli/resolveBinary.test.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEpE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAEpB,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAW,EAAE,EAAE;YACjD,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QACjC,CAAC,CAAe,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACtB,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CACpE,+CAA+C,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,UAAU,CAAC,GAAG,EAAE;YACd,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE;gBACvB,GAAG,OAAO;gBACV,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAElD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC3C,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,kCAAkC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;YAE1D,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAEnC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CACnC,uCAAuC,CACxC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC,CAAC;YAEF,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CACtD,qDAAqD,CACtD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,OAAO,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -5,8 +5,9 @@ describe("loadNativeCore", () => {
5
5
  it("loads via the `@dirsql/lib-<slug>` require and never hits the dev fallback", () => {
6
6
  const fakeCore = { DirSQL: vi.fn() };
7
7
  const requirer = vi.fn((spec) => {
8
- if (spec === "@dirsql/lib-linux-x64-gnu")
8
+ if (spec === "@dirsql/lib-linux-x64-gnu") {
9
9
  return fakeCore;
10
+ }
10
11
  throw new Error(`unexpected require(${spec})`);
11
12
  });
12
13
  const core = loadNativeCore("linux-x64", requirer, () => "/fake");
@@ -21,8 +22,9 @@ describe("loadNativeCore", () => {
21
22
  if (spec === "@dirsql/lib-darwin-arm64") {
22
23
  throw new Error("Cannot find module '@dirsql/lib-darwin-arm64'");
23
24
  }
24
- if (spec.endsWith("dirsql.node"))
25
+ if (spec.endsWith("dirsql.node")) {
25
26
  return fakeCore;
27
+ }
26
28
  throw new Error(`unexpected require(${spec})`);
27
29
  });
28
30
  const core = loadNativeCore("darwin-arm64", requirer, () => "/pkg/ts");
@@ -35,8 +37,9 @@ describe("loadNativeCore", () => {
35
37
  it("goes straight to the dev fallback without attempting a sub-package load", () => {
36
38
  const fakeCore = { DirSQL: vi.fn() };
37
39
  const requirer = vi.fn((spec) => {
38
- if (spec.endsWith("dirsql.node"))
40
+ if (spec.endsWith("dirsql.node")) {
39
41
  return fakeCore;
42
+ }
40
43
  throw new Error(`unexpected require(${spec})`);
41
44
  });
42
45
  const core = loadNativeCore("freebsd-x64", requirer, () => "/pkg/ts");
@@ -1 +1 @@
1
- {"version":3,"file":"loadNativeCore.test.js","sourceRoot":"","sources":["../src/loadNativeCore.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadNativeCore.test.js","sourceRoot":"","sources":["../src/loadNativeCore.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dirsql",
3
- "version": "0.3.17",
3
+ "version": "0.3.18",
4
4
  "description": "Ephemeral SQL index over a local directory",
5
5
  "license": "MIT",
6
6
  "repository": "https://github.com/thekevinscott/dirsql",
@@ -193,15 +193,15 @@
193
193
  "smol-toml": "^1.6.1"
194
194
  },
195
195
  "optionalDependencies": {
196
- "@dirsql/lib-linux-x64-gnu": "0.3.17",
197
- "@dirsql/lib-linux-arm64-gnu": "0.3.17",
198
- "@dirsql/lib-darwin-x64": "0.3.17",
199
- "@dirsql/lib-darwin-arm64": "0.3.17",
200
- "@dirsql/lib-win32-x64-msvc": "0.3.17",
201
- "@dirsql/cli-linux-x64-gnu": "0.3.17",
202
- "@dirsql/cli-linux-arm64-gnu": "0.3.17",
203
- "@dirsql/cli-darwin-x64": "0.3.17",
204
- "@dirsql/cli-darwin-arm64": "0.3.17",
205
- "@dirsql/cli-win32-x64-msvc": "0.3.17"
196
+ "@dirsql/lib-linux-x64-gnu": "0.3.18",
197
+ "@dirsql/lib-linux-arm64-gnu": "0.3.18",
198
+ "@dirsql/lib-darwin-x64": "0.3.18",
199
+ "@dirsql/lib-darwin-arm64": "0.3.18",
200
+ "@dirsql/lib-win32-x64-msvc": "0.3.18",
201
+ "@dirsql/cli-linux-x64-gnu": "0.3.18",
202
+ "@dirsql/cli-linux-arm64-gnu": "0.3.18",
203
+ "@dirsql/cli-darwin-x64": "0.3.18",
204
+ "@dirsql/cli-darwin-arm64": "0.3.18",
205
+ "@dirsql/cli-win32-x64-msvc": "0.3.18"
206
206
  }
207
207
  }