Commit Graph

203 Commits

Author SHA1 Message Date
XeroOl
e47ee55784 shuffle around how encoding works in the tests 2024-03-28 22:38:01 -05:00
XeroOl
c92ea1c3ca fix recovery from empty () call, because it didn't work 2024-03-28 22:37:10 -05:00
XeroOl
a1c4e84910 recovery from empty () call 2024-03-26 14:12:57 -05:00
XeroOl
7c81ffcbb3 First attempt at code actions, no tests yet 2024-03-26 14:12:34 -05:00
XeroOl
ca2dbf9237 let me hide keys using mt.__json_exclude_keys 2024-03-26 13:00:57 -05:00
XeroOl
c79c80cb41 fix the path with --check 2024-03-26 12:58:06 -05:00
XeroOl
549e240787 fixed links in readme 2024-03-23 20:24:52 -05:00
XeroOl
2f62761e37 unknown module in (include) doesn't propagate errors 2024-03-22 12:30:08 -05:00
XeroOl
cc05d7089f final attempt at fixing builds.sr.ht 2024-03-04 00:38:47 -06:00
XeroOl
80d0e297a1 more likely pass builds.sr.ht tests 2024-03-04 00:36:53 -06:00
XeroOl
65ea473197 new rockspec to make the luarocks rock work 2024-03-04 00:30:06 -06:00
XeroOl
146c994991 Release 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
2024-03-03 23:26:04 -06:00
XeroOl
aca22dd755 update to Fennel 1.4.2 2024-03-03 23:14:47 -06:00
XeroOl
888689a3a1 Make tests pass on old lua versions 2024-03-03 23:14:22 -06:00
XeroOl
f14d91b9c4
add test for hover over modules 2024-03-03 23:03:31 -06:00
XeroOl
24dc75eacc
remove the rockspec, it shouldn't be here 2024-03-03 17:33:47 -06:00
XeroOl
c0e5a431ff fix ...; -> ... typo in docs 2024-03-02 20:30:18 -06:00
XeroOl
1b3a8b2ae3 fix makefile 2024-03-02 20:27:32 -06:00
XeroOl
d198db0414 Fill out the last docs 2024-03-02 20:20:07 -06:00
XeroOl
0a766c6425 Finally, documentation for table.insert 2024-03-02 20:12:27 -06:00
XeroOl
308f7d9930 fix broken test 2024-03-02 10:55:15 -06:00
XeroOl
1eb4a770dd Make the multisym splitter tiebreak the right way 2024-03-01 21:36:00 -06:00
XeroOl
cb8dc29bed Analyze (include) the same way as (require) 2024-03-01 17:37:32 -06:00
XeroOl
be997dc7fb add diagnostic test for unknown module field 2024-03-01 17:32:51 -06:00
XeroOl
0dd9c0ff65 improved formatting for destructure 2024-03-01 17:29:01 -06:00
XeroOl
cab3bbc49d remove the dummy test project files 2024-03-01 17:01:10 -06:00
XeroOl
25375715c7 Restore hovering to globals 2024-03-01 16:48:07 -06:00
XeroOl
a2f233576e Change readme to reflect faith.fnl tests, and more diagnostics 2024-03-01 16:42:14 -06:00
XeroOl
66bcfc65e5 fix completions for M style modules 2024-03-01 16:39:46 -06:00
XeroOl
45ab692db4 don't warn for symbols hidden in macros 2024-03-01 14:52:23 -06:00
XeroOl
284983657f continue compilation in broken let statements 2024-03-01 14:51:18 -06:00
XeroOl
186c388344 Change tests to faith 2024-03-01 14:43:26 -06:00
XeroOl
418e04edff fix tests to work again 2024-02-24 00:00:33 -06:00
XeroOl
cf794d4934 Flag that fennel-ls supports 1.4.2 2024-02-23 23:52:45 -06:00
XeroOl
a7d6122670 Fix completion problem in (if) conditions with no body 2024-02-23 23:52:27 -06:00
XeroOl
f54ddc6e08 luarocks garbage 2024-02-23 14:15:38 -06:00
XeroOl
44805cd675 Add lint for (values) in non-tail position of a call 2024-02-23 12:25:51 -06:00
XeroOl
9e4ca548e3 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
2024-02-20 00:05:41 -06:00
XeroOl
7588655b3e Update Fennel to 1.4.1 2024-02-19 23:32:05 -06:00
grenewode
112132cc5a feat: add nix(os) packaging &development support
* Adds `/flake.nix`, which allows the package to be installed & developed
  easily by most NixOS users.
* Adds `/default.nix`, which is an older way that some Nix(OS) users
  may expect software to be packaged.
* Adds `/nix/**/*.nix`, which defines various additional helpers used by
  `/flake.nix` and `/default.nix`.
* Updates `.gitignore` to include `/result`, which is the default output
  location when the package is built using

  `nix flake build .` or `nix-build .`
2024-02-19 23:14:52 -06:00
XeroOl
41adfc7099 Add more ops to diagnostics.fnl 2024-02-19 23:02:25 -06:00
XeroOl
7e1bde8d64 Readme changes 2024-02-19 22:56:00 -06:00
XeroOl
6152bed8a6 Move json dependency to fennel-ls/json, to represent that it's a modified version 2024-02-19 21:32:38 -06:00
XeroOl
130f96a4ca Small changes to the lint instructions 2024-02-18 16:26:29 -06:00
XeroOl
5c19cb3a83 Instructions for creating lint rules 2024-02-18 16:08:23 -06:00
XeroOl
647421f21b clean up diagnostics 2024-02-18 16:03:13 -06:00
XeroOl
bc31279f41 Refactoring diagnostics 2024-02-17 23:51:34 -06:00
XeroOl
33a412e299 Lint for any call to any op with no arguments 2024-02-17 22:50:23 -06:00
XeroOl
67b1fbfbef minor microoptimizations 2024-02-17 22:38:25 -06:00
XeroOl
21500707de updated changelog and fixed lint 2024-02-16 23:29:50 -06:00