[ Widget Preview ] Don't try to load previews with compile-time errors (#170262)

This change reworks how preview detection is performed to allow for
identifying libraries which contain compile-time errors or transitive
dependencies with compile-time errors.

Previously, introducing a compile-time error into a preview containing
library's dependency chain would result in the preview environment no
longer being updated due to a failed compilation during hot reload.
Users would first need to know to fix the compilation error before being
able to make updates to previews.

With this change, the preview detector builds and maintains a dependency
graph, propagating errors from libraries to their upstream dependencies.
If a file containing a preview would fail to compile, it is no longer
inserted into the widget preview environment. In its place, an error
message is displayed informing the user that there's a compilation error
in a library that needs to be fixed first.

This change needs some follow up work to create a proper UI for
displaying the compilation error messaging, batch processing of bulk
file system operations (e.g., directory deletion) to avoid performance
issues, and some refactoring.

Work towards #166430
https://dart.googlesource.com/external/github.com/flutter/flutter/+/b9a99683aee89e31fa55a8a41c9ade9093d2df2a
diff --git a/DEPS b/DEPS
index 8446467..d07f868 100644
--- a/DEPS
+++ b/DEPS
@@ -237,7 +237,7 @@
 deps = {
   'flutter/engine/src/flutter/third_party/dart': Var('dart_git') + '/sdk' + '@' + '74250e5fd8c39879ef02c8816b93ea37a1671e99',
 
-  'flutter': Var('flutter_git') + '/mirrors/flutter' + '@' + 'f59e8e58852c6e06c34d6fd5cf36baf9ac4cfa1a',
+  'flutter': Var('flutter_git') + '/mirrors/flutter' + '@' + 'b9a99683aee89e31fa55a8a41c9ade9093d2df2a',
 
   'flutter/engine/src/flutter/third_party/depot_tools':
   Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '580b4ff3f5cd0dcaa2eacda28cefe0f45320e8f7',
diff --git a/commits.json b/commits.json
index 8be44b1..36f7013 100644
--- a/commits.json
+++ b/commits.json
@@ -1,4 +1,4 @@
 {
-  "flutter":"f59e8e58852c6e06c34d6fd5cf36baf9ac4cfa1a",
+  "flutter":"b9a99683aee89e31fa55a8a41c9ade9093d2df2a",
   "flutter/engine/src/flutter/third_party/dart":"74250e5fd8c39879ef02c8816b93ea37a1671e99"
 }
\ No newline at end of file