Skip to content

Conversation

@pyramation
Copy link
Contributor

feat: rename inquirerer to commodore and create @commodore/utils package

Summary

This PR performs a major refactoring of the CLI-related packages in dev-utils:

  1. Renamed inquirerercommodore (v3.0.0): The main CLI prompt library with the Inquirerer class renamed to Commodore
  2. Renamed create-gen-app@commodore/scaffolds (v1.0.0): Template scaffolding utility
  3. Created @commodore/utils (v1.0.0): New package with CLI lifecycle utilities extracted from constructive repo:
    • extractFirst() - command routing utility
    • cliExitWithError() - error handling with optional cleanup hooks
    • checkForUpdates() - npm version checking with configurable registry
    • getSelfPackageJson() - package.json resolution helpers
  4. Added subpath export for commodore/test-utils

All internal references and dependencies have been updated. Build passes successfully.

Review & Testing Checklist for Human

  • Verify @commodore npm scope access - Ensure the @commodore org is properly configured on npm before publishing
  • Test downstream consumers - The constructive repo (pgpm CLI, cnc CLI) still needs to be updated to use these new packages (Phase 2 not included in this PR)
  • Review hardcoded version in create-gen-app-test - packages/create-gen-app-test/src/cli.ts has PACKAGE_VERSION = '1.0.0' hardcoded instead of reading from package.json
  • Verify @commodore/utils utilities - The new utilities are untested (no test files created). Consider adding tests before publishing.
  • Test subpath export - Verify import { ... } from 'commodore/test-utils' works correctly after build

Recommended Test Plan:

  1. Run pnpm install && pnpm build to verify everything compiles
  2. Run pnpm test to ensure existing tests pass
  3. Manually test importing from the new package names in a test project
  4. Do NOT publish until the constructive repo is updated to consume these packages

Notes

BREAKING CHANGES:

  • inquirerercommodore (class InquirererCommodore)
  • create-gen-app@commodore/scaffolds
  • All consumers must update their imports

Not included in this PR:

  • Updates to constructive repo (pgpm/cnc CLIs) - planned as Phase 2

Link to Devin run: https://app.devin.ai/sessions/e5018850caff45ce8a126331548d69bc
Requested by: Dan Lynch (@pyramation)

- Rename inquirerer package to commodore (v3.0.0)
- Rename create-gen-app package to @commodore/scaffolds (v1.0.0)
- Create new @commodore/utils package with CLI lifecycle utilities:
  - extractFirst: command routing utility
  - cliExitWithError: error handling with cleanup hooks
  - checkForUpdates: npm version checking with configurable registry
  - getSelfPackageJson: package.json resolution helpers
- Add test-utils subpath export to commodore package
- Update all internal references and dependencies

BREAKING CHANGE: Package names have changed:
- inquirerer -> commodore
- create-gen-app -> @commodore/scaffolds
@devin-ai-integration
Copy link

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@pyramation pyramation closed this Dec 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants