Skip to content

Releases: aws-cloudformation/cfn-lint

Release v0.5.0

14 Aug 02:00
2f67a29
Compare
Choose a tag to compare
Features
  • Load all instances of CloudFormationLintRule in a file. Class doesn't need to match the filename anymore
  • Allow load yaml to accept a string allowing people to use cfn-lint as a module
  • Add rule W6001 to test outputs that are just using an import value
  • Update specs to ones released on August 10, 2018
Fixes
  • Update E2507 to support conditions and using get_values to test all condition paths
  • Update E2521, E2523 to support conditions and using get_values to test all condition paths
  • Rewrite E2503 to support intrinsic functions and conditions and lower case protocols
  • Fix E1018 to support Sub inside a Split function
  • Fix E3003 description messages to be more informative
  • Fix E3001 to not require parameters when CreationPolicy is used
  • Fix SAM region when no region is available from a local AWS profile or environment variable.

Release v0.4.2

25 Jul 19:22
cddd272
Compare
Choose a tag to compare
Features
  • Update rule E3020 to support AAAA record checks
Fixes
  • Fix many rules that would fail if a sub parameter had a space at the beginning or end
  • Fix crashing issues when trying to get resources that aren't properly configured

Release v0.4.1

20 Jul 14:55
b25d031
Compare
Choose a tag to compare
Features
  • Update CloudFormation Specs to July 20th, 2018
Fixes
  • Fix an issue with Exclusive resource properties and RDS with Snapshot and Password

Release v0.4.0

18 Jul 15:25
b9f8895
Compare
Choose a tag to compare
Features
  • Update CloudFormation specs to July 16th, 2018
  • Support comma lists for regions, append rules, and ignore check parameters
  • Added documentation explaining Resource Specification based rules
Fixes
  • Fix a bunch of typos across many different rules
  • Support DeepCopy with Template and custom String classes used for marking up templates
  • Fix Rule E3002 to support CommaDelimitedList when looking for List Parameters
  • Fix core engine to check that something is a Dict instead of assuming it is

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