David Sherret
015ea60d25
fix(lsp): don't pre-load documents matched in the config file's "exclude" ( #19431 )
...
This prevents documents specified in a deno.json's "exclude" from being
pre-loaded by the lsp.
For example, someone may have something like:
```jsonc
// deno.json
{
"exclude": [
"dist" // build directory
]
}
```
2023-06-13 15:48:53 -04:00
David Sherret
39bf1d2fd5
fix(lsp): update import map config when deno.json changes ( #19476 )
...
Half of #19468
2023-06-13 09:24:22 -04:00
David Sherret
7f15126f23
chore(tests): test_util - Add PathRef
( #19450 )
...
This adds a new `PathRef` struct to test_util for making it easier to
work with paths in test code. I'm going to expand on this more in the
future.
2023-06-10 11:09:45 -04:00
Leo Kettmeir
08bd23970d
feat: add more options to Deno.inspect ( #19337 )
...
For https://github.com/denoland/deno_std/issues/3404
---------
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2023-06-05 12:25:47 +02:00
David Sherret
25cbd97ab7
chore(lsp/tests): diagnostic synchronization (reland) ( #19270 )
...
Merge on approval as it fixes the flaky test.
2023-05-26 08:10:18 +02:00
Bartek Iwańczuk
7ae55e75d8
Revert "chore(lsp/tests): diagnostic synchronization ( #19264 )" ( #19268 )
...
This reverts commit 89026abe39
.
This change caused LSP benchmarks to fail on `main`.
2023-05-26 04:31:54 +00:00
David Sherret
89026abe39
chore(lsp/tests): diagnostic synchronization ( #19264 )
...
Fixes the flaky lsp test by having better synchronization of diagnostics
between the client and server for testing purposes.
2023-05-26 05:01:33 +02:00
Hirotaka Tagawa / wafuwafu13
114ec3c1f7
feat(ext/fs): add isBlockDevice, isCharDevice, isFifo, isSocket to FileInfo ( #19008 )
...
`isFile`, `isDirectory`, `isSymlink` are defined in `Deno.FileInfo`, but
`isBlockDevice`, `isCharacterDevice`, `isFIFO`, `isSocket` are not
defined.
---------
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-05-24 21:18:13 +02:00
David Sherret
bb37dfb5b7
feat(lsp): support lockfile and node_modules directory ( #19203 )
...
This adds support for the lockfile and node_modules directory to the
lsp.
In the case of the node_modules directory, it is only enabled when
explicitly opted into via `"nodeModulesDir": true` in the configuration
file. This is to reduce the language server automatically modifying the
node_modules directory when the user doesn't want it to.
Closes #16510
Closes #16373
2023-05-22 21:28:36 -04:00
Yoshiya Hinosawa
6bea6b31d3
fix(dts): move BroadcastChannel type to lib.deno.unstable.d.ts ( #19108 )
2023-05-14 20:27:14 +09:00
David Sherret
28a72d5488
feat(lsp): ability to configure document pre-load limit ( #19097 )
...
Adds a `deno.preloadLimit` option (ex. `"deno.preloadLimit": 2000`)
which specifies how many file entries to traverse on the file system
when the lsp loads or its configuration changes.
Closes #18955
2023-05-11 17:17:14 -04:00
Kenta Moriuchi
2dc2016837
feat(ext/url): URL.canParse
( #18286 )
2023-04-04 13:34:12 +02:00
Yoshiya Hinosawa
6d68392f8a
Revert "fix(cli): don't store blob and data urls in the module cache ( #18261 )" ( #18572 )
...
This reverts commit b4c61c146a
.
cc @nayeemrmn
2023-04-03 21:05:39 +09:00
David Sherret
87ccd4bcd1
fix(lsp): better handling of data:
urls ( #18527 )
...
1. Log instead of error when the referrer can't be found
2. Fixes typescript to resolve data urls correctly. Properly documented
here:
https://github.com/denoland/TypeScript/pull/4/files#diff-180da7c288743d11d8590d30f0c07c48e5dcf291aa671bbea0dd520a9a1359d2
Closes #18524
2023-03-31 16:48:18 +00:00
David Sherret
7722014497
fix(lsp): include all diagnosable documents on initialize ( #17979 )
...
Closes https://github.com/denoland/vscode_deno/issues/797
Closes https://github.com/denoland/deno/issues/11190
Closes https://github.com/denoland/vscode_deno/issues/811
Closes https://github.com/denoland/vscode_deno/issues/761
Closes https://github.com/denoland/vscode_deno/issues/585
Closes https://github.com/denoland/vscode_deno/issues/561
Closes https://github.com/denoland/vscode_deno/issues/410
2023-03-30 17:47:53 -04:00
David Sherret
c4f82cab31
fix(lsp): textDocument/references
should respect includeDeclaration
( #18496 )
2023-03-30 16:15:21 +00:00
Bartek Iwańczuk
ceab7a8d23
test(lsp): make lsp_completions_auto_import more robust ( #18482 )
...
A completely unrelated change in
https://github.com/denoland/deno/pull/18286 threw of this test.
These changes make it more robust and easier to update in such cases.
2023-03-28 23:58:12 +02:00
David Sherret
64f491422b
fix(lsp): ensure enablePaths
works when clients do not provide a trailing slash for workspace dir ( #18373 )
...
Closes https://github.com/denoland/vscode_deno/issues/827
2023-03-23 01:58:38 +00:00
David Sherret
2fcf1f14cf
feat: TypeScript 5.0.2 (except decorators) ( #18294 )
...
This upgrades TypeScript to 5.0.2, but does not have ES decorator
support because swc does not support that yet.
2023-03-21 15:46:40 +00:00
David Sherret
7070b8ed50
fix(lsp): avoid calling client while holding lock ( #18197 )
2023-03-15 14:34:23 +00:00
David Sherret
47012bd931
refactor(tests/lsp): consolidate more into test LspClient and reduce verbosity ( #18100 )
2023-03-09 15:09:03 -05:00
David Sherret
25d98ca289
refactor(lsp): improve test client initialization ( #18015 )
2023-03-08 23:15:20 +00:00
Nayeem Rahman
273777f7d9
fix(check): include dts files in tsc roots ( #18026 )
2023-03-05 12:47:04 -05:00
Leo Kettmeir
7f23063329
fix: revert lsp related internal specifiers ( #17673 )
...
To fix reports of breakage from #17655
2023-02-06 22:49:49 +01:00
Leo Kettmeir
84a96110cd
refactor: rename deno
specifiers to internal
( #17655 )
2023-02-05 17:49:20 +01:00
David Sherret
fe11df09b1
fix(lsp): update document dependencies on configuration change ( #17556 )
2023-01-28 10:18:32 -05:00
David Sherret
2b247be517
fix: ensure "fs" -> "node:fs" error/quick fix works when user has import map ( #17566 )
...
Closes #17563
2023-01-27 22:36:23 +00:00
David Sherret
f5840bdcd3
chore: upgrade to Rust 1.67 ( #17548 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-01-27 10:43:16 -05:00
Bartek Iwańczuk
c6c8c91a6e
feat: embed import map in the config file ( #17478 )
...
This commit changes handling of config file to enable
specifying "imports" and "scopes" objects effectively making
the configuration file an import map.
"imports" and "scopes" take precedence over "importMap" configuration,
but have lower priority than "--importmap" CLI flag.
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-01-25 21:13:40 +01:00
David Sherret
f14ea3d4d4
feat: suggest adding a "node:" prefix for bare specifiers that look like built-in Node modules ( #17519 )
2023-01-24 15:14:49 -05:00
Bartek Iwańczuk
fc2e00152b
feat: support node built-in module imports ( #17264 )
...
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-01-24 09:05:54 -05:00
Bartek Iwańczuk
9e282155b7
tests: move integration tests to a single module ( #17380 )
...
Effectively reverts changes done in
https://github.com/denoland/deno/pull/16816
2023-01-13 02:59:13 +01:00
Bartek Iwańczuk
7e0c558187
tests: move integration tests to separate modules ( #16816 )
2022-11-26 02:29:56 +01:00
Aaron O'Mullan
238590aa9f
chore: use Rust 1.65.0 ( #16688 )
2022-11-18 02:59:10 +01:00
Kitson Kelly
a0d10efbb1
chore: improve built-in API documentation ( #16158 )
...
Co-authored-by: crowlkats <crowlkats@toaxl.com>
Co-authored-by: Colin Ihrig <cjihrig@gmail.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-10-26 15:53:48 +02:00
David Sherret
bcfe279fba
feat(unstable/npm): initial type checking of npm specifiers ( #16332 )
2022-10-21 15:20:18 +00:00
David Sherret
da906de184
fix(lsp): allow caching deps in non-saved files ( #16353 )
2022-10-20 13:23:21 -04:00
Kitson Kelly
7d78f58187
feat: support inlay hints ( #16287 )
...
Closes: #11853
2022-10-16 13:39:43 +11:00
Kitson Kelly
afcea6c233
fix(lsp): properly handle snippets on completions ( #16274 )
...
Fixes #15367
2022-10-14 23:04:38 +11:00
sigmaSd
a6618dc01c
lsp: use deno:/asset instead of deno:asset ( #16023 )
...
Make offering "virtual documents" via the lsp easier to parse. `deno:`
can be ambiguous to parse by editors (can conflict with linux paths)
Neovim recently landed a PR https://github.com/neovim/neovim/pull/19797
that allows it to parse `scheme:/` this PR should make deno lsp work
correctly in neovim
2022-10-01 20:02:25 +02:00
Kitson Kelly
cfbcb3b613
chore: improve JSDoc for built-in APIs ( #16048 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-09-28 22:21:08 +02:00
David Sherret
1464b756a4
refactor: move out test files from root testdata directory into sub directories ( #15949 )
2022-09-19 10:32:21 -04:00
Kitson Kelly
a2ab5eee01
docs: add category tag for built-in APIs ( #15480 )
2022-08-17 13:12:24 +10:00
Kitson Kelly
09d14b1b57
fix(lsp): use correct commit chars for completions ( #15366 )
...
Fixes: #15252
2022-08-02 08:54:17 +10:00
Kitson Kelly
5db16d1229
fix(lsp): enable auto imports ( #15145 )
...
Fixes: #15111
2022-07-12 09:35:18 +10:00
Kitson Kelly
7eee521199
feat: update to TypeScript 4.7 ( #14242 )
2022-06-01 10:19:18 +10:00
David Sherret
eb5ffab1cb
fix(lsp): correct positions in some scenarios ( #14359 )
2022-05-15 14:41:37 -04:00
David Sherret
e6d8775611
chore: fix flaky lsp_testing_api test ( #14569 )
2022-05-11 15:44:15 -04:00
Jason
a6e4b4297d
refactor(lsp): migrate from lspower back to tower-lsp ( #14163 )
2022-04-03 14:17:30 +10:00
David Sherret
1c37ac3352
chore(tests): use custom temp dir creation for the tests ( #14153 )
2022-04-01 11:15:37 -04:00