All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
start: node dist/index.jsscript in all generated projects (was documented in README but never actually generated)vitest.config.tswith explicit test include pattern and timeout- 7 unit tests for
detectPackageManagercovering user agent parsing, lockfile detection, and npm fallback -d, --defaultflag now properly registered in cac — was dead code before (only handled in a parser that never ran with flags)
- Extended generated
.gitignore: now includes.env.local,*.log,npm-debug.log*,coverage/,.DS_Store - Replaced
spawnSyncwith asyncspawnin generator — no longer blocks the event loop during git and install operations devscript in root project switched fromts-nodetotsxfor consistency with generated projectspreparescript updated from deprecatedhusky installtohusky- ESLint config: replaced
globals.jestwithglobals.vitest publish.ymlworkflow: Node 18 (EOL) → Node 20 to match CIgenerator.test.ts: disabled realnpm install(was the only test running a live install, now consistent with all other tests)- Pinned
tsx ^4.21.0in devDependencies so generated projects get a deterministic version instead oflatest - Node.js minimum requirement bumped to 20.19.0 (required by cac v7)
- README: corrected
ts-node→tsxin nodemon section, updated Node.js requirement
- Git commit guard condition was
!insideRepo || !hasCommits— would attempt to commit outside a git repo; corrected toinsideRepo && !hasCommits Omit<ToolOptions, 'yes' | 'default'>used a non-existent key'default'— corrected to'useDefaults'--no-committest now assertsgit rev-parse HEADfails (repo has no commits), not just that.gitexists
parseFlagsFromArgv(80 lines of dead code — only executed with zero CLI arguments, always returned{}).husky/pre-commit.bakstale backup file
- Updated development dependencies
- Migrated Husky hooks to v10+ (no legacy sourcing)
- Fixed npm audit vulnerabilities
- Validated local project generation (minimal template)
- Updated development dependencies
- @types/node from 25.0.3 to 25.0.6
- typescript-eslint from 8.51.0 to 8.52.0
- Fixed all npm audit vulnerabilities
- Updated development dependencies
- typescript-eslint from 8.50.1 to 8.51.0
- globals from 16.5.0 to 17.0.0 (major version with new environments: audioWorklet, paintWorklet, sharedWorker, bunBuiltin, denoBuiltin)
- Updated development dependencies
- typescript-eslint from 8.50.0 to 8.50.1
- Updated development dependencies
- typescript-eslint from 8.49.0 to 8.50.0
- Updated development dependencies
- @eslint/js from 9.39.1 to 9.39.2
- eslint from 9.39.1 to 9.39.2
- typescript-eslint from 8.48.1 to 8.49.0
- Updated development dependencies
- prettier from 3.7.3 to 3.7.4
- typescript-eslint from 8.18.0 to 8.48.1
- typescript from 5.7.3 to 5.9.3
- Package maintenance and security updates
- Resolved Jest and ts-jest dependency compatibility issue
- Dev dependency: tsx replaces ts-node in generated projects
- Updated dev script to use tsx instead of ts-node
- Include package-lock.json in initial git commit
- Fix TypeScript ESM module error with nodemon by replacing ts-node with tsx
- Prettier 3.7.3 for code formatting
- Husky 9.1.7 + lint-staged 16.2.7 for pre-commit hooks
- GitHub Actions v6 (checkout, setup-node)
- Publish workflow for GitHub Release-based npm publishing
- Issue and PR templates
- Dependabot configuration
- CONTRIBUTING.md guide
- Comprehensive README badges (CI, npm downloads, license)
- Upgraded all dependencies to latest versions
- Removed semantic-release in favor of GitHub Release workflow
- Simplified CI workflow (removed matrix, added format check)
- Formatted all code with Prettier
- Improved package.json with format script, engines, and lint-staged config
- Cleaned up README and removed duplicates
- Fixed 15 security vulnerabilities by upgrading dependencies