Releases: terraform-linters/tflint
v0.46.0
0.46.0 (2023-04-09)
This release adds deprecation warnings for future breaking changes. Warn when using command line arguments like tflint dir
and tflint main.tf
. The former can be replaced with tflint --chdir=dir
and the latter with tflint --filter=main.tf
. See #1687 for details.
The GPG key signed signature attached to TFLint releases has been deprecated. This signature will not be added to releases after May 1, 2023. Please migrate to verification with Cosign.
Enhancements
- #1700: plugin: Handle eval errors on the plugin side (@wata727)
- #1722: plugin: Handle sensitive values on the plugin side (@wata727)
- #1730: deps: Bump tflint-plugin-sdk to v0.16.0 (@wata727)
Changes
BugFixes
- #1686: sarif: add tool version, exclude empty range/position, slash paths (@bendrucker)
Chores
- #1587: Deprecate GPG key signed signature (@wata727)
- #1662: deps: bump to go1.20 (@chenrui333 @bendrucker)
- #1681: docs: Update usage output (@wata727)
- #1682 #1733: build(deps): Bump alpine from 3.17.1 to 3.17.3
- #1683: build(deps): Bump golang.org/x/text from 0.6.0 to 0.7.0
- #1684: build(deps): Bump github.com/hashicorp/hcl/v2 from 2.16.0 to 2.16.1
- #1685 #1729: build(deps): Bump google.golang.org/grpc from 1.52.3 to 1.54.0
- #1691: build(deps): Bump github.com/hashicorp/go-getter from 1.6.2 to 1.7.0
- #1692: build(deps): Bump golang.org/x/net from 0.5.0 to 0.7.0
- #1695 #1714: build(deps): Bump golang.org/x/oauth2 from 0.4.0 to 0.6.0
- #1701: build(deps): Bump github.com/sourcegraph/jsonrpc2 from 0.1.0 to 0.2.0
- #1702 #1712: build(deps): Bump github.com/spf13/afero from 1.9.3 to 1.9.5
- #1704 #1711: build(deps): Bump golang.org/x/crypto from 0.0.0-20220517005047-85d78b3ac167 to 0.7.0
- #1708: docs: revise plugin rate limiting guide (@bendrucker)
- #1710: build(deps): Bump sigstore/cosign-installer from 2.8.1 to 3.0.1
- #1715: build(deps): Bump github.com/hashicorp/go-plugin from 1.4.8 to 1.4.9
- #1717: build(deps): Bump github.com/fatih/color from 1.14.1 to 1.15.0
- #1723: build(deps): Bump actions/setup-go from 3 to 4
- #1724: build(deps): Bump github.com/zclconf/go-cty from 1.12.1 to 1.13.1
- #1736: Fix GoReleaser config for Cosign v2 (@wata727)
v0.45.0
0.45.0 (2023-02-13)
This release adds support for some CLI flags. File arguments (e.g. tflint main.tf
) have been deprecated by the new --filter
flag. It works in v0.45 but will be removed in a future version. We recommend migrating to tflint --filter=main.tf
.
All arguments are deprecated from this release. If you're using arguments, you'll need to migrate to the --chdir
or --filter
flags.
This release updates the expiration date of the built-in GPG public key. Existing keys will expire on 2023-05-01, so you are encouraged to update by then.
Enhancements
- #1638: cmd: Add
--filter
option (@wata727) - #1654: cmd: Add
--minimum-failure-severity
flag, sets minimum issue severity for non-zero exit (@nicolajv) - #1671: cmd: Add
--no-module
option (@wata727) - #1679: plugin: Set the GPG key expiration to 2025-05-01 (@wata727)
BugFixes
- #1664: plugin: Fix panic when plugin path could not be loaded (@wata727)
- #1678: cmd: Reject all directory arguments with --chdir/--recursive (@wata727)
Chores
- #1642: build(deps): Bump golang.org/x/text from 0.5.0 to 0.6.0
- #1651: build(deps): Bump golangci/golangci-lint-action from 3.3.1 to 3.4.0
- #1652: build(deps): Bump github.com/fatih/color from 1.13.0 to 1.14.1
- #1653: build(deps): Bump alpine from 3.17.0 to 3.17.1
- #1658: docs: Fix typo in architecture guide (@Ankushpandey-ti)
- #1659: build(deps): Bump github.com/hashicorp/hcl/v2 from 2.15.0 to 2.16.0
- #1660: build(deps): Bump google.golang.org/grpc from 1.51.0 to 1.52.3
- #1661: docs: Mention OPA ruleset (@wata727)
- #1666: docs: Add Environment Variables documentation (@wata727)
- #1667: docs: Mention Renovate TFLint plugins support (@wata727)
- #1670: tflint: Allow config to be merged even with initial values (@wata727)
- #1673: build(deps): Bump docker/build-push-action from 3 to 4
- #1674: build(deps): Bump golang from 1.19-alpine3.16 to 1.20-alpine3.16
v0.44.1
v0.44.0
0.44.0 (2022-12-26)
This release added support for --chdir
and --recursive
flags. Mostly loader related improvements, including some refactorings.
The directory argument (e.g. tflint dir
) has been deprecated. It works in v0.44 but will be removed in a future version. We recommend migrating to tflint --chdir=dir
.
The --recursive
flag is an experimental feature. It may not suit all workflows. We may change behavior frequently to keep improving.
Enhancements
- #1612: cmd: Add
--chdir
option (@wata727)- This change deprecates the directory argument. If you are using
tflint dir
, you should migrate totflint --chdir=dir
. In most cases the directory argument can be replaced with--chdir
. - The directory argument works in v0.44 but will be removed in a future version.
- This change deprecates the directory argument. If you are using
- #1622 #1629: cmd: Add
--recursive
option (@wata727 @bendrucker)- The
--recursive
option is an experimental feature. Behavior may change in future versions.
- The
- #1626: plugin: Add support for GetOriginalwd API (@wata727)
GetOriginalwd()
is available from SDK v0.15.
- #1630: Bump tflint-plugin-sdk to v0.15.0 (@wata727)
- #1631: Bump bundled terraform ruleset to v0.2.2 (@wata727)
Changes
- #1610: terraform: Move loader to under the terraform package (@wata727)
- Changed the directory for autoloading value files when using a directory argument. Previously,
terraform.tfvars
and*.auto.tfvars
in the current directory were loaded, but since v0.44, value files in the argument directory are loaded. - In any case, the directory argument is deprecated and we recommend migrating to
--chdir
.
- Changed the directory for autoloading value files when using a directory argument. Previously,
Chores
- #1602: build(deps): Bump github.com/spf13/afero from 1.9.2 to 1.9.3
- #1603: build(deps): Bump google.golang.org/grpc from 1.50.1 to 1.51.0
- #1607: docs: Revise developer guide (@wata727)
- #1611: build(deps): Bump alpine from 3.16.3 to 3.17.0
- #1614: build(deps): Bump golang.org/x/text from 0.4.0 to 0.5.0
- #1615: tests: pass $GITHUB_TOKEN (@bendrucker)
- #1620: build(deps): Bump github.com/go-test/deep from 1.0.8 to 1.1.0
- #1621: build(deps): Bump github.com/hashicorp/go-plugin from 1.4.6 to 1.4.8
- #1623: build(deps): Bump goreleaser/goreleaser-action from 3 to 4
- #1627 #1628: chores: Fix flaky CI (@wata727)
v0.43.0
0.43.0 (2022-11-19)
This release adds support for dynamic blocks, including block expansion and iterator evaluation. Previously, dynamic blocks were always treated as a single block.
Plugin developers should be careful with dynamic blocks after this version. If you set ExpandModeNone
(or IncludeNotCreated
), dynamic blocks will not be fully expanded. Instead, dynamic blocks can be retrieved as-is via the GetModuleContent
API.
Enhancements
BugFixes
- #1579 #1591: build(deps): Bump github.com/zclconf/go-cty from 1.11.1 to 1.12.1
- #1582: terraform: Convert variable types before applying defaults (@wata727)
- #1592: build(deps): Bump github.com/hashicorp/hcl/v2 from 2.14.1 to 2.15.0
- #1598: Fix panic when file read fails (@wata727)
Chores
- #1546: Convert bug report issue template to form (@bendrucker)
- #1584: build(deps): Bump github.com/zclconf/go-cty-yaml from 1.0.2 to 1.0.3
- #1585: Set up a security policy (@wata727)
- #1586: Follow up of upstream LICENSE updates (@wata727)
- #1588: Add COSIGN_EXPERIMENTAL=1 flag to the verification example (@wata727)
- #1589: Bump up GoReleaser version (@wata727)
- #1590: build(deps): Bump golangci/golangci-lint-action from 3.3.0 to 3.3.1
- #1593: build(deps): Bump github.com/hashicorp/go-plugin from 1.4.5 to 1.4.6
- #1594: build(deps): Bump alpine from 3.16.2 to 3.16.3
v0.42.2
v0.42.1
v0.42.0
0.42.0 (2022-10-23)
This release adds support for evaluating local.*
, each.key
, each.value
, and count.index
. Support for each.*
and count.index
requires plugins built with SDK v0.14+.
Starting with this release, resources/modules with count
or for_each
set will be expanded. Previously it was only expanded if count = 0
or for_each = {}
, but it is now always expanded and multiple resources/modules are passed to plugins.
Enhancements
- #1525: terraform: Add local values support (@wata727)
- #1530: plugin: Add support for schema mode (@wata727)
- #1535: plugin: Allow plugins to set TFLint version constraints (@wata727)
- #1537: terraform: Add support for count/each value (@wata727)
- #1560: Bump tflint-plugin-sdk and bundled terraform plugin (@wata727)
BugFixes
Chores
- #1526: Move block expanding to under the terraform package (@wata727)
- #1527: docs: Update compatibility guide (@wata727)
- #1528 #1539: build(deps): Bump sigstore/cosign-installer from 2.6.0 to 2.8.0
- #1529: workflow(docker): Improve multi-arch image build (@wata727)
- #1534: docs: Add notice about Chocolatey package (@wata727)
- #1538: build(deps): Bump google.golang.org/grpc from 1.49.0 to 1.50.0
- #1550: build(deps): Bump github.com/zclconf/go-cty from 1.11.0 to 1.11.1
- #1558: docs: Add API compatibility note (@wata727)
- #1559: Add test when the count is string (@wata727)
- #1561: build(deps): Bump golang.org/x/text from 0.3.7 to 0.4.0