Releases: hashicorp/terraform-ls
Releases · hashicorp/terraform-ls
v0.31.0
ENHANCEMENTS:
- Add support for nested expressions and functions (#1237, hcl-lang#232, hcl-lang#203, hcl-lang#199, hcl-lang#186, hcl-lang#185, hcl-lang#184)
- Add support for function signature help in (#1077)
- Fix remote backend tracking in (#1218)
- lsp: Recognise new token type for function names in (#1233)
INTERNAL:
BUG FIXES:
- Reflect
LiteralValue
,Description
&IsDeprecated
in completion/hover (hcl-lang#253) - Fix crash when completing
LiteralType{Type: cty.Tuple}
(hcl-lang#255) - Display
Tuple
hover data on invalid element (hcl-lang#254) - Fix collection of implied declared targets of complex types (hcl-lang#259)
- Collect targets w/ interpolation for
Any
correctly (hcl-lang#257)
v0.31.0-beta
ENHANCEMENTS:
- Add support for nested expressions and functions (#1237, hcl-lang#232, hcl-lang#203, hcl-lang#199, hcl-lang#186, hcl-lang#185, hcl-lang#184, )
- Add support for function signature help in (#1077)
- Fix remote backend tracking in (#1218)
- lsp: Recognise new token type for function names in (#1233)
INTERNAL:
- Add instructions for Kate editor (#1200)
- Add TFC usage detection (#1208)
- build(deps): bump actions/checkout from 3.3.0 to 3.4.0 (#1215)
- build(deps): bump actions/checkout from 3.4.0 to 3.5.0 (#1228)
- build(deps): bump actions/setup-go from 3.5.0 to 4.0.0 (#1214)
- build(deps): bump actions/stale from 7.0.0 to 8.0.0 (#1222)
- build(deps): bump github.com/algolia/algoliasearch-client-go/v3 from 3.26.3 to 3.26.4 (#1198)
- build(deps): bump github.com/algolia/algoliasearch-client-go/v3 from 3.26.4 to 3.26.5 (#1230)
- build(deps): bump github.com/algolia/algoliasearch-client-go/v3 from 3.26.5 to 3.27.0 (#1231)
- build(deps): bump github.com/creachadair/jrpc2 from 0.44.0 to 0.45.0 (#1213)
- build(deps): bump github.com/creachadair/jrpc2 from 0.46.0 to 1.0.0 (#1227)
- build(deps): bump github.com/creachadair/jrpc2 to v0.46.0 (#1217)
- build(deps): bump github.com/hashicorp/hc-install from 0.5.0 to 0.5.1 (#1232)
- build(deps): bump github.com/hashicorp/hcl/v2 from 2.16.1 to 2.16.2 (#1205)
- build(deps): bump github.com/hashicorp/terraform-exec from 0.18.0 to 0.18.1 (#1201)
- build(deps): bump github.com/hashicorp/terraform-json from 0.15.0 to 0.16.0 (#1206)
- build(deps): bump github.com/hashicorp/terraform-registry-address from 0.0.0-20220623143253-7d51757b572c to 0.1.0 (#1196)
- build(deps): bump github.com/hashicorp/terraform-registry-address from 0.1.0 to 0.2.0 (#1226)
- build(deps): bump github.com/otiai10/copy from 1.9.0 to 1.10.0 (#1236)
- build(deps): bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#1199)
- build(deps): bump github.com/vektra/mockery/v2 from 2.20.2 to 2.21.1 (#1202)
- build(deps): bump github.com/vektra/mockery/v2 from 2.21.1 to 2.21.4 (#1204)
- build(deps): bump github.com/vektra/mockery/v2 from 2.21.4 to 2.21.6 (#1207)
- build(deps): bump github.com/vektra/mockery/v2 from 2.21.6 to 2.22.1 (#1209)
- build(deps): bump github.com/vektra/mockery/v2 from 2.22.1 to 2.23.0 (#1219)
- build(deps): bump github.com/vektra/mockery/v2 from 2.23.0 to 2.23.1 (#1221)
- build(deps): bump github.com/vektra/mockery/v2 from 2.23.1 to 2.23.2 (#1235)
- build(deps): bump github.com/zclconf/go-cty from 1.12.1 to 1.13.0 (#1197)
- build(deps): bump github.com/zclconf/go-cty from 1.13.0 to 1.13.1 (#1216)
- build(deps): bump golang.org/x/tools from 0.6.0 to 0.7.0 (#1203)
- build(deps): Bump hcl-lang & terraform-schema to latest revisions (#1237)
v0.30.3
v0.30.2
NOTES / BREAKING CHANGES:
- We have changed our release process: all assets continue to be available from the HashiCorp Releases site and/or via the Releases API, not as GitHub Release assets anymore.
ENHANCEMENTS:
- Parse
optional()
object attribute default values correctly, as introduced in Terraform v1.3 (terraform-schema#184)
BUG FIXES:
- Ignore inaccessible files (such as emacs backup files) (terraform-ls#1172)
- Fix crash when parsing JSON files (introduced in 0.30.0) (hcl-lang#202)
INTERNAL:
- Remove
schema.TupleConsExpr
(hcl-lang#175) - internal/schema: Replace
TupleConsExpr
withSetExpr
(terraform-schema#169) - Use upstreamed HCL typexpr package (terraform-schema#168)
v0.30.1
BUG FIXES:
- Support
dynamic
in theprovisioner
andprovider
blocks (terraform-schema#165) - Fix
dynamic
blockfor_each
description (hcl-lang#164) - Avoid completing static block inside a
dynamic
label (hcl-lang#165) - Fix missing hover for
count
andfor_each
expression (hcl-lang#166) - Fix support of deeper nesting of
dynamic
block (hcl-lang#167) - Change
dynamic
block type to default (hcl-lang#168)
v0.30.0
ENHANCEMENTS:
- Support
count.index
references in blocks withcount
for completion, hover documentation and semantic tokens highlighting (#860, hcl-lang#160) - Support
each.*
references in blocks withfor_each
for completion, hover documentation and semantic tokens highlighting (#861, hcl-lang#162) - Support
self.*
references inprovisioner
,connection
andpostcondition
blocks for completion, hover documentation and semantic tokens highlighting (#859, hcl-lang#163) dynamic
block support, including label and content completion (#530, hcl-lang#154)- Go-to-definition/go-to-references for
count.index
/count
(#1093) - Go-to-definition/go-to-references for
each.*
/for_each
(#1095) - Go-to-definition/go-to-references for
self.*
inprovisioner
,connection
andpostcondition
blocks (#1096) - Remove deprecated backends in Terraform 1.3.0 (terraform-schema#159)
v0.29.3
ENHANCEMENTS:
- schemas: Lazy-load embedded provider schemas (#1071)
- Reduced runtime memory consumption from static ~572MB (representing ~220 providers) to more dynamic depending on providers in use.
For example, no configuration (no provider requirements) should consume around 10MB, indexed folder w/hashicorp/aws
requirement ~70MB. - Reduced launch time from ~ 2 seconds to 1-3 ms.
- Reduced runtime memory consumption from static ~572MB (representing ~220 providers) to more dynamic depending on providers in use.
BUG FIXES:
- fix: Enable IntelliSense for resources & data sources whose name match the provider (e.g.
data
) (#1072) - state: avoid infinite recursion (surfaced as crash with "goroutine stack exceeds 1000000000-byte limit" message) (#1084)
- decoder: fix race condition in terraform-schema (surfaced as crash with "fatal error: concurrent map read and map write" message) (#1086)
v0.29.2
BUG FIXES:
- fix: Improve IntelliSense accuracy by tracking provider schema versions (accidentally removed in 0.29.0) (#1060)
- Don't query the Terraform Registry for module sources starting with
.
(#1062) - fix race condition in schema merging (terraform-schema#137)
INTERNAL:
- Use Go 1.19 (previously 1.17) to build the server (#1046)
v0.29.1
v0.29.0
NOTES / BREAKING CHANGES:
- settings:
rootModulePaths
option was deprecated and is ignored. Users should instead leverage the workspace LSP API and add the folder to a workspace, if they wish it to be indexed (#1003) - settings:
excludeModulePaths
option was deprecated in favour ofindexing.ignorePaths
.excludeModulePaths
is now ignored (#1003) - settings:
ignoreDirectoryNames
option was deprecated in favour ofindexing.ignoreDirectoryNames
.ignoreDirectoryNames
is now ignored (#1003, #1010) - settings:
terraformExecPath
option was deprecated in favour ofterraform.path
. Old option is now ignored. (#1011) - settings:
terraformExecTimeout
option was deprecated in favour ofterraform.timeout
. Old option is now ignored. (#1011) - settings:
terraformLogFilePath
option was deprecated in favour ofterraform.logFilePath
. Old option is now ignored. (#1011) - cmd/serve: Previously deprecated
-tf-exec*
CLI flags were removed (-tf-exec
,-tf-exec-timeout
and-tf-log-file
) in favour of LSP-basedterraform.*
configuration options (#1012)
ENHANCEMENTS:
- Replace internal watcher (used for watching changes in installed plugins and modules) with LSP dynamic capability registration &
workspace/didChangeWatchedFiles
. This should leave to improved performance in most cases. (#953) - Provide completion, hover and docs links for uninitialized Registry modules (#924)
- Provide basic IntelliSense (except for diagnostics) for hidden
*.tf
files (#971) - deps: bump terraform-schema to introduce v1.1
terraform
cloud
block (terraform-schema#117) - deps: bump terraform-schema to introduce v1.1
moved
block (terraform-schema#121) - deps: bump terraform-schema to introduce v1.2
lifecycle
conditions (terraform-schema#115) - deps: bump terraform-schema to introduce v1.2
lifecycle
replace_triggered_by
(terraform-schema#123) - Use
module
declarations from parsed configuration as source of truth formodule.calls
(#987) - walker: Index uninitialized modules (#997)
- Recognize inputs and outputs of uninitialized local modules (#598)
- Enable go to module output declaration from reference (#1007)
- settings: New option
indexing.ignorePaths
was introduced (#1003, #1010) - Introduce
module.terraform
custom LSP command to expose Terraform requirements & version (#1016) - Avoid obtaining schema via Terraform CLI if the same version is already cached (based on plugin lock file) (#1014)
- Avoid getting version via
terraform version
during background indexing and pick relevant IntelliSense data based onrequired_version
constraint (#1027) - Provide 0.12 based IntelliSense for any <0.12 Terraform versions (#1027)
- Complete module source and version attributes for local and registry modules (#1024)
BUG FIXES:
- handlers/command: Return partially parsed metadata from
module.providers
(#951) - fix: Avoid ignoring hidden
*.tfvars
files (#968) - fix: Avoid crash on invalid URIs (#969)
- fix: Avoid crash on invalid provider name (#1030)
INTERNAL:
- job: introduce explicit priority for jobs (#977)
- main: allow build version metadata to be set (#945)
- deps: switch to the new minimal
terraform-registry-address
API (#949) - deps: bump LSP structs to match gopls 0.8.4 (#947)
- deps: bump github.com/hashicorp/terraform-exec from 0.16.1 to 0.17.0 (#963)
- deps: bump github.com/hashicorp/go-version from 1.5.0 to 1.6.0 (#979)
- indexer: refactor & improve/cleanup error handling (#988)
- indexer/walker: Avoid running jobs where not needed (#1006)