Swift 5.5 Release Process

Vapor? If you plan to run on mac or linux, you can probably just install the toolchain.

You cannot run async/await with that... The tool chain won't support it! That's the problem.

It should work fine on Linux.

if #available(SwiftStdlib 5.5, *) {
  // async code
} else {
  // do it the old school way
}

So... As mentioned in the release notes, it's only support on MacOS 12 and iOS 15 with Xcode 13 +

So if I want to test anything locally with VAPOR async/await, we have to wait till MacOS 12 is released. Great.

And no, we don't use the Ubuntu toolchain with Linux @jlukas so that's not an option.

We're dropping 5.5 as our roadmap update till maybe next year.

You mean Xcode release notes? Xcode doesn't support linux in general, so that's why it doesn't support concurrency on linux

We don't run the Ubuntu toolchain and don't have an associated test workflow with it. We run the last version of MacOS 10 for our VAPOR toolchain.

Mac Swift toolchain requires the Xcode download, which only runs on MacOS 11.3 or later.

AFAIK you can build the opensource toolchain on macOS too. You just won't have the ObjC supported runtime and interop.

1 Like

Is there any way to test async/await and actors on macOS 11? Some sort of runtime toolchain I can install on my dev machine?

I've ported some code and would love to test it without upgrading my only dev machine to macOS 12 yet.

Thanks! :pray:

Unless you're using macOS only APIs, you can run such code in the other platform simulators to use the new runtime. Toolchains might still work, if you turn off the availability checking, but that isn't guaranteed or supported.

1 Like

Unfortunately I'm working on a macOS tool (for my own business's use). I'll be fine with targeting 12, but I really wanted to take advantage to the async/await code and be able to test it, but without upgrading my machine until release.

Since I'm in early dev and testing, I don't mind the toolchain approach. Is there any information on setting this up, I've come up dry.

1 Like

Since you're using macOS, all you need to do is simply downloading and installing either the trunk or 5.5 development toolchain here: Swift.org - Download Swift, then select it in Xcode.

2 Likes

I've done this, but can't actually test. Is there a way to get the application to run on macOS 11?

No. Concurrency requires changes to the underlying OS which is why it's only available on macOS 12

2 Likes