Skip to content

Commit 2acfef8

Browse files
committed
Build fixes for dual cjs / esm exports
1 parent b1c7b54 commit 2acfef8

File tree

16 files changed

+380
-128
lines changed

16 files changed

+380
-128
lines changed

benchmark/apps/cli/src/index.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,18 +17,16 @@ export const isLanguage = (language: string): language is Language => languages.
1717
const run = async (toolbox: GluegunToolbox) => {
1818
const { config, prompt } = toolbox
1919
const id = config.runId ? Number(config.runId) : undefined
20-
const { language, exercise } = config
20+
let { language, exercise } = config
2121

2222
if (language === "all") {
2323
await runAll(id)
2424
} else if (exercise === "all") {
2525
await runLanguage({ id, language })
2626
} else {
27-
await runLanguageExercise({
28-
id,
29-
language: language || (await askLanguage(prompt)),
30-
exercise: exercise || (await askExercise(prompt, language)),
31-
})
27+
language = language || (await askLanguage(prompt))
28+
exercise = exercise || (await askExercise(prompt, language))
29+
await runLanguageExercise({ id, language, exercise })
3230
}
3331
}
3432

@@ -73,6 +71,10 @@ const runLanguageExercise = async ({
7371
language: Language
7472
exercise: string
7573
}) => {
74+
if (!getExercises()[language].includes(exercise)) {
75+
throw new Error(`Exercise ${exercise} not found for language ${language}`)
76+
}
77+
7678
const run = await findOrCreateRun({ id })
7779
const task = await findOrCreateTask({ runId: run.id, language, exercise })
7880
return runExercise({ run, task })

benchmark/package.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
"build": "turbo build",
1010
"build:extension": "cd .. && npm run vscode-test",
1111
"build:runner": "turbo build --filter @benchmark/runner",
12-
"cli": "pnpm --filter @benchmark/cli dev",
13-
"web": "pnpm --filter @benchmark/web dev",
12+
"cli": "turbo dev --filter @benchmark/cli --ui tui -- run",
13+
"web": "turbo dev --filter @benchmark/web --output-logs new-only",
1414
"studio": "pnpm --filter @benchmark/db db:studio",
1515
"docker:build": "docker build -f Dockerfile -t roo-code-benchmark ..",
1616
"docker:run": "touch /tmp/benchmarks.db && docker run -d -it -p 3000:3000 -v /tmp/benchmarks.db:/tmp/benchmarks.db roo-code-benchmark",
@@ -27,7 +27,6 @@
2727
"eslint": "^9.22.0",
2828
"globals": "^16.0.0",
2929
"prettier": "^3.5.3",
30-
"rimraf": "^6.0.1",
3130
"tsup": "^8.4.0",
3231
"tsx": "^4.19.3",
3332
"turbo": "^2.4.4",

benchmark/packages/db/package.json

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,24 @@
22
"name": "@benchmark/db",
33
"private": true,
44
"type": "module",
5+
"main": "./dist/index.cjs",
6+
"module": "./dist/index.js",
7+
"types": "./dist/index.d.ts",
58
"exports": {
6-
".": {
7-
"import": "./dist/index.js",
9+
"import": {
10+
"types": "./dist/index.d.ts",
11+
"import": "./dist/index.js"
12+
},
13+
"require": {
14+
"types": "./dist/index.d.cts",
815
"require": "./dist/index.cjs"
916
}
1017
},
1118
"scripts": {
1219
"lint": "eslint src --ext ts --max-warnings=0",
1320
"check-types": "tsc --noEmit",
1421
"format": "prettier --write src",
15-
"build": "tsup --format esm,cjs",
22+
"build": "tsup",
1623
"drizzle-kit": "dotenvx run -f ../../.env -- tsx node_modules/drizzle-kit/bin.cjs",
1724
"db:generate": "pnpm drizzle-kit generate",
1825
"db:migrate": "pnpm drizzle-kit migrate",
Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
{
22
"extends": "@benchmark/typescript-config/cjs.json",
3-
"compilerOptions": {
4-
"outDir": "dist"
5-
},
63
"include": ["src"],
74
"exclude": ["node_modules"]
85
}
Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
1-
import { defineConfig } from "tsup"
1+
import { defineConfig, Options } from "tsup"
2+
3+
const shared: Options = {
4+
entry: ["src/index.ts"],
5+
dts: true,
6+
outDir: "dist",
7+
clean: true,
8+
}
29

310
export default defineConfig([
411
{
5-
entry: ["src/index.ts"],
12+
...shared,
613
format: ["esm"],
7-
dts: true,
8-
outDir: "dist",
914
tsconfig: "./tsconfig.json",
10-
clean: true,
1115
},
1216
{
13-
entry: ["src/index.ts"],
17+
...shared,
1418
format: ["cjs"],
15-
dts: false,
16-
outDir: "dist",
1719
tsconfig: "./tsconfig.cjs.json",
1820
outExtension: () => ({ js: ".cjs" }),
19-
clean: false,
2021
},
2122
])

benchmark/packages/ipc/package.json

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,24 @@
22
"name": "@benchmark/ipc",
33
"private": true,
44
"type": "module",
5+
"main": "./dist/index.cjs",
6+
"module": "./dist/index.js",
7+
"types": "./dist/index.d.ts",
58
"exports": {
6-
".": {
7-
"import": "./dist/index.js",
9+
"import": {
10+
"types": "./dist/index.d.ts",
11+
"import": "./dist/index.js"
12+
},
13+
"require": {
14+
"types": "./dist/index.d.cts",
815
"require": "./dist/index.cjs"
916
}
1017
},
1118
"scripts": {
1219
"lint": "eslint src --ext ts --max-warnings=0",
1320
"check-types": "tsc --noEmit",
1421
"format": "prettier --write src",
15-
"build": "tsup --format esm,cjs"
22+
"build": "tsup"
1623
},
1724
"dependencies": {
1825
"node-ipc": "^12.0.0",
Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
{
22
"extends": "@benchmark/typescript-config/cjs.json",
3-
"compilerOptions": {
4-
"outDir": "dist"
5-
},
63
"include": ["src"],
74
"exclude": ["node_modules"]
85
}
Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,23 @@
1-
import { defineConfig } from "tsup"
1+
import { defineConfig, Options } from "tsup"
2+
3+
const shared: Options = {
4+
entry: ["src/index.ts"],
5+
dts: true,
6+
outDir: "dist",
7+
clean: true,
8+
}
29

310
export default defineConfig([
411
{
5-
entry: ["src/index.ts"],
12+
...shared,
613
format: ["esm"],
7-
dts: true,
8-
outDir: "dist",
914
tsconfig: "./tsconfig.json",
10-
clean: true,
1115
},
1216
{
13-
entry: ["src/index.ts"],
17+
...shared,
1418
format: ["cjs"],
15-
dts: false,
16-
outDir: "dist",
1719
tsconfig: "./tsconfig.cjs.json",
1820
outExtension: () => ({ js: ".cjs" }),
19-
clean: false,
2021
noExternal: ["node-ipc"],
2122
},
2223
])

benchmark/packages/lib/package.json

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,24 @@
22
"name": "@benchmark/lib",
33
"private": true,
44
"type": "module",
5+
"main": "./dist/index.cjs",
6+
"module": "./dist/index.js",
7+
"types": "./dist/index.d.ts",
58
"exports": {
6-
".": {
7-
"import": "./dist/index.js",
9+
"import": {
10+
"types": "./dist/index.d.ts",
11+
"import": "./dist/index.js"
12+
},
13+
"require": {
14+
"types": "./dist/index.d.cts",
815
"require": "./dist/index.cjs"
916
}
1017
},
1118
"scripts": {
1219
"lint": "eslint src --ext ts --max-warnings=0",
1320
"check-types": "tsc --noEmit",
1421
"format": "prettier --write src",
15-
"build": "tsup --format esm,cjs"
22+
"build": "tsup"
1623
},
1724
"dependencies": {
1825
"zod": "^3.24.2"
Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
{
22
"extends": "@benchmark/typescript-config/cjs.json",
3-
"compilerOptions": {
4-
"outDir": "dist"
5-
},
63
"include": ["src"],
74
"exclude": ["node_modules"]
85
}

0 commit comments

Comments
 (0)