Skip to content

Add description for why some dependencies are needed in doctor #9035

Closed as not planned

Description

@xster

We're asking users to install more and more stuff. Some are more self evident like xcode. But why the user needs the six python module and cocoapods are a bit more obscure. We should probably explain why they're needed on the website or in doctor and what happens if they don't have them.

Activity

  1. added
    toolAffects the "flutter" command-line tool. See also t: labels.
    on Mar 27, 2017
  2. added this to the milestone on Mar 27, 2017
  3. changed the title [-]Add description for while some dependencies are needed in doctor?[/-] [+]Add description for why some dependencies are needed in doctor?[/+] on Apr 6, 2017
  4. xster commented on Apr 28, 2017

    @xster
    MemberAuthor

    I vaguely propose restructuring flutter doctor output and the dependency resolution code to a tree instead of a flat list, group checks into buckets and expose the lazy bucket resolution triggers more to the user. Such that:

    [✓] Flutter (on Mac OS X 10.12.4 16E195, channel ios-shadow)
        • Flutter at /Users/xster/development/flutter
        • Framework revision 90dcf3b287 (2 hours ago), 2017-04-28 12:26:33 -0700
        • Engine revision 7c699ce772
        • Tools Dart version 1.23.0-dev.11.11
    
    [✓] Host Executable Compatibility
        • Downloaded executables execute on host
    
    [✓] Android toolchain - develop for Android devices (Android SDK 25.0.2)
        • Android SDK at /Users/xster/Library/Android/sdk
        • Platform android-25, build-tools 25.0.2
        • ANDROID_HOME = /Users/xster/Library/Android/sdk
        • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
        • Java version: OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
    
    [✓] iOS toolchain - develop for iOS devices (Xcode 8.3)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 8.3, Build version 8E162
        • ios-deploy 1.9.1
        • CocoaPods version 1.2.0
    
    [✓] Android Studio (version 2.3)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Gradle version 3.2
        • Java version: OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
    
    [✓] IntelliJ IDEA Community Edition (version 2017.1)
        • Dart plugin version 171.4006
        • Flutter plugin version 12.1
    
    [✓] Connected devices
        • Xiao Yu’s iPhone • ff369dfd5f4a80545a431441c1e3066f8cb8d759 • ios • iOS 10.3.1 (14E304)
    

    becomes more like

    ╔ [✓] ═══════════════════════════════════════════╗
    ║ Core dependencies                              ║
    ╟────────────────────────────────────────────────╢
    ║ [✓] Flutter (on blah)                          ║
    ║    • Flutter at blah                           ║
    ║    • Framework revision blah                   ║
    ╚════════════════════════════════════════════════╝
      ┃
      ┣━━→╔ [✓] ════════════════════════════════════════════╗
      ┃   ║ Build Android                                   ║
      ┃   ║   - Build APKs                                  ║ 
      ┃   ║   - Resolve plugin build depedencies            ║ 
      ┃   ║   - Deploy to physical devices                  ║ 
      ┃   ╟─────────────────────────────────────────────────╢
      ┃   ║  • Android SDK at blah                          ║ 
      ┃   ║  • Java at blah no plugins                      ║ 
      ┃   ╚═════════════════════════════════════════════════╝ 
      ┃
      ┣━━→╔ [-] ════════════════════════════════════════════╗
      ┃   ║ Build iOS                                       ║
      ┃   ║   - Build APP                                   ║ 
      ┃   ║   - IDE support                                 ║ 
      ┃   ╟─────────────────────────────────────────────────╢
      ┃   ║  • XCode version below minimum version required ║ 
      ┃   ╟─────────────────────────────────────────────────╢
      ┃   ║ Fix by upgrading to the latest XCode version in ║
      ┃   ║ the App Store                                   ║
      ┃   ╚═════════════════════════════════════════════════╝ 
      ┃     ┃
      ┃     ┗━━→╔ [✗] ════════════════════════════════════════════╗
      ┃     ┃   ║ Deploy to physical iOS devices                  ║
      ┃     ┃   ╟─────────────────────────────────────────────────╢
      ┃     ┃   ║  • No ios-deploy                                ║ 
      ┃     ┃   ╟─────────────────────────────────────────────────╢
      ┃     ┃   ║ Fix by running 'brew install ios-deploy'        ║ 
      ┃     ┃   ╚═════════════════════════════════════════════════╝ 
      ┃     ┃
      ┃     ┗━━→╔ [✗] ════════════════════════════════════════════╗
      ┃         ║ Resolve plugin build depedencies                ║
      ┃         ║   - Needed to retrieve and attach plugins'      ║
      ┃         ║     Native components. For more info see        ║
      ┃         ║     https://flutter.io/blah                     ║
      ┃         ╟─────────────────────────────────────────────────╢
      ┃         ║  • No cocoapods                                 ║ 
      ┃         ╟─────────────────────────────────────────────────╢
      ┃         ║ Fix by running 'brew install cocoapods '        ║ 
      ┃         ╚═════════════════════════════════════════════════╝ 
      ┃
      ┗━━→╔ [-] ════════════════════════════════════════════╗
          ║ IDE support                                     ║
          ║   - Develop Flutter inside an IDE               ║ 
          ║     See Flutter IDE features at                 ║ 
          ║     https://flutter.io/blah                     ║ 
          ╟─────────────────────────────────────────────────╢
          ║  • Intellj version blah installed               ║ 
          ║  • Dart plugin not installed                    ║ 
          ╟─────────────────────────────────────────────────╢
          ║ Fix by opening Intellij and go to File > blah   ║
          ║ and click blah. For more instructions see       ║
          ║ https://flutter.io/blah                         ║
          ╚═════════════════════════════════════════════════╝ 
    
  5. Hixie commented on Apr 30, 2017

    @Hixie
    Contributor

    I totally support doing more Unicode art, but let's if at all possible make sure we keep the output to something that will be visible in one terminal window without scrolling...

  6. xster commented on May 31, 2017

    @xster
    MemberAuthor

    This also manifests concretely during initial setup where the user might hit an error while trying to flutter devices and seeing no physical devices or trying to run flutter_gallery which uses cocoapods. But running flutter doctor just says Homebrew's not installed.

    [✓] Flutter (on Mac OS X 10.12.5 16F73, channel alpha)
        • Flutter at /Users/fluttermac/flutter
        • Framework revision 973304d5fb (13 days ago), 2017-05-18 17:31:57 -0700
        • Engine revision f99d3ef108
        • Tools Dart version 1.23.0-dev.11.11
    
    [✗] Android toolchain - develop for Android devices
        ✗ Unable to locate Android SDK.
          Install Android Studio from: https://developer.android.com/studio/index.html
          On first launch it will assist you in installing the Android SDK components.
          (or visit https://flutter.io/setup/#android-setup for detailed instructions).
          If Android SDK has been installed to a custom location, set $ANDROID_HOME to that location.
    
    [-] iOS toolchain - develop for iOS devices (Xcode 8.3.2)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 8.3.2, Build version 8E2002
        ✗ Brew not installed; use this to install tools for iOS device development.
          Download brew at http://brew.sh/.
    
    [✗] Android Studio (not installed)
        • Android Studio not found. Download from https://developer.android.com/studio/index.html
          (or visit https://flutter.io/setup/#android-setup for detailed instructions).
    
    [✓] Connected devices
        • None
    

    Downstream ramifications are not described.

  7. modified the milestones: , on Jan 7, 2020
  8. changed the title [-]Add description for why some dependencies are needed in doctor?[/-] [+]Add description for why some dependencies are needed in doctor[/+] on Jan 14, 2020
  9. added
    P3Issues that are less important to the Flutter project
    on May 29, 2020
  10. modified the milestone: on Jun 1, 2020
  11. removed this from the milestone on Jun 16, 2020
  12. removed this from the milestone on Jul 7, 2020
  13. modified the milestone: on Jul 22, 2020
  14. removed this from the milestone on Aug 17, 2020
  15. matanlurey commented on Jun 27, 2025

    @matanlurey
    Contributor

    Closed as not planned.

  16. github-actions commented on Jul 11, 2025

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  17. locked as resolved and limited conversation to collaborators on Jul 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Issues that are less important to the Flutter projectt: flutter doctorProblem related to the "flutter doctor" toolteam-toolOwned by Flutter Tool teamtoolAffects the "flutter" command-line tool. See also t: labels.triaged-toolTriaged by Flutter Tool team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions