Skip to content
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

Manual roll Flutter from 911aa7547ed7 to 043b71954ce7 #8693

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

stuartmorgan
Copy link
Contributor

#8692 with fixes for indirect effects of --explicit-package-dependencies

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where can I read more about how this file works in the package repo

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know that it's specifically documented anywhere, but its used in ci.yaml (example), and it's rolled by the auto-roller. The generic packages recipe uses that ci.yaml file to control the Flutter version that is checked out.

flutterEngine.getPlugins().add(new TestPlugin());
flutterEngine.getPlugins().add(new IntegrationTestPlugin());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we not need the integration test plugin? was it dead code?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a speculative change, but the fact that this wasn't calling super seems suspicious. Normally plugins are registered by the generated registrant.

This wasn't compiling because it's unconditionally using the integration test plugin, but that plugin is a dev dependency. If this doesn't work, I'll need to make this example app have a non-dev dependency on it instead, but that feels wrong.

@@ -54,7 +54,7 @@ android {
testImplementation 'org.jetbrains.kotlin:kotlin-test'
testImplementation "org.mockito.kotlin:mockito-kotlin:5.4.0"
testImplementation 'org.mockito:mockito-inline:5.1.0'
testImplementation 'androidx.test:core:1.3.0'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI I filed flutter/flutter#164025 to track making these updates easier.

@stuartmorgan
Copy link
Contributor Author

Looks like some tests are failing now; I'll investigate further tomorrow.

@stuartmorgan
Copy link
Contributor Author

Hm, it looks like integration tests are failing pretty much across the board. @matanlurey Did you test with your changes to see if the instructions here and here are still correct? I'm wondering if having a dev dependency on integration_test is no longer sufficient for FTL tests.

@matanlurey
Copy link
Contributor

Hm, it looks like integration tests are failing pretty much across the board. @matanlurey Did you test with your changes to see if the instructions here and here are still correct? I'm wondering if having a dev dependency on integration_test is no longer sufficient for FTL tests.

Neither of those two steps should have been impacted. The scenario I could imagine breaking is if the result of flutter build apk (which defaults to --release) is what was being deployed.

To test that theory you could move the dependency from dev_dependencies to dependencies.

Otherwise I would slap the config opt-out and assign me a P1, and I'll look at it tomorrow morning, and rollback the flag if there isn't a revert. Bonus points if there is a local repro.

@stuartmorgan
Copy link
Contributor Author

The scenario I could imagine breaking is if the result of flutter build apk (which defaults to --release) is what was being deployed.

That's definitely not the case; this is what we are deploying:

'--app',
'build/app/outputs/apk/debug/app-debug.apk',
'--test',
'build/app/outputs/apk/androidTest/debug/app-debug-androidTest.apk',

To test that theory you could move the dependency from dev_dependencies to dependencies.

Running now with that change for the camera* packages to see what happens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants