All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
7.2.0 (2024-01-02)
7.1.6 (2023-12-19)
7.1.5 (2023-11-08)
7.1.4 (2023-11-08)
7.1.3 (2023-11-07)
Note: Version bump only for package @ionic/cli
7.1.2 (2023-11-07)
7.1.1 (2023-05-02)
Note: Version bump only for package @ionic/cli
7.1.0 (2023-05-01)
7.0.1 (2023-04-05)
- state should not be required on OAuth Response (#4995) (c053cb3)
- cli: ionic info returns package information (#4991) (2dd9136), closes #4992
7.0.0 (2023-03-29)
- docs: remove ionic docs command (#4969) (e624258)
- doctor: remove ionic doctor command (#4959) (13568b1)
- lab: remove ionic serve --lab option (#4960) (d6512a5)
- add vite support for react and vue (#4966) (94e9fa2)
- remove ionic-angular project type (ff1c936)
- remove ionicv1 project type (6ea2d48)
- remove v3 and v1 integrations (d40da3d)
- use vite specific projects for starters (#4970) (f35ea72)
- appflow: The
package
commands and thedeploy build
command have been removed. Developers should migrate to the Ionic Cloud CLI instead.
- Using
deploy build
? Migrate to ionic-cloud build web and if you used the -channel option, also use ionic-cloud deploy web. - Using
package
commands? Migrate to ionic-cloud build and ionic-cloud deploy.
The remaining deploy
commands have been renamed to live-update
.
deploy command | live-update command |
---|---|
ionic deploy add |
ionic live-update add |
ionic deploy configure |
ionic live-update configure |
ionic deploy manifest |
ionic live-update manifest |
See https://ionic.io/docs/appflow/cli/overview for more information on the Ionic Cloud CLI.
- docs: The
ionic docs
command has been removed. See #4905 for an alternative. - doctor: The
ionic doctor
command has been removed. See #4907 for alternatives. - lab: The
--lab
option has been removed fromionic serve
. See https://ionicframework.com/docs/developing/previewing for alternatives. - This commit removes integrations with V1 and V3 Ionic project types
- This commit removes the Ionic V1 project type from the available project integrations. Please migrate to a modern Ionic project.
- Integration with V3 (aka ionic-angular) project has been removed. Please update to modern Ionic projects.
6.20.9 (2023-03-17)
6.20.9 (2023-03-17)
6.20.8 (2023-01-13)
Note: Version bump only for package @ionic/cli
6.20.7 (2023-01-13)
Note: Version bump only for package @ionic/cli
6.20.7 (2023-01-13)
- capacitor: forward --inline to Capacitor CLI on copy and sync (#4928) (f5f75fa)
- cli: Deprecate doctor and lab commands (#4945) (6fcf882)
- deploy manifest error if no capacitor CLI (#4940) (f586a18)
6.20.6 (2022-12-20)
6.20.5 (2022-12-13)
Note: Version bump only for package @ionic/cli
6.20.4 (2022-11-15)
6.20.3 (2022-10-06)
6.20.2 (2022-09-29)
6.20.1 (2022-06-21)
Note: Version bump only for package @ionic/cli
6.20.0 (2022-06-16)
- capacitor: enable NSAppTransportSecurity settings for live reload if needed (#4851) (24e22a6)
- cli: allow cap electron commands (#4854) (46da22f)
6.19.1 (2022-05-09)
- capacitor: Match platform version with CLI version (#4829) (9846d46)
- vue: pass extra args to vue-cli serve (#4827) (87a0dcd)
6.19.0 (2022-03-15)
6.18.2 (2022-03-04)
6.18.1 (2021-11-10)
6.18.0 (2021-10-25)
6.17.1 (2021-09-03)
6.17.0 (2021-08-11)
- numeric app names dont crash adding capacitor (#4709) (e13a4c5)
- Remove serve options from cap run command (#4736) (75e635b)
- Add web based GUI start wizard to ionic start command (#4746) (c0669a9)
- Cap is no longer experimental and is default for Angular (#4745) (d81e08b)
6.16.3 (2021-06-08)
- revert the change to update the lock file when the --no-deps flag is used and issue a warning instead (#4713) (96ba8b4)
6.16.2 (2021-06-03)
- Add status-bar to plugins installed on capacitor integration (#4701) (7c49d5c)
- updated
ionic start
to update lock files when the --no-deps arg is passed (#4706) (868e61d)
6.16.1 (2021-05-19)
6.16.0 (2021-05-19)
- capacitor: remove extra logging (6cebf63)
6.15.0 (2021-05-11)
6.14.1 (2021-04-30)
6.14.0 (2021-04-28)
6.13.1 (2021-02-22)
6.13.0 (2021-02-18)
- appflow: support Capacitor only apps with
ionic deploy manifest
(#4641) (cee620b) - appflow: Support downloading all artifact types from appflow builds (cae11db)
- appflow: Support downloading WWW_ZIP after deploy build (bce15d1)
6.12.4 (2021-01-27)
- Appflow: Fix issue with deploy add and deploy configure commands where sometimes necessary variables weren't correctly set. (#4634) (be6cf2e)
6.12.3 (2020-12-10)
6.12.2 (2020-11-17)
6.12.1 (2020-10-29)
- Appflow: fixes bug when a build that gets cancelled on the dashboard is not recognized as a final state in the CLI (#4598) (51eab00)
6.12.0 (2020-10-15)
6.11.12 (2020-10-12)
- capacitor: use correct root when checking platforms (e243357)
- cordova: load config.xml after serve/build hooks (9867ada)
6.11.11 (2020-10-05)
- Appflow: fix bug where appflow build would fail to copy IPA/APK if tmp dir was mounted on a different filesystem (#4578) (65c740d)
6.11.10 (2020-09-29)
Note: Version bump only for package @ionic/cli
6.11.9 (2020-09-24)
- cordova: handle output-metadata.json files during android run (5905cc1)
6.11.8 (2020-09-02)
Note: Version bump only for package @ionic/cli
6.11.7 (2020-08-29)
Note: Version bump only for package @ionic/cli
6.11.6 (2020-08-28)
Note: Version bump only for package @ionic/cli
6.11.5 (2020-08-27)
Note: Version bump only for package @ionic/cli
6.11.4 (2020-08-27)
Note: Version bump only for package @ionic/cli
6.11.3 (2020-08-26)
Note: Version bump only for package @ionic/cli
6.11.2 (2020-08-25)
Note: Version bump only for package @ionic/cli
6.11.1 (2020-08-20)
6.11.0 (2020-07-29)
6.10.2 (2020-07-27)
6.10.1 (2020-06-15)
- cordova: handle new format of output.json files for Android builds (#4470) (689b886)
- use pnpm if configured in build/serve commands (#4459) (174985f)
6.10.0 (2020-06-02)
- cordova: platform is a required input (1bd3087)
6.9.3 (2020-05-27)
- start: fix issue with starting the react conf app (daf1f72)
6.9.2 (2020-05-17)
- link: fix GitHub OAuth URL on WSL (#4442) (93c5bf5)
- package: fix name of the package deploy name (#4435) (6f6f9d7)
- start: do not prompt for project type when cloning (#4427) (4ff1622)
6.9.1 (2020-05-12)
- pin tslib to avoid "Cannot set property pathExists" error (689e1f0)
6.9.0 (2020-05-11)
- capacitor: do not open browser with
ionic cap run
(8e3908d)
6.8.0 (2020-05-06)
6.7.0 (2020-04-29)
6.6.0 (2020-04-14)
- capacitor: restore capacitor config after livereload (cdc0190)
- capacitor: warn about server.url during capacitor builds (5f6b5dd)
ionic capacitor build
command (#4254) (906fa96)
6.5.0 (2020-04-07)
- start: Default to Capacitor for React (#4383) (3fd72ec)
- start: icon/splash from start wizard (#4376) (bb4c12b)
6.4.3 (2020-04-05)
- cordova: make sure build is complete before reading output.json (f1abe83)
- cordova: use relative path for ipa files (4831758)
6.4.2 (2020-04-05)
- cordova: use integration root path for file read (79dc0b1)
6.4.1 (2020-04-02)
6.4.0 (2020-03-30)
- angular: convert
--no-<opt>
to--<opt>=false
for ng (176ff4b) - capacitor: check for capacitor.config.json before integrating (2d7992c)
6.3.0 (2020-03-18)
6.2.2 (2020-03-16)
- angular: always provide the project name fallback (#4349) (c498f59)
- multi-app: use proper paths for integration root (d53cee3)
6.2.1 (2020-03-09)
- react: accept environment variables into build process (0932ff0)
6.2.0 (2020-03-03)
- add support for pnpm (#4330) (47bf076)
- init: add --multi-app option to init monorepos (42c5199)
- serve: -c as alias for --configuration for Angular projects (c010f37)
- serve: add
--public-host
option (#4331) (8ae752d) - start: add signup prompt (#4338) (1f23b66)
6.0.2 (2020-02-10)
- capacitor: perform Ionic build for copy and sync (be42aee)
- config: make project file configurable (43ba45c)
6.0.1 (2020-02-03)
- update: show update message even with command error (6f32ebc)
- start: update "my-first-app" to use Capacitor for Angular and React (#4307) (de350a7)
- config: add
delete
anddel
aliases forionic config unset
(56295c2) - cordova: add
cdv
alias forionic cordova
(ea503b7) - cordova: add
res
alias forionic cordova resources
(2d6ec39) - integrations: add
integration
alias forionic integrations
(a9bf5a1) - integrations: add
en
andadd
aliases forionic integrations enable
(b85b5f9) - integrations: add
dis
,delete
,del
,remove
, andrm
aliases forionic integrations disable
(fd33cb3) - integrations: add
dis
,delete
,del
,remove
, andrm
aliases forionic integrations disable
(fd33cb3)
6.0.0 (2020-01-25)
The following changes were made in this major release of the Ionic CLI:
- The package name for the Ionic CLI is now
@ionic/cli
! 🎉 The oldionic
package will not be updated to CLI 6. - The DevApp has been retired, so
--devapp
has been removed fromionic serve
. We encourage you to use native tooling (Cordova/Capacitor, Android Studio, and Xcode) to develop apps on hardware and virtual devices. - The Ionic Resources server is being retired, so
--no-cordova-res
has been removed fromionic cordova resources
. We encourage you to switch tocordova-res
. - We are now recommending ⚡ Capacitor ⚡ as the official native runtime for Ionic apps. Cordova will still be supported for this major release.
Make sure you have NodeJS v10.3.0+ installed. We recommend the latest LTS version.
Uninstall the old Ionic CLI from your computer.
npm uninstall -g ionic
Install Ionic CLI 6 to your computer.
npm install -g @ionic/cli
- The npm package for the Ionic CLI is now
@ionic/cli
. - A minimum of Node.js 10.3.0 is required.
--devapp
is no longer an option ofionic serve
.--no-cordova-res
is no longer an option ofionic cordova resources
.
5.4.15 (2020-01-15)
5.4.14 (2020-01-13)
5.4.13 (2019-12-13)
- react: fix build options, update tonality/style (8656c60)
5.4.12 (2019-12-10)
Note: Version bump only for package ionic
5.4.11 (2019-12-09)
- cordova: do not detect hardware devices when using emulate (446a149)
5.4.10 (2019-12-05)
- devapp: enable cordova upon first serve w/ devapp (fd27ee3)
- telemetry: disable for non-TTY (81dfff3)
5.4.9 (2019-11-25)
5.4.8 (2019-11-24)
- fix parsing of command line options (060f67c)
5.4.7 (2019-11-21)
- do not try to auth for select commands (162e733)
5.4.6 (2019-11-12)
5.4.5 (2019-10-30)
5.4.4 (2019-10-14)
Note: Version bump only for package ionic
5.4.3 (2019-10-14)
Note: Version bump only for package ionic
5.4.2 (2019-10-01)
5.4.1 (2019-09-20)
- cordova: fix hanging issue for prepare/compile (44697cf)
5.4.0 (2019-09-20)
- angular: fix
--prod
option (609b80d)
5.3.0 (2019-09-18)
- angular: show Angular CLI prompts in
ionic generate
(#4123) (e97f868) - cordova: fix hanging issue with modern iOS build system (b7758ed)
- cordova: offer confirmation on adding unknown platform (453f08b)
- angular: document and pass along
--watch
option to ng (1444212) - cordova: --external option for hosting dev server on 0.0.0.0 (fc6020f)
5.2.8 (2019-09-10)
- cordova: use allowlist for supported project types (167a68c)
- multi-app: use proper config path for integrations (4e8a226)
5.2.7 (2019-08-28)
- cordova: use correct package path for release builds (df34272)
5.2.6 (2019-08-23)
- cordova: handle whitespace in app name when running (0e662e7)
- react: Disable CRA from opening window so two windows don't open (#4119) (f10c92c)
5.2.5 (2019-08-14)
Note: Version bump only for package ionic
5.2.4 (2019-08-07)
Note: Version bump only for package ionic
5.2.3 (2019-07-15)
Note: Version bump only for package ionic
5.2.2 (2019-07-09)
- cordova: revert to
--no-connect
as default (e4368a8) - deploy: support custom Capacitor build directory (#4065) (6146296)
5.2.1 (2019-06-28)
- deploy: fix bug with
ionic deploy configure
in CI (7774dfe)
5.2.0 (2019-06-26)
- capacitor: save Capacitor CLI in dev deps (dd2fd86)
- cordova: rely on package.json for plugins/platforms (286917f)
- angular: pass
--verbose
to Angular CLI (cf611ed) - angular: pass
--verbose
to Angular CLI for serve (3f9e859) - repair: add
--cordova
flag for only repairing Cordova (1055b49)
5.1.1 (2019-06-26)
Note: Version bump only for package ionic
5.1.0 (2019-06-21)
- start: fix glitch with writing package.json without spaces (389c398)
- subsequent validation for various prompts (1b92f8a)
- info: show available updates for utilities (a9f4b54)
- replace update-notifier (a232c07)
- deploy: command to interactively add deploy plugin (#4039) (c75e66f)
5.0.3 (2019-06-18)
- capacitor: use correct web-dir path for react and capacitor (#4029) (cdf2579)
- cordova: always generate resources when adding platforms (3220b2f)
- cordova: don't append --save to platform/plugin management commands (#4028) (0356d00)
- cordova: warn about missing cordova-res when adding platforms (77fa904)
5.0.2 (2019-06-10)
- capacitor: use dist for --web-dir for vue/capacitor (#4012) (0979715)
- cordova: fix --project flag for cordova commands (fb9ff0f)
- cordova: invoke native-run in integration root (526eda3)
5.0.1 (2019-06-05)
- cordova: add port forwarding for --consolelogs (d2e0c81)
- cordova: pass --device to native-run if specified (5db46d5)
5.0.0 (2019-05-29)
At a glance, this is what was changed or added in this major release of the Ionic CLI:
- Support for Ionic React (beta) 🚀 (
ionic start --type=react
) native-run
is used to deploy app binaries to devices forionic cordova run
cordova-res
is used to generate Cordova resources locally forionic cordova resources
localhost
is now the default host forionic serve
,ionic cordova run -l
, andionic capacitor run -l
- Port forwarding via
native-run
is used for connected Android devices - For iOS hardware devices, you may need to serve your app externally with
--address=0.0.0.0
- Port forwarding via
--devapp
is now a required flag if you want to use DevApp withionic serve
--consolelogs
for Angular projects is now available forionic cordova run -l
- Command completion is available for ZSH users (
ionic completion --help
) (see #2482 for bash) - CLI source code targets modern JS, resulting in noticable speed improvements
Make sure you have NodeJS v8.9.4+ installed. We recommend the latest LTS version.
Install the cordova-res
and native-run
utilities.
npm i -g cordova-res native-run
For Angular 8 projects, make sure you have the latest @ionic/angular-toolkit
installed.
npm i @ionic/angular-toolkit@latest
For Angular 7 projects, make sure you have the latest 1.x @ionic/angular-toolkit
installed.
npm i @ionic/angular-toolkit@1
- capacitor: send --npm-client param to capacitor init (#3963) (44b0918)
- cordova: prefer plugged-in devices, be explicit with Cordova (ef8296b)
- doctor: relax the viewport regex (d0bc021)
- open: fix unbound listener (e63b74a)
- prepare: check config and platforms dir for platform state (d9e1ced)
- react: support react git repo (#3982) (c06857f)
- serve:
--devapp
required for DevApp (5ad11ef) - serve: remove
--local
option (806eaaa) - serve: switch default host to
localhost
(d2a32de) - require Node 8 (5670e68)
- cordova: handle lack of port forwarding in ios (d68faf1)
- add -v as shortcut for --version (d917e8e)
- start: add conference and my-first-app starter templates for angular (#3978) (ea26181)
- Add React project type (#3936) (ef852fa)
- angular: Ionic 4 commands no longer beta (16be793)
- cordova: check for
native-run
before running (89ffd21) - cordova: instructions on how to fix faulty Android SDKs (ce87944)
- cordova: use
cordova-res
by default (83e48cf) - cordova: use
native-run
by default (eadcba0) - help: color refactor (5938429)
- info: native-run and cordova-res versions (d6af864)
- login: authenticate using stdin (d88529f)
- serve: support
--consolelogs
for cordova serve in angular projects (#3900) (17f1438) - Command-Line Completions (9f66512)
- cordova:
ionic cordova resources
no longer generates resources using Ionic servers by default. Instead,cordova-res
is used to generate resources locally. PSD and AI file formats are no longer supported in this new flow. The old behavior is available by specifying--no-cordova-res
. - cordova:
ionic cordova run/emulate
no longer use Cordova to deploy apps by default.cordova run
, which builds and deploys the app, is no longer used. Instead,cordova build
is used to build the app and then it is deployed to devices usingnative-run
. The old behavior is available by specifying--no-native-run
. When using Cordova to run, unless you manually forward ports, you will need to also specify--address=0.0.0.0
(or any host accessible externally). - serve: For DevApp usage, the
--devapp
flag is now required for all project types, instead of being automatic. This change was made in conjunction with changing the default host from0.0.0.0
tolocalhost
. By explicitly specifying--devapp
, however,0.0.0.0
is used if--address
is not specified. - serve:
ionic serve
and other commands using the dev server will no longer be hosted on the BIND ALL address (0.0.0.0) by default.localhost
is the new default. The old behavior is available by passing--address=0.0.0.0
. - serve: The
ionic serve --local
option is now irrelevant. The default address is changing tolocalhost
. - A minimum of Node.js 8.9.4 is required.
- help: option/command/namespace groups are now
MetadataGroup
4.12.0 (2019-03-12)
- enterprise: add shortcut for registering (a1890b4)
- add
i
as alias forintegrations
(14a7ddb) - integrations: add
--web-dir
option for capacitor integration (#3895) (8a1c4b2) - integrations: ionic enterprise integration (#3905) (b071fcb)
4.11.0 (2019-03-06)
- cordova: add experimental
--cordova-res
flag (16cdef8) - cordova: add experimental
--native-run
flag (a80d465)
4.10.4 (2019-02-27)
Note: Version bump only for package ionic
4.10.3 (2019-02-15)
Note: Version bump only for package ionic
4.10.2 (2019-02-04)
- angular: pass
--project
and--configuration
for custom scripts (2cf724f)
4.10.1 (2019-01-30)
- cordova: only forward correct options (817879b)
4.10.0 (2019-01-29)
- ionic-angular: link to proper v3 docs (a89c097)
4.9.0 (2019-01-23)
- custom: run ionic:build/ionic:serve scripts (9898fa8)
- resources: --cordova-res option for local resource generation (3c27e05)
- start: make Ionic 4 the default for new projects (#3820) (0195f96)
4.8.0 (2019-01-14)
4.7.1 (2019-01-08)
Note: Version bump only for package ionic
4.7.0 (2019-01-07)
- doctor: handle multilines for viewport-fit-not-set (#3809) (6aa7ae6)
- executor: Exclude options for command argument parsing (#3798) (514015f)
- serve: handle error in opn with debug statement (89b6d33)
- appflow: command to create package builds (#3808) (149f06e)
- cordova: auto-forward port when using --native-run (0da50ac)
4.6.0 (2018-12-19)
- cordova: warn for prepare w/o platforms (385bdf2)
- serve: collapse numbered chunk output and summarize (5ac6834)
- start: update for Ionic Framework 4.0 RC (7e943cc)
4.5.0 (2018-11-27)
- cordova: do not error for ctrl+c during livereload (facc96b)
- serve: ignore link-local addresses (#3761) (1b7fd90)
- telemetry: disable automatically for CI (217ca12)
- Ionic Appflow rebranding (16360af)
- cordova: add
--native-run
option to Cordova run (#3757) (9ef53ad)
4.4.0 (2018-11-20)
- multi-app: properly handle bare projects (3f84a6f), closes /github.com/ionic-team/ionic-docs/issues/83#issuecomment-439655706
- project: write determined project type to config (307d81f)
- build: show build progress (3090615)
- help: show value hint for options (aa13ba8)
- init: add
ionic init
command (4a12b17) - login: SSO authentication flow (#3741) (71b319a)
- serve: forward
--ssl
to Angular CLI (815b49a)
4.3.1 (2018-11-04)
- bin: stringify unresolved promise event (788a5ec)
- bootstrap: supply env for CLI <4.3.0 (78dbda8)
- multi-app: hide project warnings during start (b1ecd77)
- start: fix stdio freezing issue on Windows (#3725) (a570770)
4.3.0 (2018-10-31)
- capacitor: switch off livereload for --no-build (9960047)
- help: filter out unnecessary global options (7809c99)
- ssh: adjust validator to work for OpenSSH 7.8 (dcc598a)
- terminal: adjust some feature detection on windows (8a2ed99)
- capacitor: add --livereload-url option for custom dev server (b7738f5)
- cordova: add --livereload-url option for custom dev server (ad57e36)
- integrations: --root option for choosing an alternative location (7e8f11e)
- multi-app: determine active project via cwd path match (f83dc5b)
- resources: generate resources without needing platform installation (4f20554)
- start: better multi-app support (3c70e87)
4.2.1 (2018-10-05)
- doctor: fix viewport-fit-not-set for ionic1 (826b9ae)
- info: show versions for @ionic/angular-toolkit (9d1824a)
4.2.0 (2018-10-03)
- cordova: ng should ignore separated args for Cordova build (16a0111)
- lab: use correct query params for project type (4801680)
- serve: fix incorrect message about app-scripts not being installed (abd665b)
- serve: unnecessary message about utility CLI exiting during Ctrl+C (8e78bf3)
- new
ionic repair
command (7588233)
4.1.2 (2018-09-05)
- capacitor: use integration root for Capacitor CLI (81a45d5)
4.1.1 (2018-08-20)
- cordova: respect --nosave for platform/plugin add (eb4934b)
- deploy: exclude any existing pro-manifest.json files (#3527) (d03057d)
- shell: allow output() to fail with original error (e6a5bff)
- shell: check if process is still alive before sending signal (0ff1e48)
4.1.0 (2018-08-15)
- capacitor: pass in project/package id during start (1357c5c)
- cordova: properly error for multiple IPs with non-interactive mode (0346adc)
- cordova: remove unwanted allow-navigation entries (77984e1)
- info: disable update check for cordova cli (8310ff6)
- info: remove version.json warning for v1 (78c3582)
- link: support new repo association types (1c1e1f1)
- capacitor: add run command (62a2918)
- capacitor: document platform argument, prompt when required (2a312ab)
- capacitor: install platform if missing (9e29235)
- capacitor: prompt for supported platforms when adding (54c7d55)
- capacitor: unlock capacitor commands as beta (2480a01)
- info: print whitelisted cordova plugins (c266b7b)
4.0.6 (2018-08-09)
4.0.5 (2018-08-07)
Note: Version bump only for package ionic
4.0.4 (2018-08-06)
4.0.3 (2018-08-02)
- build: prompt to install "build cli" for all projects (2862762)
- serve: await connectivity on specified host, not localhost (#3444) (bf10674)
- serve: check all network interfaces for an available port (30fd6ef)
- serve: fix --livereload for device/emulator (f31e79d)
- serve: use correct livereload port option for v1 (bf3e775)
4.0.2 (2018-07-30)
- cordova: default to
cordova prepare
without platforms (d40d961) - resources: fix hanging issue (#3429) (6b7c732)
- build: properly pass --target to remove fonts for cordova (530d87a)
- generate: run in current directory (54c632b)
- info: filter out hidden files/folders (2e56dd7)
- info: show 'not available' when cordova is missing (db60879)
4.0.1 (2018-07-26)
- generate: remove pages/ prefix recommendation (#3392) (23d0db6)
- help: properly show option decorations (b2509de)
4.0.0 (2018-07-25)
Note: Version bump only for package ionic
This release offers support for ✨ Ionic 4 ✨ (beta).
📝 Use the new CLI Documentation on the beta framework documentation website for CLI 4.
Aside from a few edge cases listed below, upgrading to CLI 4 should be seamless.
Ionic 2/3: The CLI will continue working with apps using @ionic/app-scripts
for tooling (please update to the latest version to avoid any issues). The CLI will continue to support projects that have yet to migrate to Ionic 4 w/ Angular CLI for tooling. For those who wish to migrate v3 apps to v4, see the Migration Guide.
Ionic 1: For Ionic 1 projects, a new toolkit has been introduced to slim down the main CLI package. All functionality is still supported, but the @ionic/v1-toolkit
package needs to be installed.
- Support for legacy Ionic Cloud ended on January 31st, 2018. The
ionic upload
andionic package
commands have been removed from the CLI. Support for Ionic Appflow will be a major focus for the CLI going forward. 👌 - The
app_id
property inionic.config.json
has been renamed topro_id
and is now optional (see #3038). The CLI automatically detects this and changes it, but this notice is here if your build scripts rely on the setting. ionic build
will no longer runcordova prepare
. Instead, runionic cordova prepare <platform>
, which performs an Ionic build beforehand.ionic cordova prepare
will no longer run an Ionic build without a platform, e.g.ionic cordova prepare ios
(see #3653)- Ionic Lab has been moved into the
@ionic/lab
package, which will need to be installed for Lab to work. - The
conference
starter template has been removed fromionic start
. To clone existing apps (as opposed to starting new apps from starter templates), please use the app's repository URL. For example, to create the conference app, useionic start "Conference App" https://github.com/ionic-team/ionic-conference-app
. - The
--display-name
option forionic start
has been removed. Thename
argument is now used as the display name and slugified for directory name, package name, etc. To provide a custom slug, use--project-id
(see #3038). - The
ionic:watch:before
npm script hook has been renamed toionic:serve:before
, but behaves the same. ionic doctor check
will now only print issues and exit with exit code 1 if issues are found. Useionic doctor treat
to attempt automatic fixes.ionic doctor ignore
has been removed in favor ofionic config set -g doctor.issues.<issue>.ignored true
).- Ionic 1 build/serve functionality has been moved into the
@ionic/v1-toolkit
package, which will need to be installed in your Ionic 1 project(s). The file watcher, chokidar, has been updated to 2.0.0, which will require those usingwatchPatterns
to always use POSIX-style slashes (not an issue if you've never used a backslash in globs for Windows). - The gulp integration has been removed from the CLI and put into the
@ionic/v1-toolkit
package, which is only for Ionic v1 apps.
ionic s
is now an alias forionic serve
.- No need for
@ionic/cli-plugin-proxy
. Proxy support is now built-in. Use existing environment variables or useionic config set -g proxy <url>
. - New
ionic config unset
command for deleting config values. - New
ionic doctor treat
command that attempts automatic fixes of detected issues. - If
ionic:build
orionic:serve
npm scripts are defined in yourpackage.json
, the Ionic CLI will use them for the Ionic build/serve instead of the default for your project type. - Automatic login via
IONIC_TOKEN
environment variable #2410 --no-color
flag for turning off CLI colors--no-build
option forionic cordova run
andionic cordova emulate
#2930- Better monorepo support. See the discussion in #2232.
- Multi-app support for new Angular projects #3281
- Added experimental
ionic ssl generate
command for generatinglocalhost
SSL certificates for use withionic serve
. 📝 HTTPS support inionic serve
isn't quite finished yet (see #3305).
- Interactivity is now disabled when not in a TTY. See #3047.
- Respect
--nosave
flag forionic cordova platform
andionic cordova plugin
#2946 - Chain
--verbose
flag to Cordova forionic cordova
commands #2919 - Fixed newlines in piped output from underlying CLIs.
- A huge amount of code refactoring has been accomplished to prepare the CLI for a scalable, flexible future. Changes in behavior and help output based upon environment and config are now trivially accomplished.
- The CLI Framework, a (currently) internal framework for building general-purpose command-line programs, has had many features added to support the utility CLIs such as
ionic-lab
andionic-v1
. - Ionic Lab has been rebuilt using StencilJS and now works for any Ionic Framework version.