diff --git a/changelog.md b/changelog.md index 12e2fc3..d8b2057 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,25 @@ # Changelog +## 0.1.2 + +### Features +* Completions and docs for `coroutine`, `debug`, `io`, `math`, `os`, `string`, `table`, `utf8` and their fields. +* Global metadata can follow locals: With `(local p print)`, looking up `p` will show `print`'s information. +* New lint for erroneous calls to (values) that are in a position that would get truncated immediately. +* Upgrade to Fennel 1.4.2 + +### Bug Fixes +* `(-?> x)` and similar macros no longer give a warning (even in fennel 1.4.1 before my -?> patch landed) +* Fixed off-by-one when measuring the cursor position on a multisym. For example, `table|.insert` (where `|` is the cursor) will correctly give information about `table` instead of `insert`. +* Can give completions in the contexts "(let [x " and "(if ", which previously failed to compile. +* Fields added to a table via `(fn t.field [] ...)` now properly appear in completions +* `(include)` is now treated like `(require)` + +### Misc +* Switched testing framework to faith +* Tests abstract out the filesystem +* Tests use the "|" character to mark the cursor, instead of manually specifying coordinates + ## 0.1.1 ### Features diff --git a/rockspecs/fennel-ls-0.1.2-1.rockspec b/rockspecs/fennel-ls-0.1.2-1.rockspec new file mode 100644 index 0000000..d36d5af --- /dev/null +++ b/rockspecs/fennel-ls-0.1.2-1.rockspec @@ -0,0 +1,40 @@ +package = "fennel-ls" +version = "0.1.2-1" +source = { + url = "https://git.sr.ht/~xerool/fennel-ls/archive/0.1.2.tar.gz", + dir = 'fennel-ls-0.1.2', +} +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.2", +} +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"} }, +}