Skip to content

Commit 3b8ac13

Browse files
committed
Fix sqlite3 bundling
1 parent 92e529a commit 3b8ac13

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "just-bash",
3-
"version": "2.4.3",
3+
"version": "2.4.4",
44
"description": "A simulated bash environment with virtual filesystem",
55
"repository": {
66
"type": "git",
@@ -50,10 +50,10 @@
5050
"scripts": {
5151
"build": "rm -rf dist && tsc && pnpm build:lib && pnpm build:browser && pnpm build:cli && pnpm build:shell && pnpm build:clean && sed '1,/^-->/d' AGENTS.npm.md > dist/AGENTS.md",
5252
"build:clean": "find dist -name '*.test.js' -delete && find dist -name '*.test.d.ts' -delete",
53-
"build:lib": "esbuild dist/index.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bundle --chunk-names=chunks/[name]-[hash] --external:diff --external:minimatch --external:sprintf-js --external:turndown",
53+
"build:lib": "esbuild dist/index.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bundle --chunk-names=chunks/[name]-[hash] --external:diff --external:minimatch --external:sprintf-js --external:turndown --external:sql.js",
5454
"build:browser": "esbuild dist/browser.js --bundle --platform=browser --format=esm --minify --outfile=dist/bundle/browser.js --external:diff --external:minimatch --external:sprintf-js --external:turndown --external:node:* --define:__BROWSER__=true",
55-
"build:cli": "esbuild dist/cli/just-bash.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bin --entry-names=[name] --chunk-names=chunks/[name]-[hash] --banner:js='#!/usr/bin/env node'",
56-
"build:shell": "esbuild dist/cli/shell.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bin/shell --entry-names=[name] --chunk-names=chunks/[name]-[hash] --banner:js='#!/usr/bin/env node'",
55+
"build:cli": "esbuild dist/cli/just-bash.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bin --entry-names=[name] --chunk-names=chunks/[name]-[hash] --banner:js='#!/usr/bin/env node' --external:sql.js",
56+
"build:shell": "esbuild dist/cli/shell.js --bundle --splitting --platform=node --format=esm --minify --outdir=dist/bin/shell --entry-names=[name] --chunk-names=chunks/[name]-[hash] --banner:js='#!/usr/bin/env node' --external:sql.js",
5757
"prepublishOnly": "pnpm validate",
5858
"validate": "pnpm lint && pnpm knip && pnpm typecheck && pnpm build && pnpm test:run && pnpm test:dist",
5959
"typecheck": "tsc --noEmit",

src/cli/just-bash.bundle.test.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,4 +93,14 @@ describe("just-bash bundled binary", () => {
9393
expect(result.stdout).not.toContain("should not print");
9494
expect(result.exitCode).toBe(1);
9595
});
96+
97+
it("should lazy-load commands (sqlite3 with external sql.js)", async () => {
98+
const result = await runBin([
99+
"-c",
100+
'sqlite3 :memory: "SELECT 1 + 2 AS result"',
101+
]);
102+
expect(result.stdout).toBe("3\n");
103+
expect(result.stderr).toBe("");
104+
expect(result.exitCode).toBe(0);
105+
});
96106
});

0 commit comments

Comments
 (0)