Ionic CLI's `ionic info` is one of its most useful commands. You just ask
someone to run it in the project and post the output and you know (almost) all
relevant versions, components used and even paths that are relevant.
An example:
```
λ ionic info
cli packages: (C:\nvm\v10.7.0\node_modules)
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0
global packages:
cordova (Cordova CLI) : 8.0.0
local packages:
@ionic/app-scripts : 2.0.2
Cordova Platforms : android 7.1.1 ios 4.5.5
Ionic Framework : ionic-angular 3.5.3
System:
Android SDK Tools : 26.1.1
Node : v10.7.0
npm : 6.1.0
OS : Windows 10
Environment Variables:
ANDROID_HOME : C:\Android
Misc:
backend : pro
```
Compare that to the output of `cordova info` in the same project:
```
λ cordova info
Collecting Data...
Node version: v10.7.0
Cordova version: 8.0.0
Config.xml file:
<?xml version='1.0' encoding='utf-8'?>
<widget id="de...rstand" version="0.0.1" xmlns="http://www.w3.org/ns/widgets"
xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Zählerstand</name>
<description>A Zaehlerstand app.</description>
<author email="[email protected]" href="https://janpiotrowski.de/">Jan
Piotrowski</author>
<content src="index.html" />
<access origin="*" />
<allow-navigation href="http://ionic.local/*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
<icon density="ldpi"
src="resources/android/icon/drawable-ldpi-icon.png" />
<icon density="mdpi"
src="resources/android/icon/drawable-mdpi-icon.png" />
<icon density="hdpi"
src="resources/android/icon/drawable-hdpi-icon.png" />
<icon density="xhdpi"
src="resources/android/icon/drawable-xhdpi-icon.png" />
<icon density="xxhdpi"
src="resources/android/icon/drawable-xxhdpi-icon.png" />
<icon density="xxxhdpi"
src="resources/android/icon/drawable-xxxhdpi-icon.png" />
<splash density="land-ldpi"
src="resources/android/splash/drawable-land-ldpi-screen.png" />
<splash density="land-mdpi"
src="resources/android/splash/drawable-land-mdpi-screen.png" />
<splash density="land-hdpi"
src="resources/android/splash/drawable-land-hdpi-screen.png" />
<splash density="land-xhdpi"
src="resources/android/splash/drawable-land-xhdpi-screen.png" />
<splash density="land-xxhdpi"
src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
<splash density="land-xxxhdpi"
src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
<splash density="port-ldpi"
src="resources/android/splash/drawable-port-ldpi-screen.png" />
<splash density="port-mdpi"
src="resources/android/splash/drawable-port-mdpi-screen.png" />
<splash density="port-hdpi"
src="resources/android/splash/drawable-port-hdpi-screen.png" />
<splash density="port-xhdpi"
src="resources/android/splash/drawable-port-xhdpi-screen.png" />
<splash density="port-xxhdpi"
src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
<splash density="port-xxxhdpi"
src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<icon height="57" src="resources/ios/icon/icon.png" width="57" />
<icon height="114" src="resources/ios/icon/[email protected]" width="114" />
<icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
<icon height="80" src="resources/ios/icon/[email protected]" width="80" />
<icon height="120" src="resources/ios/icon/[email protected]" width="120"
/>
<icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
<icon height="100" src="resources/ios/icon/[email protected]" width="100"
/>
<icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
<icon height="120" src="resources/ios/icon/[email protected]" width="120"
/>
<icon height="180" src="resources/ios/icon/[email protected]" width="180"
/>
<icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
<icon height="144" src="resources/ios/icon/[email protected]" width="144"
/>
<icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
<icon height="152" src="resources/ios/icon/[email protected]" width="152"
/>
<icon height="167" src="resources/ios/icon/[email protected]"
width="167" />
<icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
<icon height="58" src="resources/ios/icon/[email protected]" width="58"
/>
<icon height="87" src="resources/ios/icon/[email protected]" width="87"
/>
<splash height="1136"
src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" />
<splash height="1334" src="resources/ios/splash/Default-667h.png"
width="750" />
<splash height="2208" src="resources/ios/splash/Default-736h.png"
width="1242" />
<splash height="1242"
src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
<splash height="1536"
src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" />
<splash height="2048"
src="resources/ios/splash/Default-Landscape@~ipadpro.png" width="2732" />
<splash height="768"
src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
<splash height="2048"
src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" />
<splash height="2732"
src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" />
<splash height="1024"
src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
<splash height="960" src="resources/ios/splash/Default@2x~iphone.png"
width="640" />
<splash height="480" src="resources/ios/splash/Default~iphone.png"
width="320" />
<icon height="57" src="resources\ios\icon\icon.png" width="57" />
<icon height="114" src="resources\ios\icon\[email protected]" width="114" />
<icon height="40" src="resources\ios\icon\icon-40.png" width="40" />
<icon height="80" src="resources\ios\icon\[email protected]" width="80" />
<icon height="120" src="resources\ios\icon\[email protected]" width="120"
/>
<icon height="50" src="resources\ios\icon\icon-50.png" width="50" />
<icon height="100" src="resources\ios\icon\[email protected]" width="100"
/>
<icon height="60" src="resources\ios\icon\icon-60.png" width="60" />
<icon height="120" src="resources\ios\icon\[email protected]" width="120"
/>
<icon height="180" src="resources\ios\icon\[email protected]" width="180"
/>
<icon height="72" src="resources\ios\icon\icon-72.png" width="72" />
<icon height="144" src="resources\ios\icon\[email protected]" width="144"
/>
<icon height="76" src="resources\ios\icon\icon-76.png" width="76" />
<icon height="152" src="resources\ios\icon\[email protected]" width="152"
/>
<icon height="167" src="resources\ios\icon\[email protected]"
width="167" />
<icon height="29" src="resources\ios\icon\icon-small.png" width="29" />
<icon height="58" src="resources\ios\icon\[email protected]" width="58"
/>
<icon height="87" src="resources\ios\icon\[email protected]" width="87"
/>
<splash height="1136"
src="resources\ios\splash\Default-568h@2x~iphone.png" width="640" />
<splash height="1334" src="resources\ios\splash\Default-667h.png"
width="750" />
<splash height="2208" src="resources\ios\splash\Default-736h.png"
width="1242" />
<splash height="1242"
src="resources\ios\splash\Default-Landscape-736h.png" width="2208" />
<splash height="1536"
src="resources\ios\splash\Default-Landscape@2x~ipad.png" width="2048" />
<splash height="2048"
src="resources\ios\splash\Default-Landscape@~ipadpro.png" width="2732" />
<splash height="768"
src="resources\ios\splash\Default-Landscape~ipad.png" width="1024" />
<splash height="2048"
src="resources\ios\splash\Default-Portrait@2x~ipad.png" width="1536" />
<splash height="2732"
src="resources\ios\splash\Default-Portrait@~ipadpro.png" width="2048" />
<splash height="1024"
src="resources\ios\splash\Default-Portrait~ipad.png" width="768" />
<splash height="960" src="resources\ios\splash\Default@2x~iphone.png"
width="640" />
<splash height="480" src="resources\ios\splash\Default~iphone.png"
width="320" />
<icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024"
/>
<splash height="2732"
src="resources/ios/splash/Default@2x~universal~anyany.png" width="2732" />
</platform>
<preference name="webviewbounce" value="false" />
<preference name="UIWebViewBounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="android-minSdkVersion" value="19" />
<preference name="BackupWebStorage" value="none" />
<preference name="SplashMaintainAspectRatio" value="true" />
<preference name="FadeSplashScreenDuration" value="300" />
<preference name="SplashShowOnlyFirstTime" value="false" />
<preference name="SplashScreen" value="screen" />
<preference name="SplashScreenDelay" value="3000" />
<feature name="StatusBar">
<param name="ios-package" onload="true" value="CDVStatusBar" />
</feature>
<engine name="android" spec="^7.1.1" />
<engine name="ios" spec="4.5.5" />
<plugin name="cordova-plugin-app-version" spec="^0.1.9" />
<plugin name="cordova-plugin-device" spec="1.1.4" />
<plugin name="cordova-plugin-splashscreen" spec="~4.0.1" />
<plugin name="cordova-plugin-statusbar" spec="2.2.1" />
<plugin name="cordova-plugin-whitelist" spec="1.3.1" />
<plugin name="ionic-plugin-keyboard" spec="~2.2.1" />
<plugin name="cordova-sqlite-storage" spec="^2.3.3" />
</widget>
Plugins:
.git,cordova-plugin-app-version,cordova-plugin-console,cordova-plugin-device,cordova-plugin-splashscreen,cordova-plugin-statusbar,cordova-plugin-whitelist,cordova-sqlite-storage,ionic-plugin-keyboard
Android platform:
**************************************************************************
The "android" command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools\bin\sdkmanager.bat
and tools\bin\avdmanager.bat
**************************************************************************
Invoking "C:\Android\tools\bin\avdmanager" list target
Available Android targets:==============] 100% Fetch remote repository...
----------
id: 1 or "android-23"
Name: Android API 23
Type: Platform
API level: 23
Revision: 3
----------
id: 2 or "android-25"
Name: Android API 25
Type: Platform
API level: 25
Revision: 3
----------
id: 3 or "android-26"
Name: Android API 26
Type: Platform
API level: 26
Revision: 2
----------
id: 4 or "android-27"
Name: Android API 27
Type: Platform
API level: 27
Revision: 3
----------
id: 5 or "android-28"
Name: Android API 28
Type: Platform
API level: 28
Revision: 4
Error retrieving iOS platform information: Error: cmd: Command failed with exit
code 1 Error output:
'xcodebuild' is not recognized as an internal or external command,
operable program or batch file.
```
While it may include the same information, `cordova info` is much less readable
and also harder to copy from the command line.
## Suggestion
Split `cordova info` into two commands: `cordova info` and `cordova info
--extended`. The first outputs a short list of the most important information
(what platforms, plugins, versions, npm+node, OS etc.) and the second one also
includes the complete `config.xml`, Android targets information etc.
[ Full content available at: https://github.com/apache/cordova-cli/issues/301 ]
This message was relayed via gitbox.apache.org for [email protected]