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]

Reply via email to