Commit graph

158 commits

Author SHA1 Message Date
Kitson Kelly 26f5c223df
fix(lsp): properly display x-deno-warning with redirects (#13554)
Fixes: #13472
2022-02-02 13:04:26 +11:00
Kitson Kelly 7d356250e8
refactor: integrate deno_graph breaking changes (#13495)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-02-01 09:33:57 +11:00
David Sherret a2e4fa471b
fix(lsp): regression where certain diagnostics were showing for disabled files (#13530) 2022-01-29 17:50:15 -05:00
David Sherret 2f72c44e1d
fix(lsp): independent diagnostic publishing should include all diagnostic sources on each publish (#13483) 2022-01-24 18:04:24 -05:00
David Sherret bc8de78da3
perf(lsp): independent diagnostic source publishes (#13427) 2022-01-24 15:30:01 -05:00
David Sherret f73a5fbc89
refactor(lsp): reduce data stored in StateSnapshot (#13426) 2022-01-19 17:10:14 -05:00
David Sherret 1ab5dea367
refactor(lsp): remove performance from StateSnapshot (#13403) 2022-01-17 17:09:43 -05:00
Ryan Dahl 1fb5858009
chore: update copyright to 2022 (#13306)
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-07 22:09:52 -05:00
Kitson Kelly e28fb70aee
fix(lsp): provide diagnostics for import assertions (#13105)
Fixes: #13099
2021-12-16 14:53:17 +11:00
David Sherret 6c324acf23
feat: REPL import specifier auto-completions (#13078) 2021-12-15 13:23:43 -05:00
Bartek Iwańczuk e68a241946
chore: upgrade lspower to 1.4.0 (#12894) 2021-11-25 12:10:12 +11:00
David Sherret adc5974333
fix(lsp): lsp should respect include/exclude files in format config (#12876) 2021-11-24 15:14:19 -05:00
David Sherret 0f90b4665a
chore(lsp): fix possible race condition with tests expecting 3 publishDiagnostics messages (#12868)
The tests expect 3 publish notifications. It was possible for less than 3 to occur if two or more tasks set the diagnostics in the collection, exited the lock at the same time, then called `publish_diagnostics`
2021-11-23 20:04:27 -05:00
David Sherret 51e3db956a
fix(cli): config file should resolve paths relative to the config file (#12867)
* Add `specifier_to_file_path` to support converting a ModuleSpecifier with a unix-style path to a PathBuf on Windows.
2021-11-23 10:38:11 -05:00
igorsaux 3abe31252e
fix(lsp): use lint exclude files list from the config file (#12825) 2021-11-22 18:10:33 -05:00
David Sherret c82ce74133
refactor(lsp): remove Documents mutex and require Documents to be mutated to change it (#12747) 2021-11-18 13:50:24 -05:00
Kitson Kelly 14f83da221
fix(lsp): tag deprecated diagnostics properly (#12801) 2021-11-18 13:05:20 +11:00
Kitson Kelly cc38580106
fix(lsp): retain module dependencies when parse is invalid (#12782)
Fixes #12753
2021-11-17 09:23:25 +11:00
Ryan Dahl b2036a4db7
refactor: re-export anyhow from deno_core (#12777) 2021-11-16 09:02:28 -05:00
David Sherret 28dbb4a95e
refactor(lsp): prefer using document instead of documents collection (#12720) 2021-11-12 11:42:04 -05:00
Bert Belder f1b1a3f389
refactor: move mod tokio_util to runtime (#12332)
This avoids a bunch of duplicated code.
2021-11-08 12:49:11 -08:00
Kitson Kelly 34a9ddff09
refactor(lsp): use deno_graph and single document struct (#12535)
Closes #12473
2021-10-29 10:56:01 +11:00
Bartek Iwańczuk f332d72f16
fix(lsp): lint diagnostics respect config file (#12338)
This commit fixes problem with LSP where diagnostics coming
from "deno lint" don't respect configuration file.

LSP was changed to store "Option<ConfigFile>", "Option<LintConfig>"
and "Option<FmtConfig>" on "Inner"; as well as storing "Option<LintConfig>"
and "Option<FmtConfig>" on "StateSnapshot".

Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-10-12 00:02:33 +02:00
David Sherret 2c2e3ec1ca
refactor(lsp): use deno_ast and cache swc ASTs (#11780) 2021-09-07 10:39:32 -04:00
Yusuke Tanaka 8f00b5542c
chore: upgrade Rust to 1.54.0 (#11554) 2021-07-30 15:03:41 +02:00
Kitson Kelly 72ac9c3ae0
fix(lsp): handle importmaps properly (#11496)
Fixes: #11146
Fixes: #11456
Fixes: #10439
2021-07-25 15:33:42 +10:00
Kitson Kelly 844a1317ec
fix(#10775): diagnostics update on dependency changes (#10817)
Fixes #10775
2021-06-03 21:13:53 +10:00
Kitson Kelly 473713c621
fix(#10815): lsp only responds to formatting for md, json, jsonc (#10816)
Fixes #10815
2021-06-02 20:29:58 +10:00
Kitson Kelly cd4194a5e4
feat(lsp): diagnostics for deno types and triple-slash refs (#10699)
Fixes #9823
2021-05-25 12:34:01 +10:00
Kitson Kelly 014d8d51c0
fix(lsp): re-enable the per resource configuration without a deadlock (#10625)
Fixes #10603
2021-05-20 19:56:48 +10:00
Kitson Kelly 91decbfabf
fix(#10695): deps diagnostics include data property (#10696)
Fixes #10695
2021-05-19 22:28:23 +10:00
Kitson Kelly 12bfdef62c
feat(lsp): provide X-Deno-Warning as a diagnostic (#10680)
Closes #9932
2021-05-18 20:19:52 +10:00
Satya Rohith d69a5fbe1a
feat(lsp): support formatting json and markdown files (#10180)
Resolves #9447
Resolves #9415
2021-05-18 16:35:46 +10:00
Kitson Kelly 41a3b17de4
fix(lsp): remove code_action/diagnostics deadlock (#10555)
Landed without test to meet 1.10.0 deadline. See #10587.
2021-05-11 10:43:00 -04:00
Kitson Kelly 81f8585643
feat(lsp): add internal debugging logging (#10438)
Ref: #10368
2021-05-11 14:54:10 +10:00
Kitson Kelly 84733d90c7
feat: support workspace folders configuration (#10488)
Ref #8643
2021-05-10 11:16:04 +10:00
Kitson Kelly c709f5df36
refactor(lsp): publish diagnostics independently (#10525)
Resolves #10518
2021-05-07 21:05:32 +10:00
Ryan Dahl f46e39c5c5
remove macro_use (#9884) 2021-03-26 12:34:25 -04:00
Yusuke Tanaka e7954413e1
upgrade: Rust 1.51.0 (#9895) 2021-03-25 19:17:37 +01:00
Bert Belder fb5a2786ec
refactor(lsp): slightly reorganize diagnostics debounce logic (#9796)
This patch doesn't actually fix the bug I was hoping to fix, which is
that `update_diagnostics()` sometimes gets called even when there are
more updates that should be processed first. I did eventually figure out
that this issue is caused by Tokio's cooperative yielding, which
currently can't be disabled.

However overall it makes the debounce code somewhat more readable IMO,
which is why I'm suggesting to land it anyway.
2021-03-18 21:26:41 +01:00
Kitson Kelly a020ebde2d
fix(lsp): diagnostics use own thread and debounce (#9572) 2021-03-10 13:41:35 +11:00
Kitson Kelly 2225e83da2
fix(lsp): handle data URLs properly (#9522)
Fixes #9514

Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-02-18 15:37:05 +11:00
Ryan Dahl c7dabc99ee
Make ModuleSpecifier a type alias, not wrapper struct (#9531) 2021-02-17 13:47:18 -05:00
Kitson Kelly 79916226b7
fix(lsp): properly handle static assets (#9476) 2021-02-12 22:49:42 +11:00
Kitson Kelly d6c05b09dd
feat(lsp): add deno cache code actions (#9471) 2021-02-12 15:17:48 +11:00
Kitson Kelly 6752be05cd
fix(lsp): handle type deps properly (#9436)
Fixes #9425
2021-02-10 09:46:12 +11:00
hvithrafn 013b8fe606
Update lspower dependency (#9179) 2021-01-29 14:34:33 -05:00
Kitson Kelly 8b6893438a
fix(lsp): complete list of unused diagnostics (#9274) 2021-01-26 21:55:59 +11:00
Ben Noordhuis 2828690fc7
fix(lsp): fix deadlocks, use one big mutex (#9271)
The LSP code had numerous places where competing threads could take out
out locks in different orders, making it very prone to deadlocks.
This commit sidesteps the entire issue by switching to a single lock.

The above is a little white lie: the Sources struct still uses a mutex
internally to avoid having to boil the ocean (because being honest about
what it does involves changing all its methods to `&mut self` but that
ripples out extensively...) I'll save that one for another day.
2021-01-26 10:55:04 +01:00
Kitson Kelly 2b4e0be43c
fix(lsp): reduce deadlocks with in memory documents (#9259) 2021-01-26 10:47:12 +11:00
Kitson Kelly 1a9209d1e3
fix(lsp): handle mbc documents properly (#9151)
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-01-22 21:03:16 +11:00
Yusuke Tanaka d8fd71afdf
chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
Kitson Kelly 587155f86d
feat(lsp): support specifying a tsconfig file (#8926) 2020-12-31 14:33:44 +11:00
Kitson Kelly 8011eced14
feat(lsp): add cache command (#8911) 2020-12-30 15:17:17 +11:00
Kitson Kelly e8a81724bb
fix(lsp): handle ts debug errors better (#8914)
Fixes #8864
2020-12-30 12:46:58 +11:00
Kitson Kelly a4d557126e
fix(lsp): provide diagnostics for unresolved modules (#8872) 2020-12-24 21:53:03 +11:00
Luca Casonato bd85d0ed42
refactor: rewrite lsp to be async (#8727)
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2020-12-21 08:44:26 -05:00
Kitson Kelly 301d3e4b68
feat: add mvp language server (#8515)
Resolves #8400
2020-12-07 21:46:39 +11:00