modestbench 0.2.0 → 0.3.0

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 (332) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +131 -34
  3. package/dist/cli/commands/analyze.cjs +60 -0
  4. package/dist/cli/commands/analyze.cjs.map +1 -0
  5. package/dist/cli/commands/analyze.d.cts +35 -0
  6. package/dist/cli/commands/analyze.d.cts.map +1 -0
  7. package/dist/cli/commands/analyze.d.ts +35 -0
  8. package/dist/cli/commands/analyze.d.ts.map +1 -0
  9. package/dist/cli/commands/analyze.js +56 -0
  10. package/dist/cli/commands/analyze.js.map +1 -0
  11. package/dist/cli/commands/baseline.cjs +404 -0
  12. package/dist/cli/commands/baseline.cjs.map +1 -0
  13. package/dist/cli/commands/baseline.d.cts +72 -0
  14. package/dist/cli/commands/baseline.d.cts.map +1 -0
  15. package/dist/cli/commands/baseline.d.ts +72 -0
  16. package/dist/cli/commands/baseline.d.ts.map +1 -0
  17. package/dist/cli/commands/baseline.js +396 -0
  18. package/dist/cli/commands/baseline.js.map +1 -0
  19. package/dist/cli/commands/history.d.cts +1 -1
  20. package/dist/cli/commands/history.d.cts.map +1 -1
  21. package/dist/cli/commands/history.d.ts +1 -1
  22. package/dist/cli/commands/history.d.ts.map +1 -1
  23. package/dist/cli/commands/init.cjs +88 -155
  24. package/dist/cli/commands/init.cjs.map +1 -1
  25. package/dist/cli/commands/init.d.cts +4 -4
  26. package/dist/cli/commands/init.d.cts.map +1 -1
  27. package/dist/cli/commands/init.d.ts +4 -4
  28. package/dist/cli/commands/init.d.ts.map +1 -1
  29. package/dist/cli/commands/init.js +88 -155
  30. package/dist/cli/commands/init.js.map +1 -1
  31. package/dist/cli/commands/run.cjs +132 -114
  32. package/dist/cli/commands/run.cjs.map +1 -1
  33. package/dist/cli/commands/run.d.cts +16 -3
  34. package/dist/cli/commands/run.d.cts.map +1 -1
  35. package/dist/cli/commands/run.d.ts +16 -3
  36. package/dist/cli/commands/run.d.ts.map +1 -1
  37. package/dist/cli/commands/run.js +131 -80
  38. package/dist/cli/commands/run.js.map +1 -1
  39. package/dist/cli/index.cjs +583 -394
  40. package/dist/cli/index.cjs.map +1 -1
  41. package/dist/cli/index.d.cts +4 -16
  42. package/dist/cli/index.d.cts.map +1 -1
  43. package/dist/cli/index.d.ts +4 -16
  44. package/dist/cli/index.d.ts.map +1 -1
  45. package/dist/cli/index.js +575 -386
  46. package/dist/cli/index.js.map +1 -1
  47. package/dist/config/budget-schema.cjs +172 -0
  48. package/dist/config/budget-schema.cjs.map +1 -0
  49. package/dist/config/budget-schema.d.cts +59 -0
  50. package/dist/config/budget-schema.d.cts.map +1 -0
  51. package/dist/config/budget-schema.d.ts +59 -0
  52. package/dist/config/budget-schema.d.ts.map +1 -0
  53. package/dist/config/budget-schema.js +166 -0
  54. package/dist/config/budget-schema.js.map +1 -0
  55. package/dist/config/schema.cjs +182 -2
  56. package/dist/config/schema.cjs.map +1 -1
  57. package/dist/config/schema.d.cts +122 -3
  58. package/dist/config/schema.d.cts.map +1 -1
  59. package/dist/config/schema.d.ts +122 -3
  60. package/dist/config/schema.d.ts.map +1 -1
  61. package/dist/config/schema.js +180 -1
  62. package/dist/config/schema.js.map +1 -1
  63. package/dist/constants.cjs +45 -2
  64. package/dist/constants.cjs.map +1 -1
  65. package/dist/constants.d.cts +41 -0
  66. package/dist/constants.d.cts.map +1 -1
  67. package/dist/constants.d.ts +41 -0
  68. package/dist/constants.d.ts.map +1 -1
  69. package/dist/constants.js +44 -1
  70. package/dist/constants.js.map +1 -1
  71. package/dist/core/engine.cjs +103 -21
  72. package/dist/core/engine.cjs.map +1 -1
  73. package/dist/core/engine.d.cts +7 -7
  74. package/dist/core/engine.d.cts.map +1 -1
  75. package/dist/core/engine.d.ts +7 -7
  76. package/dist/core/engine.d.ts.map +1 -1
  77. package/dist/core/engine.js +104 -22
  78. package/dist/core/engine.js.map +1 -1
  79. package/dist/core/output-path-resolver.cjs +8 -1
  80. package/dist/core/output-path-resolver.cjs.map +1 -1
  81. package/dist/core/output-path-resolver.d.cts.map +1 -1
  82. package/dist/core/output-path-resolver.d.ts.map +1 -1
  83. package/dist/core/output-path-resolver.js +9 -2
  84. package/dist/core/output-path-resolver.js.map +1 -1
  85. package/dist/errors/base.cjs +12 -3
  86. package/dist/errors/base.cjs.map +1 -1
  87. package/dist/errors/base.d.cts +7 -0
  88. package/dist/errors/base.d.cts.map +1 -1
  89. package/dist/errors/base.d.ts +7 -0
  90. package/dist/errors/base.d.ts.map +1 -1
  91. package/dist/errors/base.js +10 -2
  92. package/dist/errors/base.js.map +1 -1
  93. package/dist/errors/budget.cjs +37 -0
  94. package/dist/errors/budget.cjs.map +1 -0
  95. package/dist/errors/budget.d.cts +31 -0
  96. package/dist/errors/budget.d.cts.map +1 -0
  97. package/dist/errors/budget.d.ts +31 -0
  98. package/dist/errors/budget.d.ts.map +1 -0
  99. package/dist/errors/budget.js +33 -0
  100. package/dist/errors/budget.js.map +1 -0
  101. package/dist/errors/index.cjs +4 -1
  102. package/dist/errors/index.cjs.map +1 -1
  103. package/dist/errors/index.d.cts +1 -0
  104. package/dist/errors/index.d.cts.map +1 -1
  105. package/dist/errors/index.d.ts +1 -0
  106. package/dist/errors/index.d.ts.map +1 -1
  107. package/dist/errors/index.js +2 -0
  108. package/dist/errors/index.js.map +1 -1
  109. package/dist/index.cjs +13 -1
  110. package/dist/index.cjs.map +1 -1
  111. package/dist/index.d.cts +5 -0
  112. package/dist/index.d.cts.map +1 -1
  113. package/dist/index.d.ts +5 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +7 -0
  116. package/dist/index.js.map +1 -1
  117. package/dist/reporters/csv.cjs +37 -17
  118. package/dist/reporters/csv.cjs.map +1 -1
  119. package/dist/reporters/csv.d.cts +3 -6
  120. package/dist/reporters/csv.d.cts.map +1 -1
  121. package/dist/reporters/csv.d.ts +3 -6
  122. package/dist/reporters/csv.d.ts.map +1 -1
  123. package/dist/reporters/csv.js +37 -17
  124. package/dist/reporters/csv.js.map +1 -1
  125. package/dist/reporters/human.cjs +66 -40
  126. package/dist/reporters/human.cjs.map +1 -1
  127. package/dist/reporters/human.d.cts +14 -13
  128. package/dist/reporters/human.d.cts.map +1 -1
  129. package/dist/reporters/human.d.ts +14 -13
  130. package/dist/reporters/human.d.ts.map +1 -1
  131. package/dist/reporters/human.js +66 -40
  132. package/dist/reporters/human.js.map +1 -1
  133. package/dist/reporters/json.cjs +23 -48
  134. package/dist/reporters/json.cjs.map +1 -1
  135. package/dist/reporters/json.d.cts +2 -28
  136. package/dist/reporters/json.d.cts.map +1 -1
  137. package/dist/reporters/json.d.ts +2 -28
  138. package/dist/reporters/json.d.ts.map +1 -1
  139. package/dist/reporters/json.js +25 -50
  140. package/dist/reporters/json.js.map +1 -1
  141. package/dist/reporters/profile-human.cjs +149 -0
  142. package/dist/reporters/profile-human.cjs.map +1 -0
  143. package/dist/reporters/profile-human.d.cts +44 -0
  144. package/dist/reporters/profile-human.d.cts.map +1 -0
  145. package/dist/reporters/profile-human.d.ts +44 -0
  146. package/dist/reporters/profile-human.d.ts.map +1 -0
  147. package/dist/reporters/profile-human.js +142 -0
  148. package/dist/reporters/profile-human.js.map +1 -0
  149. package/dist/reporters/simple.cjs +64 -44
  150. package/dist/reporters/simple.cjs.map +1 -1
  151. package/dist/reporters/simple.d.cts +14 -14
  152. package/dist/reporters/simple.d.cts.map +1 -1
  153. package/dist/reporters/simple.d.ts +14 -14
  154. package/dist/reporters/simple.d.ts.map +1 -1
  155. package/dist/reporters/simple.js +64 -44
  156. package/dist/reporters/simple.js.map +1 -1
  157. package/dist/schema/modestbench-config.schema.json +153 -0
  158. package/dist/services/baseline-storage.cjs +151 -0
  159. package/dist/services/baseline-storage.cjs.map +1 -0
  160. package/dist/services/baseline-storage.d.cts +55 -0
  161. package/dist/services/baseline-storage.d.cts.map +1 -0
  162. package/dist/services/baseline-storage.d.ts +55 -0
  163. package/dist/services/baseline-storage.d.ts.map +1 -0
  164. package/dist/services/baseline-storage.js +147 -0
  165. package/dist/services/baseline-storage.js.map +1 -0
  166. package/dist/services/budget-evaluator.cjs +146 -0
  167. package/dist/services/budget-evaluator.cjs.map +1 -0
  168. package/dist/services/budget-evaluator.d.cts +29 -0
  169. package/dist/services/budget-evaluator.d.cts.map +1 -0
  170. package/dist/services/budget-evaluator.d.ts +29 -0
  171. package/dist/services/budget-evaluator.d.ts.map +1 -0
  172. package/dist/services/budget-evaluator.js +142 -0
  173. package/dist/services/budget-evaluator.js.map +1 -0
  174. package/dist/services/config-manager.cjs +23 -9
  175. package/dist/services/config-manager.cjs.map +1 -1
  176. package/dist/services/config-manager.d.cts +6 -1
  177. package/dist/services/config-manager.d.cts.map +1 -1
  178. package/dist/services/config-manager.d.ts +6 -1
  179. package/dist/services/config-manager.d.ts.map +1 -1
  180. package/dist/services/config-manager.js +23 -9
  181. package/dist/services/config-manager.js.map +1 -1
  182. package/dist/services/file-loader.cjs +3 -6
  183. package/dist/services/file-loader.cjs.map +1 -1
  184. package/dist/services/file-loader.d.cts.map +1 -1
  185. package/dist/services/file-loader.d.ts.map +1 -1
  186. package/dist/services/file-loader.js +3 -6
  187. package/dist/services/file-loader.js.map +1 -1
  188. package/dist/services/profiler/profile-filter.cjs +113 -0
  189. package/dist/services/profiler/profile-filter.cjs.map +1 -0
  190. package/dist/services/profiler/profile-filter.d.cts +20 -0
  191. package/dist/services/profiler/profile-filter.d.cts.map +1 -0
  192. package/dist/services/profiler/profile-filter.d.ts +20 -0
  193. package/dist/services/profiler/profile-filter.d.ts.map +1 -0
  194. package/dist/services/profiler/profile-filter.js +109 -0
  195. package/dist/services/profiler/profile-filter.js.map +1 -0
  196. package/dist/services/profiler/profile-parser.cjs +139 -0
  197. package/dist/services/profiler/profile-parser.cjs.map +1 -0
  198. package/dist/services/profiler/profile-parser.d.cts +18 -0
  199. package/dist/services/profiler/profile-parser.d.cts.map +1 -0
  200. package/dist/services/profiler/profile-parser.d.ts +18 -0
  201. package/dist/services/profiler/profile-parser.d.ts.map +1 -0
  202. package/dist/services/profiler/profile-parser.js +132 -0
  203. package/dist/services/profiler/profile-parser.js.map +1 -0
  204. package/dist/services/profiler/profile-runner.cjs +90 -0
  205. package/dist/services/profiler/profile-runner.cjs.map +1 -0
  206. package/dist/services/profiler/profile-runner.d.cts +29 -0
  207. package/dist/services/profiler/profile-runner.d.cts.map +1 -0
  208. package/dist/services/profiler/profile-runner.d.ts +29 -0
  209. package/dist/services/profiler/profile-runner.d.ts.map +1 -0
  210. package/dist/services/profiler/profile-runner.js +86 -0
  211. package/dist/services/profiler/profile-runner.js.map +1 -0
  212. package/dist/services/reporter-registry.cjs +18 -24
  213. package/dist/services/reporter-registry.cjs.map +1 -1
  214. package/dist/services/reporter-registry.d.cts +18 -40
  215. package/dist/services/reporter-registry.d.cts.map +1 -1
  216. package/dist/services/reporter-registry.d.ts +18 -40
  217. package/dist/services/reporter-registry.d.ts.map +1 -1
  218. package/dist/services/reporter-registry.js +18 -24
  219. package/dist/services/reporter-registry.js.map +1 -1
  220. package/dist/types/budgets.cjs +8 -0
  221. package/dist/types/budgets.cjs.map +1 -0
  222. package/dist/types/budgets.d.cts +149 -0
  223. package/dist/types/budgets.d.cts.map +1 -0
  224. package/dist/types/budgets.d.ts +149 -0
  225. package/dist/types/budgets.d.ts.map +1 -0
  226. package/dist/types/budgets.js +7 -0
  227. package/dist/types/budgets.js.map +1 -0
  228. package/dist/types/cli.cjs +2 -11
  229. package/dist/types/cli.cjs.map +1 -1
  230. package/dist/types/cli.d.cts +3 -227
  231. package/dist/types/cli.d.cts.map +1 -1
  232. package/dist/types/cli.d.ts +3 -227
  233. package/dist/types/cli.d.ts.map +1 -1
  234. package/dist/types/cli.js +2 -11
  235. package/dist/types/cli.js.map +1 -1
  236. package/dist/types/core.cjs +6 -1
  237. package/dist/types/core.cjs.map +1 -1
  238. package/dist/types/core.d.cts +13 -2
  239. package/dist/types/core.d.cts.map +1 -1
  240. package/dist/types/core.d.ts +13 -2
  241. package/dist/types/core.d.ts.map +1 -1
  242. package/dist/types/core.js +2 -1
  243. package/dist/types/core.js.map +1 -1
  244. package/dist/types/index.cjs +5 -0
  245. package/dist/types/index.cjs.map +1 -1
  246. package/dist/types/index.d.cts +2 -0
  247. package/dist/types/index.d.cts.map +1 -1
  248. package/dist/types/index.d.ts +2 -0
  249. package/dist/types/index.d.ts.map +1 -1
  250. package/dist/types/index.js +2 -0
  251. package/dist/types/index.js.map +1 -1
  252. package/dist/types/interfaces.d.cts +15 -8
  253. package/dist/types/interfaces.d.cts.map +1 -1
  254. package/dist/types/interfaces.d.ts +15 -8
  255. package/dist/types/interfaces.d.ts.map +1 -1
  256. package/dist/types/profiler.cjs +11 -0
  257. package/dist/types/profiler.cjs.map +1 -0
  258. package/dist/types/profiler.d.cts +100 -0
  259. package/dist/types/profiler.d.cts.map +1 -0
  260. package/dist/types/profiler.d.ts +100 -0
  261. package/dist/types/profiler.d.ts.map +1 -0
  262. package/dist/types/profiler.js +10 -0
  263. package/dist/types/profiler.js.map +1 -0
  264. package/dist/types/utility.cjs.map +1 -1
  265. package/dist/types/utility.d.cts +0 -8
  266. package/dist/types/utility.d.cts.map +1 -1
  267. package/dist/types/utility.d.ts +0 -8
  268. package/dist/types/utility.d.ts.map +1 -1
  269. package/dist/types/utility.js.map +1 -1
  270. package/dist/utils/identifiers.cjs +32 -0
  271. package/dist/utils/identifiers.cjs.map +1 -0
  272. package/dist/utils/identifiers.d.cts +32 -0
  273. package/dist/utils/identifiers.d.cts.map +1 -0
  274. package/dist/utils/identifiers.d.ts +32 -0
  275. package/dist/utils/identifiers.d.ts.map +1 -0
  276. package/dist/utils/identifiers.js +27 -0
  277. package/dist/utils/identifiers.js.map +1 -0
  278. package/dist/utils/package.cjs +40 -0
  279. package/dist/utils/package.cjs.map +1 -0
  280. package/dist/utils/package.d.cts +15 -0
  281. package/dist/utils/package.d.cts.map +1 -0
  282. package/dist/utils/package.d.ts +15 -0
  283. package/dist/utils/package.d.ts.map +1 -0
  284. package/dist/utils/package.js +33 -0
  285. package/dist/utils/package.js.map +1 -0
  286. package/dist/utils/type-guards.cjs +48 -0
  287. package/dist/utils/type-guards.cjs.map +1 -0
  288. package/dist/utils/type-guards.d.cts +22 -0
  289. package/dist/utils/type-guards.d.cts.map +1 -0
  290. package/dist/utils/type-guards.d.ts +22 -0
  291. package/dist/utils/type-guards.d.ts.map +1 -0
  292. package/dist/utils/type-guards.js +43 -0
  293. package/dist/utils/type-guards.js.map +1 -0
  294. package/package.json +10 -10
  295. package/src/cli/commands/analyze.ts +101 -0
  296. package/src/cli/commands/baseline.ts +577 -0
  297. package/src/cli/commands/history.ts +1 -1
  298. package/src/cli/commands/init.ts +105 -183
  299. package/src/cli/commands/run.ts +167 -98
  300. package/src/cli/index.ts +425 -183
  301. package/src/config/budget-schema.ts +189 -0
  302. package/src/config/schema.ts +260 -1
  303. package/src/constants.ts +53 -1
  304. package/src/core/engine.ts +151 -20
  305. package/src/core/output-path-resolver.ts +10 -2
  306. package/src/errors/base.ts +11 -2
  307. package/src/errors/budget.ts +38 -0
  308. package/src/errors/index.ts +3 -0
  309. package/src/index.ts +9 -0
  310. package/src/reporters/csv.ts +54 -25
  311. package/src/reporters/human.ts +88 -47
  312. package/src/reporters/json.ts +26 -71
  313. package/src/reporters/profile-human.ts +204 -0
  314. package/src/reporters/simple.ts +84 -53
  315. package/src/services/baseline-storage.ts +199 -0
  316. package/src/services/budget-evaluator.ts +182 -0
  317. package/src/services/config-manager.ts +23 -8
  318. package/src/services/file-loader.ts +3 -6
  319. package/src/services/profiler/profile-filter.ts +143 -0
  320. package/src/services/profiler/profile-parser.ts +194 -0
  321. package/src/services/profiler/profile-runner.ts +121 -0
  322. package/src/services/reporter-registry.ts +46 -81
  323. package/src/types/budgets.ts +180 -0
  324. package/src/types/cli.ts +5 -238
  325. package/src/types/core.ts +50 -10
  326. package/src/types/index.ts +5 -0
  327. package/src/types/interfaces.ts +16 -6
  328. package/src/types/profiler.ts +132 -0
  329. package/src/types/utility.ts +0 -10
  330. package/src/utils/identifiers.ts +58 -0
  331. package/src/utils/package.ts +35 -0
  332. package/src/utils/type-guards.ts +51 -0
@@ -215,7 +215,7 @@ export default {
215
215
  /**
216
216
  * Prompt user for confirmation with Y/n default to Yes
217
217
  */
218
- const promptUser = async (question) => {
218
+ const _promptUser = async (question) => {
219
219
  const rl = (0, node_readline_1.createInterface)({
220
220
  input: process.stdin,
221
221
  output: process.stdout,
@@ -234,7 +234,12 @@ const promptUser = async (question) => {
234
234
  */
235
235
  const handleInitCommand = async (context, options) => {
236
236
  try {
237
- const template = PROJECT_TEMPLATES[options.type];
237
+ // Apply defaults for required options
238
+ const type = options.type ?? 'basic';
239
+ const cwd = options.cwd ?? process.cwd();
240
+ const configType = options.configType ?? 'json';
241
+ const examples = options.examples ?? false;
242
+ const template = PROJECT_TEMPLATES[type];
238
243
  if (!options.quiet) {
239
244
  console.log(`Initializing ${template.name}...`);
240
245
  console.log(template.description);
@@ -242,27 +247,30 @@ const handleInitCommand = async (context, options) => {
242
247
  }
243
248
  // Check if project already exists
244
249
  if (!options.force) {
245
- const hasConflicts = await checkForConflicts(options);
250
+ const hasConflicts = await checkForConflicts(cwd, configType);
246
251
  if (hasConflicts) {
247
252
  console.error('Project files already exist. Use --force to overwrite.');
248
253
  return 1; // Already initialized
249
254
  }
250
255
  }
251
256
  // Create directory structure
252
- await createDirectories(template.directories, options);
257
+ await createDirectories(template.directories, cwd);
253
258
  // Create configuration file
254
- await createConfigFile(template.configOptions, options);
259
+ await createConfigFile(template.configOptions, cwd, configType);
255
260
  // Create example benchmarks if requested
256
- if (options.examples) {
257
- await createExampleBenchmarks(options);
261
+ if (examples) {
262
+ await createExampleBenchmarks(cwd);
258
263
  }
259
264
  // Create additional files
260
- await createAdditionalFiles(options);
265
+ await createAdditionalFiles(cwd, {
266
+ quiet: options.quiet,
267
+ yes: options.yes,
268
+ });
261
269
  if (!options.quiet) {
262
270
  console.log('✅ Project initialized successfully!');
263
271
  console.log();
264
272
  console.log('Next steps:');
265
- if (options.examples) {
273
+ if (examples) {
266
274
  console.log(' 1. Run example benchmarks: modestbench run');
267
275
  }
268
276
  else {
@@ -288,14 +296,11 @@ exports.handleInitCommand = handleInitCommand;
288
296
  /**
289
297
  * Check for existing files that would conflict
290
298
  */
291
- const checkForConflicts = async (options) => {
292
- const filesToCheck = [
293
- 'modestbench.config.' + options.configType,
294
- 'benchmarks',
295
- ];
299
+ const checkForConflicts = async (cwd, configType) => {
300
+ const filesToCheck = ['modestbench.config.' + configType, 'benchmarks'];
296
301
  for (const file of filesToCheck) {
297
302
  try {
298
- await (0, promises_1.access)((0, node_path_1.resolve)(options.cwd, file));
303
+ await (0, promises_1.access)((0, node_path_1.resolve)(cwd, file));
299
304
  return true; // File exists, conflict detected
300
305
  }
301
306
  catch {
@@ -304,118 +309,10 @@ const checkForConflicts = async (options) => {
304
309
  }
305
310
  return false;
306
311
  };
307
- /**
308
- * Handle .gitignore file creation or modification
309
- */
310
- const handleGitignore = async (options) => {
311
- const gitignorePath = (0, node_path_1.resolve)(options.cwd, '.gitignore');
312
- const modestbenchEntry = '.modestbench/';
313
- // Default .gitignore content for new files
314
- const defaultGitignoreContent = `# ModestBench
315
- benchmark-results/
316
- .modestbench/
317
-
318
- # Dependencies
319
- node_modules/
320
-
321
- # Environment
322
- .env
323
- .env.local
324
-
325
- # Logs
326
- *.log
327
- npm-debug.log*
328
- yarn-debug.log*
329
- yarn-error.log*
330
-
331
- # OS
332
- .DS_Store
333
- Thumbs.db
334
- `;
335
- try {
336
- // Check if .gitignore exists
337
- let gitignoreExists = false;
338
- try {
339
- await (0, promises_1.access)(gitignorePath);
340
- gitignoreExists = true;
341
- }
342
- catch {
343
- // File doesn't exist
344
- }
345
- if (!gitignoreExists) {
346
- // Create new .gitignore with full content
347
- await (0, promises_1.writeFile)(gitignorePath, defaultGitignoreContent, 'utf8');
348
- if (options.verbose) {
349
- console.log(' ✓ .gitignore');
350
- }
351
- return;
352
- }
353
- // File exists, check if .modestbench/ is already present
354
- const existingContent = await (0, promises_1.readFile)(gitignorePath, 'utf8');
355
- // Check if .modestbench/ is already in the file
356
- const hasModestbenchEntry = existingContent
357
- .split('\n')
358
- .some((line) => line.trim() === modestbenchEntry);
359
- if (hasModestbenchEntry) {
360
- // Already has the entry, nothing to do
361
- if (options.verbose) {
362
- console.log(' ✓ .gitignore (already contains .modestbench/)');
363
- }
364
- return;
365
- }
366
- // Determine if we should prompt or auto-add
367
- let shouldAdd = false;
368
- if (options.yes || options.quiet) {
369
- // Auto-accept in non-interactive mode
370
- shouldAdd = true;
371
- }
372
- else {
373
- // Prompt the user
374
- console.log();
375
- console.log('The .modestbench/ directory stores benchmark history and should typically');
376
- console.log('not be committed to version control.');
377
- console.log();
378
- shouldAdd = await promptUser('Would you like to add .modestbench/ to .gitignore? (Y/n) ');
379
- }
380
- if (shouldAdd) {
381
- // Append .modestbench/ to existing .gitignore
382
- let contentToAppend = '';
383
- // Ensure file ends with newline
384
- if (!existingContent.endsWith('\n')) {
385
- contentToAppend += '\n';
386
- }
387
- // Add a blank line if the file doesn't end with one
388
- if (!existingContent.endsWith('\n\n') && existingContent.trim() !== '') {
389
- contentToAppend += '\n';
390
- }
391
- // Add comment and entry
392
- contentToAppend += '# ModestBench history\n';
393
- contentToAppend += modestbenchEntry + '\n';
394
- await (0, promises_1.appendFile)(gitignorePath, contentToAppend, 'utf8');
395
- if (options.verbose || !options.quiet) {
396
- console.log(' ✓ Added .modestbench/ to .gitignore');
397
- }
398
- }
399
- else {
400
- if (options.verbose) {
401
- console.log(' ⊘ Skipped adding .modestbench/ to .gitignore');
402
- }
403
- }
404
- }
405
- catch (error) {
406
- // Non-critical, just warn
407
- console.warn('Warning: Could not create/modify .gitignore file:', error instanceof Error ? error.message : String(error));
408
- }
409
- };
410
312
  /**
411
313
  * Create additional project files
412
314
  */
413
- const createAdditionalFiles = async (options) => {
414
- if (!options.quiet) {
415
- console.log('Creating additional files...');
416
- }
417
- // Handle .gitignore
418
- await handleGitignore(options);
315
+ const createAdditionalFiles = async (cwd, options) => {
419
316
  // Create README.md
420
317
  const readmeContent = `# Benchmark Project
421
318
 
@@ -447,28 +344,79 @@ See \`modestbench.config.*\` for benchmark configuration options.
447
344
  Create new benchmark files in the \`benchmarks/\` directory. See the examples for the expected format.
448
345
  `;
449
346
  try {
450
- const readmePath = (0, node_path_1.resolve)(options.cwd, 'README.md');
347
+ const readmePath = (0, node_path_1.resolve)(cwd, 'README.md');
451
348
  await (0, promises_1.writeFile)(readmePath, readmeContent, 'utf8');
452
- if (options.verbose) {
453
- console.log(' ✓ README.md');
454
- }
455
349
  }
456
350
  catch {
457
351
  // Non-critical, just warn
458
352
  console.warn('Warning: Could not create README.md file');
459
353
  }
354
+ // Create or update .gitignore
355
+ await createOrUpdateGitignore(cwd, options);
460
356
  };
461
357
  /**
462
- * Create configuration file
358
+ * Create or update .gitignore file to include ModestBench directories
463
359
  */
464
- const createConfigFile = async (configOptions, options) => {
465
- const filename = `modestbench.config.${options.configType}`;
466
- const filePath = (0, node_path_1.resolve)(options.cwd, filename);
467
- if (!options.quiet) {
468
- console.log(`Creating configuration file: ${filename}`);
360
+ const createOrUpdateGitignore = async (cwd, options) => {
361
+ const gitignorePath = (0, node_path_1.resolve)(cwd, '.gitignore');
362
+ const modestbenchEntry = '.modestbench/';
363
+ const modestbenchSection = `\n# ModestBench history\n${modestbenchEntry}\n`;
364
+ try {
365
+ // Check if .gitignore exists
366
+ let existingContent = '';
367
+ try {
368
+ existingContent = await (0, promises_1.readFile)(gitignorePath, 'utf8');
369
+ }
370
+ catch {
371
+ // File doesn't exist, will create new one
372
+ }
373
+ if (existingContent) {
374
+ // File exists, check if .modestbench/ is already present
375
+ if (existingContent.includes(modestbenchEntry)) {
376
+ // Already present, nothing to do
377
+ return;
378
+ }
379
+ // Append .modestbench/ entry (--yes or --quiet means auto-accept)
380
+ if (options?.yes || options?.quiet) {
381
+ // Ensure content ends with newline
382
+ const contentToAppend = existingContent.endsWith('\n')
383
+ ? modestbenchSection
384
+ : `\n${modestbenchSection}`;
385
+ await (0, promises_1.appendFile)(gitignorePath, contentToAppend, 'utf8');
386
+ }
387
+ }
388
+ else {
389
+ // Create new .gitignore with common entries
390
+ const newContent = `# Dependencies
391
+ node_modules/
392
+
393
+ # Build output
394
+ dist/
395
+ build/
396
+ *.log
397
+
398
+ # Test coverage
399
+ coverage/
400
+
401
+ # Benchmark output
402
+ benchmark-results/
403
+ ${modestbenchSection}`;
404
+ await (0, promises_1.writeFile)(gitignorePath, newContent, 'utf8');
405
+ }
406
+ }
407
+ catch {
408
+ // Non-critical, just warn
409
+ console.warn('Warning: Could not create/update .gitignore file');
469
410
  }
411
+ };
412
+ /**
413
+ * Create configuration file
414
+ */
415
+ const createConfigFile = async (configOptions, cwd, configType) => {
416
+ const filename = `modestbench.config.${configType}`;
417
+ const filePath = (0, node_path_1.resolve)(cwd, filename);
470
418
  let content;
471
- switch (options.configType) {
419
+ switch (configType) {
472
420
  case 'js':
473
421
  content = `export default ${JSON.stringify(configOptions, null, 2)};\n`;
474
422
  break;
@@ -488,13 +436,10 @@ export default config;
488
436
  content = generateSimpleYaml(configOptions);
489
437
  break;
490
438
  default:
491
- throw new index_js_1.UnsupportedConfigFormatError(`Unsupported config format: ${options.configType}`);
439
+ throw new index_js_1.UnsupportedConfigFormatError(`Unsupported config format: ${configType}`);
492
440
  }
493
441
  try {
494
442
  await (0, promises_1.writeFile)(filePath, content, 'utf8');
495
- if (options.verbose) {
496
- console.log(` ✓ ${filename}`);
497
- }
498
443
  }
499
444
  catch (error) {
500
445
  throw new index_js_1.InvalidArgumentError(`Failed to create config file: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
@@ -503,17 +448,11 @@ export default config;
503
448
  /**
504
449
  * Create directory structure
505
450
  */
506
- const createDirectories = async (directories, options) => {
507
- if (!options.quiet) {
508
- console.log('Creating directories...');
509
- }
451
+ const createDirectories = async (directories, cwd) => {
510
452
  for (const dir of directories) {
511
- const dirPath = (0, node_path_1.resolve)(options.cwd, dir);
453
+ const dirPath = (0, node_path_1.resolve)(cwd, dir);
512
454
  try {
513
455
  await (0, promises_1.mkdir)(dirPath, { recursive: true });
514
- if (options.verbose) {
515
- console.log(` ✓ ${dir}/`);
516
- }
517
456
  }
518
457
  catch (error) {
519
458
  throw new index_js_1.InvalidArgumentError(`Failed to create directory ${dir}: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
@@ -523,18 +462,12 @@ const createDirectories = async (directories, options) => {
523
462
  /**
524
463
  * Create example benchmark files
525
464
  */
526
- const createExampleBenchmarks = async (options) => {
527
- if (!options.quiet) {
528
- console.log('Creating example benchmarks...');
529
- }
530
- const benchmarksDir = (0, node_path_1.resolve)(options.cwd, 'benchmarks');
465
+ const createExampleBenchmarks = async (cwd) => {
466
+ const benchmarksDir = (0, node_path_1.resolve)(cwd, 'benchmarks');
531
467
  for (const [name, example] of Object.entries(EXAMPLE_BENCHMARKS)) {
532
468
  const filePath = (0, node_path_1.join)(benchmarksDir, example.filename);
533
469
  try {
534
470
  await (0, promises_1.writeFile)(filePath, example.content, 'utf8');
535
- if (options.verbose) {
536
- console.log(` ✓ ${example.filename}`);
537
- }
538
471
  }
539
472
  catch (error) {
540
473
  throw new index_js_1.InvalidArgumentError(`Failed to create example ${name}: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,12 @@ import type { CliContext } from "../index.cjs";
9
9
  * Init command options interface
10
10
  */
11
11
  interface InitOptions {
12
- configType: 'js' | 'json' | 'ts' | 'yaml';
13
- cwd: string;
14
- examples: boolean;
12
+ configType?: 'js' | 'json' | 'ts' | 'yaml';
13
+ cwd?: string;
14
+ examples?: boolean;
15
15
  force?: boolean | undefined;
16
16
  quiet?: boolean | undefined;
17
- type: 'advanced' | 'basic' | 'library';
17
+ type?: 'advanced' | 'basic' | 'library';
18
18
  verbose?: boolean | undefined;
19
19
  yes?: boolean | undefined;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAoB;AAO9C;;GAEG;AACH,UAAU,WAAW;IACnB,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAC1C,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAkOD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,UAAU,EACnB,SAAS,WAAW,KACnB,OAAO,CAAC,MAAM,CAkEhB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAoB;AAO9C;;GAEG;AACH,UAAU,WAAW;IACnB,UAAU,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAkOD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,UAAU,EACnB,SAAS,WAAW,KACnB,OAAO,CAAC,MAAM,CA2EhB,CAAC"}
@@ -9,12 +9,12 @@ import type { CliContext } from "../index.js";
9
9
  * Init command options interface
10
10
  */
11
11
  interface InitOptions {
12
- configType: 'js' | 'json' | 'ts' | 'yaml';
13
- cwd: string;
14
- examples: boolean;
12
+ configType?: 'js' | 'json' | 'ts' | 'yaml';
13
+ cwd?: string;
14
+ examples?: boolean;
15
15
  force?: boolean | undefined;
16
16
  quiet?: boolean | undefined;
17
- type: 'advanced' | 'basic' | 'library';
17
+ type?: 'advanced' | 'basic' | 'library';
18
18
  verbose?: boolean | undefined;
19
19
  yes?: boolean | undefined;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB;AAO9C;;GAEG;AACH,UAAU,WAAW;IACnB,UAAU,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAC1C,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAkOD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,UAAU,EACnB,SAAS,WAAW,KACnB,OAAO,CAAC,MAAM,CAkEhB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB;AAO9C;;GAEG;AACH,UAAU,WAAW;IACnB,UAAU,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAkOD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,UAAU,EACnB,SAAS,WAAW,KACnB,OAAO,CAAC,MAAM,CA2EhB,CAAC"}