summaryrefslogtreecommitdiff
path: root/cli/lsp/language_server.rs
AgeCommit message (Collapse)Author
2021-03-24feat(lsp): implement textDocument/selectionRange (#9845)Jean Pierre
Ref: #8643
2021-03-16refactor(lsp): refactor completions and add tests (#9789)Kitson Kelly
2021-03-15Revert "fix(cli/module_graph): Set useDefineForClassFields to true" (#9792)Ryan Dahl
Backwards incompatible change cannot be made in-between patch releases. This commit broke std tests https://github.com/denoland/deno_std/runs/2112369372 This reverts commit c4709834b37640fd3c9d492123e6add904546573.
2021-03-15fix(cli/module_graph): Set useDefineForClassFields to true (#9774)Nayeem Rahman
Fixes #9773
2021-03-10fix(lsp): diagnostics use own thread and debounce (#9572)Kitson Kelly
2021-02-25feat(runtime): stabilise permissions and add event target capabilities (#9573)Kitson Kelly
2021-02-25reafactor(lsp): use generics with JSON values (#9587)Kitson Kelly
2021-02-18fix(lsp): handle data URLs properly (#9522)Kitson Kelly
Fixes #9514 Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-02-18fix(lsp): document spans use original range (#9525)Kitson Kelly
Fixes: #9444 Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-02-17Make ModuleSpecifier a type alias, not wrapper struct (#9531)Ryan Dahl
2021-02-16feat(lsp): Implement `textDocument/signatureHelp` (#9330)Yuki Tanaka
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-02-15fix(lsp): handle cached type dependencies properly (#9500)Kitson Kelly
2021-02-12fix(lsp): properly handle static assets (#9476)Kitson Kelly
2021-02-12chore: Update to Rust 1.50.0 (#9479)Kitson Kelly
2021-02-12feat(lsp): add deno cache code actions (#9471)Kitson Kelly
2021-02-10fix(lsp): handle type deps properly (#9436)Kitson Kelly
Fixes #9425
2021-02-09fix(lsp): handle code lenses for non-documents (#9454)Kitson Kelly
2021-02-08fix(lsp): prepare diagnostics when the config changes (#9438)Kitson Kelly
2021-02-08feat(lsp): add implementations code lens (#9441)Kitson Kelly
2021-02-08feat(lsp): add asset cache regression testKitson Kelly
When we migrated away from all the locks, there was a regression that was not caught immediately. The tsc::get_asset() would attempt to modify the snapshot, but the problem was that the snapshot was a .clone() of the inner language server's assets, which meant that modifications to that where lost. When we then attempted to do a hover on those assets, the inner language servers assets didn't have the retrieved asset, and therefore would throw an error.
2021-02-08fix(lsp): DRY asset cache lookup logicBen Noordhuis
2021-02-08fix(lsp): fix asset cache lookup regressionBen Noordhuis
Commit 2828690fc ("fix(lsp): fix deadlocks, use one big mutex") from last month introduced a regression in asset cache lookups where results of lazy caching were lost due to operating on a copy of the asset cache. This commit fixes that by copying the asset from the copy to the real cache.
2021-02-08fix(lsp): remove Sources mutexBen Noordhuis
The mutex was used to hide the fact that the Sources object mutates itself when it's queried. Be honest about that and mark everything that directly or indirectly mutates it as `mut`. This is a follow-up to commit 2828690fc7bb510c3248dda7b1cda8793e789ca6 from last month ("fix(lsp): fix deadlocks, use one big mutex (#9271)")
2021-02-06fix(lsp): support codeAction/resolve (#9405)Kitson Kelly
2021-02-05fix(cli/lsp): fix using jsx/tsx when not emitting via tsc (#9407)Kitson Kelly
Closes #9308 Closes #9023 Closes #8993
2021-02-05feat(lsp): add TS quick fix code actions (#9396)Kitson Kelly
2021-02-01feat(lsp): add references code lens (#9316)Kitson Kelly
2021-01-29Update lspower dependency (#9179)hvithrafn
2021-01-27feat(lsp): add performance measurements (#9209)Kitson Kelly
2021-01-27fix(lsp): handle mbc properly when formatting (#9273)Kitson Kelly
2021-01-26chore: update crates (#9251)Luca Casonato
Updates SWC, dprint, deno_lint, deno_doc, serde, and Tokio (to 1.1.0). Co-authored-by: Kitson Kelly <me@kitsonkelly.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-01-26fix(lsp): fix deadlocks, use one big mutex (#9271)Ben Noordhuis
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-26fix(lsp): reduce deadlocks with in memory documents (#9259)Kitson Kelly
2021-01-22fix(lsp): handle mbc documents properly (#9151)Kitson Kelly
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2021-01-16refactor(lsp): don't duplicate fields present in DocumentSpan (#9131)Hirochika Matsumoto
2021-01-13feat(lsp): Add textDocument/implementation (#9071)Hirochika Matsumoto
Ref #8643
2021-01-11chore: update copyright to 2021 (#9092)Yusuke Tanaka
2021-01-05fix(lsp): Respect client capabilities for config and dynamic registration ↵Valentin Anger
(#8865)
2020-12-31feat(lsp): support specifying a tsconfig file (#8926)Kitson Kelly
2020-12-30feat(lsp): add cache command (#8911)Kitson Kelly
2020-12-30fix(lsp): handle ts debug errors better (#8914)Kitson Kelly
Fixes #8864
2020-12-30feat(lsp): Implement textDocument/rename (#8910)hrsh7th
2020-12-24fix(lsp): provide diagnostics for unresolved modules (#8872)Kitson Kelly
2020-12-22feat(lsp): support the unstable setting (#8851)Kitson Kelly
2020-12-22fix(lsp): respect enable flag for requests (#8850)Kitson Kelly
2020-12-21refactor: rewrite lsp to be async (#8727)Luca Casonato
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>