github.com/tetrafolium/tflint@v0.8.0/CHANGELOG.md (about)

     1  ## 0.8.0 (2019-05-25)
     2  
     3  This release includes major changes due to being dependent on Terraform v0.12 internal API. While we try to keep backward compatibility as much as possible, it does include some breaking changes.
     4  
     5  We strongly recommend [upgrading to Terraform v0.12](https://www.terraform.io/upgrade-guides/0-12.html) before trying TFLint v0.8. `terraform 0.12upgrade` is helpful to upgrade your configuration files.
     6  
     7  ### Breaking Changes
     8  
     9  - Always return an error when failed to evaluate an expression.
    10    - Until now, except for module arguments, even if an error occurred, it was ignored.
    11    - Expressions including unsupported named values (such as `${module.foo}`) are not evaluated, so no error occurs.
    12  - Drop support for `${terraform.env}`.
    13    - Previously `${terraform.env}` was a valid expression that returned the same as `${terraform.workspace}`.
    14    - This is because Terraform v0.12 doesn't support `${terraform.env}`.
    15  - The file name of a module includes module ID instead of the source attribute.
    16    - Up to now it was output like `github.com/wata727/example-module/instance.tf`, but it will be changed like `module_id/instance.tf`.
    17  - Always parse all configuration files under the current directory.
    18    - When passing a file name as an argument, TFLint only parsed that file so far, but it now parses all configuration files under the current directory.
    19    - Also, file arguments are only used to filter the issues obtained. Therefore, you cannot pass files other than under the current directory.
    20    - As a known issue, If file arguments are passed, module's issues are not reported. This will be improved by changing handling of module's issues in the future.
    21    - These behaviors have been changed as it depends on Terraform's `configload` package.
    22    - In addition, modules are always loaded regardless of `ignore_module`.
    23  - Raise an error when using invalid syntax as a Terraform configuration.
    24    - For example, it didn't raise an error when using `resources`(not `resource`) block because it is valid as HCL syntax in previous versions.
    25  - Remove `--debug` option.
    26    - Please use `TFLINT_LOG` environment variables instead.
    27  - Raise an error when a file passed by `--config` does not exist.
    28    - Previously the error was ignored and the default config was referenced.
    29  - Remove duplicate resource rules.
    30    - This is due to technical difficulty and user experience.
    31  
    32  ### Enhancements
    33  
    34  - HCL2 support
    35    - See also https://www.hashicorp.com/blog/terraform-0-1-2-preview
    36  - Built-in Functions support
    37    - Until now, if an expression includes function calls, it was ignored.
    38  - `TF_DATA_DIR` and `TF_WORKSPACE` environment variables are now available.
    39    - Until now, these variables are ignored.
    40  - It is now possible to handle values doesn't have a default without raising errors.
    41    - In the past, an error occurred when there was a reference to a variable that had no default value in an attribute of a module. See [#205](https://github.com/wata727/tflint/issues/205)
    42  - Terraform v0.11 module support
    43    - Until now, it is failed to properly load a part of Terraform v0.11 module. See also [#167](https://github.com/wata727/tflint/issues/167)
    44  - Support for automatic loading `*.auto.tfvars` files.
    45    - Previously it was not loaded automatically.
    46  
    47  ### BugFixes
    48  
    49  - Improve expression checks
    50    - Since it used to be checked by a regular expression, there were many bugs, but it was greatly improved by using the `terraform/lang` package. See [#204](https://github.com/wata727/tflint/issues/204) [#160](https://github.com/wata727/tflint/issues/160)
    51  - Stop overwriting the config under the current directory by the config under the homedir.
    52    - Fixed the problem that overwrites the config under the current directory by homedir config.
    53  - Improve to check for `aws_db_instance_readable_password`.
    54    - Previously, false positive occurred when setting values files or environment variables, but this problem has been fixed.
    55  - Make `transit_gateway_id` as a valid target on `aws_route_specified_multiple_targets`
    56  
    57  ### Project Changes
    58  
    59  - Change license: MIT -> MPL 2.0
    60    - See [#245](https://github.com/wata727/tflint/pull/245)
    61  - Update documentations
    62    - See [#272](https://github.com/wata727/tflint/pull/272)
    63  
    64  ## 0.7.6 (2019-05-17)
    65  
    66  ### BugFixes
    67  
    68  - [#276](https://github.com/wata727/tflint/pull/276): Update aws_route_not_specified_target to handle transit_gateway_id. ([@davewongillies](https://github.com/davewongillies))
    69  
    70  ## 0.7.5 (2019-04-03)
    71  
    72  ### Enhancements
    73  
    74  - Update RDS DB size list ([#269](https://github.com/wata727/tflint/pull/269))
    75  - Add M5 and R5 families to ElastiCache ([#270](https://github.com/wata727/tflint/pull/270))
    76  
    77  ### Others
    78  
    79  - Add go report card ([#261](https://github.com/wata727/tflint/pull/261))
    80  - automate the installation of tflint on linux ([#267](https://github.com/wata727/tflint/pull/267))
    81  
    82  ## 0.7.4 (2019-02-09)
    83  
    84  ### Enhancements
    85  
    86  - Add support for db.m5 series db types ([#258](https://github.com/wata727/tflint/pull/258))
    87  
    88  ## 0.7.3 (2018-12-28)
    89  
    90  ### Enhancements
    91  
    92  - Update ec2-instances-info dependency ([#257](https://github.com/wata727/tflint/pull/257))
    93  
    94  ### Others
    95  
    96  - Add "features" word to docs for people explicitly looking ([#237](https://github.com/wata727/tflint/pull/237))
    97  
    98  ## 0.7.2 (2018-08-26)
    99  
   100  ### Enhancements
   101  
   102  - Update valid instance list ([#226](https://github.com/wata727/tflint/pull/226))
   103  
   104  ## 0.7.1 (2018-07-19)
   105  
   106  ### Bugfix
   107  
   108  - Add missing db instances as valid types ([#214](https://github.com/wata727/tflint/pull/214))
   109  - Update valid instance types ([#215](https://github.com/wata727/tflint/pull/215))
   110  
   111  ### Others
   112  
   113  - Migrate to dep from Glide ([#208](https://github.com/wata727/tflint/pull/208))
   114  - Add `rule` section in README ([#213](https://github.com/wata727/tflint/pull/213))
   115  
   116  ## 0.7.0 (2018-06-04)
   117  
   118  ### Enhancements
   119  
   120  - Add new `rule` configuration syntax ([#197](https://github.com/wata727/tflint/pull/197))
   121  
   122  ### Others
   123  
   124  - Recommend `rule` syntax instead of `ignore_rules` in README ([#200](https://github.com/wata727/tflint/pull/200))
   125  
   126  ## 0.6.0 (2018-05-18)
   127  
   128  ### Enhancements
   129  
   130  - Support terraform.workspace variable ([#181](https://github.com/wata727/tflint/pull/181))
   131  - Accept glob and multiple input ([#183](https://github.com/wata727/tflint/pull/183))
   132  - Fallback to config under the home directory ([#186](https://github.com/wata727/tflint/pull/186))
   133  - Add new --quiet option ([#190](https://github.com/wata727/tflint/pull/190))
   134  
   135  ### Changes
   136  
   137  - Remove aws_instance_not_specified_iam_profile ([#180](https://github.com/wata727/tflint/pull/180))
   138  
   139  ### Bugfix
   140  
   141  - Handle color for Windows ([#184](https://github.com/wata727/tflint/pull/184))
   142  - Fix interpolation checking ([#189](https://github.com/wata727/tflint/pull/189))
   143  - Detect pinned sources using regular expressions ([#194](https://github.com/wata727/tflint/pull/194))
   144  
   145  ### Others
   146  
   147  - AppVeyor :rocket: ([#185](https://github.com/wata727/tflint/pull/185))
   148  - Add note for installation ([#196](https://github.com/wata727/tflint/pull/196))
   149  
   150  ## 0.5.4 (2018-01-07)
   151  
   152  ### Bugfix
   153  
   154  - Handle empty config file ([#166](https://github.com/wata727/tflint/pull/166))
   155  
   156  ## 0.5.3 (2017-12-09)
   157  
   158  ### Enhancements
   159  
   160  - Support module path for v0.11.0 ([#161](https://github.com/wata727/tflint/pull/161))
   161  - Ignore module initialization when settings `ignore_module` ([#163](https://github.com/wata727/tflint/pull/163))
   162  
   163  ## 0.5.2 (2017-11-12)
   164  
   165  ### Enhancements
   166  
   167  - Use `cristim/ec2-instances-info` instead of hard-coded list ([#159](https://github.com/wata727/tflint/pull/159))
   168  
   169  ### BugFix
   170  
   171  - Use `strings.Trim` instead of `strings.Replace` ([#158](https://github.com/wata727/tflint/pull/158))
   172  
   173  ### Others
   174  
   175  - Set Docker container default workdir to /data ([#152](https://github.com/wata727/tflint/pull/152))
   176  - Add ca-certificates to Docker image for TLS requests to AWS ([#155](https://github.com/wata727/tflint/pull/155))
   177  
   178  ## 0.5.1 (2017-10-18)
   179  
   180  Re-release due to [#151](https://github.com/wata727/tflint/issues/151)  
   181  There is no change in the code from v0.5.0
   182  
   183  ## 0.5.0 (2017-10-14)
   184  
   185  Minor version update. This release includes environment variable support.
   186  
   187  ### Enhancements
   188  
   189  - Support variables from environment variables ([#147](https://github.com/wata727/tflint/pull/147))
   190  - Support moudle path for v0.10.7 ([#149](https://github.com/wata727/tflint/pull/149))
   191  
   192  ### Others
   193  
   194  - Add Makefile target for creating docker image ([#145](https://github.com/wata727/tflint/pull/145))
   195  - Update Go version ([#146](https://github.com/wata727/tflint/pull/146))
   196  
   197  ## 0.4.3 (2017-09-30)
   198  
   199  Patch version update. This release includes Terraform v0.10.6 supports.
   200  
   201  ### Enhancements
   202  
   203  - Add G3 instances support ([#139](https://github.com/wata727/tflint/pull/139))
   204  - Support new digest module path ([#144](https://github.com/wata727/tflint/pull/144))
   205  
   206  ### Others
   207  
   208  - Fix unclear error messages ([#137](https://github.com/wata727/tflint/pull/137))
   209  
   210  ## 0.4.2 (2017-08-03)
   211  
   212  Patch version update. This release includes a hotfix.
   213  
   214  ### BugFix
   215  
   216  - Fix panic for integer variables interpolation ([#131](https://github.com/wata727/tflint/pull/131))
   217  
   218  ## 0.4.1 (2017-07-29)
   219  
   220  Patch version update. This release includes terraform meta information interpolation syntax support.
   221  
   222  ### NewDetectors
   223  
   224  - Add AwsECSClusterDuplicateNameDetector ([#128](https://github.com/wata727/tflint/pull/128))
   225  
   226  ### Enhancements
   227  
   228  - Support "${terraform.env}" syntax ([#126](https://github.com/wata727/tflint/pull/126))
   229  - Environment state handling ([#127](https://github.com/wata727/tflint/pull/127))
   230  
   231  ### Others
   232  
   233  - Update deps ([#130](https://github.com/wata727/tflint/pull/130))
   234  
   235  ## 0.4.0 (2017-07-09)
   236  
   237  Minor version update. This release includes big core API changes.
   238  
   239  ### Enhancements
   240  
   241  - Overrides module ([#118](https://github.com/wata727/tflint/pull/118))
   242  - Add document link and detector name on output ([#122](https://github.com/wata727/tflint/pull/122))
   243  - Add Terraform version options ([#123](https://github.com/wata727/tflint/pull/123))
   244  - Report `aws_instance_not_specified_iam_profile` only when `terraform_version` is less than 0.8.8 ([#124](https://github.com/wata727/tflint/pull/124))
   245  
   246  ### Others
   247  
   248  - Provide abstract HCL access ([#112](https://github.com/wata727/tflint/pull/112))
   249  - Fix override logic ([#117](https://github.com/wata727/tflint/pull/117))
   250  - Fix some output messages and documentation ([#125](https://github.com/wata727/tflint/pull/125))
   251  
   252  ## 0.3.6 (2017-06-05)
   253  
   254  Patch version update. This release includes hotfix for module evaluation.
   255  
   256  ### BugFix
   257  
   258  - DO NOT USE Evaluator :bow: ([#114](https://github.com/wata727/tflint/pull/114))
   259  
   260  ### Others
   261  
   262  - Add HCL syntax highlighting in README ([#110](https://github.com/wata727/tflint/pull/110))
   263  - Update README.md ([#111](https://github.com/wata727/tflint/pull/111))
   264  
   265  ## 0.3.5 (2017-04-23)
   266  
   267  Patch version update. This release includes new detectors and bugfix for module.
   268  
   269  ### NewDetectors
   270  
   271  - Module source pinned ref check ([#100](https://github.com/wata727/tflint/pull/100))
   272  - Add AwsCloudWatchMetricAlarmInvalidUnitDetector ([#108](https://github.com/wata727/tflint/pull/108))
   273  
   274  ### Enhancements
   275  
   276  - Support F1 instances ([#107](https://github.com/wata727/tflint/pull/107))
   277  
   278  ### BugFix
   279  
   280  - Interpolate module attributes ([#105](https://github.com/wata727/tflint/pull/105))
   281  
   282  ### Others
   283  
   284  - Improve CLI ([#102](https://github.com/wata727/tflint/pull/102))
   285  - Add integration test ([#106](https://github.com/wata727/tflint/pull/106))
   286  
   287  ## 0.3.4 (2017-04-10)
   288  
   289  Patch version update. This release includes new detectors for `aws_route`
   290  
   291  ### NewDetectors
   292  
   293  - Add AwsRouteInvalidRouteTableDetector ([#90](https://github.com/wata727/tflint/pull/90))
   294  - Add AwsRouteNotSpecifiedTargetDetector ([#91](https://github.com/wata727/tflint/pull/91))
   295  - Add AwsRouteSpecifiedMultipleTargetsDetector ([#92](https://github.com/wata727/tflint/pull/92))
   296  - Add AwsRouteInvalidGatewayDetector ([#93](https://github.com/wata727/tflint/pull/93))
   297  - Add AwsRouteInvalidEgressOnlyGatewayDetector ([#94](https://github.com/wata727/tflint/pull/94))
   298  - Add AwsRouteInvalidNatGatewayDetector ([#95](https://github.com/wata727/tflint/pull/95))
   299  - Add AwsRouteInvalidVpcPeeringConnectionDetector ([#96](https://github.com/wata727/tflint/pull/96))
   300  - Add AwsRouteInvalidInstanceDetector ([#97](https://github.com/wata727/tflint/pull/97))
   301  - Add AwsRouteInvalidNetworkInterfaceDetector ([#98](https://github.com/wata727/tflint/pull/98))
   302  
   303  ### BugFix
   304  
   305  - Fix panic when security groups are on EC2-Classic ([#89](https://github.com/wata727/tflint/pull/89))
   306  
   307  ### Others
   308  
   309  - Transfer from hakamadare/tflint to wata727/tflint ([#84](https://github.com/wata727/tflint/pull/84))
   310  
   311  ## 0.3.3 (2017-04-02)
   312  
   313  Patch version update. This release includes support for shared credentials.
   314  
   315  ### Enhancements
   316  
   317  - Support shared credentials ([#79](https://github.com/wata727/tflint/pull/79))
   318  - Add checkstyle format ([#82](https://github.com/wata727/tflint/pull/82))
   319  
   320  ### Others
   321  
   322  - Add NOTE to aws_instance_not_specified_iam_profile ([#81](https://github.com/wata727/tflint/pull/81))
   323  - Refactoring for default printer ([#83](https://github.com/wata727/tflint/pull/83))
   324  
   325  ## 0.3.2 (2017-03-25)
   326  
   327  Patch version update. This release includes hotfix.
   328  
   329  ### BugFix
   330  
   331  - Fix panic when parsing empty list ([#78](https://github.com/wata727/tflint/pull/78))
   332  
   333  ### Others
   334  
   335  - Fix unstable test ([#74](https://github.com/wata727/tflint/pull/74))
   336  - Update README to reference Homebrew tap ([#75](https://github.com/wata727/tflint/pull/75))
   337  
   338  ## 0.3.1 (2017-03-12)
   339  
   340  Patch version update. This release includes support for tfvars.
   341  
   342  ### Enhancements
   343  
   344  - Support I3 instance types ([#66](https://github.com/wata727/tflint/pull/66))
   345  - Support TFVars ([#67](https://github.com/wata727/tflint/pull/67))
   346  
   347  ### Others
   348  
   349  - Add Dockerfile ([#59](https://github.com/wata727/tflint/pull/59))
   350  - Fix link ([#60](https://github.com/wata727/tflint/pull/60))
   351  - Update help message ([#61](https://github.com/wata727/tflint/pull/61))
   352  - Move cache from detector to awsclient ([#62](https://github.com/wata727/tflint/pull/62))
   353  - Refactoring detector ([#65](https://github.com/wata727/tflint/pull/65))
   354  - glide up ([#68](https://github.com/wata727/tflint/pull/68))
   355  - Update go version ([#69](https://github.com/wata727/tflint/pull/69))
   356  
   357  ## 0.3.0 (2017-02-12)
   358  
   359  Minor version update. This release includes core enhancements for terraform state file.
   360  
   361  ### NewDetectors
   362  
   363  - Add RDS readable password detector ([#46](https://github.com/wata727/tflint/pull/46))
   364  - Add duplicate security group name detector ([#49](https://github.com/wata727/tflint/pull/49))
   365  - Add duplicate ALB name detector ([#52](https://github.com/wata727/tflint/pull/52))
   366  - Add duplicate ELB name detector ([#54](https://github.com/wata727/tflint/pull/54))
   367  - Add duplicate DB Instance Identifier Detector ([#55](https://github.com/wata727/tflint/pull/55))
   368  - Add duplicate ElastiCache Cluster ID detector ([#56](https://github.com/wata727/tflint/pull/56))
   369  
   370  ### Enhancements
   371  
   372  - Interpret TFState ([#48](https://github.com/wata727/tflint/pull/48))
   373  - Add --fast option ([#58](https://github.com/wata727/tflint/pull/58))
   374  
   375  ### BugFix
   376  
   377  - r4.xlarge is valid type ([#43](https://github.com/wata727/tflint/pull/43))
   378  
   379  ### Others
   380  
   381  - Add sideci.yml ([#42](https://github.com/wata727/tflint/pull/42))
   382  - Update README ([#50](https://github.com/wata727/tflint/pull/50))
   383  - SideCI Settings ([#57](https://github.com/wata727/tflint/pull/57))
   384  
   385  ## 0.2.1 (2017-01-10)
   386  
   387  Patch version update. This release includes new argument options.
   388  
   389  ### NewDetectors
   390  
   391  - add db instance invalid type detector ([#32](https://github.com/wata727/tflint/pull/32))
   392  - add rds previous type detector ([#33](https://github.com/wata727/tflint/pull/33))
   393  - add invalid type detector for elasticache ([#34](https://github.com/wata727/tflint/pull/34))
   394  - add previous type detector for elasticache ([#35](https://github.com/wata727/tflint/pull/35))
   395  
   396  ### Enhancements
   397  
   398  - Return error code when issue exists ([#31](https://github.com/wata727/tflint/pull/31))
   399  
   400  ### Others
   401  
   402  - fix install version ([#30](https://github.com/wata727/tflint/pull/30))
   403  - CLI Test By Interface ([#36](https://github.com/wata727/tflint/pull/36))
   404  - Fix --error-with-issues description ([#37](https://github.com/wata727/tflint/pull/37))
   405  - glide up ([#38](https://github.com/wata727/tflint/pull/38))
   406  
   407  ## 0.2.0 (2016-12-24)
   408  
   409  Minor version update. This release includes enhancements and several fixes
   410  
   411  ### New Detectors
   412  
   413  - add AWS Instance Invalid AMI deep detector ([#7](https://github.com/wata727/tflint/pull/7))
   414  - add invalid key name deep detector ([#11](https://github.com/wata727/tflint/pull/11))
   415  - add invalid subnet deep detector ([#12](https://github.com/wata727/tflint/pull/12))
   416  - add invalid vpc security group deep detector ([#13](https://github.com/wata727/tflint/pull/13))
   417  - add invalid security group detector for ELB ([#16](https://github.com/wata727/tflint/pull/16))
   418  - add invalid subnet detector for ELB ([#17](https://github.com/wata727/tflint/pull/17))
   419  - add invalid instance detector for ELB ([#18](https://github.com/wata727/tflint/pull/18))
   420  - add invalid security group detector for ALB ([#20](https://github.com/wata727/tflint/pull/20))
   421  - add invalid subnet detector for ALB ([#21](https://github.com/wata727/tflint/pull/21))
   422  - add invalid security group detector for RDS ([#22](https://github.com/wata727/tflint/pull/22))
   423  - add invalid DB subnet group detector for RDS ([#23](https://github.com/wata727/tflint/pull/23))
   424  - add invalid parameter group detector for RDS ([#24](https://github.com/wata727/tflint/pull/24))
   425  - add invalid option group detector for RDS ([#25](https://github.com/wata727/tflint/pull/25))
   426  - add invalid parameter group detector for ElastiCache ([#27](https://github.com/wata727/tflint/pull/27))
   427  - add invalid subnet group detector for ElastiCache ([#28](https://github.com/wata727/tflint/pull/28))
   428  - add invalid security group detector for ElastiCache ([#29](https://github.com/wata727/tflint/pull/29))
   429  
   430  ### Enhancements
   431  
   432  - Support t2 and r4 types ([#5](https://github.com/wata727/tflint/pull/5))
   433  - Improve ineffecient module detector method ([#10](https://github.com/wata727/tflint/pull/10))
   434  - do not call API when target resources are not found ([#15](https://github.com/wata727/tflint/pull/15))
   435  - support list type variables evaluation ([#19](https://github.com/wata727/tflint/pull/19))
   436  
   437  ### Bug Fixes
   438  
   439  - Fix panic deep detecting with module ([#8](https://github.com/wata727/tflint/pull/8))
   440  
   441  ### Others
   442  
   443  - Fix `Fatalf` format in test ([#3](https://github.com/wata727/tflint/pull/3))
   444  - Remove Zero width space in README.md ([#4](https://github.com/wata727/tflint/pull/4))
   445  - Fix typos ([#6](https://github.com/wata727/tflint/pull/6))
   446  - documentation ([#26](https://github.com/wata727/tflint/pull/26))
   447  
   448  ## 0.1.0 (2016-11-27)
   449  
   450  Initial release
   451  
   452  ### Added
   453  
   454  - Add Fundamental features
   455  
   456  ### Deprecated
   457  
   458  - Nothing
   459  
   460  ### Removed
   461  
   462  - Nothing
   463  
   464  ### Fixed
   465  
   466  - Nothing