Skip to content

feat: Add type and CRUD options in generate command#3275

Merged
kamilmysliwiec merged 2 commits intonestjs:masterfrom
AlexNguetcha:fix-resource-options
Apr 16, 2026
Merged

feat: Add type and CRUD options in generate command#3275
kamilmysliwiec merged 2 commits intonestjs:masterfrom
AlexNguetcha:fix-resource-options

Conversation

@AlexNguetcha
Copy link
Copy Markdown
Contributor

PR Checklist

Please check if your PR fulfills the following requirements:

PR Type

What kind of change does this PR introduce?

[X] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Other... Please describe:

What is the current behavior?

nest g resource users --type rest --crud

throws:

Unknown option: --type
Unknown option: --crud

Even though --type and --crud are defined in the resource/schema.json schematic.

Issue Number: #3229

What is the new behavior?

  • --type and --crud options are now forwarded correctly to the resource schematic.
  • CLI recognizes these options and generates a REST CRUD resource automatically.
  • Example:
nest g resource users --type rest --crud

Generates:

src/users/users.module.ts
src/users/users.controller.ts
src/users/users.service.ts
src/users/dto/create-user.dto.ts
src/users/entities/user.entity.ts

Does this PR introduce a breaking change?

[ ] Yes
[X] No

Other information

  • No automated tests were added because there are no existing e2e tests for generate resource.
  • Manual testing confirms the fix works.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Nest CLI generate command to recognize and forward --type and --crud flags to the underlying resource schematic, addressing issue #3229 where these flags were rejected as unknown options.

Changes:

  • Add --type and --crud options to nest generate.
  • Forward type and crud values into the schematic option list passed to @angular-devkit/schematics-cli.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread commands/generate.command.ts Outdated
Comment thread commands/generate.command.ts Outdated
@kamilmysliwiec kamilmysliwiec merged commit 2d7c91a into nestjs:master Apr 16, 2026
1 check passed
yogeshwaran-c added a commit to yogeshwaran-c/nest-cli that referenced this pull request Apr 17, 2026
Backports the master-branch fix for nestjs#3229 (PR nestjs#3275) to v12.0.0. The
`@nestjs/schematics` resource generator defines `--type` and `--crud`
options in its schema.json, but the v12 CLI does not register either
flag on the `generate` command. Running:

    nest g resource users --type rest --crud

exits with "error: unknown option '--type'" even though the schematic
itself would handle both flags correctly.

- register `--type [type]` and `--crud` on the generate command
- forward both into the generate action and on to the schematic
- only forward `--crud` when explicitly passed (avoid toggling default
  behavior on users who never opted in)

The master-branch PR noted that "no automated tests were added because
there are no existing e2e tests for generate resource" — this PR adds a
focused unit spec for `GenerateAction` covering forwarding of the new
options individually and together.
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.

3 participants