Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Feb 22, 2023. It is now read-only.

[google_maps_flutter] Pin GoogleMaps cocoapod dep to last good known version #2924

Merged
merged 6 commits into from
Aug 12, 2020

Conversation

ditman
Copy link
Member

@ditman ditman commented Aug 11, 2020

Description

GoogleMaps 3.10 seems to have increased the minimum requirement for XCode beyond what our test infra can handle (undocumented?).

This change pins the GoogleMaps podspec to <3.10 until the situation clears, to unblock the build trees of both flutter/plugins and flutter/flutter.

Why are our apps resolving to 3.10, when our Podspec states that ios 8.0 needs to be supported?

Apps were resolving to 3.10 because flutter create now creates apps that have a minimum iOS version of 9.0 (instead of 8.0).

Why did 3.10 break us?

3.10 breaks us because they're using some APIs only available in XCode 11.4 and our infra is in 11.3.1. (However, as @jmagman pointed out, they should check for the availability of these APIs or a runtime error will happen in devices running iOS < 13.4.)

Related Issues

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.
  • My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
  • All existing and new tests are passing.
  • I updated/added relevant documentation (doc comments with ///).
  • The analyzer (flutter analyze) does not report any problems on my PR.
  • I read and followed the Flutter Style Guide.
  • The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
  • I updated CHANGELOG.md to add a description of the change.
  • I signed the CLA.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

Does your PR require plugin users to manually update their apps to accommodate your change?

  • No, this is not a breaking change.

@jmagman
Copy link
Member

jmagman commented Aug 11, 2020

    [!] CocoaPods could not find compatible versions for pod "GoogleMaps":
      In Podfile:
        google_maps_flutter (from `.symlinks/plugins/google_maps_flutter/ios`) was resolved to 0.0.2, which depends on
          GoogleMaps (= 3.9)

    Specs satisfying the `GoogleMaps (= 3.9)` dependency were found, but they required a higher minimum deployment target.

This is what I saw locally! Why is it ever resolving to 3.10...

@ditman

This comment has been minimized.

@ditman
Copy link
Member Author

ditman commented Aug 11, 2020

I've looked at an old build, and it resolved the GoogleMaps package to:

Google Maps SDK for iOS version: 2.7.30514.0
New version of Google Maps SDK for iOS available: 3.9.0.0

I don't understand how we are getting 3.10 :/ Maybe 3.10 declares that it supports iOS 8? (Narrator: It didn't)

@ditman ditman changed the title [google_maps_flutter] Pin GoogleMaps cocoapod dep to last known version [google_maps_flutter] Pin GoogleMaps cocoapod dep to last good known version Aug 11, 2020
@ditman
Copy link
Member Author

ditman commented Aug 11, 2020

Turns out the build_all_plugins_ipa uses flutter create to auto-generate an app with all the plugins.

The minimum version of ios for new flutter apps was bumped from 8.0 to 9.0 recently.

The plugin specifies a minimum version of ios to run (8.0). Resolving that in an 8.0 app (old), will yield GoogleMaps 2.7 (as seen above), however new apps that use 9.0 can resolve 3.x versions.

3.9 was good, as seen in the full-green pass linked in the comment above.

3.10 is bad, probably because it exposes new APIs that require a newer version of XCode. The change is undocumented as of now:

Version 3.10.0 - August 10, 2020

  • Version bump, no changes. This version is functionally identical to v.3.9.0.
  • There is a new Maps Swift Demo App in Google Maps cocoapods.

@ditman
Copy link
Member Author

ditman commented Aug 11, 2020

Cleanup ticket created: flutter/flutter#63530

@ditman ditman requested review from cyanglaz and jmagman August 11, 2020 23:16
Copy link
Contributor

@cyanglaz cyanglaz left a comment

Choose a reason for hiding this comment

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

LGTM!

Pub handles that for us
@ditman ditman requested a review from jmagman August 11, 2020 23:24
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

@ditman ditman merged commit 5c5f79a into flutter:master Aug 12, 2020
@ditman
Copy link
Member Author

ditman commented Aug 12, 2020

Merged on red; this should make the tree green again.

@ditman ditman deleted the pin-maps-cocoapod-dep branch August 12, 2020 05:56
@ditman
Copy link
Member Author

ditman commented Aug 12, 2020

The tree is squeaky green now

jarrodcolburn pushed a commit to jarrodcolburn/plugins that referenced this pull request Aug 20, 2020
jorgefspereira pushed a commit to jorgefspereira/plugins_flutter that referenced this pull request Oct 10, 2020
FlutterSu pushed a commit to FlutterSu/flutter-plugins that referenced this pull request Nov 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants