Skip to content

Releases: aws-cloudformation/cfn-lint

Release v0.3.5

13 Jul 11:21
e6bf942
Compare
Choose a tag to compare
Features
  • Update CloudFormation Specs to July 12th, 2018
  • Rule E7012 added to check the limits of attributes in a Mapping
  • Rule E2012 added to check maximum size of a parameter value
  • Rule E1003 added to check the maximum length of the template Description
  • Guide created to help new users write new rules
Fixes
  • Catch KeyError when trying to discover the line and column number of an error
  • Update Lambda rules to support dotnet core
  • Fix rule E1017 so we unpack first element of select as a dict
  • Fix rule E1024 to support ImportValue and appropriately checking number for the last element

Release v0.3.3

09 Jul 20:19
Compare
Choose a tag to compare
Features
  • Support for Yaml C Parser when available.
  • Catch rule processing errors and raise a lint error in their place.
  • Add rules for the limit on Parameter, Mapping, Resource and Output names
  • Add Rule W3005 to warn for when DependsOn is specified but not needed
  • Add Rule E2509 to check if Security Group Descriptions are properly configured
  • Add source_url to rules so rule reference documentation can be provided
Fixes
  • Fixed issues when Conditions had lists for values
  • Fixed issue where underscore was allowed for AlphaNumeric names

Release v0.3.2

27 Jun 18:44
9408878
Compare
Choose a tag to compare
Features
  • Try/Catch added to rule processing so code failures in rules won't crash cfn-lint
  • Parse YAML files using C parser when available. Greatly speeds up YAML parsing.
Fixes
  • Template class updated to handle conditions where lists are in the true/false values
  • Fix regex for checking Resource, Output, etc. names to not include underscore

Release v0.3.1

21 Jun 20:16
cc1f727
Compare
Choose a tag to compare
Features
  • Update rule E3020 to validate A recordsets
Fixes
  • Require "aws-sam-translator" dependency be at least 1.6.0
  • Add support for wildcards in rule E3013
  • Support conditions in Lists for rule E3002
  • Include filename when we run into Null and Duplicate values when parsing yaml
  • Rule W2510 now allows for AllowedValues instead of just Min/MaxValue for compliance of Lambda MemorySize
  • Rule E2530 updated to checked AllowedValues for compliance of Lambda MemorySize

Release v0.3.0

20 Jun 02:27
c07eaf7
Compare
Choose a tag to compare
Features
  • Serverless Transforms now handled by SAM libraries
  • Add Rule E2508: Add checks for IAM
    • Managed Policies attached to IAM user, group or role can't be more than 10
    • An IAM user can be a member of no more than 10 groups
    • There can only be 1 role in an instance profile
    • AssumeRolePolicyDocument size is less than <2048 characters
  • Add Rule E1002: Check overall template size to make sure its below
  • Add Rule E3013: CloudFront aliases should contain valid domain names
  • Add Rule E3020: Check if all RecordSets are correctly configured
    • Strings end and start with double quotes
    • Size is less than 256 characters
    • Record Types are within the specification
  • Short hand parameter switches and no longer need --template
Fixes
  • Don't report a Condition not being used if it is used by another Condition

Release v0.2.2

14 Jun 16:27
cdf62a0
Compare
Choose a tag to compare
Fixes
  • Fixed issues with Yaml and Json parsing for complex strings in Python 2.7
  • Added eu-central-1 Availability Zones to acceptable AZ list
  • Added nodejs8.10 to supported Lambda
  • Added Version as an attribute for a Custom Resource
  • Parseable output is now colon(:) delimited

Release v0.2.1

07 Jun 02:59
b4a0459
Compare
Choose a tag to compare
Features
  • Added AllowedValues for Cidr parameter checking Rule W2509
  • Add Rule E2004 to check Allowed values for Cidr parameters are a valid Cidr range
  • Disable mapping Name checks W7001 if dynamic mapping names are used (Ref, FindInMap)
  • New Rule E1026 to make sure Ref's in 'Conditions' are to parameters and not resources
  • Updated CloudFormation specs to June 5th, 2018
Fixes
  • Fixed an issue with Rule E1019 not giving errors when there was a bad pseudo parameter
  • Fixed an issue where conditions with Refs were validated as strings instead of Refs
  • Fix crash errors when an empty yaml file is provided
  • Updated condition functions to return the full object (Ref isn't translated while looking for AWS::NoValue)
  • Support Map Type properties when doing PrimitiveType check E3012
  • Fix an issue when boolean values not being checked when using check_value

Release v0.2.0

31 May 12:39
e736b34
Compare
Choose a tag to compare
Features
  • Standard cfn-lint Errors (E0000) for null, duplicate, and parse errors
  • Add a new check for CloudFormation limits
  • Add a new check for Parameter, Resource, Output, and Mapping names
  • Update specs to those released on May 25th, 2018
  • Strong type checking for property values result in Errors (E3012)
Fixes
  • Transform logic updated to not add a Role if one is specified for a serverless function
  • Fixed logic around Fn::If when the result is an object
  • Fix conditions when checking property value structure

Release 0.1.0

16 May 19:14
Compare
Choose a tag to compare
Features
  • Update CloudFormation specs to include recent releases
  • Add checks for duplicate resource names
  • Add checks for null values in templates
  • Add support in Circular Dependency checks to go multiple levels deep
  • Add check for unused mappings
  • Add check for unused and not found conditions
  • Convert Errors to Warnings that don't cause a failure when implementing a template
Fixes
  • Fix check for cfn-lint configurations in templates
  • Fix Sub Functions checks failing on sub stacks or custom resources
  • Fix Serverless Transforms not failing when trying to create multiple RestApiIds
  • Fix TOX encoding issues with certain JSON files
  • Update Lambda Memory size to 3008
  • Fix FindInMap failing when the first parameter is also FindInMap
  • Fix key search function to appropriately respond to nested finds (FindInMap inside a FindInMap)

Release 0.0.10

08 May 17:57
Compare
Choose a tag to compare
Features
  • Capability to merge and modify the CloudFormation spec with provided JSON
    • Allows for changing what properties are required
    • Can change what resource types are allowed
  • Remove warnings that were in error checks to keep errors focused on issues preventing success
  • Improve circular dependency checks to go multiple levels deep
  • Check null and duplicate values in JSON and YAML templates
Fixes
  • Some primitive type properties were not getting checked
  • Include support for Long as a number based check
  • Improve get condition values to support more complex scenarios