Commit Graph

1174 Commits

Author SHA1 Message Date
Techatrix
b623f141ea revive translateC support 2023-05-30 01:59:46 +02:00
Eric Joldasov
905f531a08 update to Zig 0.11.0-dev.3312+ab37ab33c
Signed-off-by: Eric Joldasov <bratishkaerik@getgoogleoff.me>
2023-05-27 16:21:30 -07:00
Lee Cannon
0de454195c
Merge pull request #1202 from travisstaloch/issue-689-discard-caps
autofix: discard captures + some multi for loop support
2023-05-27 12:20:32 +01:00
Travis Staloch
58bc245ba3
autofix: tighten up getCaptureLoc()
* reject missing opening '|'
* reject capture group of only spaces
* add tests for these cases
2023-05-26 23:45:49 -07:00
Travis Staloch
32dc6c32ea
autofix: clean up dupe 'remove capture' action detection 2023-05-26 20:55:48 -07:00
Travis Staloch
49b679ee22
autofix: discard captures + some multi for loop support
this patch makes autofix add discards for unused loop and switch case
captures which have curlies.  it prevents adding duplicate
'remove capture' actions by checking previous action ranges.

it removes special casing of index captures now that multi for loops
have arrived.

* make getCaptureLoc() return only single Loc
* remove CaptureLocs struct which is no longer used
* add DiagnosticKind.@"switch tag capture" to handle
  'inline else => |x, tag|' discards
* add test "getCaptureLoc"
2023-05-26 20:19:50 -07:00
Victor Song
0af42d5608 Replace nonexistent std.sort.sort with std.mem.sort 2023-05-24 02:13:43 -05:00
Lee Cannon
2ff2593a86
Merge pull request #1197 from Techatrix/invalidate-analysis-cache
invalidate Analyser on didClose
2023-05-21 15:31:40 -07:00
Techatrix
a64b63333a invalidate Analyser on didClose 2023-05-21 22:56:42 +02:00
Techatrix
6f0907bc16 fix semantic tokens on union and enum container fields 2023-05-21 21:48:46 +02:00
Techatrix
cde544125a bring semantic token types and modifiers closer to predefined ones 2023-05-21 21:48:46 +02:00
Techatrix
d9965c7834 fix semantic tokens on if capture by ref 2023-05-21 21:48:46 +02:00
Techatrix
498517ba71 replace semantic token type .field with .property 2023-05-21 21:48:46 +02:00
Techatrix
6836f9361d use std.meta.fieldNames instead of manually re-implementing it 2023-05-21 21:48:46 +02:00
Techatrix
ae5fa110b5 test and simplify semantic tokens on function call 2023-05-21 21:48:46 +02:00
Techatrix
3fefcfb398 simplify semantic token comment handling 2023-05-21 21:48:46 +02:00
nullptrdevs
e6996f5f66 Update config_gen and data 2023-05-18 21:23:17 -07:00
Techatrix
3500aa7a76
update to new std.json api (#1191)
* update lsp.zig

* update to new `std.json` api

* update min zig version

* fix json api
2023-05-18 20:46:22 -04:00
Techarix
64fb0246fc access tree of resolved typed on hover 2023-05-16 19:41:46 +02:00
Ai Hoshino
91645612e6
Fix panic caused by custom zls.json path (#1177)
* fix(config): fix panic caused by custom configuration file path.

* fix(config): revert `openDir` related code
2023-05-13 01:53:44 -04:00
Lee Cannon
d0a9911a3a
Merge pull request #1184 from Techatrix/fix-semantic-tokens-on-continue
fix semantic token generation crash on continue expression
2023-05-11 12:36:04 -07:00
Lee Cannon
8601b3f790
remove usage of std.meta.tagName as it is deprecated (#1186) 2023-05-10 15:39:32 -04:00
Techarix
1bbdcab3ac fix semantic token generation crash on continue expression 2023-05-10 15:05:29 +02:00
Techatrix
d3f127e78e
Update tracy to 0.9.1 (#1182)
* update tracy to 0.9.1

* set allocation and callstack tracing by default when tracy is enabled
2023-05-09 18:38:09 -04:00
Techatrix
029f5094ff
various intern pool & comptime interpreter changes (#1179)
* intern_pool: add getUnsignedInt

* add an empty struct literal

* resolve array length as usize in comptime interpreter

* use only one global intern pool

* store analysis errors in `DocumentStore.Handle`

* add typed undefined value

* add typed null value
2023-05-09 00:25:26 -04:00
Techarix
f2c064c957 update stage2 sources 2023-05-08 20:38:05 +02:00
Rekai Musuka
95158cf578 chore: update master version data 2023-05-04 00:34:28 -05:00
Lee Cannon
fd05faf51a
print zls version and path during startup (#1165)
* print zls version during startup

* print zls executable path during startup
2023-05-02 18:54:13 -04:00
Sora
94882d2e64
Update config to highlight danger of the comptime interpreter (#1162) 2023-04-30 13:21:43 -04:00
travisstaloch
1ef3944cb0
chore: use new @memset api (#1156) 2023-04-27 18:27:59 -04:00
nullptrdevs
30c49e11df Update config_gen and data 2023-04-26 00:42:38 -07:00
Lee Cannon
71e819c56a
Merge pull request #1148 from nullptrdevs/misc-fixes
Mem fixes
2023-04-24 14:59:57 +01:00
Lee Cannon
d4bc2c2349
Merge pull request #1150 from Techatrix/gen-data-files
update config gen according to new `std.http` changes
2023-04-24 14:58:52 +01:00
Mridul Krishna Mishra
d122cbf157
Fix to make zls compile for 0.11.0-dev.2775+21aa55d34. 2023-04-24 17:19:48 +05:30
Techatrix
5fd5ae0677 update config gen according to new std.http changes 2023-04-23 19:11:04 +02:00
nullptrdevs
5519b3a2c0 Mem fixes
* `gpa.deinit()` now returns an enum
* avoid double free when `--config-path` is specified
* avoid leaking memory in `Server.create` if `configChanged` returns err
2023-04-22 06:47:36 -07:00
Lee Cannon
825cbd2e07
Merge pull request #1142 from Techatrix/iterate-asm
implement `iterateChildren` on asm
2023-04-17 23:03:15 +01:00
Techatrix
92eaa22c30 implement iterateChildren on asm 2023-04-17 23:03:54 +02:00
Lee Cannon
811de07706
Merge pull request #1141 from Techatrix/intern-pool
InternPool: add c_char type
2023-04-17 21:55:12 +01:00
Techatrix
c77e3cebeb update data files 2023-04-17 21:53:35 +01:00
Techatrix
31aec11b38 InternPool: add c_char type 2023-04-17 22:14:41 +02:00
Casey Banner
3ae56929fc
Implement $/setTrace and add --enable-message-tracing (#1135) 2023-04-16 12:04:42 -04:00
Jakub Konka
5457cec8da
update to latest zig: add c_char type (#1124)
* update to latest zig: add c_char type

* Bump version, add c_char to isTypeIdent
2023-04-13 22:02:18 -04:00
Lee Cannon
7978485aaf
Merge pull request #1116 from nullptrdevs/nested-struct-init
Nested struct init fields completion
2023-04-13 13:14:20 +01:00
Lee Cannon
fe4c9d5a8b
Merge pull request #1122 from arp242/prefer-text
Use plain text if the client tells zls it's preferred
2023-04-13 13:13:15 +01:00
Ali Chraghi
42d582c0a2 Update configuration.zig 2023-04-13 09:58:42 +01:00
Martin Tournoij
622efdcd6a
Use plain text if the client tells zls it's preferred
LSP clients send a list of supported formats for definition and
completion; the specification says "the order describes the preferred
format of the client."[1]

My client sends:

	'hover': {'contentFormat': ['plaintext', 'markdown']},

So it should prefer plaintext, using markdown if that's not supported by
the server. zls behaved slightly different: it would use Markdown if it
appears at all in the list of supported formats.

This fixes it so that it will use plain text if that appears before
'markdown' in the list.

[1]: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_hover
2023-04-13 07:33:43 +02:00
Techatrix
d2287816a7 disable assertions in smallestEnclosingSubrange 2023-04-12 23:44:39 +01:00
nullptrdevs
735f884394 Nested struct init fields completion 2023-04-05 10:57:06 -07:00
nullptrdevs
55b1aeb6f7
Avoid accessing inactive union fields in completeDot (#1115)
As reported on Discord by CodotakuYT:
```zig
fn populate(T: type, index: i32) T {
    _ = index;
    @typeInfo(T).struct.
}
```
```
thread 17384 panic: access of union field 'ast_node' while field 'param_payload' is active
C:\Users\taoua\zls\src\features\completions.zig:875:61: 0x7ff68070caac in completeDot (zls.exe.obj)
                const node_data = nodes_data[local_decl.decl.ast_node];
```
2023-04-05 10:28:21 -04:00