This was pulled from my old LinkedIn.
The Lambda Rust Runtime just published our first big release post-1.x.
The headline new feature is concurrent invocation processing on a single lambda instance, using tokio1. We have an open issue about adding further runtime options here.
This was a tricky release to plan for. We knew we wanted to improve ergonomics, since we had to lock down a lot of previously wide-open types for 1.0. Over the years, we had gotten comfortable releasing a rapid-fire stream of breaking lambda-events versions to keep up with AWS record changes. (Sure was nice while it lasted)
The new builders for event types were a good compromise, since we had to tag our previously public event types as #[non_exhaustive] for 1.0. Luciano Mammino added some custom builders for SQS & Kinesis to keep stream processing nice. And then, Astraea S. added a generalized builder for all other events (bon under the hood).
I also like what we did with the extension API's telemetry records. They are now optionally generic, which lets you deserialize directly into json (or a fancier type) with no intermediate parsing. This brings the ergonomics closer to managing a regular invocation event handler. (That was a slog of a PR, thanks Raphaël Thériault)
Kudos and appreciation to Davide Melfi for leading the release!
Come to TokioConf in Portland, 4/20-4/23.