Commit Graph

1150 Commits

Author SHA1 Message Date
Auguste Rame
599c134593
Imports, cross-boundary resolution; can import std but dies on missing builtins / lang features 2022-11-08 14:37:13 -05:00
Auguste Rame
da00751726
Field access, function calls based on function value 2022-11-08 14:37:13 -05:00
Auguste Rame
779c3c0710
Hacky mess but it works (only if your function is the first root decl tho :P) 2022-11-08 14:37:13 -05:00
Auguste Rame
06e8756849
Add struct test 2022-11-08 14:37:13 -05:00
Auguste Rame
d2640a44ac
comptime interpreter moment 2022-11-08 14:37:01 -05:00
BratishkaErik
95f21d0d23
Add builtin data for 0.9.1 and 0.10.0 (#735)
* Add builtin data for 0.9.1

* Add builtin data for 0.10.0

* Update builtin data for master
2022-11-02 16:24:51 -04:00
Tom Cheng
af14067911 Fix crash when getting signature of optional
e.g. typing 'foo.?.bar(' crashes zls because it doesn't recognize ? as a
possible token as part of a function expression, and tries to call
getFieldAccessType with '.bar' instead.

The actual fix is the one line in src/signature_help.zig

getFieldAccessType was reworked to be more resilient to this type of
thing - the `undefined` value of `current_type.type.data` was being used
since it hit the `.period` branch first. This caused the crash.
2022-11-02 14:55:22 +00:00
musi-musi
2ae113ddcf
fixed jrpc config treating empty strings as non null (#727) 2022-10-30 00:30:03 -04:00
Techatrix
7a7576c06d
fix symbol references (#712)
* fix symbol references

* skip references for inline assembly
2022-10-29 04:37:52 -04:00
InKryption
51a7ae2274
Fix region folding off-by-one error (#726) 2022-10-28 16:59:33 -04:00
InKryption
7fe62147a3
Improve folding regions (#720) 2022-10-28 14:35:22 -04:00
Auguste Rame
ced6e97cc2
Fix build runner optional issue (#725) 2022-10-28 04:02:08 -04:00
Techatrix
862d30055a
fix cimport completion (#722) 2022-10-28 00:38:36 -04:00
Techatrix
bca02bfde5
fix invalid union access in build_runner.zig (#723) 2022-10-28 00:37:54 -04:00
Techatrix
88750d2529
fix allocator mismatch in tagStoreCompletionItems (#717) 2022-10-25 23:22:15 -04:00
Luca Sas
2a17590bf4
Added textDocument/foldingRange (#718)
* Added textDocument/foldingRange

* Added support for code regions

* Fixed warning message in foldingRangeHandler

Co-authored-by: LucaSas <sas.luca.alex@gmail.com>
2022-10-25 10:35:16 -04:00
Auguste Rame
5ddbf24d11
Fix diagnostics (#716) 2022-10-21 12:24:26 -04:00
Lee Cannon
6358c5b23e
Merge pull request #714 from Techatrix/fs-completion-fix
fix file system completion crash
2022-10-20 17:39:10 +01:00
Techatrix
a0723dbffd add missing semicolon 2022-10-20 18:25:06 +02:00
IntegratedQuantum
886cfeacb5
Replace @minimum and @maximum with @min and @max. (#713) 2022-10-19 18:26:12 -04:00
Techatrix
7c54ded487
Merge pull request #702 from Techatrix/document-store-refactor
DocumentStore refactor
2022-10-18 11:40:14 +02:00
Techatrix
2755d8d8b7 simplify dependency collection in references.zig 2022-10-17 21:20:27 +02:00
Techatrix
8fb7379d71 return null if file can't be read in documentstore 2022-10-17 20:46:31 +02:00
Techatrix
2158a201ad add separate function for loading handles with getOrLoadHandle 2022-10-17 20:43:11 +02:00
Techatrix
89be8e0211 return const Handle from getHandle 2022-10-17 20:33:37 +02:00
Techatrix
ba007b3558 fix tagStoreCompletionItems 2022-10-17 20:25:51 +02:00
Techatrix
4316524226 add more tracy calls in documentstore 2022-10-17 20:23:51 +02:00
Techatrix
9f688cf4ed simplify tagStoreCompletionItems 2022-10-17 20:20:34 +02:00
Techatrix
0cfc792849 load handles on demand instead of ahead of time 2022-10-16 17:26:06 +02:00
Techatrix
25ce5dd8aa undo DocumentStore constness changes 2022-10-16 17:17:40 +02:00
ryuukk
472e28ad5c
builtins also get their detailed label (#706) 2022-10-14 12:24:22 -04:00
ryuukk
cd887838f7
disable label details if client only support old lsp (#707) 2022-10-13 04:03:58 -04:00
IntegratedQuantum
62861193a6
Allow tabs for the indentation added by code actions. (#684)
* Allow tabs for the indentation added by the code actions feature (#673).

The previous implementation always assumed spaces for indentation.
But in stage2 code may contain tabs for indentation as well.

* Fix some edge cases, properly detect indentation(any amount of spaces) and move the indentation code inside `createDiscardText()`.
2022-10-12 22:41:27 -04:00
Techatrix
06ba47d460 improve document of DocumentStore.zig 2022-10-10 20:01:54 +02:00
Techatrix
aff2c3234f fix relative_builtin_path option 2022-10-10 19:43:50 +02:00
Techatrix
420e7f2fef correctly resolve import("builtin") 2022-10-10 19:22:54 +02:00
Techatrix
2bc83741fb update cimport diagnostic collection 2022-10-10 19:16:23 +02:00
Techatrix
d6ef330984 Merge branch 'master' into document-store-refactor 2022-10-10 19:07:15 +02:00
nullptrdevs
19fd17ff76
ability to highlight global variables (#655)
anything declared with "var" at the root level
2022-10-10 01:13:15 -04:00
Techatrix
e024a9ec38 finish document store garbage collection 2022-10-09 01:50:03 +02:00
Techatrix
ce7afe03f2 correctly exclude builtin.zig from build.zig search 2022-10-09 01:48:51 +02:00
Techatrix
4f27f075d7 revert timer removal 2022-10-09 00:38:05 +02:00
Techatrix
f060d09f7e correctly handle var decl without equal sign 2022-10-08 22:04:34 +02:00
Jonas Enlund
3833566790
Add missing .switch_case_inline, .switch_case_inline_one cases (#699)
* Add missing .switch_case_inline, .switch_case_inline_one cases

* Include inline semantic token

Co-authored-by: Auguste Rame <19855629+SuperAuguste@users.noreply.github.com>
2022-10-07 20:00:23 -04:00
Techatrix
5d748767e9 mark DocumentStore & Handle const 2022-10-05 13:40:11 +02:00
Techatrix
dab7eb81cc reimplement document store 2022-10-05 13:23:38 +02:00
Techatrix
b9a291b944
remove requests.Configuration (#696) 2022-09-30 20:47:40 -04:00
Techatrix
a9a1fad13e
remove types.TextDocument (#693)
* remove types.TextDocument

* resolve compile errors because of previous merge
2022-09-30 20:45:45 -04:00
skylla
a8fa5c68a7
Adds a 'format to camelCase' codeaction for function names (#679)
* adds reformatting to camelCase for function names

* removes useless +1 byte when allocating a string

* added some forgotten functionality

* fixes an issue caused by auto-fmt & changes action kind

* fixes several issues related to camelCase action

* fixes a bug if a fn name is all underscores

* sets camelCase action to quickfix

* sets camelCase action to sourceFixAll

* fixes a mischanged line
2022-09-30 00:05:25 -04:00
Techatrix
51356517a9
Self hosted fixes (#682)
* fix compiler errors when using self-hosted

* move parameters into builder struct

* simplify code when using self hosted

* fix stage2 error `cast discards const qualifier`

* correctly return after finding method

* fix position context tests on self hosted

* remove unnecessary comptime in position context tests
2022-09-30 00:04:55 -04:00
Techatrix
d030dd0993
improve conformance to the lsp (#687) 2022-09-30 00:04:27 -04:00
Lee Cannon
3c4535a321
support 0.9.1 (#691) 2022-09-29 15:48:37 -04:00
Vesim
32ce19f9a8
inlay_hints: implement ability to remove redundant hints (#690) 2022-09-29 14:36:29 -04:00
Lee Cannon
9f2ea75777
handle OptionsStep in build_runner (#686)
* handle `OptionsStep` in build_runner

* only reify `OptionsStep`s that have no dependencies
2022-09-29 14:33:30 -04:00
Techatrix
cf73771739
simplify Server.zig (#681)
* simplify Server.zig

* remove wrong default value in Server.zig
2022-09-29 14:01:38 -04:00
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
Auguste Rame
0f3eb1df36 Fix function snippets not working with details 2022-07-08 04:57:58 -04:00
Auguste Rame
a96532aa65 Add config option for unused vars 2022-07-08 04:26:31 -04:00
Auguste Rame
e5e76c8063 Add super basic unused variable support 2022-07-08 04:26:31 -04:00
Auguste Rame
acb339ab95
Merge branch 'master' into label_details_support 2022-07-07 03:15:05 -04:00
ryuukk
9101cc7c3f Put constants/imports at the top 2022-07-07 03:09:44 -04:00
ryuukk
2fdb05f783 Append the actual label so it can then be sorted a-z 2022-07-07 03:09:44 -04:00
ryuukk
03f27ef145 Make Kind public 2022-07-07 03:09:44 -04:00
ryuukk
1abf328947 Cleanup 2022-07-07 03:09:44 -04:00
ryuukk
64fe8a6b03 Add sortText to CompletionItem struct 2022-07-07 03:09:44 -04:00
ryuukk
b625eb763e Sort completion items 2022-07-07 03:09:44 -04:00
Lee Cannon
e9e4a15224 fix memory leak 2022-06-27 10:14:18 -04:00
Yuri Pieters
178e823d77 Ease debugging package loading from build_runner 2022-06-24 16:15:01 -04:00
ryuukk
c964c4545a
Add link to the note 2022-06-24 13:37:24 +02:00
ryuukk
64f525f95f
Implement label details support 2022-06-23 16:44:22 +02:00
ryuukk
803f89941b
Update request to enable label details support 2022-06-23 16:44:01 +02:00
ryuukk
2a181af823
Update types for label details support 2022-06-23 16:43:23 +02:00
Loris Cro
fc5b1c6457 fix off by one error in documentRange 2022-06-09 18:12:15 -04:00
Gerred Dillon
083dd5fbdf Remove duplicated deinit defer for GPA 2022-06-09 17:05:03 -04:00
Tw
769fecf9c8 only send format editings when necessary
If the original document is same as the formatted one, there's no need to send the unchanged
document's content back which will make the client confused.

Signed-off-by: Tw <tw19881113@gmail.com>
2022-06-08 22:54:17 -04:00
Riccardo Binetti
259f056bd2 Add support for Spacemacs
Add Spacemacs setup instructions to README and configuration wizard
2022-06-06 14:03:04 -04:00
Auguste Rame
29d2dd6802 Add tracy 2022-06-06 00:28:52 -04:00
Auguste Rame
2fc5047cbd Add tracy submodule 2022-06-06 00:28:52 -04:00
Gregory Anders
289d137d13 Ignore unimplemented notifications
Responding to an unimplemented notification can cause errors for some
LSP clients that do not expect to receive a response after sending a
notification. Differentiate between unimplemented requests and
notifications and only send a generic null response for the former while
silently ignoring the latter.
2022-06-05 17:26:56 -04:00
Auguste Rame
ebc6de9673 Remove zinput dependency 2022-06-05 13:36:43 -04:00
Auguste Rame
e320dbd651 Add builtin path to configuration struct 2022-06-05 13:36:28 -04:00
Vesim
f5fb4afd7c implement workspace/configuration 2022-06-05 13:36:28 -04:00
Auguste Rame
04611ba1a1
Fix build runner for latest Zig 2022-05-30 02:04:34 -04:00
Lee Cannon
4f04f7dac0
std.ChildProcess.init cannot error 2022-05-29 18:18:57 +01:00
Lee Cannon
106e3cd963
std.math.cast returns optional 2022-05-29 18:17:43 +01:00
Jarred Sumner
a3723c73b8 Fix missing doc comments in inline fn 2022-04-22 00:49:36 -07:00
v1nh1shungry
042b03a06a fix ast.lastToken() does not handle empty error_value 2022-04-20 14:49:52 +08:00
Meghan Denny
ca409941e0 update to zig master 0.10.0-dev.1679+d227f76af 2022-03-31 16:01:43 -07:00
Auguste Rame
14698c35c9
Merge pull request #455 from davidgm94/fix-zls-config-crash
Fix ZLS config not found crash #410
2022-03-24 13:12:33 -04:00
Auguste Rame
4e6564d7da
Merge pull request #467 from ikrima/fix-addrspace-section
fix: ast.lasttoken() does not handle addrspace section
2022-03-01 21:18:54 -05:00
ikrima
90195a6695 fix: ast.lasttoken() does not handle addrspace section 2022-02-28 16:08:56 -06:00
Josh Crisp
e38278d2a5 Skip char and string literals when highlighting comments 2022-02-15 16:52:08 -08:00
David Gonzalez Martin
a1f72d46e3 Fix ZLS config not found crash #410 2022-02-07 22:14:31 -06:00
Stephen Gutekanst
515cdd95a0 update for anytype field yeeting
Updates ZLS to account for the yeeting of anytype fields: https://github.com/ziglang/zig/pull/10766

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-02-02 22:00:31 -07:00
Auguste Rame
18a23c1aa2
Merge pull request #449 from novakne/patch-1
builtin_uri: Fix typo in log message
2022-02-01 19:16:35 -05:00
Sebastian Keller
472104c0e1 Fix build on zig master (0.10.0-dev.500+66cf011aa)
std.process.args() has a slightly different api now, breaking the build
on zig master.
2022-02-01 21:52:15 +01:00
Hugo Machet
fa946526c2
builtin_uri: Fix typo in log message 2022-01-28 12:04:20 +01:00
ikrima
ca8ca06da9 yolo: add type function symbols to outline
Questions:
- `getDocumentSymbolsInternal`: from looking at the code + cross referencing VSCode Api, looks like its just used to enumerate document symbols
  (call tree: `documentSymbol()->getDocumentSymbols()->getDocumentSymbolsInternal()`)
  - sanity check: are there any other places this modification needs to be propogated?
  - sanity check: specifically so that symbol resolve/rename/goto def/etc aren't broken?
- error handling: unsure what the pre/post conditions are of the parse tree when `getDocumentSymbolsInternal` is invoked
  so there might be superflous guards/checks
- any tests to add?
2022-01-12 03:25:26 -06:00
Auguste Rame
08f2638d6a
Merge pull request #445 from nektro/autocomplete-builtin
add a default option for `@import(builtin)`
2022-01-01 16:57:39 -05:00
Meghan Denny
09d51af161 handle AccessDenied when making 'builtin.zig' fill-in 2021-12-29 22:53:30 -08:00
Meghan Denny
54d8f3273c builtin_path might not be set if zig_exe_path isnt found 2021-12-29 21:17:44 -08:00
Meghan Denny
9006584835 uriFromImportStr expects a uri not a path 2021-12-29 21:08:13 -08:00
Meghan Denny
3fdab6c2fa add a default option for import(builtin) 2021-12-29 19:35:16 -08:00
Meghan Denny
7cacfe9a6a update builtin data for zig master 2021-12-29 22:25:03 -05:00
Meghan Denny
49cbbd1ebb add builtin data for 0.9.0 2021-12-29 22:24:34 -05:00
Auguste Rame
18569926a3 Fix compilation on latest Zig 2021-12-23 14:00:07 -05:00
Matthew Murray
cb4e742134
Update submodule to latest commit (#439) 2021-12-22 23:08:05 -05:00
Sirius902
dc94a5e317
c_void -> anyopaque (#437) 2021-12-20 19:05:54 -05:00
Marten Ringwelski
abe82f6069
build_runner: Require some paths to be given (#369)
We now require the following to ge given in the cli args:
- zig_exe
- build_root
- cache_root
- global_cache_root

This fixes the path for packages that use one or more from the above to place
their files.
2021-12-11 12:42:18 -05:00
Matthew Knight
14528db0b7
update known-folders for allocgate (#432)
* update known-folders for allocgate

* run workflow on all pushes and PRs
2021-12-06 18:04:18 -08:00
maxxnino
5fd35f7efe Fix zigtools/zls#389 2021-12-03 11:49:41 -05:00
Matt Knight
f9133ffdec allocgate defeated 2021-12-03 08:00:22 -05:00
MineBill
227dcb4650 Remove newline 2021-11-30 16:24:37 -05:00
MineBill
e469d8171f Fixes errors that are caused by using deprecated functions 2021-11-30 16:24:37 -05:00
Omar Alhammadi
12cda9b031 Change notification method in log
Currently in the log function in main, the notification method used to send logs to the client is "window/showMessage". This creates an a notification on the UI on VSCode that can cause slow downs. I propose a change to use the  "window/logMessage" method instead, which is intended to be used for logging.
2021-11-04 19:35:49 -04:00
Omar Alhammadi
d4b6b97c01 temporary fix to issue #413 with #412 not building on release-safe. 2021-11-03 07:03:17 -04:00
Ryan Liptak
4d6d842fa5 Update Sublime LSP settings for Sublime Text 4
"selector" is now the preferred method of configuration, everything else was deprecated in SublimeLSP 4070-1.1.0: https://github.com/sublimelsp/LSP/releases/tag/4070-1.1.0

Also syncs setup.zig with the readme for the Sublime Text 3 settings (the Zig Language package name was wrong in setup.zig)
2021-11-02 22:14:58 -04:00
Omar Alhammadi
3531237afe Added build option log_level to allow the user to set the default log level for release builds. 2021-11-02 22:13:53 -04:00
antlilja
80f09831bc Remove use of notice log level
Removes the use of the notice log level.
Cleans up resulting code, the if else statement with nested switches was
converted into a single switch statement with the same behaviour, but
without relying on the enumToInt builtin.
2021-10-26 17:01:06 -04:00
Benjamin Feng
0f65093812 Fix off-by-one deinit on DocumentStore 2021-10-24 01:02:52 -04:00
Meghan Denny
04edc7a2d5 remove all use of usingnamespace 2021-10-19 19:26:57 -07:00
Meghan Denny
caaec2bcfd lsp- alias []const u8 -> string so its closer to docs 2021-10-19 19:26:57 -07:00
Meghan Denny
9ceaf90657 add reference for which lsp version we're targetting 2021-10-19 19:26:57 -07:00
Meghan Denny
e18003ff86 rename another top level fields file 2021-10-19 19:26:57 -07:00
Meghan Denny
737a9dc008 remove some dead code 2021-10-19 19:26:57 -07:00
Meghan Denny
3f92120fbe fix missing double reference 2021-10-19 19:26:57 -07:00
Meghan Denny
aae82d29bd fix capitalization of top level fields structs 2021-10-19 19:26:57 -07:00
Meghan Denny
91c8ffb38c fully qualify std.debug.assert references 2021-10-19 19:26:57 -07:00
Meghan Denny
8d46ceff07 use an enum for zig version 2021-10-19 19:26:57 -07:00
Lee Cannon
b88a95a617 Update submodule 2021-10-11 09:21:24 +01:00
Lee Cannon
90f8109639 Update to use @import("builtin") where required 2021-10-07 12:53:31 +01:00
Meghan Denny
b63339e350 remove Tree when it was the same as Ast 2021-09-30 18:57:45 -07:00
Meghan Denny
3c1152a536 use empty string for empty []const u8 2021-09-30 18:47:48 -07:00
Meghan Denny
164e078dbb collapse some std imports 2021-09-30 18:47:19 -07:00
Meghan Denny
86e370add0 include anytype in list of primitive types 2021-09-30 18:46:53 -07:00
Meghan Denny
0406f7cc93 ensure uN and iN types are clamped to 0-65535 2021-09-30 18:46:35 -07:00
Meghan Denny
50022e5d24 analysis- clean up isTypeIdent 2021-09-30 18:46:14 -07:00
Meghan Denny
4bc8b92e19 collapse more fn signatures 2021-09-30 18:45:45 -07:00
Meghan Denny
43796f6326 uri- add link to rfc 2021-09-30 18:44:23 -07:00
Meghan Denny
9e0f201283 finish rename of usage of std.zig.Ast 2021-09-30 18:44:06 -07:00
Meghan Denny
dc8affe122 add builtin data for 0.8.0 and 0.8.1 2021-09-30 17:53:14 -07:00
Meghan Denny
a75276defc update master data 2021-09-30 17:52:56 -07:00
Meghan Denny
7c209a8404 condese small expanded things 2021-09-30 17:52:36 -07:00
Meghan Denny
8390aaa70b use zinput as a package 2021-09-30 17:52:15 -07:00
Meghan Denny
ad8d75b613 use single line method signatures 2021-09-30 17:51:51 -07:00
Meghan Denny
f482950f5f fix imports to use ./ for relative usage 2021-09-30 17:48:40 -07:00
Travis Staloch
50aa71c10f support new ast token changes
- some ast token tags were renamed: ie .bit_shift_left => .shl
- add initial support for saturating operators: +|, -|, *|, <<|, +|=, -|=, *|=, <<|=
2021-09-28 21:15:37 -07:00
pyxel
03f70be32a refactor: update ast with addrspace changes 2021-09-21 17:32:32 -04:00
Sashiri
6c39966967 Update zinput 2021-09-04 22:08:04 +02:00
Sashiri
fed1c4c2c6 usingnamespace semantics update
+ Ast changes adjustments
2021-09-04 21:25:35 +02:00
Lee Cannon
2ffd93280e remove deleted keywords 2021-08-30 13:54:27 +01:00
Sage Hane
5ddb92b865
Update "known-folders" submodule 2021-08-17 19:22:16 +09:00
Bodie Solomon
d25abb1055
Fix #372: catch up to zig master 05fd20dc 2021-08-09 12:14:20 -04:00
Auguste Rame
3172717af8 Update master data file 2021-07-27 11:15:02 -04:00
Alexandros Naskos
70cfba0eb9
Fixed unit tests 2021-07-10 20:05:16 +03:00
Alexandros Naskos
bba069526c
Fix build for zig master by inserting null terminators when tokenizing and resetting them when needed 2021-07-10 19:58:37 +03:00
Sizhe Zhao
86d49acdb0 Introducing new method of generating data files
A new file src/data/generate-data.py has been added.
It is written in Python 3 and has some new features like:
- It doesn't need Chrome to work, the script fetches the page automatically;
- It does the translation of HTML tags for better user experiences in editors.
In addition, a new section has been added to README.md to reflect this change.
2021-07-10 21:21:54 +08:00
Sizhe Zhao
14a70a38af Update master data 2021-07-09 23:45:48 +08:00
Sizhe Zhao
c3c4eb9c9d Update src/data/generate-data.js to translate code tags 2021-07-09 23:45:00 +08:00
Lee Cannon
62d287e518 Handle tag moved backwards without logging 2021-06-26 20:56:22 +01:00
Lee Cannon
7fb05da5a1 Update known-folders submodule 2021-06-24 12:31:35 +01:00
Lee Cannon
ac4b198869 Update to zig master
Redundant comptime, unused locals, unused function params, unused captures

As issue with @"type" resolving to the keyword type
2021-06-24 11:38:01 +01:00
Alexandros Naskos
bcfd7c6392
Merge pull request #344 from leecannon/per_build_config
Attempt at per build.zig config
2021-06-18 16:40:42 +03:00
Lee Cannon
154a2a8704 Add a per build.zig configuration file. 2021-06-18 13:22:37 +01:00
Lee Cannon
c2cbc05135 Fix index of of range 2021-06-18 12:58:15 +01:00
Alexandros Naskos
a02c1e7996
Build runner: Only output generated package path if it is available 2021-06-16 14:47:54 +03:00
Lee Cannon
1178ebd2e2
More changes to std.build :) 2021-06-15 21:15:55 +01:00
Lee Cannon
a077cf901d
Update build_runner.zig
I'm not 100% sure if the `GeneratedFile`'s path will have been resolved when this code runs or if this will hit the panic inside `getPath()` as I havent had a chance to actually mess about with the new functionality.
2021-06-12 23:06:48 +01:00
Alexandros Naskos
b756ed4da5
Fixed HashMap usage for latest master stdlib 2021-06-04 14:06:11 +03:00
Frank Denis
df9560db51 Update for -master
fn_proto.extern_export_token -> fn_proto.extern_export_inline_token

And update the data by the way.
2021-05-23 18:01:03 +02:00
Lee Cannon
584faec5de Call in build_runner 2021-05-13 21:29:05 +01:00
Alexandros Naskos
7fb7cdc36c
Fix std.testing.expectEqualStrings invocation for latest zig master build. 2021-05-13 17:53:53 +03:00
Alexandros Naskos
759a7b7fd9
No longer show completions for declarations in aggregate types when
field accessing instances of those types.
2021-05-08 19:30:22 +03:00
Alexandros Naskos
5631b8d202
Fix semantic token generation for container fields with a byte alignment 2021-05-08 19:11:26 +03:00
Alexandros Naskos
14dc9d1b51
Don't use the build runner path as the build runner cache path if present >.> 2021-05-08 18:48:36 +03:00
四光年
d4551030c4 [bug-fix]hover struct field not show docs. 2021-05-07 17:10:13 +08:00
Alexandros Naskos
937471d27b
Added --config-path option 2021-05-03 16:07:53 +03:00
Alexandros Naskos
91643c04c9
Fixed integer overflow in semantic_tokens.Builder.handleComments 2021-05-03 15:36:29 +03:00
Alexandros Naskos
ab8c65eeda
Fixed highlighting of comments before the first token and after the last token of the last valid AST node 2021-05-03 15:14:11 +03:00
Jonathan Hähne
e1c8e5d407 Undo stupidity & run zig fmt 2021-05-02 20:23:26 +02:00
Jonathan Hähne
807bd6a571 Simplify semantic_tokens, fix off-by-one error in identifierFromPosition 2021-05-02 19:59:17 +02:00
Ryan Roden-Corrent
ec34db0618
Fix small typo in comment. 2021-04-23 06:50:13 -04:00
Alexandros Naskos
23454e111c
Make semantic_tokens use @asyncCall instead of a stack again. 2021-04-19 17:17:46 +03:00
Jonathan Hähne
f61c9d8d4f Run zig fmt 2021-04-15 18:17:06 +02:00
Jonathan Hähne
b90c9b49ac Fix inclusion of toplevel doc comments, remove @async recursion in
writeNodeTokens, add a few regression tests
2021-04-15 11:07:43 +02:00
Jonathan Hähne
bb493c037a Add proper range check
Whoops
2021-04-07 17:26:50 +02:00
Jonathan Hähne
0b2d633e1e Support "catch" scopes 2021-04-07 15:42:33 +02:00
Jonathan Hähne
0e4f4c1e04 Improve testing infrastructure
It should now be a bit easier to set up a test and see how it failed.
2021-04-07 15:10:18 +02:00
Jonathan Hähne
b59db79a05 Refactor makeScopeInternal 2021-04-07 09:21:01 +02:00
Jonathan Hähne
45c7f9671c Merge some cases of resolveTypeOfNodeInternal 2021-04-06 18:38:17 +02:00
Alexandros Naskos
ea1ad532a2
More lastToken improvements 2021-04-06 17:16:50 +03:00
Alexandros Naskos
f6bc380b95
Fixed lastToken for fn_proto_multi nodes 2021-04-05 20:01:03 +03:00
Alexandros Naskos
6d13591d02
Merge branch 'master' of github.com:zigtools/zls 2021-04-05 19:45:12 +03:00
Alexandros Naskos
4b0d86f0bc
Fixed lastToken when called on function prototypes with no return type 2021-04-05 19:44:45 +03:00
Benjamin Tan
36ea1975bd
Standardize insertText to be above insertTextFormat 2021-04-05 22:27:56 +08:00
Benjamin Tan
33f03d36a5
completion: Add insertText field for enum completions
Another bug with the older version of lsp-mode on Emacs prevents the
label from being inserted when there is an empty `insertText`. This
commit adds an `insertText` property to enum completions for consistency
with the rest of the completion items.
2021-04-05 22:27:56 +08:00
Alexandros Naskos
902c91e98f
Pass the correct handle to hasSelfParam in bound type parameter evaluation code 2021-04-05 14:52:41 +03:00
Tau
b03fb5ffe3
Fix stack overflow and clean up a bit of resolveTypeOfNode (#297) 2021-04-05 14:46:05 +03:00
Alexandros Naskos
d397f1119e
Merge branch 'master' of github.com:zigtools/zls 2021-04-05 11:59:05 +03:00
Alexandros Naskos
2770321a61
Use a null filterText instead of an empty string by default 2021-04-05 11:58:41 +03:00
Tau
fc51dac30e
Fix stack overflow in resolveUse and int overflow in lookupSymbolGlobal 2021-04-05 01:35:33 +03:00