Commit Graph

340 Commits

Author SHA1 Message Date
Alexandros Naskos
e7f8a8dcd9
zls will now run the package extraction build runner without copying it
in the destination folder. Instead, it will use a specific cache folder
  and run from the default cwd it was run from.
Added build_runner_cache_path to the configuration file.
2021-01-12 13:10:51 +02:00
Vesim
b2e456404c fix inStream/outStream removal 2021-01-10 08:12:11 +01:00
Alexandros Naskos
eefee4759c
Fixed compilation for latest zig master 2021-01-07 10:35:36 +02:00
Lee Cannon
2a9edf243d Fixed string printing with {s} format specifier 2021-01-04 17:51:26 +00:00
g-w1
5b50d98353 make sure exe exists 2020-12-19 21:01:16 -05:00
Alexandros Naskos
78e74743e1
Use zig env to find zig lib path instead of assuming the executable comes from a distribution tarball 2020-11-15 21:32:27 +02:00
Alexandros Naskos
892847d939
Removed workspace specific zls.json support 2020-11-15 20:51:56 +02:00
Alexandros Naskos
0d15ea754e
Added --debug-log flag for release mode binaries 2020-11-08 13:40:16 +02:00
Alexandros Naskos
bf7f6cd5e9
Corrected semantic token server provider struct 2020-11-06 15:55:00 +02:00
Alexandros Naskos
8e0dc3da19
Fixed incremental document updates 2020-11-06 12:32:21 +02:00
Alexandros Naskos
f7eff6632e
Cleaned up LSP types, add InitializeResult, no longer use a hardcoded string 2020-11-06 10:08:20 +02:00
Alexandros Naskos
996deb45fe
Added builtin hover handler 2020-11-05 00:54:47 +02:00
Alexandros Naskos
560b39d359
Better builtin data format and script 2020-11-05 00:39:24 +02:00
data-man
fdcb7c264f Increase eval branch quota 2020-10-18 14:18:11 +05:00
Alexandros Naskos
27f9f14ab3 Removed DebugAllocator, use std.heap.GeneralPurposeAllocator 2020-10-10 12:44:37 +03:00
Alexandros Naskos
162f1b2fbe Opaque type support 2020-10-10 12:25:50 +03:00
Alexandros Naskos
a2265afce0 Added keywordLiteral token type for null, true, false, undefined, unreachable, fixed all pointer type semantic token generation 2020-10-04 13:10:48 +03:00
Tadeo Kondrak
b52817cd8f
Update to LSP version 3.16 semantic tokens protocol 2020-09-25 15:31:54 -06:00
codehz
d57d04f3bb Adopt to new ast API 2020-09-01 13:53:52 +08:00
Alexandros Naskos
0f54b0e860 Use scoped loggers 2020-08-14 13:41:34 +03:00
Alexandros Naskos
c09e488109 Added addressof, fixed slice and array completions 2020-07-24 13:20:13 +03:00
Alexandros Naskos
9aa11276a8 Dont respond with semantic token data when disabled in the config 2020-07-23 22:09:28 +03:00
Alexandros Naskos
e7a1f5c34f Fixed slice access type resolution 2020-07-23 21:33:43 +03:00
Alexandros Naskos
8ddd80b788 Fixed self detection for snippet completions 2020-07-23 21:13:38 +03:00
Alexandros Naskos
213366f029 Fix various bugs 2020-07-23 20:30:03 +03:00
SuperAuguste
a1c0f86066
kinda fix struct completion - still needs an actual fix 2020-07-17 23:21:17 -04:00
SuperAuguste
76dcc8cbe2 null fix 2020-07-17 10:01:21 -04:00
SuperAuguste
f00d09c746 fix almost everything - commented some things out, please don't file any issues yet! 2020-07-16 15:02:30 -04:00
SuperAuguste
20f440b3a0 more fixes 2020-07-16 12:04:23 -04:00
SuperAuguste
da4d2c2be1 ids -> tags (part 1) 2020-07-16 10:56:22 -04:00
Alexandros Naskos
6eee43af2f Fixed build on latest zig nightly 2020-07-12 22:12:09 +03:00
Alexandros Naskos
62774d065b Reworked tag stores, fixed memory leak 2020-07-08 04:05:44 +03:00
Alexandros Naskos
62ab67f751 Add allocation info in the test workflow 2020-07-08 00:22:03 +03:00
Alexandros Naskos
6dc05df0ac Small fix 2020-07-07 23:50:32 +03:00
Alexandros Naskos
5454883d2d Added *, ? completions, improved readme 2020-07-07 23:26:12 +03:00
Alexandros Naskos
f55d5a25aa Better log levels 2020-07-07 22:16:29 +03:00
Alexandros Naskos
b61785eb3e Optimize document symbols 2020-07-07 11:57:02 +03:00
Alexandros Naskos
3659a5c1a9 Added find references handler 2020-07-06 01:32:14 +03:00
Alexandros Naskos
c067bce9fa Fixed to use latest HashMap API 2020-07-06 00:56:41 +03:00
Alexandros Naskos
0f7a384b39 Added references.zig, use it from rename.zig 2020-07-06 00:35:52 +03:00
Alexandros Naskos
cbfb316763 Use LSP offsets in rename.zig 2020-07-05 01:40:18 +03:00
Alexandros Naskos
6bf2c9a1c7 Added encoding offset aware documentRange 2020-07-03 12:39:58 +03:00
Alexandros Naskos
28b3cafc3f zig fmt pass, correctly return after sending formatting result 2020-07-03 12:24:24 +03:00
Alexandros Naskos
f6df9d4c0a Added offsetEncoding clangd extension support 2020-07-03 12:00:00 +03:00
Alexandros Naskos
9bed369797 Correctly handle utf16 offsets for semantic tokens 2020-07-03 11:34:42 +03:00
Alexandros Naskos
d8aba7da0b Correctly support utf16 offsets 2020-07-03 02:31:28 +03:00
Alexandros Naskos
8c154c2a60 Added stack trace leak reporting to the debug allocator, fixed remaining two memory leaks 2020-07-02 19:13:10 +03:00
Alexandros Naskos
21e18a1d01 Fixed some deallocation code 2020-07-02 14:44:12 +03:00
Alexandros Naskos
b3006745a0 More fixes 2020-06-30 18:00:33 +03:00
Alexandros Naskos
671318730a Started adding session tests, finished (buggy) main loop rewrite 2020-06-30 15:46:43 +03:00
Alexandros Naskos
ddcf6c677b Start working on a better proccess JSON RPC 2020-06-30 01:34:21 +03:00
Alexandros Naskos
6953ff95eb Use apge allocator again after it was fixed 2020-06-29 02:03:51 +03:00
Alexandros Naskos
0102963433 Fixed formatting on master 2020-06-28 16:16:41 +03:00
Alexandros Naskos
965724dd7e Fixed build and crashes with zig master branch: 2020-06-28 13:58:51 +03:00
Alexandros Naskos
108a2dbd64 Semantic highlighting improvements 2020-06-27 20:45:58 +03:00
Alexandros Naskos
9343ec311b Removed todo comments 2020-06-27 15:30:32 +03:00
Alexandros Naskos
8bc6087646 Completed renaming 2020-06-27 15:29:45 +03:00
Alexandros Naskos
beb900f1d9 Added label renaming 2020-06-27 03:16:14 +03:00
Alexandros Naskos
4952c34481 Use std.log 2020-06-26 14:29:59 +03:00
Alexandros Naskos
b3f6143e08 Use print instead of warn 2020-06-26 03:26:09 +03:00
Alexandros Naskos
16b44a334b Finished semantic token analysis 2020-06-18 15:12:09 +03:00
Alexandros Naskos
42f1325488 Prototype semantic tokens implementation with actual semantic analysis 2020-06-17 23:36:40 +03:00
Alexandros Naskos
8d69fdb95a Started working on our own Type, differentiate between values of a type and the type itself. 2020-06-17 05:12:12 +03:00
Alexandros Naskos
20ec7470bb Respond to shutdown request 2020-06-17 00:26:45 +03:00
Alexandros Naskos
8beedb0384 Removed old comment 2020-06-16 22:03:55 +03:00
Alexandros Naskos
abe76ec2bf Added formatter 2020-06-16 22:02:31 +03:00
Alexandros Naskos
a45939f8ab Improvements 2020-06-16 18:49:31 +03:00
Alexandros Naskos
fc921f10a4 Fix server capabilities, add semantic tokens config option, fix semantic tokens basic implementation 2020-06-16 14:27:00 +03:00
Alexandros Naskos
bed05b6601 Wrap demantic tokens response result in 'data' 2020-06-16 02:14:39 +03:00
Alexandros Naskos
2da58c5068 Go to declaration will not resolve aliases (go to definition still does) 2020-06-15 12:37:42 +03:00
Alexandros Naskos
bfdeecbd04 Better alias support 2020-06-15 01:19:21 +03:00
Alexandros Naskos
48019dd7e2 Added label support 2020-06-14 22:24:18 +03:00
Alexandros Naskos
7f12928fe9 Dont show fields in global completions and from usingnamespaced scopes 2020-06-14 13:03:14 +03:00
Alexandros Naskos
0592513da4 Basic semantic tokens implementation 2020-06-14 01:07:57 +03:00
Alexandros Naskos
112f6d735a Correctly handle inferred error sets, add self argument support when evaluating bound type params, semanticToken scaffolding 2020-06-13 21:20:04 +03:00
Alexandros Naskos
04638a6d4d Fixed occasional crash on Sublime text, only get params when we use then 2020-06-12 20:31:33 +03:00
Alexandros Naskos
98ebac6d64 Take more client capabilities into account 2020-06-12 17:42:41 +03:00
Alexandros Naskos
80dd19dd8b Usingnamespace support 2020-06-11 02:40:11 +03:00
Alexandros Naskos
7650decfa0 Improvements 2020-06-11 01:00:13 +03:00
Alexandros Naskos
b8b6c534e8 Fixed field access 2020-06-11 00:24:57 +03:00
Alexandros Naskos
86e417e8dc Add hover, goto, completions for alternate declaration types 2020-06-10 22:52:33 +03:00
Alexandros Naskos
545989339d Remove unused code, fixed snippet self param skipping 2020-06-10 22:05:11 +03:00
Alexandros Naskos
05d75781de Now builds! 2020-06-10 21:24:17 +03:00
Alexandros Naskos
3bdb2ee444 More progress 2020-06-10 20:48:40 +03:00
Alexandros Naskos
d6609d918b More progress 2020-06-10 19:54:01 +03:00
Alexandros Naskos
9b08d9e88a Started removing scope_nodes, using symbol table instead 2020-06-10 19:01:44 +03:00
Alexandros Naskos
c2f8537d7b Added maximum bytes allocated in debug allocator, as well as peak memory usage 2020-06-09 16:39:00 +03:00
SuperAuguste
3c2c1e97ed preamble to usingnamespace 2020-06-08 23:21:55 -04:00
SuperAuguste
6ae23ba2d0 fix field details in completions 2020-06-07 09:49:21 -04:00
Alexandros Naskos
a2c4f7c5c7 Removed debug trace 2020-06-06 16:57:39 +03:00
Alexandros Naskos
af42c95222 Handle string request ids 2020-06-06 15:40:33 +03:00
Alexandros Naskos
73b58abe51 Detect self arguments and skip it when generating snippets 2020-06-06 02:44:43 +03:00
Alexandros Naskos
563c4f0294 Fixed newlines in markdown line comments 2020-06-05 00:19:00 +03:00
Alexandros Naskos
9392c4032c Only refresh packages when saving a build.zig file, not on any change 2020-06-03 11:32:05 +03:00
Alexandros Naskos
ef95c76e45 Added doc comments on hover 2020-06-03 11:23:14 +03:00
Alexandros Naskos
e7157ba381 Preparing for semantic tokens support. Fix a crash on some function calls 2020-06-02 16:48:23 +03:00
Alexandros Naskos
52fe21b8bd Parse client capabilities for snippet support 2020-06-01 13:29:06 +03:00
Alexandros Naskos
269c308ec7 Respond with null where we can, even if we already marked a capability as false. 2020-06-01 12:28:33 +03:00
Alexandros Naskos
50c8cebe26 Removed reachable unreachable 2020-05-31 18:02:33 +03:00
Alexandros Naskos
543cb5816c Added zig_exe_path option, use it to detect lib path if none is provided 2020-05-30 23:36:18 +03:00
Vexu
c1ba26e0a2
implement completion for enum literals 2020-05-28 18:21:51 +03:00
Vexu
22a863134b
implement global error set completion 2020-05-28 15:45:11 +03:00
SuperAuguste
2b153e046c outlines, made JSON stdout memory dynamic 2020-05-27 20:39:36 -04:00
Alexandros Naskos
7602f34bb4 Added .?, .*, [] support 2020-05-27 18:49:11 +03:00
Alexandros Naskos
f6df35e069 Reworked position context to use tokenizer, works in more contexts 2020-05-27 01:45:18 +03:00
Alexandros Naskos
a330932b7c Copy scope nodes when cloning an analysis context 2020-05-26 17:19:16 +03:00
Alexandros Naskos
da6f43c46d Go to definition now resolved fn aliases, added hover 2020-05-26 01:51:50 +03:00
Alexandros Naskos
48ad1eccbf Fixed goto import, preparing for hover impl 2020-05-26 00:37:18 +03:00
Alexandros Naskos
754a982be2 Make capabilities explicit, make hover capability true 2020-05-25 23:15:54 +03:00
Alexandros Naskos
b82fb9c790 Added build_runner_path configuration option 2020-05-25 20:04:23 +03:00
Alexandros Naskos
02745f1472 Free build files in document store deinit 2020-05-25 19:49:04 +03:00
Alexandros Naskos
4bf97bebc9 Seems to work, needs cleanup 2020-05-25 19:33:08 +03:00
Alexandros Naskos
155c5b2a95 Started working on build file logic 2020-05-25 17:24:44 +03:00
Alexandros Naskos
4542abf145 Check for the existence of zig in PATH in main() 2020-05-25 16:18:00 +03:00
Alexandros Naskos
3b052372c2 Added custom build runner, install it along with the zls binary 2020-05-25 03:22:39 +03:00
Alexandros Naskos
c6fa528af4 Store trees in handles 2020-05-24 19:00:21 +03:00
Alexandros Naskos
fd069b026a Added hack to support ParamDecl not being a node anymore 2020-05-24 17:31:28 +03:00
Alexandros Naskos
594488d7c5 Merged master 2020-05-24 17:12:13 +03:00
Alexandros Naskos
34ba67b3d1 Fixed node iteration: 2020-05-24 17:07:48 +03:00
Alexandros Naskos
40e1e8843c Added timing information output 2020-05-24 15:39:40 +03:00
Alexandros Naskos
9ec32ac830 We now complete ArrayList! 2020-05-24 15:24:18 +03:00
SuperAuguste
dd9ec8e450 Fix completion of functions 2020-05-23 22:07:09 -04:00
Alexandros Naskos
f5ca94a0d1 Merge remote-tracking branch 'zigtools/master' into new_parser 2020-05-24 02:08:06 +03:00
Alexandros Naskos
11b5da3a91 Now compiles on the new parser branch 2020-05-24 01:21:02 +03:00
Alexandros Naskos
22b5d2e2c3 Pass the arguments in the correct order dummy 2020-05-24 00:15:35 +03:00
Alexandros Naskos
5dc7a1b40a Fix @This() completions, do half the work in global completions 2020-05-23 23:22:50 +03:00
Alexandros Naskos
30cb9e06e4 Complete non-pub declarations in the same module 2020-05-23 16:14:03 +03:00
Alexandros Naskos
34adb4e22f Added switch to declFromIndex, fixed occasional crash 2020-05-23 02:33:42 +03:00
Alexandros Naskos
a189fa171c More declsFromIndex improvements 2020-05-23 01:58:47 +03:00
Alexandros Naskos
c3d2aa3434 Handle if, while, for, payloads 2020-05-23 01:03:41 +03:00
Alexandros Naskos
d4871914ea Removed debug traces 2020-05-23 00:05:16 +03:00
Alexandros Naskos
077a17e2f5 Do not add every node when adding decls, just the supported nodes 2020-05-23 00:02:26 +03:00
Vexu
af746be770
provide goto definition for import strings 2020-05-22 18:52:21 +03:00
Alexandros Naskos
ccc923e2f0 One more fix 2020-05-21 21:02:12 +03:00
Alexandros Naskos
2eab5e036d Check that the goto definition cursor is within bounds 2020-05-21 20:51:03 +03:00
Alexandros Naskos
4acb77f09e enable_snippets is false by default, fix it in README. Small fixes to goto def/decl 2020-05-21 14:36:14 +03:00
SuperAuguste
75f1aa5780 fix workspace folder bug 2020-05-19 16:24:24 -04:00
Alexandros Naskos
7dcbc39d59 Added workspace folder support, read configs from there, use known-folders 2020-05-19 22:09:00 +03:00
Alexandros Naskos
07f2138dce Simple generic function support 2020-05-19 16:42:36 +03:00
Sergeeeek
c55363e2c2 Code style fixes 2020-05-19 12:02:48 +03:00
Sergeeeek
06ba823368 Removed logs and unused utility function 2020-05-19 07:47:23 +03:00
Sergeeeek
4b3cb641c0 Fixed wrong node being used when resolving return type of a function 2020-05-19 07:39:34 +03:00
Sergeeeek
5043a10dd4 Fixed error after merge 2020-05-19 07:18:39 +03:00
Sergeeeek
c4aa35872c Merge remote-tracking branch 'upstream/master' 2020-05-19 07:17:28 +03:00
Sergeeeek
1f50f4e4f6 Moved deep import resolution to nodeToCompletion 2020-05-19 07:12:05 +03:00
Alexandros Naskos
b1ce06a80d Implemented go to definition 2020-05-18 23:19:23 +03:00
SuperAuguste
acd85c0f39 fix 2020-05-18 12:37:56 -04:00
Alexandros Naskos
8693c4a69f Removed last remaining log. RIP 2020-05-18 19:33:58 +03:00
SuperAuguste
b9bd0e2476 remove log 2020-05-18 11:36:47 -04:00
SuperAuguste
66908bd1a9 Revert buffered in stream - it breaks inputs for some strange reason 2020-05-18 09:31:17 -04:00