-
Notifications
You must be signed in to change notification settings - Fork 26.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Flutter doctor detect intellij on Linux #6227
Flutter doctor detect intellij on Linux #6227
Conversation
Neat. |
|
||
@override | ||
Future<ValidationResult> validate() async { | ||
// TODO(danrubel) do not show Atom once IntelliJ support is complete |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why? wouldn't we want to support as many IDEs as people write plugins for?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Atom is deprecated... only critical fixes from the Dart team; it will bit rot until it reaches some point where it is badly broken. IntelliJ is now preferred and once IntelliJ support is on par with Atom, then Atom support will be discontinued. I'm not planning to remove Atom support from flutter doctor
any time soon, but will eventually. If the Flutter team chooses to supply resources to support Atom, then this comment does not apply and should be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, ok. Didn't realise we'd stopped supporting that plugin.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once the IntelliJ plugin is available (and at ~parity with the Atom plugin), we'll retire the flutter atom plugin, and the dart atom plugin will move to being community supported.
final String version; | ||
final String pluginsPath; | ||
|
||
IntellijValidator(String title, {this.version, this.pluginsPath}) : super(title); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
constructor first
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah! Analyzer did not complain so I missed it. Good eyes. Fixed.
} | ||
} | ||
} else if (Platform.isMacOS) { | ||
// TODO(danrubel) add support for Mac |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: missing colon (// TODO(username): ...
)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
if (_validateHasPackage(messages, 'Flutter', 'Flutter')) | ||
installCount++; | ||
|
||
if (installCount < 2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
braces around multiline ifs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
return new ValidationResult( | ||
installCount == 2 ? ValidationType.installed : ValidationType.partial, | ||
messages, | ||
statusInfo: 'version $version'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unbalanced paren whitespace (add newline before trailing )
)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
This enhances
flutter doctor
on Linux so that it can detect IntelliJ product installations and ensure that the needed plugins are installed.Future work:
For each IntelliJ product installation, you'll see something like this in
flutter doctor
output:The "managing plugins" will only appear if one or more plugins are missing.
If Atom is installed, you'll also see something like this in the output:
If no supported IDEs are installed, you'll see:
Partially addresses #5875
@devoncarew