Commit 7e3f5da
authored
[google_maps_flutter] Add examples for different iOS versions (#3757)
Improves the way we specify and test the `GoogleMaps` SDK dependency on iOS. Currently as discussed in flutter/flutter#86820, we are allowing any version of the SDK, and CocoaPods will choose the best version that's compatible with the minimum iOS deployment version of the plugin client's app. However, clients are also subject to future breakage, since any new major SDK version could have compile-time incompatibility with the plugin's wrapping code. We also have no ability to test anything in CI that's newer than the SDK that supports our oldest supported version (currently that's iOS 11, and thus 5.x).
This makes two changes:
- Replaces the single example with N examples, each with a different minimum iOS version, corresponding to each point where the Google Maps SDK has bumped its minimum iOS requirement. Currently (as documented in the new README file)
- The oldest example has all of the current testing.
- The newest example has just XCTests (not integration or XCUITests).
- Intervening examples have no tests.
- Instead of the completely unpinned version, we allow anything up to the next major version (which should be the first one with breaking API changes).
This gives us build coverage of each of the (latest at CI runtime) resolve points that clients can have. We retain the flexibility of allowing clients to get the best version that meets their app's constraints, except that we will need to explicitly test and enable new major versions, so that they won't randomly break clients.
Fixes flutter/flutter#868201 parent 746750e commit 7e3f5da
File tree
168 files changed
+3039
-87
lines changed- packages/google_maps_flutter/google_maps_flutter_ios
- example
- ios11
- assets
- 2.0x
- 3.0x
- integration_test
- ios
- Flutter
- Runner.xcodeproj
- project.xcworkspace
- Runner.xcworkspace
- RunnerTests
- RunnerUITests
- Runner
- Assets.xcassets
- AppIcon.appiconset
- LaunchImage.imageset
- Base.lproj
- lib
- test_driver
- ios12
- assets
- 2.0x
- 3.0x
- ios
- Flutter
- Runner.xcodeproj
- project.xcworkspace
- Runner.xcworkspace
- Runner
- Assets.xcassets
- AppIcon.appiconset
- LaunchImage.imageset
- Base.lproj
- lib
- ios13
- assets
- 2.0x
- 3.0x
- ios
- Flutter
- Runner.xcodeproj
- project.xcworkspace
- Runner.xcworkspace
- RunnerTests
- Runner
- Assets.xcassets
- AppIcon.appiconset
- LaunchImage.imageset
- Base.lproj
- lib
- lib
- ios
- script/tool/lib/src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
168 files changed
+3039
-87
lines changedLines changed: 5 additions & 0 deletions
Lines changed: 44 additions & 7 deletions
Lines changed: 13 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
12 | 11 | | |
13 | 12 | | |
| 13 | + | |
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| |||
0 commit comments