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

[Proposal] Release Nimble v8 for bumping Swift version requirement (to 4.2) and adjust the deprecation roadmap #623

Closed
ikesyo opened this issue Jan 20, 2019 · 2 comments
Assignees

Comments

@ikesyo
Copy link
Member

ikesyo commented Jan 20, 2019

Currently the deprecation roadmap is noted in the README as follows:

The deprecating plan is a 3 major versions removal. Which is as follows:

  1. Introduce new Predicate API, deprecation warning for old matcher APIs. (Nimble v7.x.x)
  2. Introduce warnings on migration-path features (.predicate, Predicate-constructors with similar arguments to old API). (Nimble v8.x.x)
  3. Remove old API. (Nimble v9.x.x)

I think we are not ready for v8 release yet but maintaining v7 release (at 7.x-branch) for 3 Swift versions (Swift 3, Swift 4 and Swift 4.2) and many Xcode versions (from Xcode 8 to Xcode 10.1) is so difficult and tedious.

So I propose releasing Nimble v8 just for bumping Swift version requirement to Swift 4.2 with no API changes since v7.3.2. That should fairly make the development easier.

As a result,

  1. Introduce warnings on migration-path features (.predicate, Predicate-constructors with similar arguments to old API). (Nimble v8.x.x)

will be Nimble v9.x.x and

  1. Remove old API. (Nimble v9.x.x)

will be Nimble v10.x.x.

@Quick/core How do you think?

@phatblat
Copy link
Member

phatblat commented Jan 25, 2019

I think this is a good idea especially with the Xcode 10.2 beta 1 release today which includes Swift 5 and drops support for Swift 3.

error: SWIFT_VERSION '3.0' is unsupported, supported versions are: 4.0, 4.2, 5.0. (in target 'Nimble-macOS')

Build system information
warning: Swift 3 mode has been deprecated and will be removed in a later version of Xcode. Please migrate "Nimble-macOS" to Swift 4.2 using "Convert > To Current Swift Syntax…" in the Edit menu. (in target 'Nimble-macOS')

@ikesyo
Copy link
Member Author

ikesyo commented Jan 28, 2019

Thanks @phatblat, I'll go for it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants