Releases: terraform-linters/tflint-plugin-sdk
v0.15.0
0.15.0 (2022-12-26)
Enhancements
- #224: Add GetOriginalwd method
Chores
- #214: Bump github.com/hashicorp/hcl/v2 from 2.14.1 to 2.15.0
- #219: Bump google.golang.org/grpc from 1.50.1 to 1.51.0
- #220: Bump github.com/hashicorp/go-plugin from 1.4.5 to 1.4.8
- #221: Bump github.com/go-test/deep from 1.0.8 to 1.1.0
- #222: Bump github.com/hashicorp/go-hclog from 1.3.1 to 1.4.0
- #223: Bump golang.org/x/tools from 0.1.12 to 0.4.0
v0.14.0
0.14.0 (2022-10-23)
This release includes several new features for plugin developers. Introduced the Schema Mode to get all attributes, and added an option to set constraints on compatible TFLint versions. These may not work with older TFLint versions, so set version constraints as needed.
The evaluation of each.* and count.* added in TFLint v0.42 requires plugins built with this version. In earlier versions, these values are always unknown.
IncludeNotCreated in GetModuleContentOption has been deprecated. Use ExpandModeNone instead. The old option will still work, but will be removed in a future version.
Enhancements
- #201: hclext: Add schema mode to BodySchema
- This is available only for TFLint v0.42+. Schema mode is ignored in earlier versions. Set
>= 0.42.0as a version constraint if you cannot tolerate being ignored.
- This is available only for TFLint v0.42+. Schema mode is ignored in earlier versions. Set
- #202: host2plugin: Allow plugins to set host version constraints
- This is available only for TFLint v0.42+. Version constraints are ignored in earlier versions. Note that version constraints may not work in v0.40, v0.41.
- #203: host2plugin: Add SDKVersion
- #205: hclext: Add hclext.BoundExpr
- This is necessary due to the evaluation of
each.*andcount.*added in TFLint v0.42. Plugins not built with SDK v0.14+ will always evaluate to unknown values.
- This is necessary due to the evaluation of
- #206: hclext: Add Copy() to structures
- #207: hclext: Add WalkAttribute to hclext.BodyContent
- #208: plugin2host: Add ExpandMode to GetModuleContentOption
IncludeNotCreatedis deprecated. UseExpandModeNoneinstread.
Chores
v0.13.0
v0.12.0
0.12.0 (2022-09-07)
This release adds GetModulePath() API. This is a breaking change and all plugins need to be built using this version in order to work with TFLint v0.40+.
See also terraform-linters/tflint-ruleset-template#62 for an example of upgrading the SDK.
Breaking Changes
Enhancements
- #169: hclext: Add hclext.Blocks's OfType helper
- #170: hclext: Add AsNative helper
- #172: tflint: Add GetProviderContent helper
- #174: tflint: Add tflint.ErrSensitive
- #177: helper: Add support for JSON syntax in TestRunner
- #178: Allow calling DecodeRuleConfig without rule config
- #180: terraform: Add
lang.ReferencesInExpr - #181: tflint: Add WalkExpressions function
BugFixes
- #190: logger: Do not set location offset in go-plugin
Chores
- #161 #182: Bump github.com/hashicorp/go-plugin from 1.4.3 to 1.4.5
- #166 #194: Bump github.com/hashicorp/hcl/v2 from 2.12.0 to 2.14.0
- #168 #187: Bump google.golang.org/grpc from 1.46.0 to 1.49.0
- #173 #195: Bump github.com/hashicorp/go-hclog from 1.2.0 to 1.3.0
- #175: Bump google.golang.org/protobuf from 1.28.0 to 1.28.1
- #176: build: go 1.19
- #179: build: Use
go-version-fileinstead ofgo-version - #183: Bump golang.org/x/tools from 0.1.11 to 0.1.12
- #184: Bump github.com/go-test/deep from 1.0.3 to 1.0.8
- #185: Remove unused ruleset function
- #186: Bump github.com/zclconf/go-cty from 1.10.0 to 1.11.0
v0.11.0
0.11.0 (2022-05-05)
Enhancements
- #160: tflint: Add IncludeNotCreated option to GetModuleContent
Chores
- #150: Bump google.golang.org/protobuf from 1.27.1 to 1.28.0
- #154: Bump actions/setup-go from 2 to 3
- #155: Bump google.golang.org/grpc from 1.45.0 to 1.46.0
- #156: Bump github.com/hashicorp/hcl/v2 from 2.11.1 to 2.12.0
- #157: plugin2host: Return sources instead of
*hcl.Filein GetRuleConfigContent - #158: Bump github.com/google/go-cmp from 0.5.7 to 0.5.8
- #159: Bump github/codeql-action from 1 to 2
v0.10.1
v0.10.0
0.10.0 (2022-03-27)
This release contains a major update to the plugin system. Previously, this SDK uses traditional net/rpc + gob, but now it uses gRPC + Protocol Buffers.
The API also contains many incompatible changes. See terraform-linters/tflint-ruleset-template#48 for how to migrate. TFLint v0.35+ is required to work with new plugin systems.
Breaking Changes
Chores
- #133 #145: build: Go 1.18
- #134: Bump github.com/hashicorp/go-plugin from 1.4.2 to 1.4.3
- #136: Bump github.com/zclconf/go-cty from 1.9.0 to 1.10.0
- #138: Bump github.com/hashicorp/hcl/v2 from 2.10.0 to 2.11.1
- #139: Bump github.com/hashicorp/go-version from 1.3.0 to 1.4.0
- #141: Bump github.com/google/go-cmp from 0.5.6 to 0.5.7
- #143: Bump actions/checkout from 2 to 3
- #144: Bump github.com/hashicorp/go-hclog from 0.16.2 to 1.2.0
v0.9.1
v0.9.0
0.9.0 (2021-07-03)
This release adds Files() API. This is a breaking change and all plugins need to be built using this version in order to work with TFLint v0.30+.
See also terraform-linters/tflint-ruleset-template#37 for an example of upgrading the SDK.
Breaking Changes
Chores
- #109: Bump github.com/hashicorp/go-version from 1.2.1 to 1.3.0
- #112: Bump github.com/hashicorp/hcl/v2 from 2.9.1 to 2.10.0
- #117: Bump github.com/hashicorp/go-hclog from 0.15.0 to 0.16.1
- #120: Bump github.com/google/go-cmp from 0.5.5 to 0.5.6
- #121: Bump github.com/hashicorp/go-plugin from 1.4.0 to 1.4.2
- #123: Bump github.com/zclconf/go-cty from 1.8.1 to 1.8.4