Sitelet https://github.com/flutter/flutter/pull/188794
Skip to content

[Tool] Run re-entrant upgrade in original CWD - #188794

Merged
auto-submit[bot] merged 3 commits into
flutter:masterfrom
bkonyi:investigate-flutter-issue-187977
Jun 30, 2026
Merged

auto-submit[bot] merged 3 commits into
flutter:masterfrom
bkonyi:investigate-flutter-issue-187977

Conversation

@bkonyi

@bkonyi bkonyi commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

flutter upgrade was running the re-entrant upgrade --continue in the Flutter SDK root. This caused pub upgrade (via updatePackages) to run on the Flutter SDK itself because findProjectRoot found the SDK's pubspec.yaml. This modified pubspec.lock in the SDK, causing subsequent upgrades to fail due to "local changes".

Omit workingDirectory when spawning the re-entrant process so it inherits the original CWD (user's project). Use the absolute path to the flutter binary.

Fixes #187977

`flutter upgrade` was running the re-entrant `upgrade --continue` in the
Flutter SDK root. This caused `pub upgrade` (via `updatePackages`) to run
on the Flutter SDK itself because `findProjectRoot` found the SDK's
`pubspec.yaml`. This modified `pubspec.lock` in the SDK, causing subsequent
upgrades to fail due to "local changes".

Omit `workingDirectory` when spawning the re-entrant process so it inherits
the original CWD (user's project). Use the absolute path to the `flutter`
binary.

Fixes flutter#187977
@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Jun 30, 2026
@bkonyi
bkonyi changed the base branch from main to master June 30, 2026 16:02

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

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 updates the flutterUpgradeContinue method in upgrade.dart to construct the absolute path to the Flutter binary using workingDirectory or Cache.flutterRoot instead of a relative path, and removes the workingDirectory argument from the process stream call. Correspondingly, the unit tests in upgrade_test.dart have been updated to expect the absolute path in FakeCommand and remove the workingDirectory parameter. I have no feedback to provide.

@github-actions github-actions Bot added the tool Affects the "flutter" command-line tool. See also t: labels. label Jun 30, 2026
@bkonyi
bkonyi requested a review from chingjun June 30, 2026 16:05
chingjun
chingjun previously approved these changes Jun 30, 2026
@bkonyi bkonyi added the autosubmit Merge PR when tree becomes green via auto submit App label Jun 30, 2026
@auto-submit auto-submit Bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jun 30, 2026
@auto-submit

auto-submit Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

autosubmit label was removed for flutter/flutter/188794, because - The status or check suite Mac_arm64 tool_tests_commands has failed. Please fix the issues identified (or deflake) before re-applying this label.

Update packages/flutter_tools/test/commands.shard/permeable/upgrade_test.dart to expect the absolute path for the re-entrant flutter upgrade call, matching the changes made in upgrade.dart.
auto-submit Bot pushed a commit to flutter/packages that referenced this pull request Jul 8, 2026
…12135)

Manual roll Flutter from ca9f874f5284 to 6995038d96ef (44 revisions)

Manual roll requested by stuartmorgan@google.com

flutter/flutter@ca9f874...6995038

2026-07-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from sx_eN0J_f2BV6jqjW... to Jr08vyeibMSv3Oxst... (flutter/flutter#188946)
2026-07-03 engine-flutter-autoroll@skia.org Roll Packages from 420e135 to 2fbe873 (1 revision) (flutter/flutter#188945)
2026-07-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 786212a2ce0d to 1f9a08ce0638 (4 revisions) (flutter/flutter#188944)
2026-07-03 engine-flutter-autoroll@skia.org Roll Skia from 5358ab75b840 to 919956953af6 (7 revisions) (flutter/flutter#188943)
2026-07-02 j.ihlas@betclicgroup.com [Windows] Keep regular windows in place when another is activated (flutter/flutter#188016)
2026-07-02 okorohelijah@google.com [flutter_tools] Provide guided message when iOS/macOS build fails due to low minimum version (flutter/flutter#188812)
2026-07-02 bdero@google.com [Flutter GPU] Load a ShaderLibrary from shader bundle bytes (flutter/flutter#188596)
2026-07-02 dacoharkes@google.com [tool] Enable record_use experiment by default on all channels (flutter/flutter#188887)
2026-07-02 engine-flutter-autoroll@skia.org Roll Packages from e742106 to 420e135 (13 revisions) (flutter/flutter#188916)
2026-07-02 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from I2h2eXk06RrA3pIG2... to sx_eN0J_f2BV6jqjW... (flutter/flutter#188915)
2026-07-02 256906086+mvincentong@users.noreply.github.com Clarify layout callback debug flag docs (flutter/flutter#186879)
2026-07-02 engine-flutter-autoroll@skia.org Roll Skia from 0c4faca350cc to 5358ab75b840 (2 revisions) (flutter/flutter#188899)
2026-07-02 engine-flutter-autoroll@skia.org Roll Dart SDK from e47361c7fe9a to 786212a2ce0d (2 revisions) (flutter/flutter#188898)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 0fc8ba72e802 to 0c4faca350cc (2 revisions) (flutter/flutter#188886)
2026-07-01 robert.ancell@canonical.com Hide draft PRs from the triage list (flutter/flutter#188885)
2026-07-01 47866232+chunhtai@users.noreply.github.com Stricten isSemantics and matchesSemantics children mismatch check (flutter/flutter#188827)
2026-07-01 jesswon@google.com [AGP 9] Support Enabling Built-in Kotlin (flutter/flutter#188543)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from d19e557ac317 to 0fc8ba72e802 (4 revisions) (flutter/flutter#188879)
2026-07-01 bkonyi@google.com [ci] Increase test timeout for Mac_x64 build_tests shards (flutter/flutter#188804)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from bd4ae38ca3bb to d19e557ac317 (1 revision) (flutter/flutter#188865)
2026-07-01 engine-flutter-autoroll@skia.org Roll Dart SDK from 26d723eb89af to e47361c7fe9a (5 revisions) (flutter/flutter#188864)
2026-07-01 katelovett@google.com Update triage links for material_ui and cupertino_ui --> Design triage (flutter/flutter#188567)
2026-07-01 flar@google.com [Impeller] Share a single ContextGLES among all PlaygroundImplGLES (flutter/flutter#188080)
2026-07-01 homobonus-luca@hotmail.it Use null-aware elements in dev/devicelab/lib/integration_tests.dart (flutter/flutter#187852)
2026-07-01 engine-flutter-autoroll@skia.org Roll Packages from 274ed3e to e742106 (18 revisions) (flutter/flutter#188863)
2026-07-01 116356835+AbdeMohlbi@users.noreply.github.com Add android 17 to embedding (flutter/flutter#187965)
2026-07-01 47866232+chunhtai@users.noreply.github.com Adds semantics role check to isSemantics and matchesSemantics (flutter/flutter#188825)
2026-07-01 rmacnak@google.com Roll Dart SDK from e1bdb9ce3327 to 26d723eb89af (3 revisions) (flutter/flutter#188795)
2026-07-01 zhongliu88889@gmail.com [web] Apply autocapitalize to text editing elements (flutter/flutter#188351)
2026-07-01 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from RymJjIj7dd5vQ3Cnh... to I2h2eXk06RrA3pIG2... (flutter/flutter#188852)
2026-07-01 bdero@google.com [Impeller] Compute dispatch takes 3D workgroup counts and honors the shader local_size (flutter/flutter#188601)
2026-07-01 codedoctor@linwood.dev Improve stylus support on linux (flutter/flutter#186831)
2026-07-01 matt.boetger@gmail.com Resolve issue  Catch am start failures with 'Error type' and prevent hang (flutter/flutter#187196)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from ef178c9898af to bd4ae38ca3bb (3 revisions) (flutter/flutter#188834)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 3ac99be47229 to ef178c9898af (3 revisions) (flutter/flutter#188831)
2026-07-01 31859944+LongCatIsLooong@users.noreply.github.com Add a macosArm64Only feature flag (flutter/flutter#188598)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 15302f1625b2 to 3ac99be47229 (1 revision) (flutter/flutter#188819)
2026-07-01 bkonyi@google.com [flutter_tools] Track asset transformer dependencies for hot reload (Reland #187947) (flutter/flutter#188808)
2026-06-30 737941+loic-sharma@users.noreply.github.com Add TapRegion samples (flutter/flutter#188685)
2026-06-30 31859944+LongCatIsLooong@users.noreply.github.com Print a warning in `flutter doctor` when running on Intel Macs (flutter/flutter#188760)
2026-06-30 zhongliu88889@gmail.com [framework] Keep scrollable semantics role stable (flutter/flutter#187963)
2026-06-30 1961493+harryterkelsen@users.noreply.github.com feat(skills): Add shepherd-prs skill for managing approved external contributor PRs (flutter/flutter#188534)
2026-06-30 engine-flutter-autoroll@skia.org Roll Skia from 71947c4110b0 to 15302f1625b2 (17 revisions) (flutter/flutter#188815)
2026-06-30 bkonyi@google.com [Tool] Run re-entrant upgrade in original CWD (flutter/flutter#188794)
...
kalyujniy pushed a commit to brickit-app/camera that referenced this pull request Jul 8, 2026
…lutter#12135)

Manual roll Flutter from ca9f874f5284 to 6995038d96ef (44 revisions)

Manual roll requested by stuartmorgan@google.com

flutter/flutter@ca9f874...6995038

2026-07-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from sx_eN0J_f2BV6jqjW... to Jr08vyeibMSv3Oxst... (flutter/flutter#188946)
2026-07-03 engine-flutter-autoroll@skia.org Roll Packages from 420e135 to 2fbe873 (1 revision) (flutter/flutter#188945)
2026-07-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 786212a2ce0d to 1f9a08ce0638 (4 revisions) (flutter/flutter#188944)
2026-07-03 engine-flutter-autoroll@skia.org Roll Skia from 5358ab75b840 to 919956953af6 (7 revisions) (flutter/flutter#188943)
2026-07-02 j.ihlas@betclicgroup.com [Windows] Keep regular windows in place when another is activated (flutter/flutter#188016)
2026-07-02 okorohelijah@google.com [flutter_tools] Provide guided message when iOS/macOS build fails due to low minimum version (flutter/flutter#188812)
2026-07-02 bdero@google.com [Flutter GPU] Load a ShaderLibrary from shader bundle bytes (flutter/flutter#188596)
2026-07-02 dacoharkes@google.com [tool] Enable record_use experiment by default on all channels (flutter/flutter#188887)
2026-07-02 engine-flutter-autoroll@skia.org Roll Packages from e742106 to 420e135 (13 revisions) (flutter/flutter#188916)
2026-07-02 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from I2h2eXk06RrA3pIG2... to sx_eN0J_f2BV6jqjW... (flutter/flutter#188915)
2026-07-02 256906086+mvincentong@users.noreply.github.com Clarify layout callback debug flag docs (flutter/flutter#186879)
2026-07-02 engine-flutter-autoroll@skia.org Roll Skia from 0c4faca350cc to 5358ab75b840 (2 revisions) (flutter/flutter#188899)
2026-07-02 engine-flutter-autoroll@skia.org Roll Dart SDK from e47361c7fe9a to 786212a2ce0d (2 revisions) (flutter/flutter#188898)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 0fc8ba72e802 to 0c4faca350cc (2 revisions) (flutter/flutter#188886)
2026-07-01 robert.ancell@canonical.com Hide draft PRs from the triage list (flutter/flutter#188885)
2026-07-01 47866232+chunhtai@users.noreply.github.com Stricten isSemantics and matchesSemantics children mismatch check (flutter/flutter#188827)
2026-07-01 jesswon@google.com [AGP 9] Support Enabling Built-in Kotlin (flutter/flutter#188543)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from d19e557ac317 to 0fc8ba72e802 (4 revisions) (flutter/flutter#188879)
2026-07-01 bkonyi@google.com [ci] Increase test timeout for Mac_x64 build_tests shards (flutter/flutter#188804)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from bd4ae38ca3bb to d19e557ac317 (1 revision) (flutter/flutter#188865)
2026-07-01 engine-flutter-autoroll@skia.org Roll Dart SDK from 26d723eb89af to e47361c7fe9a (5 revisions) (flutter/flutter#188864)
2026-07-01 katelovett@google.com Update triage links for material_ui and cupertino_ui --> Design triage (flutter/flutter#188567)
2026-07-01 flar@google.com [Impeller] Share a single ContextGLES among all PlaygroundImplGLES (flutter/flutter#188080)
2026-07-01 homobonus-luca@hotmail.it Use null-aware elements in dev/devicelab/lib/integration_tests.dart (flutter/flutter#187852)
2026-07-01 engine-flutter-autoroll@skia.org Roll Packages from 274ed3e to e742106 (18 revisions) (flutter/flutter#188863)
2026-07-01 116356835+AbdeMohlbi@users.noreply.github.com Add android 17 to embedding (flutter/flutter#187965)
2026-07-01 47866232+chunhtai@users.noreply.github.com Adds semantics role check to isSemantics and matchesSemantics (flutter/flutter#188825)
2026-07-01 rmacnak@google.com Roll Dart SDK from e1bdb9ce3327 to 26d723eb89af (3 revisions) (flutter/flutter#188795)
2026-07-01 zhongliu88889@gmail.com [web] Apply autocapitalize to text editing elements (flutter/flutter#188351)
2026-07-01 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from RymJjIj7dd5vQ3Cnh... to I2h2eXk06RrA3pIG2... (flutter/flutter#188852)
2026-07-01 bdero@google.com [Impeller] Compute dispatch takes 3D workgroup counts and honors the shader local_size (flutter/flutter#188601)
2026-07-01 codedoctor@linwood.dev Improve stylus support on linux (flutter/flutter#186831)
2026-07-01 matt.boetger@gmail.com Resolve issue  Catch am start failures with 'Error type' and prevent hang (flutter/flutter#187196)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from ef178c9898af to bd4ae38ca3bb (3 revisions) (flutter/flutter#188834)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 3ac99be47229 to ef178c9898af (3 revisions) (flutter/flutter#188831)
2026-07-01 31859944+LongCatIsLooong@users.noreply.github.com Add a macosArm64Only feature flag (flutter/flutter#188598)
2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 15302f1625b2 to 3ac99be47229 (1 revision) (flutter/flutter#188819)
2026-07-01 bkonyi@google.com [flutter_tools] Track asset transformer dependencies for hot reload (Reland #187947) (flutter/flutter#188808)
2026-06-30 737941+loic-sharma@users.noreply.github.com Add TapRegion samples (flutter/flutter#188685)
2026-06-30 31859944+LongCatIsLooong@users.noreply.github.com Print a warning in `flutter doctor` when running on Intel Macs (flutter/flutter#188760)
2026-06-30 zhongliu88889@gmail.com [framework] Keep scrollable semantics role stable (flutter/flutter#187963)
2026-06-30 1961493+harryterkelsen@users.noreply.github.com feat(skills): Add shepherd-prs skill for managing approved external contributor PRs (flutter/flutter#188534)
2026-06-30 engine-flutter-autoroll@skia.org Roll Skia from 71947c4110b0 to 15302f1625b2 (17 revisions) (flutter/flutter#188815)
2026-06-30 bkonyi@google.com [Tool] Run re-entrant upgrade in original CWD (flutter/flutter#188794)
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

flutter upgrade changes objective_c version in pubspec.lock, forcing to use --force option at next upgrade

2 participants