Skip to content

Releases: terraform-linters/tflint

v0.48.0

03 Sep 15:49
Compare
Choose a tag to compare

What's Changed

Breaking Changes

  • Bump tflint-plugin-sdk to v0.18.0 by @wata727 in #1813
    • This change causes the deprecated IncludeNotCreated option to be ignored. Most plugin users will not be affected.

BugFixes

  • langserver: Trap os.Interrupt and syscall.SIGTERM by @wata727 in #1809
  • Bump github.com/hashicorp/hcl to v2.18.0 by @wata727 in #1833
  • tflint: Allow commas with spaces in annotations by @wata727 in #1834

Chores

  • build(deps): Bump alpine from 3.18.0 to 3.18.2 by @dependabot in #1784
  • build(deps): Bump google.golang.org/grpc from 1.55.0 to 1.56.0 by @dependabot in #1785
  • build(deps): Bump golang.org/x/oauth2 from 0.8.0 to 0.9.0 by @dependabot in #1786
  • build(deps): Bump sigstore/cosign-installer from 3.0.5 to 3.1.0 by @dependabot in #1792
  • build(deps): Bump google.golang.org/grpc from 1.56.0 to 1.56.1 by @dependabot in #1793
  • build(deps): Bump sigstore/cosign-installer from 3.1.0 to 3.1.1 by @dependabot in #1798
  • Remove hard-coded versions from integration tests by @wata727 in #1799
  • build(deps): Bump golang.org/x/text from 0.10.0 to 0.11.0 by @dependabot in #1806
  • build(deps): Bump golang.org/x/crypto from 0.10.0 to 0.11.0 by @dependabot in #1804
  • build(deps): Bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 by @dependabot in #1803
  • build(deps): Bump google.golang.org/grpc from 1.56.1 to 1.56.2 by @dependabot in #1805
  • Remove obsoleted PGP public key by @wata727 in #1800
  • Add make release for release automation by @wata727 in #1802
  • build(deps): Bump google.golang.org/grpc from 1.56.2 to 1.57.0 by @dependabot in #1815
  • build(deps): Bump golang.org/x/crypto from 0.11.0 to 0.12.0 by @dependabot in #1820
  • build(deps): Bump golang.org/x/text from 0.11.0 to 0.12.0 by @dependabot in #1821
  • build(deps): Bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 by @dependabot in #1822
  • deps: upgrade to use go1.21 by @chenrui333 in #1823
  • build(deps): Bump github.com/google/uuid from 1.3.0 to 1.3.1 by @dependabot in #1829
  • build(deps): Bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 by @dependabot in #1830

Full Changelog: v0.47.0...v0.48.0

v0.47.0

18 Jun 09:02
Compare
Choose a tag to compare

0.47.0 (2023-06-18)

This release introduces autofix feature. Running tflint --fix will automatically fix issues as possible. Note that not all rules support autofix. In order to support autofix, plugins must be built with SDK v0.17+ and implement autofix.

The bundled Terraform ruleset has been updated to v0.4.0 with autofix support. In other words, for Terraform rules, you can use autofix as it is. See the tflint-ruleset-terraform v0.4.0 changelog for details.

Breaking Changes

  • #1749: plugin: Drop support for plugin SDK v0.12/v0.13 (@wata727)
    • Plugins built using SDKs v0.12/v0.13 are no longer supported. If you get "SDK version is incompatible" error, you need to update the plugin to use SDK v0.14+.
  • #1750 #1781: Bump tflint-plugin-sdk and bundled terraform plugin
    • The SDK has been updated to v0.17.0 and the bundled Terraform plugin to v0.4.0. Terraform ruleset v0.3.0 contains breaking changes. Check the changelog for details.
  • #1779: cmd: Drop support for CLI arguments (@wata727)
    • Argument support has been removed based on the deprecation warning added in v0.46. As of v0.47, it returns an error instead of a warning. See #1687 for details.

Enhancements

  • #1751: plugin: support GitHub Enterprise Server as plugin source (@bendrucker)
  • #1755: Introduce autofix (@wata727)
  • #1773: build(deps): Bump github.com/hashicorp/hcl/v2 from 2.16.2 to 2.17.0
    • TFLint v0.47 host server return cty.Value now supports refinemnet. This is a change that only affects plugin developers. See HCL v2.17.0 changelog for details.
  • #1780: terraform: Add support for Terraform v1.5 (@wata727)
    • Added support for the planttimestamp and strcontains functions.

Chores

  • #1754 #1766: build(deps): Bump sigstore/cosign-installer from 3.0.2 to 3.0.5
  • #1759: build(deps): Bump google.golang.org/grpc from 1.54.0 to 1.55.0
  • #1762: build(deps): Bump alpine from 3.17.3 to 3.18.0
  • #1763: build(deps): Bump golang.org/x/oauth2 from 0.7.0 to 0.8.0
  • #1764: build(deps): Bump golang.org/x/crypto from 0.8.0 to 0.9.0
  • #1767: build(deps): Bump github.com/zclconf/go-cty from 1.13.1 to 1.13.2
  • #1771: fix(install_linux): Update unzip arguments (@alexjurkiewicz)
  • #1772 #1775: build(deps): Bump golangci/golangci-lint-action from 3.4.0 to 3.6.0
  • #1774: build(deps): Bump github.com/hashicorp/go-plugin from 1.4.9 to 1.4.10
  • #1776: build(deps): Bump golang.org/x/text from 0.9.0 to 0.10.0

v0.46.1

22 Apr 09:10
Compare
Choose a tag to compare

0.46.1 (2023-04-22)

BugFixes

Chores

  • #1738: build(deps): Bump sigstore/cosign-installer from 3.0.1 to 3.0.2
  • #1739: build(deps): Bump golang.org/x/crypto from 0.7.0 to 0.8.0
  • #1741: build(deps): Bump golang.org/x/oauth2 from 0.6.0 to 0.7.0
  • #1743: build(deps): Bump github.com/terraform-linters/tflint-plugin-sdk from 0.16.0 to 0.16.1

v0.46.0

08 Apr 15:50
Compare
Choose a tag to compare

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

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

12 Feb 16:06
Compare
Choose a tag to compare

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

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

29 Dec 16:43
Compare
Choose a tag to compare

0.44.1 (2022-12-30)

BugFixes

  • #1635: terraform: Fix path.module when using --chdir/--recursive (@wata727)
  • #1636: cmd: Fix file arguments handling when using --chdir (@wata727)

v0.44.0

26 Dec 14:05
Compare
Choose a tag to compare

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 to tflint --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.
  • #1622 #1629: cmd: Add --recursive option (@wata727 @bendrucker)
    • The --recursive option is an experimental feature. Behavior may change in future versions.
  • #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.

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

19 Nov 09:56
Compare
Choose a tag to compare

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

25 Oct 17:37
Compare
Choose a tag to compare

0.42.2 (2022-10-26)

BugFixes

Chores

  • #1568: build(deps): Bump golangci/golangci-lint-action from 3.2.0 to 3.3.0
  • #1569: build(deps): Bump sigstore/cosign-installer from 2.8.0 to 2.8.1

v0.42.1

24 Oct 16:55
Compare
Choose a tag to compare

0.42.1 (2022-10-25)

BugFixes

  • #1566: terraform: Fix incorrect circular reference detection (@wata727)