Skip to content

refactor!: remove default value of --type option in apps:create #155

Description

@robingenz

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions