Previous Serverless Version 0.5.x v1.6.0 Release Notes
Release Date: 2017-01-30 // about 7 years ago-
Important Note: This release includes breaking changes. If your services stopped working after upgrading to v1.6.0, please read the following section.
๐ฅ Breaking Changes
๐ CloudWatch logs are created explicitly
๐ Up until this release, CloudWatch log groups were created implicitly by AWS/Lambda by default and were not included in your service stack. However, some users were able to easily reach the CloudWatch log group limits (currently at 500 log groups), and it wasn't an easy task to clear them all. Because of that we decided to explicitly create the log groups using CloudFormation so that you can easily remove them with
sls remove
. This was also optionally possible with thecfLogs: true
config option.If your service doesn't have the
cfLogs: true
set, and one of the function has been invoked at least once (hence the log groups were created implicitly by AWS), then it's very likely that you'll receive a "log group already exists" error after upgrading to v1.6.0. That's because CF is now trying to create the already created log groups from scratch to include it in the stack resources. To fix this breaking change, simply delete the old log group, or rename your service if you must keep the old logs.โ Removed function Arns from CloudFormation outputs
๐ Up until this release, the output section of the generated CloudFormation template included an output resource for each function Arn. This caused deploying big services to fail because users were hitting the 60 outputs per stack limit. This effectively means that you can't have a service that has more than 60 functions. To avoid this AWS limit, we decided to remove those function output resources completely, to keep the stack clean. This also means removing the function Arns from the
sls info
command, and at the end of the deployment command.๐ This is a breaking change for your project if you're depending on those function output resources in anyway, or if you're depending on function arn outputs from the deploy or info commands. Otherwise, your project shouldn't be affected by this change. Fixing this issue depends on your needs, but just remember that you can always create your own CF outputs in
serverless.yml
.๐ Moved
getStackName()
method๐ This is a breaking change for plugin authors only. If your plugin used the
provider.getStackName()
method, it has been moved tonaming.js
, and should be referenced withprovider.naming.getStackName()
instead.โ Removed the
defaults
property fromserverless.yml
๐ We've finally dropped support for the
defaults
property which we introduced in v1. All child properties should now be moved to theprovider
object instead.Non-breaking changes
- ๐ Reduce memory consumption on deploy by at least 50% (#3145)
- โ Added openwhisk template to
sls create
command (#3122) - ๐ Allow Role 'Fn::GetAtt' for Lambda
role
(#3083) - โ Added Access-Control-Allow-Credentials for CORS settings (#2736)
- โ add Support for SNS Subscription to existing topics (#2796)
- Function version resources are now optional. (#3042)
- ๐ Invoke local now supports python runtime. (#2937)
- ๐ Fixed "deployment bucket doesn't exist" error (#3107)
- ๐ Allowed function events value to be variables (#2434)
Meta