mason-org/mason-lspconfig.nvim

terraformls completion is not working

Open

#224 ouverte le 12 mai 2023

Voir sur GitHub
 (10 commentaires) (3 réactions) (0 assignés)Lua (223 forks)batch import
help wantedserver-issue

Métriques du dépôt

Stars
 (3 886 stars)
Métriques de merge PR
 (Merge moyen 1m) (3 PRs mergées en 30 j)

Description

Problem description

Terraform completion using terraformls is not working when using the Mason installed binary on Apple Silicon Mac. The setup is pretty simple and standard, nvim-cmp, nvim-lspconfig, mason, and mason-lspconfig. I have tried several terraformls versions, 0.29.3, 0.30.3, 0.31.1, 0.31.2, all exhibit the same behavior.

The log is full of stderr messages, but from what I understand this is related to https://github.com/hashicorp/terraform-ls/issues/1271.

As a temporary fix, I installed terraform-ls using Homebrew, and overwrote cmd: https://github.com/liviudm/dotfiles/blob/main/.config/lvim/lua/plugins/lsp.lua#LL80C21-L80C21. After this change, the completion works as expected

Why do you think this is an issue with mason-lspconfig.nvim?

Mason fetches the binaries from Hashicorp, while Homebrew compiles it. This is the only difference I was able to find.

Neovim version (>= 0.7)

NVIM v0.9.0 Build type: Release LuaJIT 2.1.0-beta3

Operating system/version

Darwin liviudm.local 22.4.0 Darwin Kernel Version 22.4.0: Mon Mar 6 20:59:58 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T6020 arm64

I've manually reviewed the Nvim LPS client log (:LspLog) to find potential errors

  • Yes

I've recently downloaded the latest plugin version of mason.nvim, mason-lspconfig.nvim, and nvim-lspconfig

  • Yes

Affected language servers

terraformls

Steps to reproduce

Enable terraformls and open any *.tf file.

Actual behavior

LSP Completion and diagnostics is not working

Expected behavior

Completion and diagnostic messages should work

LspInfo

Press q or <Esc> to close this window. Press <Tab> to view server doc.
 
 Language client log: /Users/liviudm/.local/state/lvim/lsp.log
 Detected filetype:   terraform
 
 1 client(s) attached to this buffer: 
 
 Client: terraformls (id: 1, bufnr: [1])
 	filetypes:       terraform, terraform-vars
 	autostart:       true
 	root directory:  /Users/liviudm/projects/personal/terraform/terraform-eks-base
 	cmd:             /Users/liviudm/.local/share/lvim/mason/bin/terraform-ls serve
 
 Configured servers list: terraformls, yamlls, bashls, jsonls, lua_ls

LspLog

No response

Healthcheck

==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.0.1
- OK PATH: prepend
- OK Providers: 
  mason.providers.registry-api
  mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2023-05-12-grey-stem` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.21.4 built on darwin22.4.0.`
- OK curl: `curl 7.87.0 (x86_64-apple-darwin22.0) libcurl/7.87.0 (SecureTransport) LibreSSL/3.3.6 zlib/1.2.11 nghttp2/1.51.0`
- OK gzip: `Apple gzip 403.100.6`
- OK tar: `bsdtar 3.5.3 - libarchive 3.5.3 zlib/1.2.11 liblzma/5.0.5 bz2lib/1.0.8 `
- OK bash: `GNU bash, version 3.2.57(1)-release (arm64-apple-darwin22)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- OK Go: `go version go1.20.4 darwin/arm64`
- WARNING Composer: not available
  - ADVICE:
    - spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
  - ADVICE:
    - spawn: php failed with exit code - and signal -. php is not executable
- OK cargo: `cargo 1.69.0 (6e9a83356 2023-04-12)`
- OK Ruby: `ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin22]`
- WARNING javac: not available
  - ADVICE:
    - spawn: javac failed with exit code 1 and signal 0. The operation couldn’t be completed. Unable to locate a Java Runtime.
      Please visit http://www.java.com for information on installing Java.
      
- WARNING java: not available
  - ADVICE:
    - spawn: java failed with exit code 1 and signal 0. The operation couldn’t be completed. Unable to locate a Java Runtime.
      Please visit http://www.java.com for information on installing Java.
      
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK python3: `Python 3.11.3`
- OK node: `v20.1.0`
- OK luarocks: `/opt/homebrew/bin/luarocks 3.9.2`
- OK RubyGem: `3.0.3.1`
- OK pip3: `pip 23.0.1 from /opt/homebrew/lib/python3.11/site-packages/pip (python 3.11)`
- OK npm: `9.6.4`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 60. Limit: 60. Reset: Fri May 12 21:52:11 2023.
  Install and authenticate via gh-cli to increase rate limit.

Screenshots or recordings

No response

Guide contributeur