From 9e4ca548e3d200cf6c40e23cb5a92b979ef3f38a Mon Sep 17 00:00:00 2001 From: XeroOl Date: Mon, 19 Feb 2024 23:45:09 -0600 Subject: [PATCH] Release 0.1.1 === Features === * Add [Nix(OS)](https://nixos.org) support * Add LuaRocks build support * Upgrade to Fennel 1.4.1, the first release of fennel that is compatible with fennel-ls without patches. * Added a lint for operators with no arguments, such as (+) * `textEdit` field is present in completions === Bug Fixes === * Fix bug with renaming variables in method calls * Lots of work to improve multival tracking * --check gives a nonzero exit code when lints are found --- README.md | 8 ++++++ changelog.md | 13 +++++++-- rockspecs/fennel-ls-0.1.1-1.rockspec | 40 ++++++++++++++++++++++++++++ rockspecs/fennel-ls-scm-1.rockspec | 39 +++++++++++++++++++++++++++ 4 files changed, 98 insertions(+), 2 deletions(-) create mode 100644 rockspecs/fennel-ls-0.1.1-1.rockspec create mode 100644 rockspecs/fennel-ls-scm-1.rockspec diff --git a/README.md b/README.md index e7d59d6..16de087 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,14 @@ For now, the only way to install is to build from source, but I plan on adding f If you are using NixOS, you may use the included `/flake.nix` or `/default.nix` to to build the language server configure a development environment. +### LuaRocks + +If you are specifically the Neovim plugin `mason.nvim`, or have some other +reason to support building on Windows, you may want to use the command: +```sh +luarocks install fennel-ls --tree /path/to/your/new/luarocks/tree +``` + ## Set Up Your Editor Once you've installed the binary somewhere on your computer, the next step is to set up your text editor! Each editor has a different way of doing it. diff --git a/changelog.md b/changelog.md index 033fdaa..12e2fc3 100644 --- a/changelog.md +++ b/changelog.md @@ -1,10 +1,19 @@ # Changelog +## 0.1.1 + +### Features * Add [Nix(OS)](https://nixos.org) support -* Fix bug with renaming vars -* Improve multival tracking +* Add LuaRocks build support +* Upgrade to Fennel 1.4.1, the first release of fennel that is compatible with fennel-ls without patches. +* Added a lint for operators with no arguments, such as (+) * `textEdit` field is present in completions +### Bug Fixes +* Fix bug with renaming variables in method calls +* Lots of work to improve multival tracking +* --check gives a nonzero exit code when lints are found + ## 0.1.0 ### Initial Features diff --git a/rockspecs/fennel-ls-0.1.1-1.rockspec b/rockspecs/fennel-ls-0.1.1-1.rockspec new file mode 100644 index 0000000..36bd7e9 --- /dev/null +++ b/rockspecs/fennel-ls-0.1.1-1.rockspec @@ -0,0 +1,40 @@ +package = "fennel-ls" +version = "0.1.1-1" +source = { + url = "https://git.sr.ht/~xerool/fennel-ls/archive/0.1.1.tar.gz", + dir = 'fennel-ls-0.1.1', +} +description = { + summary = "A language server that analyzes Fennel, a lisp that compiles to Lua", + detailed = "LSP magic for Fennel", + homepage = "https://sr.ht/~xerool/fennel-ls", + license = "MIT", +} +dependencies = { + "lua >= 5.1", + "luarocks-build-fennel >= 0.1", + "fennel >= 1.4.1", +} +build = { + type = "fennel", + + modules = { + ["fennel-ls"] = "src/fennel-ls.fnl", + ["fennel-ls.compiler"] = "src/fennel-ls/compiler.fnl", + ["fennel-ls.diagnostics"] = "src/fennel-ls/diagnostics.fnl", + ["fennel-ls.dispatch"] = "src/fennel-ls/dispatch.fnl", + ["fennel-ls.docs"] = "src/fennel-ls/docs.fnl", + ["fennel-ls.docs.lua-54"] = "src/fennel-ls/docs/lua54.fnl", + ["fennel-ls.formatter"] = "src/fennel-ls/formatter.fnl", + ["fennel-ls.handlers"] = "src/fennel-ls/handlers.fnl", + ["fennel-ls.json-rpc"] = "src/fennel-ls/json-rpc.fnl", + ["fennel-ls.json.json"] = "src/fennel-ls/json/json.lua", + ["fennel-ls.language"] = "src/fennel-ls/language.fnl", + ["fennel-ls.message"] = "src/fennel-ls/message.fnl", + ["fennel-ls.searcher"] = "src/fennel-ls/searcher.fnl", + ["fennel-ls.state"] = "src/fennel-ls/state.fnl", + ["fennel-ls.utils"] = "src/fennel-ls/utils.fnl", + }, + + install = { bin = {["fennel-ls"] = "src/fennel-ls.fnl"} }, +} diff --git a/rockspecs/fennel-ls-scm-1.rockspec b/rockspecs/fennel-ls-scm-1.rockspec new file mode 100644 index 0000000..72c0494 --- /dev/null +++ b/rockspecs/fennel-ls-scm-1.rockspec @@ -0,0 +1,39 @@ +package = "fennel-ls" +version = "scm-1" +source = { + url = "git+https://git.sr.ht/~xerool/fennel-ls" +} +description = { + summary = "A language server that analyzes Fennel, a lisp that compiles to Lua", + detailed = "LSP magic for Fennel", + homepage = "https://sr.ht/~xerool/fennel-ls", + license = "MIT", +} +dependencies = { + "lua >= 5.1", + "luarocks-build-fennel >= 0.1", + "fennel >= 1.4.1", +} +build = { + type = "fennel", + + modules = { + ["fennel-ls"] = "src/fennel-ls.fnl", + ["fennel-ls.compiler"] = "src/fennel-ls/compiler.fnl", + ["fennel-ls.diagnostics"] = "src/fennel-ls/diagnostics.fnl", + ["fennel-ls.dispatch"] = "src/fennel-ls/dispatch.fnl", + ["fennel-ls.docs"] = "src/fennel-ls/docs.fnl", + ["fennel-ls.docs.lua-54"] = "src/fennel-ls/docs/lua54.fnl", + ["fennel-ls.formatter"] = "src/fennel-ls/formatter.fnl", + ["fennel-ls.handlers"] = "src/fennel-ls/handlers.fnl", + ["fennel-ls.json-rpc"] = "src/fennel-ls/json-rpc.fnl", + ["fennel-ls.json.json"] = "src/fennel-ls/json/json.lua", + ["fennel-ls.language"] = "src/fennel-ls/language.fnl", + ["fennel-ls.message"] = "src/fennel-ls/message.fnl", + ["fennel-ls.searcher"] = "src/fennel-ls/searcher.fnl", + ["fennel-ls.state"] = "src/fennel-ls/state.fnl", + ["fennel-ls.utils"] = "src/fennel-ls/utils.fnl", + }, + + install = { bin = {["fennel-ls"] = "src/fennel-ls.fnl"} }, +}