-
Notifications
You must be signed in to change notification settings - Fork 25
Add support for Swift 5.1 (5.0 impossible due to compiler bug) #26
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
Conversation
201444d to
af4cca5
Compare
|
@yim-lee could we ask you to help us out and add 5.0 and 5.1 CI to this project? We want to match what swift-log supports, even it supporting 5.0 is a bit ridiculous at this point 😆 |
|
Added CI for 5.0 and 5.1. @swift-server-bot test this please |
7822c98 to
8da2911
Compare
8da2911 to
f06643b
Compare
Thank you 🙏 |
|
5.0 is failing because of what I think is a compiler bug. We have a test which contains conditionally compiled code ( CI Run: https://ci.swiftserver.group/job/swift-distributed-tracing-baggage-swift50-prb/4/console |
3b10fe2 to
08902d5
Compare
08902d5 to
39be441
Compare
|
Can't seem to be able to workaround the 5.0 issue, even compiler(>=5.5) does not help. We may need to drop 5.0 support tbh. |
6b3ff36 to
39be441
Compare
|
Talked a lot with the swift team about the bug here -- there does not seem to be a workaround, we can't support 5.0 basically -- even with the compiler guards it still will attempt to lex the task local but will fail doing so. |
|
Discussed this in depth with the Swift team, it is impossible for a library to support any task-local usage and "#if-out" its usage without breaking Swift 5.0, since it will still attempt and fail to lex this piece of "iffed out" code. As such, we cannot support 5.0, nor can any library which optionally (!!!) supports task-locals, because of this compiler bug in 5.0. |
Since we plan on introducing
Baggageas a dependency forLogging(apple/swift-log#235) we want to lower our minimum supported Swift version to 5.0 to matchLogging.