-
Notifications
You must be signed in to change notification settings - Fork 29.7k
[ Widget Preview ] Handle changes to unexpected pubspec.yaml files gracefully #179157
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
Conversation
…acefully This change fixes an issue where the preview command would crash if a pubspec.yaml was added / deleted somewhere under the previewed directory. It also improves testing for `PreviewManifest` in the context of pub workspaces and ensures that `FlutterProject` instances are refreshed based on the latest `pubspec.yaml` contents. Fixes #179155
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.
Code Review
This pull request introduces robust handling for pubspec.yaml file changes within the widget preview feature, addressing a crash that occurred when these files were added or deleted. The changes include logic to refresh project manifests and improved testing for pub workspaces. Overall, the changes are well-structured and thoroughly tested. I've identified one issue related to set comparison that could lead to inefficient behavior, which I've detailed in a specific comment.
packages/flutter_tools/lib/src/widget_preview/preview_manifest.dart
Outdated
Show resolved
Hide resolved
….dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
jyameo
left a comment
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.
lgtm!
…acefully (flutter#179157) This change fixes an issue where the preview command would crash if a `pubspec.yaml` was added / deleted somewhere under the previewed directory. It also improves testing for `PreviewManifest` in the context of pub workspaces and ensures that `FlutterProject` instances are refreshed based on the latest `pubspec.yaml` contents. Fixes flutter#179155 --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…acefully (flutter#179157) This change fixes an issue where the preview command would crash if a `pubspec.yaml` was added / deleted somewhere under the previewed directory. It also improves testing for `PreviewManifest` in the context of pub workspaces and ensures that `FlutterProject` instances are refreshed based on the latest `pubspec.yaml` contents. Fixes flutter#179155 --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
flutter/flutter@022b155...2b5fa94 2025-11-29 [email protected] Roll Fuchsia Linux SDK from 3mkBM9XuntkUl3G9l... to sY2ExxZc0A8bgMF11... (flutter/flutter#179233) 2025-11-29 [email protected] Roll Dart SDK from 09b91afe9f4d to 56cc05dd11a8 (1 revision) (flutter/flutter#179231) 2025-11-28 [email protected] [ Tool ] Don't try to reattach when attach target disappears (flutter/flutter#179193) 2025-11-28 [email protected] Roll Dart SDK from 4bd803e19d22 to 09b91afe9f4d (1 revision) (flutter/flutter#179222) 2025-11-28 [email protected] Fix GitHub Actions not pinned by hash (flutter/flutter#178917) 2025-11-28 [email protected] Update workflow permissions in easy-cp.yml (flutter/flutter#178919) 2025-11-28 [email protected] Roll Packages from b505d41 to c8be05d (1 revision) (flutter/flutter#179218) 2025-11-28 [email protected] Roll Dart SDK from 394606994711 to 4bd803e19d22 (1 revision) (flutter/flutter#179215) 2025-11-28 [email protected] Roll Dart SDK from 74247cdd0f18 to 394606994711 (1 revision) (flutter/flutter#179205) 2025-11-28 [email protected] Roll Fuchsia Linux SDK from _e9MNK4nfBOrERVP_... to 3mkBM9XuntkUl3G9l... (flutter/flutter#179203) 2025-11-28 [email protected] Roll Dart SDK from 1e6edf8a8dab to 74247cdd0f18 (2 revisions) (flutter/flutter#179201) 2025-11-27 [email protected] [ Widget Preview ] Handle changes to unexpected pubspec.yaml files gracefully (flutter/flutter#179157) 2025-11-27 [email protected] Roll Dart SDK from 1d8dc04bd1d7 to 1e6edf8a8dab (9 revisions) (flutter/flutter#179190) 2025-11-27 [email protected] Roll Packages from 5d8d954 to b505d41 (4 revisions) (flutter/flutter#179188) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
…acefully (flutter#179157) This change fixes an issue where the preview command would crash if a `pubspec.yaml` was added / deleted somewhere under the previewed directory. It also improves testing for `PreviewManifest` in the context of pub workspaces and ensures that `FlutterProject` instances are refreshed based on the latest `pubspec.yaml` contents. Fixes flutter#179155 --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…acefully (flutter#179157) This change fixes an issue where the preview command would crash if a `pubspec.yaml` was added / deleted somewhere under the previewed directory. It also improves testing for `PreviewManifest` in the context of pub workspaces and ensures that `FlutterProject` instances are refreshed based on the latest `pubspec.yaml` contents. Fixes flutter#179155 --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
This change fixes an issue where the preview command would crash if a
pubspec.yamlwas added / deleted somewhere under the previewed directory. It also improves testing forPreviewManifestin the context of pub workspaces and ensures thatFlutterProjectinstances are refreshed based on the latestpubspec.yamlcontents.Fixes #179155