The Swift Lambda Runtime moved to AWS

If you're using the Swift Lambda Runtime, you might have notice a GitHub redirect from /swift-server to /awslabs since a couple of weeks.

Here is the official announcement

Thank you all involved, please continue to share your feedback, questions, and suggestions here or on the Swift open source slack

--Seb

15 Likes

Congratulations to everyone involved, it’s really great to see this move materialize! :partying_face:

4 Likes

Super cool, thanks everybody!!

1 Like

Does that mean eventually there will be an official lambda swift runtime image published by AWS?

@eric-musliner I'm curious about the use case for an image vs compiling it yourself? Can you elaborate ?

For example, the Rust, Go, and C++ runtime interface clients follow the same pattern as this one for Swift. You build your binary with the provided library and you add it to an OS-only image provided by AWS (or your build your own OCI image). This is how language runtime will be distributed for the known future (except the ones managed by AWS : Node.js, Java, Python etc)

This is the model we intent to follow for the Swift runtime interface client as well.

What I hope it will change however is that, after a certain amount of time, the Swift runtime client will be promoted to 1.0.0 with full support from AWS.

For example, the Rust runtime stayed on /awslabs in version 0.x for years and was recently "promoted" to GA (generally available).

Let's show AWS that there is sufficient usage and traction on Swift to push them to do the same for Swift.

I count on you :-)

1 Like

Understood! That makes a lot of sense. For the python image at least it just makes it a lot easier to build to have the off-the-shelf image and you just have to worry about setting the main handler function. Since with swift there’s always the compile/build step I guess it’s not too much of a difference to just include the right package and build with an OCI base image. I’ll give the swift runtime a shot the next time I write a lambda!

2 Likes

You're correct. For Rust, Go, Swift and other compiled languages, you'll always have the extra steps of compiling and packaging your binary.

This is not specific to Swift.

1 Like