uber / uber-ios-sdk

Uber iOS SDK (beta)
https://developer.uber.com/docs
MIT License
375 stars 125 forks source link

Swift 4 Migration Review #181

Closed edjiang closed 7 years ago

edjiang commented 7 years ago

To provide an excellent developer experience around our Rides SDK, we've identified the following areas to fix, so we can cut a 0.7 release.

This migration is a huge change, so I've split the changes into six PRs. The PRs set the base branch to the previous PR's branch, so that you can see the incremental changes. However, the goal is to merge everything into the develop branch, and use that to cut a 0.7 release of the SDK. Once the SDK is released, we'll move those commits to master.

Each PR has its own notes that describe the specific changes implemented, but here's high level information to keep in mind for how the PRs interact with each other. See the full diff.

1. #175: Remove China from SDK

This is a simple change -- this removes China and China-related tests from the SDK. However, I didn't remove the concept of the Region when I made these changes, as it would have affected some extra APIs. The Region is removed in the next PR

2. #176: Swifty APIs

See PR notes

3. #177: Swifty APIs (Part 2)

See PR notes

4. #178: Migrate to Swift 4

See PR notes

5. #179: Remove ObjectMapper dependency

Many of the models are actually changed in the next PR as I updated the mock JSON and code to hit V1.2 endpoints, so if there's a model-specific concern, check the next PR to make sure that it actually hasn't been addressed.

6. #180: Migrate Endpoints to Swift V1.2

See above.

In conjunction with this work, I am starting work on:

Things to address based on PR feedback:

edjiang commented 7 years ago

We are now on v0.7.0, which adds Swift 4 support!

https://github.com/uber/rides-ios-sdk/releases/tag/v0.7.0