Skip to content

Provide a way to suppress output written to stdout that may violate communication protocols like DAP #94406

@DanTup

Description

@DanTup

Sometimes when you run a flutter command there is additional output printed to stdout, such as:

  • downloading the Dart SDK
  • downloading other components
  • waiting for another Flutter process to release startup lock

There are some commands that use stdout for communication, such as flutter run --machine, flutter test --machine, flutter debug-adapter and this violates their protocols. For the first two, client editors just know to handle non-JSON output too, however for flutter debug-adapter the output must conform to the debug adapter protocol because it will be used by standard DAP clients that can't make exceptions.

I think some of this output comes from Dart code so the debug-adapter command could perhaps opt-out of it, but I think some also comes from the shell scripts (eg. downloading the Dart SDK) so doing it based on the command might be a little trickier (for ex. require parsing the command in the shell scripts).

@christopherfujino do you have any thoughts/opinions on the best way to do this?

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listc: new featureNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to Flutterteam-devexpOwned by the Developer Experience teamtoolAffects the "flutter" command-line tool. See also t: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions