Open
Description
This is a meta-issue for tracking progress towards "why not promoted" functionality for the Dart toolchain. It comprises the following arcs of work:
- core flow analysis API to provide non-promotion reasons to front ends (implemented in a42244f)
- full implementation of core algorithm (provide non-promotion reasons in all circumstances): Full implementation of core "why not promoted" algorithm #44898
- explore the possibility of showing the user promotion attempt locations: Explore the possibility of showing the user promotion attempt locations #44899
- establish documentation links for non-promotion reasons: Establish documentation links for non-promotion reasons #44900
- make "why not promoted" information more discoverable in IntelliJ: Make "why not promoted" information more discoverable in IntelliJ #44901
- expose "why not promoted" information in VS Code: Expose Dart's "why not promoted" information in VS Code Dart-Code/Dart-Code#3136
- expose "why not promoted" information in DartPad: Show analysis corrections and "Open Documentation" link dart-pad#1676
- expose "why not promoted" information in Cider: b/179781271
- make "why not promoted" information more discoverable in command-line analyzer: Make "why not promoted" information more discoverable in command-line analyzer #44904
- make "why not promoted" information more discoverable in dartanalyzer tool Make "why not promoted" information more discoverable in dartanalyzer tool #45546
- expose "why not promoted" information during internal builds: b/179782591
- test.py error tests should support context messages from the CFE: test.py error tests should support context messages from the CFE #44872
- test.py error tests should support context messages from the analyzer: test.py error tests should support context messages from the analyzer #44905
- Add support to
dart analyze
for a JSON based output Add support todart analyze
for a JSON based output #45068
- Add support to
- analyzer integration tests to ensure that the data is being sent to clients (both LSP and legacy protocol): Add integration tests to ensure that error context data is being sent to clients (both LSP and legacy protocol) #44907