Current problem
The --type option in apps:create was added in v4.9 (#154) with a default value of capacitor to preserve backwards compatibility for existing users. As a result, users who run apps:create without specifying --type silently get a Capacitor app — even when they actually intended to create an Android, iOS, or Cordova app.
This is convenient short-term but hides a meaningful choice that should be explicit, and the longer the default exists, the more scripts and CI pipelines will start relying on it implicitly.
Preferred solution
In the next major release (v5.0.0), remove the default value of --type and treat it like --name and --organization-id:
- If
--type is omitted in an interactive session: prompt the user to select one of android, capacitor, cordova, ios.
- If
--type is omitted in a non-interactive session (e.g. CI): exit with an error message instructing the user to provide --type explicitly.
This makes the choice explicit at creation time and avoids surprising behavior for non-Capacitor users.
Alternative options
No response
Additional context
Before submitting
Current problem
The
--typeoption inapps:createwas added in v4.9 (#154) with a default value ofcapacitorto preserve backwards compatibility for existing users. As a result, users who runapps:createwithout specifying--typesilently get a Capacitor app — even when they actually intended to create an Android, iOS, or Cordova app.This is convenient short-term but hides a meaningful choice that should be explicit, and the longer the default exists, the more scripts and CI pipelines will start relying on it implicitly.
Preferred solution
In the next major release (v5.0.0), remove the default value of
--typeand treat it like--nameand--organization-id:--typeis omitted in an interactive session: prompt the user to select one ofandroid,capacitor,cordova,ios.--typeis omitted in a non-interactive session (e.g. CI): exit with an error message instructing the user to provide--typeexplicitly.This makes the choice explicit at creation time and avoids surprising behavior for non-Capacitor users.
Alternative options
No response
Additional context
--typewith the default: feat(apps): add--typeoption toapps:create#154src/commands/apps/create.tsBefore submitting