YouTag icon indicating copy to clipboard operation
YouTag copied to clipboard

Set Swift 5.8 as the minimum supported version

Open 3a4oT opened this issue 1 year ago • 10 comments

  • Set Swift 5.8 as the minimum supported version.
  • Removed CI job for Ubuntu 20.04.
  • Bumped swift-nio and swift-collections versions on the manifest.

3a4oT avatar Aug 29 '24 10:08 3a4oT

Thanks @3a4oT Just wondering - Are there any particular needs you had for upgrading this, or were you just cleaning it up?

NeedleInAJayStack avatar Sep 05 '24 04:09 NeedleInAJayStack

@paulofaria Do you have any thoughts on this? I know you've been hesitant to update swift-tools versions in the past, but NIO is at 5.8 compatibility

NeedleInAJayStack avatar Sep 05 '24 04:09 NeedleInAJayStack

Thanks @3a4oT Just wondering - Are there any particular needs you had for upgrading this, or were you just cleaning it up?

Hello, thanks for asking. The main driver was that we should support what Swift-NIO supports regarding the minimum required Swift tools. Swift itself doesn't support Ubuntu 20.04 anymore, so I dropped 5.4-5.6. I thought that bumping the version to 5.8 would be too aggressive, but I still believe it's the right thing to do :)

3a4oT avatar Sep 05 '24 08:09 3a4oT

Hey @3a4oT, I think this is good to go if you just make the following changes:

  1. Remove dependency changes in Package.swift
  2. Run the formatter: docker run --rm -v ./:/repo ghcr.io/nicklockwood/swiftformat:latest /repo

Let me know if you need any help!

NeedleInAJayStack avatar Sep 21 '24 15:09 NeedleInAJayStack

Let's follow SwiftNIO compatibility.

paulofaria avatar Oct 15 '24 13:10 paulofaria

Hey @3a4oT, I think this is good to go if you just make the following changes:

  1. Remove dependency changes in Package.swift
  2. Run the formatter: docker run --rm -v ./:/repo ghcr.io/nicklockwood/swiftformat:latest /repo

Let me know if you need any help!

Thanks! I have applied your suggestions to the rebased commit.

Let's follow SwiftNIO compatibility.

Set swift-tools version to 5.8.

UPDATED: it seems like swift-nio is about to drop Swift 5.8 support at https://github.com/apple/swift-nio/pull/2924

3a4oT avatar Oct 16 '24 08:10 3a4oT

We can merge this with 5.8 and then do a follow up PR with 5.9 or we can just go with 5.9, wait and synchronize with the other PR. I'm fine either way, it's your call. 🙂

By the way, I think we should be explicit about our versioning support. The main question is do we phrase it as "the three latest released Swift versions" or do we phrase it as "we follow SwiftNIO support"? @NeedleInAJayStack

Whatever we decide in this discussion, can you please add it to the Readme? @3a4oT

paulofaria avatar Oct 16 '24 11:10 paulofaria

I'm okay merging this and dropping 5.8 after NIO does.

By the way, I think we should be explicit about our versioning support. The main question is do we phrase it as "the three latest released Swift versions" or do we phrase it as "we follow SwiftNIO support"? @NeedleInAJayStack

I agree. I think phrasing it as "we follow SwiftNIO support" makes sense at the moment while we're pretty reliant on NIO. If at some point we drop that dependency in favor of full Swift Concurrency we can reevaluate.

@3a4oT Could you add a Support section to the README between Encoding Results and Contributing that says:

This package supports Swift versions in [alignment with Swift NIO](https://github.com/apple/swift-nio?tab=readme-ov-file#swift-versions).

Otherwise, everything looks great! Thanks for contributing!!

NeedleInAJayStack avatar Oct 16 '24 14:10 NeedleInAJayStack

Nice work @3a4oT! 🙂

paulofaria avatar Oct 16 '24 14:10 paulofaria

I'm okay merging this and dropping 5.8 after NIO does.

By the way, I think we should be explicit about our versioning support. The main question is do we phrase it as "the three latest released Swift versions" or do we phrase it as "we follow SwiftNIO support"? @NeedleInAJayStack

I agree. I think phrasing it as "we follow SwiftNIO support" makes sense at the moment while we're pretty reliant on NIO. If at some point we drop that dependency in favor of full Swift Concurrency we can reevaluate.

@3a4oT Could you add a Support section to the README between Encoding Results and Contributing that says:

This package supports Swift versions in [alignment with Swift NIO](https://github.com/apple/swift-nio?tab=readme-ov-file#swift-versions).

Otherwise, everything looks great! Thanks for contributing!!

Done

3a4oT avatar Oct 18 '24 12:10 3a4oT