LaurenceWarne / cfn-lsp-extra

An Experimental Cloudformation language server
MIT License
21 stars 5 forks source link

Top level template section Globals is not valid on neovim #3

Closed mbarneyjr closed 1 year ago

mbarneyjr commented 1 year ago

I started using this with neovim recently and it doesn't seem to validate correctly with SAM templates. It complains about the Globals section, as well as other SAM-specific issues (like ApiGatewayDefaultStage not being found as a resource or parameter).

My nvim configuration can be found here, particularly this file.

I am still pretty new to neovim/LSPs in general so it's not super unlikely that I'm missing something.

Thanks for the really cool tool, autocomplete in neovim for cloudformation is awesome!

Neovim environment:

$ nvim --version
NVIM v0.8.3
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by mbarney@T10171

Features: +acl +iconv +tui
LaurenceWarne commented 1 year ago

Thanks for the report! I can reproduce this, cfn-lsp-extra gets its lints from cfn-lint and I think what's happening is that we're not asking the runner to transform the SAM template to Cloudformation (funnily enough some features like resource type recognition work anyway :smile: ).

I've pushed a fix in https://github.com/LaurenceWarne/cfn-lsp-extra/commit/fbc8a906621bf7dfd2a52f3f8df1519f24c779a0, which works for me, would you be able to confirm this works for you? To install from master, I think this should work:

pipx install git+https://github.com/laurencewarne/cfn-lsp-extra.git@$(git ls-remote git@github.com:laurencewarne/cfn-lsp-extra.git | head -1 | cut -f1) --force

Another way would be to clone, and then:

pipx install . --force

Then to be sure you've on the most recent commit cfn-lsp-extra --version should give 0.4.3.

Thanks!

mbarneyjr commented 1 year ago

That did the trick, thanks!

LaurenceWarne commented 1 year ago

Great! I've just cut off a new release with this change :slightly_smiling_face: