Today we're thrilled to announce the release of the Serverless Framework v1.6.0.
This release is a special one as it's the first version to include official support for a new provider: OpenWhisk.
Furthermore, we've added a bunch of new features and enhancement you'll enjoy! Let's take a look at the highlights of this release.
Note: You can find a complete list of all the updates in the changelog.
Serverless v1.6 is the first version that officially supports a different provider besides AWS!
From now on you can also write Serverless applications for OpenWhisk!
The only thing you need to do is to install the Serverless OpenWhisk plugin:
serverless install -g serverless-openwhisk
And create a new service based upon the OpenWhisk template:
serverless create --template openwhisk-nodejs
Back in v1.1 we introduced the "invoke local" plugin so that you can invoke your Serverless functions locally.
We started with support for the Node.js runtime, but got immediate feedback that Python should be supported as well.
Today we're happy to announce that "invoke local" now supports the Python runtime!
Next up is Java!
Do you have expertise with Java? Great! Please chime in on the discussion about local Java invocation so that we can add support for this runtime in one of the next releases!
Versioning your Lambda function has been an often requested feature for production environments. In 1.3 we added this feature and introduced Lambda versioning on every deplot. Lambda versioning is turned on by default.
However, sometimes you don't want to version your Lambdas. v1.6 introduces a simple way to disable Lambda versioning.
Simply add the
versionFunctions property to the provider section and set it to
provider: versionFunctions: false
This will turn off Lambda versioning upon the next deployment.
In the past Serverless added a bunch of different
Outputs to the CloudFormation template. This caused some problems with large services since limts for CloudFormation Outputs were reached frequently.
The possibility to opt out of Lambda versioning (which creates an output for your Lambda version) and the removal of the functions
arn displaying in the "info" plugin will reduce the
Output count significantly.
These changes, available in v1.6, should make it possible to write and deploy larger Serverless services.
Deployments had a huge memory footprint when uploading the artifacts to the S3 bucket. This memory consumption was reduced by ~50%.
Take a look at the Pull Request to see how changing one line of code can make a huge difference in performance.
Until now you needed to sign into the AWS console and add a permission manually so that your Lambda function can be called with the help of your existing SNS topic.
A Pull Request which was merged in v1.6 makes it possible to specify just the ARN to the SNS topic and Serverless will create the permission automatically.
This time we've fixes lots of nasty bugs and reworked some functionalities behind the scenes.
Thanks for reporting the bugs and opening issues to improve Serverless!
We're making a slight change and won't follow strict semver anymore.
Starting today, there may be breaking changes in every release. However, we keep the breaking changes as minimal and as painless as possible.
Here's a list of all the breaking changes in this release:
This release contains lots of work from our awesome community and wouldn't have been possible without passionate people contributing to Serverless.
Here's a list of all the contributors who submitted changes to the codebase in this release:
Serverless has an awesome and vibrant community. Do you want to help us develop the best Serverless tools out there?
Congributing isn't just writing code! Chime in on discussion, help with documentation updates or review PRs.
The Serverless Examples Repository is an excellent resource if you want to explore some real world examples and learn more about what Serverless architectures look like.
Philipp Müns is a core developer at Serverless, Inc.