Commit Graph

895 Commits

Author SHA1 Message Date
Matt Knight
6ec6d4ea36
Revamp bulid.zig discovery (#688)
* walk down tree instead of up for build.zig discovery

* account for windows URIs in tests
2022-09-28 23:12:34 -04:00
Techatrix
e3803d760f
show a warning when using an old zig version (#677)
* show a warning when using an old zig version

* use builtin zig version
2022-09-28 19:30:26 -04:00
Techatrix
8cf93fc96a
Code action improvements (#678)
* correctly remove parameter through code action

* add code action for pointless discard of undeclared identifier
2022-09-28 12:14:16 -04:00
Techatrix
8eeae02865
unmanage diff.zig (#680) 2022-09-28 12:13:55 -04:00
Auguste Rame
a70beba6d2
Merge pull request #683 from jcmoyer/build-options
Allow user defined options to be passed to build_runner
2022-09-28 12:11:49 -04:00
Techatrix
f3889cfe8d
explicit request didSave notification from client (#676) 2022-09-28 12:07:24 -04:00
J.C. Moyer
295669297a Remove unnecessary indirection 2022-09-28 10:10:27 -04:00
J.C. Moyer
cbc6feeb76 Allocate build_runner args directly 2022-09-28 08:33:48 -04:00
J.C. Moyer
399fa7fd09 Move build options out of parse result instead of copying 2022-09-28 08:32:19 -04:00
J.C. Moyer
0b0e6a7cb9 Support for user-configurable build options 2022-09-28 04:14:49 -04:00
Lee Cannon
ecf4e112a5
Merge pull request #675 from leecannon/pkgconfig
support pkgconfig
2022-09-27 20:12:33 +01:00
Lee Cannon
58d8c1434d
cleanup processPkgConfig 2022-09-27 20:00:14 +01:00
Lee Cannon
137edcd527
use StringArrayHashMap to remove duplicate include paths 2022-09-26 22:01:00 +01:00
Lee Cannon
a3af1c76a3
support pkgconfig 2022-09-26 21:38:10 +01:00
Techatrix
8edaa7f506 Merge branch 'master' into dev 2022-09-26 18:41:07 +02:00
Techatrix
0d848a71ec
Merge pull request #674 from Techatrix/snippets
Add keyword Snippets for autocomplete
2022-09-25 17:27:46 +00:00
Techatrix
5fa7656314 update snippets 2022-09-25 03:09:54 +02:00
Techatrix
00be49c595 add keyword snippets for autocomplete 2022-09-25 02:45:02 +02:00
Techatrix
8cf5c82261 implement autofix 2022-09-25 01:05:12 +02:00
Techatrix
1b64db8a4c implement textDocument/codeAction 2022-09-25 01:04:29 +02:00
Techatrix
ca58cbb3f3 make types.Diagnostic correctly parseable 2022-09-25 01:01:31 +02:00
Techatrix
548ced259f refactor ast-check into separate function with small changes 2022-09-24 21:54:31 +02:00
Techatrix
cfb7c16de0 add enable_autofix option 2022-09-24 21:30:36 +02:00
Techatrix
40c28d7a64 add code action types 2022-09-24 21:29:24 +02:00
Techatrix
a8dcb89a81 refactor getting the first & last parameter token into a function 2022-09-24 21:26:55 +02:00
Techatrix
6ff19e8b5f analysis: store function node in parameter declaration 2022-09-24 21:25:32 +02:00
Techatrix
869d27c75d simplify completionHandler, gotoHandler, hoverHandler and their callees 2022-09-22 20:09:16 +02:00
Techatrix
87bfa683bd use an ArrayList in uri.pathRelative 2022-09-22 20:06:31 +02:00
Techatrix
8a77007872 don't use inline for iterating builtin data 2022-09-22 05:39:04 +02:00
Techatrix
e9e9571fe5
avoid config copy for document store (#669) 2022-09-21 21:31:48 -04:00
Lee Cannon
f90142d0cc
create entire cache folder path 2022-09-20 19:52:24 +01:00
Techatrix
cf52fd8190 report cImport failure using textDocument/publishDiagnostics 2022-09-19 19:53:41 +02:00
Techatrix
7f4f002380
Testing improvements (#662) 2022-09-18 22:47:06 +00:00
Lee Cannon
b3078c36dd
Merge pull request #656 from jcmoyer/env-fixup
Add target to Env struct
2022-09-18 19:05:51 +01:00
J.C. Moyer
0feecee18c Add target to Env struct
See: https://github.com/ziglang/zig/pull/11741
2022-09-18 02:45:30 -04:00
Caleb Cornett
96f00f05f6
Pass -lc to translate-c (#660) 2022-09-17 15:16:36 -04:00
Lee Cannon
6d9e891d98
fix for zig master (#658) 2022-09-17 15:05:55 -04:00
Techatrix
b76710ea5f
References improvements (#653) 2022-09-16 01:11:39 +00:00
Techatrix
e28549fa7d
Completely overhaul offsets.zig (#643)
* completely overhaul offsets.zig
2022-09-16 00:33:49 +00:00
max
5aff17afb0
sync with zig master version llvm15 (#652) 2022-09-14 14:56:17 -04:00
Lee Cannon
bd6f60e451
update for zig master (#651) 2022-09-13 16:54:28 -04:00
Techatrix
e6238e3354
improve width of log prefix (#649) 2022-09-13 16:12:32 -04:00
Techatrix
6363e7a064
Merge pull request #646 from Techatrix/cache-build-runner
Place build_runner.zig in zls subfolder
2022-09-12 11:46:36 +00:00
Techatrix
1a93ec2234
Merge pull request #647 from Techatrix/logging-improvements
Only globally log to stderr
2022-09-12 11:42:46 +00:00
Techatrix
85135d36ae refactor builtin_completions 2022-09-12 00:50:35 +02:00
Techatrix
ff779049f1 only globally log to stderr 2022-09-11 23:48:15 +02:00
Techatrix
834127f23e create global cache path directory if it doesn't exist yet 2022-09-11 22:36:38 +02:00
Techatrix
75677f424c place build_runner.zig in zls subfolder 2022-09-11 21:50:37 +02:00
Techatrix
a44cfdc451 correctly handle anytype in inlay hint tooltips 2022-09-11 01:50:45 +02:00
Techatrix
03565f42bf
Merge pull request #641 from Techatrix/testing-improvements
Move updated units_test.zig into tests directory
2022-09-10 23:03:31 +00:00
Techatrix
6933e1598a move updated units_test.zig into tests directory 2022-09-11 00:07:01 +02:00
nullptrdevs
440fd215ec
NativeTargetInfo.detect() no longer takes an Allocator param (#637)
see 3ee01c14ee
2022-09-09 21:06:01 -04:00
Techatrix
0428b970b1
place build_runner.zig in cache directory (#635) 2022-09-07 13:34:48 -04:00
nullptrdevs
6269eef776
fix: "f..o.o;" crashes the server (#629)
this is a fix for #381 and a hack for #409
(related, get triggered by "f..o.o;")
2022-09-07 13:14:11 -04:00
Techatrix
7730c7715b respect document encoding 2022-09-05 22:49:50 +02:00
Techatrix
925cc3fee9 reconstruct diagnostic range end of ast-gen 2022-09-05 20:41:40 +02:00
Techatrix
a0c3de5bfe update data/master.zig 2022-09-04 22:12:37 +02:00
Techatrix
38210d3e91 embedFile build_runner.zig in executable 2022-09-04 21:44:07 +02:00
Auguste Rame
b842e68697
Merge pull request #621 from Techatrix/dev
Enable ast-check by default
2022-09-03 13:29:58 -04:00
Auguste Rame
7a1c66da34
Merge pull request #606 from nullptrdevs/dev
fix: fix server crash related to parsing incomplete function as a fun…
2022-09-03 12:56:34 -04:00
Techatrix
d8b574a0cc enable ast-check by default 2022-09-03 15:12:34 +02:00
Auguste Rame
34ce200b2e
Merge pull request #618 from Techatrix/report-version
Report zls version using git describe
2022-09-02 01:47:54 -04:00
Techatrix
66b35d62b2 report zls version using git describe 2022-09-01 15:42:15 +02:00
Auguste Rame
246fee8a1b
ast-check fixes 2022-09-01 09:26:58 -04:00
Auguste Rame
57a35a7bc8
ast-check for zls! 2022-08-31 20:52:55 -04:00
Lee Cannon
da03c81992
Merge pull request #614 from Techatrix/show-config-path
add --show-config-path for querying the config path
2022-08-30 18:22:50 +01:00
Techatrix
d30cdabfe5 remove unnecessary check in setup wizard 2022-08-30 19:01:12 +02:00
Techatrix
7be7496ec8 only conditionally ask for global configuration in setup wizard 2022-08-30 01:07:46 +02:00
Techatrix
ffb3f9440e add --show-config-path for querying the config path 2022-08-30 00:46:13 +02:00
Techatrix
b502134769
Merge pull request #613 from Techatrix/json-schema
add JSON Schema
2022-08-29 21:15:52 +00:00
Techatrix
9b7c73d9b1 add JSON Schema 2022-08-29 22:55:25 +02:00
Techatrix
605c4e2988 fix textDocument/rename 2022-08-29 21:28:05 +02:00
Techatrix
2ac8ab6ce9
Merge pull request #609 from Techatrix/test-coverage
Improve Test coverage
2022-08-26 19:12:01 +00:00
Techatrix
f6082e837d prepare testing framework
- allow source files from tests as a package
- use `tests/tests.zig` as the entry point
- add `Context.requestAlloc`
2022-08-26 16:45:22 +02:00
nullptrdevs
b7a5ab5f52
fix: fix warning emitted incorrectly when using .. 2022-08-25 16:13:58 -07:00
nullptrdevs
481903e72a fix: fix an attempt to use null value in DocumentStore.resolveImport
caused by missing files or weird file path starting
e.g.
```
pub const abc = @import(".////abc.zig");
```
2022-08-25 15:52:07 -07:00
nullptrdevs
54be6d92c6 fix: fix server crash related to parsing incomplete function as a function's parameter
fixes zigtools#567
2022-08-25 13:17:38 -07:00
Lee Cannon
8cf96fe27c
Merge pull request #605 from Techatrix/translate-c-patch-undef
emit correct c preprocessor macro in convertCInclude
2022-08-25 17:33:38 +01:00
Techatrix
127781962d emit correct c preprocessor macro in convertCInclude 2022-08-25 16:25:47 +02:00
Techatrix
fce29fec41 patch allocator mismatch in translate_c 2022-08-25 15:16:27 +02:00
Lee Cannon
a18ec394f1
Merge pull request #602 from Techatrix/unmanage-code
unmanage all the code
2022-08-23 21:21:08 +01:00
Lee Cannon
163409f48f
Merge pull request #579 from jefftime/master
Text format to return edited ranges instead of entire document
2022-08-23 21:20:49 +01:00
Lee Cannon
7c245f7dd4
Merge pull request #595 from nullptrdevs/master
fix: fix memory leaks related to updating config variables
2022-08-23 15:04:30 +01:00
Techatrix
dc3199cffa unmanage all the code 2022-08-23 12:44:26 +02:00
jefftime
5804454334
Merge branch 'zigtools:master' into master 2022-08-22 20:18:02 -04:00
Lee Cannon
eb60f75413
workaround zig tarball bug (#599) 2022-08-23 00:01:44 +02:00
nullptrdevs
015332b69e
Update analysis.zig 2022-08-22 10:54:29 -07:00
nullptrdevs
4d0ab8b1aa
Update Server.zig 2022-08-22 10:49:15 -07:00
Techatrix
333b1bad8c fix Path <-> Uri mismatch 2022-08-22 16:54:56 +02:00
nullptrdevs
2c5ae262f7 fix: fix memory leaks related to updating config variables
adds an edge case in analysis.makeScopeInternal to prevent
leaking memory when adding duplicate container fields w/ name "other"
2022-08-21 17:11:50 -07:00
Techatrix
c6892eaafc
Merge branch 'zigtools:master' into cimport-support 2022-08-21 08:53:06 +00:00
Auguste Rame
fa48980acb
Merge pull request #591 from Techatrix/master
Update dependencies
2022-08-21 03:07:35 +02:00
Techatrix
2e61178a08 Update dependencies 2022-08-20 19:27:31 +02:00
Techatrix
8457487b2e better handling for enum field signatures 2022-08-20 18:28:41 +02:00
Techatrix
f543659e31 correctly handle path to uri conversion 2022-08-20 15:34:36 +02:00
InKryption
63d84855a5
Improve unused variable report accuracy 2022-08-19 15:28:38 +02:00
InKryption
249685e4c5
2 minor tidy-ups + fix for over-eager unused parameter error in function types 2022-08-19 00:31:41 +02:00
Techatrix
d57f8e3a64 add basic cImport support 2022-08-19 00:00:46 +02:00
Techatrix
0436b05b80 rename build_runner_cache_path to global_cache_path 2022-08-18 23:14:32 +02:00
Techatrix
1859afd4c5 emit JSON formatted packages & include dirs in build_runner.zig 2022-08-18 22:56:03 +02:00
Auguste Rame
41a467b0f3
Merge pull request #583 from InKryption/master
Improve CLI, fix leak, & other.
2022-08-18 20:23:47 +02:00
InKryption
cb5eeb0b45
Improve CLI, fix leak, & other. 2022-08-18 19:46:22 +02:00
Techatrix
29690f4e0b Refactor Ast helper functions 2022-08-18 00:52:21 +02:00
Lee Cannon
673b4b3505
trigger completion after ] 2022-08-14 22:45:05 +01:00
Jeffery Stager
1fbf1c5427 Minor cleanup in formatting function 2022-08-13 17:23:39 -04:00
Jeffery Stager
254353a9f4 Add fallback to old behavior on diff failure 2022-08-13 17:16:53 -04:00
Jeffery Stager
4e33e1d61f Working diff for formatting 2022-08-10 22:47:33 -04:00
Gregory Anders
c4f3cd0efa Only return highlights for symbols in current document
This seems to only occur when highlighting "field access" symbols, e.g.
"bar" in a statement such as `foo.bar`. This is because the
`symbolReferencesInternal` function finds the reference to the field in
the container even when the container is not in the current document.
2022-08-10 16:03:00 -06:00
Techatrix
1ab262c625 Fix memory leaks 2022-08-06 01:30:43 +02:00
Auguste Rame
ea24928002
Merge pull request #574 from Techatrix/tokenize-undefined
Semantic token for keyword 'undefined'
2022-08-05 21:48:19 +02:00
Auguste Rame
a73c77db6d
Merge pull request #572 from Techatrix/patch-stduri
fix 'Cannot resolve std library import'
2022-08-05 21:48:00 +02:00
Techatrix
a30d310d7f better semantic token for keyword undefined 2022-08-05 14:20:16 +02:00
Techatrix
cee46461e0
handle ptr_type_sentinel 2022-08-05 11:22:55 +00:00
Techatrix
c9d41650da fix 'Cannot resolve std library import' 2022-08-05 13:01:39 +02:00
Techatrix
5d4c68e9c5 Add missing tests 2022-08-03 23:29:03 +02:00
Techatrix
ae5da361bf
Merge branch 'zigtools:master' into session-tests 2022-08-03 21:11:43 +00:00
Lee Cannon
d83e37d99a
provide build_runner command on failure (#569) 2022-08-03 13:43:34 -04:00
Techatrix
f2315e0c7a
Format zls.json in setup wizard (#568) 2022-08-02 14:28:27 -04:00
Techatrix
fca78a98b0 move ArenaAllocator into Server 2022-08-01 00:44:07 +02:00
Techatrix
805148125c revive session tests 2022-07-31 23:39:33 +02:00
Techatrix
75570aef3c add writer interface to Server & move main to main.zig 2022-07-31 23:38:27 +02:00
Lee Cannon
cf8baa3586
fix format string (#565) 2022-07-27 15:46:03 -04:00
haze
528fd26a13
update format specifiers for optional strings (#564) 2022-07-27 09:41:45 -04:00
Auguste Rame
913d6aee9d
Fix tests for real? (#562)
* Actually a horrible patch
2022-07-25 16:09:54 -04:00
Lee Cannon
98e5451d98
support 0.9 and master (#561) 2022-07-24 17:08:14 -04:00
Techatrix
224332d3a8 update README.md and setup
- update notes for VS Code according to new changes in zls-vscode
- add instructions for setting up Helix editor
2022-07-24 17:01:05 +02:00
alvv-z
e8bbb20783
Update setup wizard for ST4 (#461)
* Set include_at_in_builtins to false if Sublime Text version > 4000
2022-07-24 07:58:26 -04:00
Techatrix
0ecdeeecb1
Implement textDocument/inlayHint (#559)
* Implement textDocument/inlayHint

* Add corresponding Config options
2022-07-24 07:38:13 -04:00
Auguste Rame
39e4a561b2
Merge pull request #484 from gpanders/documentHighlight
Implement textDocument/documentHighlight
2022-07-23 05:30:57 -04:00
Gregory Anders
b71a83b64a Limit references to current document for documentHighlight 2022-07-22 19:38:26 -06:00
Gregory Anders
94770b86c6 Implement textDocument/documentHighlight 2022-07-22 19:37:06 -06:00
Techatrix
d734245141
Highlight orelse as a keyword 2022-07-23 00:34:53 +00:00
Auguste Rame
5f9b9c564c
Fix tokenRelativeLocation
Closes #354

Closes #543
2022-07-17 16:29:03 +02:00
Veikka Tuominen
427f7b12ef
update to IterableDir changes in Zig std 2022-07-17 13:03:30 +02:00
Veikka Tuominen
410a2dd6dd
add f80 2022-07-17 13:03:26 +02:00
Auguste Rame
8e2e597ec3
Refactor builds! 2022-07-17 12:17:55 +02:00
Auguste Rame
1d910ed973
Start refactoring main -> Server's globals 2022-07-17 12:00:29 +02:00
Auguste Rame
6f19772c17
Fix config source of truth problems, refactor some more 2022-07-15 18:06:18 +02:00
Auguste Rame
4507f4a275
Add Discord link, DocumentStore now uses the config source of truth! 2022-07-15 14:51:36 +02:00
Auguste Rame
c640903c98
Fix container function param completion
Closes #521
2022-07-14 14:44:22 +02:00
Auguste Rame
2e379336b9
(Hopefully) fix configuration uri/memory bugs
Closes #533
2022-07-14 12:43:10 +02:00
Ali Chraghi
5162e9a803
setup: Update vscode configuration snippet 2022-07-12 22:31:29 +04:30
Techatrix
6b66820677
Remove unnecessary pointer indirection 2022-07-11 23:57:41 +00:00
Auguste Rame
37f79c86fa
Fix CI?
I really need to fix Zig's error handling on message send failure, it's so bad 😭
2022-07-11 20:28:50 +02:00
Auguste Rame
acd57ddb16
workspace configuration server request model implemented! 2022-07-11 15:45:31 +02:00
Auguste Rame
3b33750f59 Add config option, fix config wizard, fix random crash and extern unused highlighting 2022-07-09 05:23:53 -04:00
Auguste Rame
43c61b3da6 @import and @embedFile completions! 2022-07-09 05:23:53 -04:00
Auguste Rame
bb89c3518b Nice to have style hint and bug fix 2022-07-09 05:23:53 -04:00
Auguste Rame
5838a34101
Fix small bugs
Thanks for the heads up Travis :)
2022-07-08 22:57:34 +02:00
Auguste Rame
0c0cb261b7 Basic variable type resolution on hover 2022-07-08 15:15:50 -04:00