Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
# [3.0.0](v2.3.0...v3.0.0) (2020-01-23) ### Bug Fixes * **go:** Ran `go mod tidy` ([awslabs#233](https://github.com/anonfunc/goformation/issues/233)) ([7914822](7914822)) * **schema:** AWS::Serverless::Api.MethodSettings should be a list ([a1f340a](a1f340a)), closes [awslabs#242](https://github.com/anonfunc/goformation/issues/242) * **schema:** AWS::Serverless::Function S3 notification filters ([awslabs#249](https://github.com/anonfunc/goformation/issues/249)) ([a50ef92](a50ef92)), closes [awslabs#74](https://github.com/anonfunc/goformation/issues/74) * **schema:** AWS::Serverless:Api.Cors ([awslabs#246](https://github.com/anonfunc/goformation/issues/246)) ([62fd56a](62fd56a)), closes [awslabs#244](https://github.com/anonfunc/goformation/issues/244) * **schema:** Ordered cloudformation/all.go file ([awslabs#238](https://github.com/anonfunc/goformation/issues/238)) ([91254f3](91254f3)) * **schema:** version attribute of Function::S3Location in SAM is optional ([awslabs#226](https://github.com/anonfunc/goformation/issues/226)) ([14b754c](14b754c)), closes [/github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#s3](https://github.com//github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md/issues/s3) [awslabs#87](https://github.com/anonfunc/goformation/issues/87) ### Features * **schema:** AWS CloudFormation Update (2019-10-26) ([awslabs#231](https://github.com/anonfunc/goformation/issues/231)) ([63ca311](63ca311)) * **schema:** AWS CloudFormation Update (2019-10-29) ([awslabs#239](https://github.com/anonfunc/goformation/issues/239)) ([7ff8499](7ff8499)) * **schema:** CloudFormation Updates (2019-12-09) ([awslabs#251](https://github.com/anonfunc/goformation/issues/251)) ([a23ba41](a23ba41)) * Fix method conflicts (awslabs#245) ([d0b0a8b](d0b0a8b)), closes [awslabs#245](https://github.com/anonfunc/goformation/issues/245) [awslabs#241](https://github.com/anonfunc/goformation/issues/241) [awslabs#294](https://github.com/anonfunc/goformation/issues/294) * Group CloudFormation resources by AWS service name (awslabs#234) ([d0749e6](d0749e6)), closes [awslabs#234](https://github.com/anonfunc/goformation/issues/234) ### BREAKING CHANGES * This change refactors the DependsOn, Metadata, CreationPolicy, UpdatePolicy and DeletionPolicy methods on each resource to a new name. This is required, as some CloudFormation resources use these keywords as properties (AWS::AppMesh::Route.GrpcRouteMatch has a Metadata field for example), which causes a conflict. `resource.DependsOn()` method is refactored to `resource.AWSCloudFormationDependsOn` field. `resource.SetDependsOn()` method is refactored to `resource.AWSCloudFormationDependsOn` field. `resource.Metadata()` method is refactored to `resource.AWSCloudFormationMetadata` field. `resource.SetMetadata()` method is refactored to `resource.AWSCloudFormationMetadata` field. `resource.CreationPolicy()` method is refactored to `resource.AWSCloudFormationCreationPolicy` field. `resource.SetCreationPolicy()` method is refactored to `resource.AWSCloudFormationCreationPolicy` field. `resource.UpdatePolicy()` method is refactored to `resource.AWSCloudFormationUpdatePolicy` field. `resource.SetUpdatePolicy()` method is refactored to `resource.AWSCloudFormationUpdatePolicy` field. `resource.DeletionPolicy()` method is refactored to `resource.AWSCloudFormationDeletionPolicy` field. `resource.SetDeletionPolicy()` method is refactored to `resource.AWSCloudFormationDeletionPolicy` field. * this change moves all Cloudformation resources to packages based on the AWS service name. The main motivation for this is that building goformation on some platforms (Windows) failed due to too many files in the old cloudformation/resources package. This new package style has a nice benefit of slightly nicer to use API, but is a breaking change and will require refactoring existing codebases to update to v3. Old usage: ```go import "github.com/awslabs/goformation/v2/cloudformation/resources" ... snip ... topic := &resources.AWSSNSTopic{} ``` New usage: ```go import "github.com/awslabs/goformation/v3/cloudformation/sns" ...snip... topic := &sns.Topic{} ``` Most tests are still failing at this point and need refactoring. * fix(schema): Tag handling Fixed tag handling for new grouped resources style (via new tags.Tag struct). * fix(schema): SAM specification SAM Specification now generates nicely with new grouped resources format. Also all tests are now passing \o/
- Loading branch information