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

Updated Quick and Nimble #421

Merged
merged 5 commits into from
Oct 7, 2020
Merged

Updated Quick and Nimble #421

merged 5 commits into from
Oct 7, 2020

Conversation

Widcket
Copy link
Contributor

@Widcket Widcket commented Oct 4, 2020

Changes

This PR updates the test dependencies Quick and Nimble to the latest majors, making it possible to test Auth0.swift with Xcode 12. This update will also allow to start addressing the compilation issues on BigSur.

The new majors of Quick and Nimble no longer support Swift versions < 5.2. This means that the tests can no longer be run on Xcode versions < 11.4. The CircleCI config has been updated accordingly.

Testing

  • This change adds unit test coverage
  • This change has been tested on the latest version of the platform/language or why not

Checklist

@Widcket Widcket added the small label Oct 4, 2020
@Widcket Widcket requested a review from a team October 4, 2020 00:34
@Widcket Widcket added this to the vNext milestone Oct 4, 2020
@cocojoe
Copy link
Member

cocojoe commented Oct 6, 2020

So this PR will be a breaking change in that Carthage at the very least will no longer work in Xcode versions below 12?
Do CocoaPods still work, I don't think they do any testing?

The moment we need to remove a CI test case we really need to be and are we communicating this clearly? Better to over-communicate than under.

Does this min Xcode support now shift as well to 12 in README?

Although this is necessary for Xcode 12 and Carthage. This really needs to be called out explicitly in the README that for Xcode <12 use Minor X for Xcode >=12 this minor is needed.

Presumably, all of the QS Samples need to be updated as well then?

@Widcket
Copy link
Contributor Author

Widcket commented Oct 6, 2020

@cocojoe Quick and Nimble are dropping support for Xcode < 11.4, so it would still work with Xcode 11.4+. So no, the minimum supported Xcode does not shift to 12.
Why would the samples have to be updated? They use Cocoapods.

@Widcket
Copy link
Contributor Author

Widcket commented Oct 6, 2020

@cocojoe besides, the README currently states that the supported Xcode versions are 11.x. So the only thing that would actually change is that to use Carthage you would have to use Xcode 11.4+, instead of 11.0-11.3. And that just because the library uses Carthage to manage its own dependencies. The Podspec does not even mention Quick and Nimble.
But, I agree that the above (about Carthage) should be added to the README.

@cocojoe
Copy link
Member

cocojoe commented Oct 6, 2020

This needs a heavy call out and clear context, if the minimum listed is 11.x then give the circumstances I think it's okay. We just need to be very explicit to avoid any potential confusion.

@Widcket
Copy link
Contributor Author

Widcket commented Oct 6, 2020

Correction, it says "Xcode 10.x / 11.x" However, you can't submit apps to the AppStore that were built with Xcode 10.x anymore, so it's effectively EOL'd.

@Widcket
Copy link
Contributor Author

Widcket commented Oct 6, 2020

And with the current major being 4 years old, Xcode 10 is not the first Xcode version to stop being supported by this library, I suppose.

@Widcket
Copy link
Contributor Author

Widcket commented Oct 6, 2020

@cocojoe I've added a notice to the README.

[Behaviour changes in iOS 13](https://github.com/auth0/Auth0.swift/pull/297) related to Web Authentication require that developers using Xcode 11 with this library **must** compile using Swift 5.x. This *should* be the default setting applied when updating, unless it has been manually set. However, we recommend checking that this value is set correctly.
## Important Notices
- [The latest majors of Quick and Nimble](https://github.com/auth0/Auth0.swift/pull/421) require that developers using Carthage **must** use Xcode 11.4+ only, starting from Auth0.swift [1.29.0](https://github.com/auth0/Auth0.swift/releases/tag/1.29.0).
- [Behaviour changes in iOS 13](https://github.com/auth0/Auth0.swift/pull/297) related to Web Authentication require that developers using Xcode 11 with this library **must** compile using Swift 5.x. This *should* be the default setting applied when updating, unless it has been manually set. However, we recommend checking that this value is set correctly.
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 create a historical notices section and move this part to then? iOS 13 feels way less relevant now.

@Widcket Widcket merged commit 96e3981 into master Oct 7, 2020
@Widcket Widcket deleted the chore/update-dependencies branch October 7, 2020 14:44
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.

2 participants