Skip to content

Conversation

@christopherfujino
Copy link
Contributor

@christopherfujino christopherfujino commented Feb 6, 2020

Description

cherry pick:

In addition the customer_testing tests initially failed on this PR because the cirrus config checks out ToT of https://github.com/flutter/tests, and upstream changes are incompatible with this version. I updated these tests in the .cirrus.yml to check out the specific revision this repo was on when this release branched from master.

Related Issues

Fixes #50066 and #49787

Tests

I added the following tests:

Cherry picked a cirrus integration test that verifies all binaries in the cache have been codesigned (only runs on macos).

Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I signed the [CLA].
  • I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
  • I read the [Tree Hygiene] wiki page, which explains my responsibilities.
  • I updated/added relevant documentation (doc comments with ///).
  • All existing and new tests are passing.
  • The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

Did any tests fail when you ran them? Please read [Handling breaking changes].

  • No, no existing tests failed, so this is not a breaking change.
  • Yes, this is a breaking change. If not, delete the remainder of this section.

@fluttergithubbot fluttergithubbot changed the base branch from v1.12.13-hotfixes to master February 6, 2020 19:55
@fluttergithubbot
Copy link
Contributor

This pull request was opened against a branch other than master. Since Flutter pull requests should not normally be opened against branches other than master, I have changed the base to master. If this was intended, you may modify the base back to v1.12.13-hotfixes. See the Release Process for information about how other branches get updated.

Reviewers: Use caution before merging pull requests to branches other than master. The circumstances where this is valid are very rare.

/cc @dnfield

@fluttergithubbot fluttergithubbot added engine flutter/engine related. See also e: labels. framework flutter/packages/flutter repository. See also f: labels. c: contributor-productivity Team-specific productivity, code health, technical debt. tool Affects the "flutter" command-line tool. See also t: labels. work in progress; do not review labels Feb 6, 2020
@christopherfujino christopherfujino changed the base branch from master to v1.12.13-hotfixes February 6, 2020 19:56
@christopherfujino
Copy link
Contributor Author

This pull request was opened against a branch other than master. Since Flutter pull requests should not normally be opened against branches other than master, I have changed the base to master. If this was intended, you may modify the base back to v1.12.13-hotfixes. See the Release Process for information about how other branches get updated.

Reviewers: Use caution before merging pull requests to branches other than master. The circumstances where this is valid are very rare.

/cc @dnfield

This is a hotfix.

@christopherfujino christopherfujino force-pushed the hotfix-8 branch 5 times, most recently from 62c4bd6 to 17dbdb6 Compare February 7, 2020 00:19
@christopherfujino
Copy link
Contributor Author

Should this include #50315?

@christopherfujino christopherfujino force-pushed the hotfix-8 branch 2 times, most recently from 6aba911 to 8c82215 Compare February 7, 2020 21:57
@christopherfujino christopherfujino changed the title Hotfix 8 Hotfix 8 - sign binaries and increase minimum Xcode version to 11 Feb 7, 2020
@christopherfujino christopherfujino marked this pull request as ready for review February 7, 2020 23:57

- name: verify_binaries_codesigned-macos # macos-only
# TODO(fujino): remove this `only_if` after https://github.com/flutter/flutter/issues/44372
only_if: "$CIRRUS_BRANCH == 'dev' || $CIRRUS_BRANCH == 'beta' || $CIRRUS_BRANCH == 'stable' || $CIRRUS_BRANCH =~ '.*hotfix.*'"
Copy link
Member

Choose a reason for hiding this comment

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

Why didn't verify_binaries_codesigned-macos run on this PR? We won't know if it passed until this is merged into stable, which is too late...

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 tested this by commenting out the conditional and running the test. The reason it didn't run as is is because $CIRRUS_BRANCH is something like pull/50291 pre-submit. We'd catch a failure before before it landed in stable because hotfixes dont' get merged to stable until after CI is green on the hotfix branch.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Oh, but even better, I can check $CIRRUS_BASE_BRANCH != 'master'...

Copy link
Member

Choose a reason for hiding this comment

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

Will that catch random PRs off master that aren't codesigned too?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Well, the githubbot should change those to be on master. Not sure if the bot changing the base will re-trigger the cirrus jobs.

'test.');
exit(1);
}

Copy link
Member

Choose a reason for hiding this comment

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

Should we run flutter precache --no-android to make sure the iOS engine artifacts are actually present?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good idea, I created this issue to track. For the sake of landing this hotfix, I won't cherry pick it here. This test will still catch when the batch codesigning job hasn't been run, as the dart sdk, libimobiledevice artifacts, and android gen snapshots are all cached by flutter doctor -v run in the setup_script (see https://cirrus-ci.com/task/6198934779461632).

Copy link
Member

@jmagman jmagman left a comment

Choose a reason for hiding this comment

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

LGTM, my comments can be resolved on master.

@tvolkert
Copy link
Contributor

tvolkert commented Feb 8, 2020

What's with the "Minimum supported Gradle version is 5.4.1. Current version is 4.10.2" error in hostonly_devicelab_tests-2-macos?

It looks like the build_tests-macos may have failed because this isn't on master? If that's the case, can we issue a fix on master such that the next PR on a hotfix branch won't have the same problem?

@dnfield
Copy link
Contributor

dnfield commented Feb 8, 2020

I'm bumping Gradle at #50388

@christopherfujino
Copy link
Contributor Author

What's with the "Minimum supported Gradle version is 5.4.1. Current version is 4.10.2" error in hostonly_devicelab_tests-2-macos?

@tvolkert can I land this on a red hostonly_devicelab_tests-2-macos? As Dan linked, there is a pending Gradle upgrade upstream.

It looks like the build_tests-macos may have failed because this isn't on master? If that's the case, can we issue a fix on master such that the next PR on a hotfix branch won't have the same problem?

build_tests-macos was successful on a re-run. Not sure why the previous one failed, reading the logs it looked like it passed? And before that looked like a git cloning error.

@dnfield
Copy link
Contributor

dnfield commented Feb 10, 2020

Shoudl we just pull in the gradle fixes to this branch once they land upstream, so future hotfixes won't have to be as complicate?

I'm also wondering if we should pull #49327 into this.

@christopherfujino
Copy link
Contributor Author

Shoudl we just pull in the gradle fixes to this branch once they land upstream, so future hotfixes won't have to be as complicate?

I'm also wondering if we should pull #49327 into this.

The logcat fix makes sense.

As for #50388, @blasten it seems like you're saying that PR shouldn't affect users, is that correct? If so, then we might as hotfix that as well.

@tvolkert
Copy link
Contributor

We could land this now and then land those other fixes on the flutter:v1.12.13-hotfixes branch before we tag the hotfix release.

@christopherfujino
Copy link
Contributor Author

We could land this now and then land those other fixes on the flutter:v1.12.13-hotfixes branch before we tag the hotfix release.

sounds good, I'll do that now.

@christopherfujino christopherfujino merged commit afb2006 into flutter:v1.12.13-hotfixes Feb 10, 2020
@christopherfujino christopherfujino deleted the hotfix-8 branch February 10, 2020 17:59
@blasten
Copy link

blasten commented Feb 10, 2020

@christopherfujino That is correct. #50388 doesn't change behavior for end users.

responilla07 pushed a commit to responilla07/flutter that referenced this pull request Jun 8, 2020
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 1, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

c: contributor-productivity Team-specific productivity, code health, technical debt. engine flutter/engine related. See also e: labels. framework flutter/packages/flutter repository. See also f: labels. tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants