Uh oh!
There was an error while loading. Please reload this page.
Remove default for stripped option in engine/src/flutter/tools/gn, don't strip by default on android - #161546
Conversation
engine/src/flutter/tools/gn, don't strip by default on androidUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
| processManager.addCommand( | ||
| const FakeCommand( | ||
| command: <String>[ | ||
| 'gradlew', |
There was a problem hiding this comment.
There are a lot of flags here that probably came from the flutter tool. Later when the tool is changed and we need to update this test it will be harder to figure out why.
link where you came up with these flags and their values.
There was a problem hiding this comment.
Pulled out to a constant which will make updating easy. For where they came from, I just copied them from the existing tests. I can go find where all the flags come from if you think it is worthwhile
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
bkonyi
left a comment
There was a problem hiding this comment.
I think we can share a lot of the logic between tests, so it's probably worth taking another look and refactoring them.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
…ls/gn`, don't strip by default on android (flutter/flutter#161546)
flutter#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets
flutter#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets
release build got much bigger since flutter 3.32 (for debug it went from 83MB to 385MB) This is apparently just because the lib is no longer stripped since [1] This looks like a bug since we don't target android (tentative fix in [2]), but until that lands just set --stripped manually. Even if there is no C symbol dart stacktraces are available so most people don't need these. Link: flutter/flutter#161546 [1] Link: flutter/flutter#181984 [2]
flutter#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets
#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets Fixes#181983 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [ ] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [ ] All existing and new tests are passing.
flutter#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets Fixesflutter#181983 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [ ] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [ ] All existing and new tests are passing.
flutter#161546 changed the stripped option with the intent to be true for android, and false for all other targets, but the check never worked as intended because parser store_true action default value is False so the final else was never used. This fixes the build size increase that was noticed on flutter 3.32 for linux targets Fixesflutter#181983 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [ ] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [ ] All existing and new tests are passing.
Remake of flutter-team-archive/engine#52852.
Makes it so that
strippeddefaults to false for android ingnarguments, i.e. we don't strip the Android engine builds. AGP does this by default when the NDK is installed (and we download it automatically now after #159756).In testing, the step that AGP does to strip symbols adds ~1-2 seconds to the build.
Adds a tool verification for release app bundle builds that checks to make sure we have stripped the debug symbols and placed them in the
BUNDLE-METADATAdirectory. The check is done by invokingapkanalyzer, which takes ~0.5seconds, which is why the check is only enabled for release builds.BEFORE LANDING: I need to follow up on flutter-team-archive/engine#50443 (comment), to ensure we start stripping symbols internally as well.
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.