Kitson Kelly
3318c495f6
refactor(lsp): memoize script versions per tsc request ( #10601 )
2021-05-18 08:51:35 +10:00
Aaron O'Mullan
ea917384fe
refactor(core): convert core.print() to a builtin op ( #10436 )
2021-05-02 19:30:03 -04:00
Aaron O'Mullan
83bece56b0
refactor(core): move op cache sync responsibility to rust space ( #10340 )
...
Even if bootstrapping the JS runtime is low level, it's an abstraction leak of
core to require users to call `Deno.core.ops()` in JS space.
So instead we're introducing a `JsRuntime::sync_ops_cache()` method,
once we have runtime extensions a new runtime will ensure the ops
cache is setup (for the provided extensions) and then loading/unloading
plugins should be the only operations that require op cache syncs
2021-04-25 22:00:05 +02:00
Aaron O'Mullan
ff9ff4a377
refactor(core): simplify error handling ( #10297 )
...
- register builtin v8 errors in core.js so consumers don't have to
- remove complexity of error args handling (consumers must provide a
constructor with custom args, core simply provides msg arg)
2021-04-21 20:50:50 -04:00
Jean Pierre
6d404ec54b
feat(lsp): Implement textDocument/semanticTokens/full ( #10233 )
...
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-04-20 11:26:36 +10:00
Jean Pierre
65a2a04d3b
feat(lsp): implement textDocument/prepareCallHierarchy ( #10061 )
2021-04-19 15:11:26 +10:00
Aaron O'Mullan
46b1c653c0
refactor(deno): remove concept of bin & json ops ( #10145 )
2021-04-12 15:55:05 -04:00
Jean Pierre
035f7b0ca0
feat(lsp): implement textDocument/foldingRange ( #9900 )
...
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-04-02 17:21:07 +11:00
Jean Pierre
77cfadf532
feat(lsp): implement textDocument/selectionRange ( #9845 )
...
Ref: #8643
2021-03-24 10:33:25 +11:00
Kitson Kelly
506b321d47
refactor(lsp): refactor completions and add tests ( #9789 )
2021-03-16 09:01:41 +11:00
Yuki Tanaka
ccd6ee5c23
feat(lsp): Implement textDocument/signatureHelp
( #9330 )
...
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-02-16 13:34:09 +11:00
Kitson Kelly
b77fcbc518
feat(lsp): add TS quick fix code actions ( #9396 )
2021-02-05 05:53:02 +11:00
Yoshiya Hinosawa
23281be33a
fix(cli): fix handling of non-normalized specifier ( #9357 )
2021-02-01 17:02:02 +09:00
Kitson Kelly
534531e4dd
feat(lsp): add references code lens ( #9316 )
2021-02-01 14:30:41 +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
Hirochika Matsumoto
8d5af6ca52
feat(lsp): Add textDocument/implementation ( #9071 )
...
Ref #8643
2021-01-13 08:53:27 +11:00
Yusuke Tanaka
d8fd71afdf
chore: update copyright to 2021 ( #9092 )
2021-01-11 18:13:41 +01:00
Bartek Iwańczuk
46c0cab763
refactor(core): simplify Deno.core initialisation, remove stale TODO ( #8847 )
...
This commit rewrites initialisation of the "shared queue" and
in effect prevents from double execution of "core/core.js" and
"core/error.js".
Previously both of these files were executed every time a "JsRuntime"
was created. That lead to a situation where one copy of each script
was included in the snapshot and then another copy would be
executed after loading the snapshot.
Effectively "JsRuntime::shared_init" was removed; instead execution
of those scripts and actual initialisation of shared queue
was split into two helper functions: "JsRuntime::js_init" and
"JsRuntime::share_queue_init".
Additionally stale TODO comments were removed.
2021-01-05 22:10:50 +01:00
Kitson Kelly
e8a81724bb
fix(lsp): handle ts debug errors better ( #8914 )
...
Fixes #8864
2020-12-30 12:46:58 +11:00
hrsh7th
57b0562957
feat(lsp): Implement textDocument/rename ( #8910 )
2020-12-30 11:58:20 +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
892d6cc997
refactor(lsp): optimise static assets ( #8771 )
...
Fixes #8158
2020-12-16 06:34:39 +11:00
Luca Casonato
e94a18240e
feat(lsp): basic support for textDocument/completion ( #8651 )
2020-12-08 11:36:13 +01:00
Kitson Kelly
301d3e4b68
feat: add mvp language server ( #8515 )
...
Resolves #8400
2020-12-07 21:46:39 +11:00
Nayeem Rahman
e7fc7d7151
fix(cli/tsc): allow non-standard extensions on imports ( #8464 )
2020-11-23 10:20:32 +11:00
Bartek Iwańczuk
8e914be742
build: migrate to dlint ( #8176 )
...
This commit migrates repository from using "eslint"
to "dlint" for linting JavaScript code.
2020-11-03 16:19:29 +01:00
Kitson Kelly
d672e1405d
refactor(cli): cleanup compiler snapshot and tsc/module_graph ( #8220 )
2020-11-03 06:41:20 +11:00
Kitson Kelly
fdcc78500c
refactor(cli): migrate runtime compile/bundle to new infrastructure ( #8192 )
...
Fixes #8060
2020-11-02 13:51:56 +11:00
Kitson Kelly
6844caa9a5
fix(cli): restore tripleslash lib refs support ( #8157 )
...
Fixes #8147
2020-10-28 11:52:20 +11:00
Kitson Kelly
5af1dcfe29
fix(cli): do not throw on empty typescript files ( #8143 )
...
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-10-27 13:19:27 +01:00
Bartek Iwańczuk
57cad53945
refactor(cli): rewrite Deno.transpileOnly() to use SWC ( #8090 )
...
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2020-10-26 14:03:03 +01:00
Kitson Kelly
ab898556a4
refactor(cli): move bundle check to new infrastructure ( #8071 )
2020-10-23 22:05:41 +11:00
Kitson Kelly
7e2c7fb6c5
refactor(cli): migrate run and cache to new infrastructure ( #7996 )
...
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-10-23 11:50:15 +11:00
Kitson Kelly
0fb39f9176
feat(cli): add types for WeakRef/FinalizationRegistry ( #8056 )
...
Fixes #8051
2020-10-21 21:57:01 +11:00
Kitson Kelly
10654fa955
refactor(cli): add tsc2 ( #7942 )
...
Ref #7225
2020-10-14 10:52:49 +11:00
Kitson Kelly
e077b93d77
refactor: add concept of 'legacy' compiler to enable non-breaking refactoring ( #7762 )
2020-10-01 20:33:15 +10:00
Bartek Iwańczuk
ff785bc35a
refactor: use JsRuntime to implement TSC ( #7691 )
...
This commits removes "CompilerWorker" in favor of
using "JsRuntime".
"cli/ops/compiler.rs" has been removed in favor of inline
registration of ops in "cli/tsc.rs"
2020-09-26 16:33:25 +02:00
Bartek Iwańczuk
18b7109f76
refactor: prune unneeded JS code ( #7689 )
2020-09-26 15:59:24 +02:00
Bartek Iwańczuk
83f53c6455
refactor: remove tsc/40_error_stack.js ( #7673 )
...
This commit removes cli/tsc/40_error_stack.js as it is not
needed in TSC host. All errors originating in TSC are terminal
and don't require source mapping hence we can rely on default
stack traces provided by deno_core.
Additionally tsc/06_util.js was removed and its code moved
to tsc/99_main_compiler.js
2020-09-25 14:04:51 +02:00
Kitson Kelly
751bb45a0a
fix: ignore fileExists in tsc host ( #7635 )
...
Fixes #7630
2020-09-23 11:39:20 +10:00
Bartek Iwańczuk
7845740637
refactor: deno_fetch op crate ( #7524 )
2020-09-18 09:20:55 -04:00
Bartek Iwańczuk
6c4da0e429
refactor: remove dispatch_json.js from cli/rt and cli/tsc ( #7521 )
...
Instead use Deno.core.jsonOpSync and Deno.core.jsonOpAsync
2020-09-16 22:22:43 +02:00
Kitson Kelly
a6f34d4722
refactor: use ParsedModule and improve MediaTypes enum ( #7456 )
2020-09-14 14:27:44 +02:00
Kitson Kelly
10fbfcbc79
refactor: improve tsc diagnostics ( #7420 )
2020-09-12 11:53:57 +02:00
Bartek Iwańczuk
c14436a424
fix(tsc): config resolution using relative paths ( #7392 )
2020-09-09 13:37:22 +02:00
Luca Casonato
6ff9395532
feat(unstable): enable isolatedModules by default ( #7327 )
2020-09-08 15:28:42 +02:00
Kitson Kelly
9e50b3ee61
fix: don't expose globalThis.__bootstrap ( #7344 )
2020-09-04 07:52:19 -04:00
Casper Beyer
32de714dc7
feat(unstable): add Deno.futime and Deno.futimeSync ( #7266 )
2020-08-31 14:29:43 -04:00
Bartek Iwańczuk
c82c3b982e
refactor: Compiler config in Rust ( #7228 )
...
* port tsc_config.rs
* cleanup options
* bring back allowNonTsExtension
* try
* fix test
* fix test2
* move config for bundling
* remove Transpile compile request
* remove dead code
* remove more dead code
* remove checkJs regex
* fix
* handle config str for runtime APIs
* lint
* runtimeCompile config in Rust
* runtimeCompile and runtimeTranspile config in Rust
* fix
* remove lint supression
* upgrade: jsonc-parser 0.13.0
* remove unneeded to_string()
* upgrade: jsonc-parser 0.14.0
* remove AsRef<str>
2020-08-31 20:12:24 +02:00
Bartek Iwańczuk
d761246e16
refactor: remove dead code in tsc ( #7277 )
2020-08-31 11:02:13 +02:00
Luca Casonato
da98f9e3a1
fix(unstable): add missing globals to diagnostics ( #6988 )
2020-08-10 18:08:12 -04:00
Nayeem Rahman
52c1017a74
feat: Stabilize Deno.mainModule ( #6993 )
2020-08-10 16:41:51 -04:00
Bartek Iwańczuk
59ca66a207
Encode op errors as strings instead of numbers ( #6977 )
2020-08-07 16:47:18 -04:00
Bartek Iwańczuk
41215eb29c
Op crate for Web APIs ( #6906 )
...
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-08-07 16:55:02 +02:00
Luca Casonato
f6cd36f8c8
fix: add missing globals to unstable diagnostics ( #6960 )
2020-08-05 16:17:45 -04:00
Luca Casonato
ce7808baf0
feat(cli): custom http client for fetch ( #6918 )
2020-08-05 20:44:03 +02:00
Bartek Iwańczuk
b45f9a7357
fix: deno-types directive should have higher precedence than X-TypeScript-Types header ( #6761 )
2020-07-24 14:21:36 +02:00
Bartek Iwańczuk
b449964d1a
refactor: remove more compiler runtime code ( #6841 )
2020-07-23 15:29:36 +02:00
Ryan Dahl
bf9930066d
Reduce size of TypeScript Compiler snapshot ( #6809 )
...
This PR is intentionally ugly. It duplicates all of the code in cli/js2/ into
cli/tsc/ ... because it's very important that we all understand that this code
is unnecessarily duplicated in our binary. I hope this ugliness provides the
motivation to clean it up.
The typescript git submodule is removed, because it's a very large repo and
contains all sorts of stuff we don't need. Instead the necessary files are
copied directly into the deno repo. Hence +200k lines.
COMPILER_SNAPSHOT.bin size
```
master 3448139
this branch 3320972
```
Fixes #6812
2020-07-22 12:03:46 -04:00