Commit Graph

485 Commits

Author SHA1 Message Date
XeroOl
ea826576e3 clean up some documentation and code 2025-07-17 14:43:53 -05:00
XeroOl
5a2e6ef091 fix ci and add more changelog 2025-07-16 22:50:18 -05:00
XeroOl
1c3d7fbe21 make the completion tests run faster
performance is starting to bother me, but I've made completions faster (in tests).
2025-07-16 02:05:31 -05:00
XeroOl
8811454456 split mismatched-argument-count lint into not-enough-arguments and too-many-arguments 2025-07-15 22:56:20 -05:00
XeroOl
4671d50234 new lint invalid-flsproject-settings, and completely rewrite the way settings get checked 2025-07-15 00:57:06 -05:00
XeroOl
c0a740461b move documentation check to later 2025-07-14 22:56:49 -05:00
XeroOl
20b9381eda add a fix to pcall docs in 5.1 2025-07-14 22:53:50 -05:00
XeroOl
c5f36ac813 clean up documentation strings 2025-07-14 01:14:31 -05:00
XeroOl
b0760a2aad stop tracking doc/lints.md 2025-07-13 13:05:50 -05:00
XeroOl
ff601e4c17 docs/lints.md is now a generated file. maybe I shouldn't keep it tracked anymore, lol 2025-07-12 21:40:44 -05:00
XeroOl
dbc596d10f add stuff to changelog 2025-07-12 20:21:15 -05:00
XeroOl
3ce8cb9157 add lints to changelog 2025-07-12 16:44:32 -05:00
XeroOl
722a3a6089 make selflint now covers tests 2025-07-12 16:11:51 -05:00
XeroOl
d4c24b00f4 duplicate-table-keys lint 2025-07-12 16:11:36 -05:00
XeroOl
d219cfffcb clean up some lint documentation 2025-07-12 16:02:21 -05:00
XeroOl
a54745c581 make the arg comparator even more potent 2025-07-12 14:00:11 -05:00
XeroOl
561f199505 hardcode in some argument counting exceptions 2025-07-11 23:39:01 -05:00
XeroOl
5143310b90 introduce mismatched-argument-count lint 2025-07-11 19:16:06 -05:00
XeroOl
772d59fff1 more changes to the linting system 2025-07-11 18:22:16 -05:00
XeroOl
b4d2683c33 yet another lint refactor 2025-07-11 16:25:54 -05:00
XeroOl
7b215e15e8 fix completions in comments and strings, and more reliable binding completions 2025-07-11 14:06:33 -05:00
XeroOl
28e20f74cb better completions in destructure bindings 2025-07-08 23:01:11 -05:00
XeroOl
b7e497228f completions for "true" "false" and "nil" 2025-07-08 21:08:12 -05:00
XeroOl
e17ecef292 macroexpansion feature for hover and code action 2025-07-08 20:49:35 -05:00
XeroOl
3855e59cbf simplify dependencies and docs handling 2025-07-08 19:40:48 -05:00
XeroOl
777083f12f fix warnings and stack issue 2025-07-08 19:10:11 -05:00
Phil Hagelberg
f52962befc Allow FENNELFLAGS to be overridden in makefile. 2025-07-04 19:18:50 -07:00
XeroOl
7750afba4e change the CI to run the tests before doing linting 2025-07-02 22:41:11 -05:00
XeroOl
1e8784a55a rework hovering 2025-07-02 22:37:02 -05:00
XeroOl
0641b1b098 simplify completions 2025-07-02 19:11:10 -05:00
XeroOl
ad136b00ec use ? line numbers when position is unknown in --lint
I only did this for compile errors, not parse errors or lint errors.
2025-07-01 00:00:26 -05:00
XeroOl
e2e020e3ba slightly better hashfn support 2025-06-28 19:35:39 -05:00
XeroOl
67663d8271 simplify search api 2025-06-28 17:47:51 -05:00
XeroOl
6826c7584d maintenance of makefile and tools 2025-06-28 00:47:15 -05:00
XeroOl
264719047a bump bundled dkjson to latest 2.8 2025-06-27 23:47:16 -05:00
Phil Hagelberg
ac2ce4d8f2 Fix linting example. 2025-06-27 14:02:38 -07:00
XeroOl
dca991eb2f clean up formatter code
? only on optional fields, instead of randomly.
also, don't use the variable name `symbol` for things that aren't
fennel.sym?

remove message.array entirely: dkjson defaults to [] not {} on empty
tables.
2025-06-25 01:12:00 -05:00
XeroOl
01b03de17f error parameter hotfix, but better 2025-06-25 00:55:07 -05:00
XeroOl
fc57612fea clean up quickfix lint title system 2025-06-25 00:52:46 -05:00
XeroOl
623700e1a2 Revert "add an empty parameters list in case of error"
This reverts commit e2b26c5cff.
2025-06-24 12:11:03 -05:00
XeroOl
e2b26c5cff add an empty parameters list in case of error 2025-06-24 11:23:50 -05:00
XeroOl
6f946c76ea add lint that (let [] ...) should be (do ...) 2025-06-19 12:56:29 -05:00
XeroOl
e355534d8d Release 0.2.1
= 0.2.1 =

== Bug Fixes ==
* Fixed a path issue finding external docsets
* Fixed failing tests in 0.2.0
2025-06-06 12:44:08 -05:00
XeroOl
c644ce54ab fix path-join again, for old lua versions 2025-06-06 12:16:58 -05:00
XeroOl
cb9f09ba84 hotfix issue with path join
Not sure why I didn't test these changes, but the path-join function
didn't actually work fully as expected.
Now, various edge cases have been ironed out:
"/path" + "/foo/bar" -> "/foo/bar", instead of "/path/foo/bar"
"" + "code.fnl" -> "code.fnl", instead of "/code.fnl"
2025-06-06 11:43:49 -05:00
Phil Hagelberg
552b03b983 Release 0.2.0 2025-06-03 21:24:42 -07:00
XeroOl
456acb4e15 be less picky about XDG_DATA_HOME and HOME environment variable trailing slash
In fennel-ls.utils, there's a path-join function that has the logic
for joining paths and putting a slash in the middle if it's not already
there.
2025-06-02 22:49:01 -05:00
XeroOl
13415a97d3 minor edits to the lint descriptions
I hope these edits make the lint descriptions a bit clearer, but I'm not
sure
2025-06-02 22:41:53 -05:00
XeroOl
055f9f9811 rename completions to completion internally 2025-06-02 22:36:11 -05:00
XeroOl
04fec49059 lint explanations
These are here mainly for when I get around to mirroring these over
to my website. Then we could link a user to an explanation.

https://xerool.net/fennel-ls/docs/lints.html#lint-name

The descriptions of these are inspired by the Rust Language's Clippy
lint descriptions. Check their page out for ways to deal with a large
number of lints.

https://rust-lang.github.io/rust-clippy/rust-1.86.0/index.html
2025-06-02 22:36:11 -05:00