1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-12 02:27:46 -05:00
Commit graph

2123 commits

Author SHA1 Message Date
yonatan ben avraham
5f015eac9c
fix: Worker hangs when posting "undefined" as message (#8920)
This commit fixes hang in web workers occuring when sending
"undefined" as message value. It is a temporary band-aid
until proper structured close is implemented.

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-01-08 15:44:24 +01:00
Luca Casonato
a44349dfdf
feat: denort binary (#9041)
This commit adds new binary target called "denort".

It is a "lite" version of "deno" binary that can only execute
code embedded inside the binary itself.

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-01-08 03:08:51 +01:00
Nayeem Rahman
e61e81eb57
feat: add --location=<href> and globalThis.location (#7369) 2021-01-07 19:06:08 +01:00
Anonymous
b40d5e5e0b
ignore "use asm" (#9019)
Preventing V8 from logging erroneous line numbers. Use wasm.
2021-01-07 10:50:57 -05:00
Casper Beyer
9b3338fa2f
fix(coverage): report partial lines as uncovered (#9033) 2021-01-07 12:45:42 +01:00
Casper Beyer
f8df9938c5
fix(coverage): do not store source inline in raw reports (#9025)
When we were doing single process in-memory reports getting the source
from the runtime was practical, but now that we're writing to disk this
conflicts with the format tools taking raw v8 coverage dumps expect.
2021-01-07 05:53:57 -05:00
Nayeem Rahman
b5f1d257a3
fix: Use "none" instead of false to sandbox Workers (#9034) 2021-01-07 05:52:30 -05:00
Ryan Dahl
cb658f5ce5
Remove emoji from welcome script so it looks better on windows (#9031) 2021-01-07 05:51:15 -05:00
Steven Guerrero
adc2f08c17
feat: Add configurable permissions for Workers (#8215)
This commit adds new option to "Worker" Web API that allows to 
configure permissions.

New "Worker.deno.permissions" option can be used to define limited
permissions to the worker thread by either:
- inherit set of parent thread permissions
- use limited subset of parent thread permissions
- revoke all permissions (full sandbox)

In order to achieve this functionality "CliModuleLoader"
was modified to accept "initial permissions", which are used
for top module loading (ie. uses parent thread permission set
to load top level module of a worker).
2021-01-06 21:31:16 +01:00
Luca Casonato
2e18fcebcc
refactor: move WebSocket API to an op_crate (#9026) 2021-01-06 16:57:28 +01:00
Anonymous
3761d054d0
fix: stronger input checking for setTimeout; add function overload (#8957) 2021-01-06 08:53:30 -05:00
Kitson Kelly
54240c22af
feat(cli): support data urls (#8866)
Closes: #5059

Co-authored-by: Valentin Anger <syrupthinker@gryphno.de>
2021-01-06 13:22:38 +11:00
Luca Casonato
60c9c85758
fix: align performance API to spec using WPT (#9012) 2021-01-06 02:56:40 +01:00
Bartek Iwańczuk
bb88418221
refactor(cli): remove 'js' module, simplify compiler snapshot (#9020)
This commit removes "js" module from "cli".

It contained stuff related to TypeScript compiler (snapshot,
declaration files) and thus it was moved to "tsc" module.
2021-01-06 02:38:23 +01:00
Luca Casonato
39bbbbce70
fix: use inline source maps when present in js (#8995) 2021-01-06 00:10:36 +01:00
Bartek Iwańczuk
8d1ee3bfaf
upgrade: deno_doc, deno_lint, dprint, swc_ecmascript, swc_bundler (#9003) 2021-01-05 22:51:54 +01:00
Luca Casonato
7704839039
fix: align AbortSignal to spec using WPT (#9007) 2021-01-05 22:43:25 +01:00
Ryan Dahl
096e090576
Add rlib size benchmarks (#9005) 2021-01-05 16:28:51 -05: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
Luca Casonato
0d41e21b0e
fix: align encoding APIs to spec using WPT (#9004) 2021-01-05 19:50:40 +01:00
Luca Casonato
a3099798c8
tests: add web platform test runner (#8990)
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-01-05 12:07:27 +01:00
Nayeem Rahman
cbc2108525
feat(cli/standalone): support runtime flags for deno compile (#8738) 2021-01-05 00:15:52 +01:00
Valentin Anger
444eca80a9
fix(lsp): Respect client capabilities for config and dynamic registration (#8865) 2021-01-05 08:52:20 +11:00
Sylvain Cau
b478b06f9d
feat(installer): Add support for MSYS on Windows (#8932) 2021-01-04 08:52:43 -08:00
Casper Beyer
4ca77ad84c
fix(coverage): merge duplicate reports (#8942)
Merging multiple runs isn't quite right because we 
rely on a 0 count to signal that a block hasn't been called.

Other tools like c8 expect this to be true as-well so we 
need to do our best to merge coverage files rather 
than duplicating them.
2021-01-04 17:01:21 +01:00
Mo
3e5a3daf59
BREAKING(unstable): remove CreateHttpClientOptions.caFile (#8928) 2021-01-04 16:55:20 +01:00
Satya Rohith
1d4f8298a7
docs: meta updates to cli/tests/unit/README.md (#8969) 2021-01-04 15:55:57 +01:00
Ben Noordhuis
20babd9bfa
fix(inspector): kill child process after test (#8986)
The child process kept running and printing "hello" to stdout.

This commit also removes the dependency on reqwest and instead
switches to the re-export from the fetch crate.

Brings back commit 1a2e7741c3.
2021-01-04 15:52:22 +01:00
Bartek Iwańczuk
f4246ee1fc
chore: disable flaky test on Windows (#8987) 2021-01-04 14:27:29 +01:00
Luca Casonato
379eedc05c
Revert "fix(inspector): add back list endpoint (#8894)" (#8977)
This reverts commit 1a2e7741c3.
2021-01-04 12:19:23 +01:00
Maayan Hanin
1a6969bebb
fix: panic on invalid file:// module specifier (#8964) 2021-01-04 04:33:20 -05:00
Liam Perlaki
1a2e7741c3
fix(inspector): add back list endpoint (#8894)
This commit adds back "/json/list" endpoint to
inspector server which was erroneously removed
during server rewrite.
 
Co-authored-by: Ben Noordhuis <info@bnoordhuis.nl>
2021-01-03 21:31:52 +01:00
Bartek Iwańczuk
41a4a34aee
upgrade: Rust 1.49.0 (#8955) 2021-01-02 13:52:42 +01:00
Kitson Kelly
012f99bd9a
refactor(cli): runtime compiler APIs consolidated to Deno.emit() (#8799)
Closes: #4752
2021-01-01 08:43:54 +11:00
Kitson Kelly
587155f86d
feat(lsp): support specifying a tsconfig file (#8926) 2020-12-31 14:33:44 +11:00
Rich Trott
e568ddf996
fix(op_crates/fetch): correct regexp for fetch header (#8927)
Fix bug in regular expression and make the regular expression more
strict.

In a string passed to new RegExp(), '[\t\s]' is identical to '[ts]' and
not `/[\t\s]/`. For that, the backslash needs to be escaped in the
string. Futhermore, `\t` is the tab character and is included in the
special regexp value `\s` so is unnecessary.

That would reduce the RegExp to new RegExp(`^${value}\\s*;?`) but
there's no point in matching 0 or more space characters followed by 0 or
one semi-colons as that will match no matter what follows `value`.

To make it more strict, require one of space, semicolon, or
end-of-string after value.
2020-12-30 23:46:08 +01:00
Nayeem Rahman
22e0ee92a6
BREAKING(unstable): Use hosts for net allowlists (#8845)
Allowlist checking already uses hosts but for some reason 
requests, revokes and the runtime permissions API use URLs.

- BREAKING(lib.deno.unstable.d.ts): Change 
NetPermissionDescriptor::url to NetPermissionDescriptor::host

- fix(runtime/permissions): Don't add whole URLs to the 
allowlist on request

- fix(runtime/permissions): Harden strength semantics:
({ name: "net", host: "127.0.0.1" } is stronger than 
{ name: "net", host: "127.0.0.1:8000" }) for blocklisting

- refactor(runtime/permissions): Use tuples for hosts, make 
the host optional in Permissions::{query_net, request_net, revoke_net}()
2020-12-30 23:35:28 +01:00
Rich Trott
af222f7a7f
chore(cli/tests): fix typo in test failure message (#8935) 2020-12-30 11:00:55 -05:00
Bartek Iwańczuk
b07a0b640d
v1.6.3 2020-12-30 16:13:42 +01:00
Bartek Iwańczuk
4997f426c3
chore: release crates (#8931) 2020-12-30 15:29:17 +01:00
Kitson Kelly
b1230a85e8
fix(cli): info does not panic on missing modules (#8924)
Fixes #8918
2020-12-30 22:19:51 +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
hrsh7th
57b0562957
feat(lsp): Implement textDocument/rename (#8910) 2020-12-30 11:58:20 +11:00
Yusuke Tanaka
d5f3a749eb
refactor(cli/flags): change allow_read/write/net types from bool to Option<Vec<T>> (#8896)
This PR refactors "cli/flags.rs" and "runtime/permissions.rs" so 
that "allow_read", "allow_write" and "allow_net" themselves
have allowlists, instead of storing them in additional fields.
2020-12-29 19:34:35 +01:00
Deepanshu Utkarsh
115de4c81a
fix(core): Fix incorrect index in Promise.all error reporting (#8913) 2020-12-29 15:24:19 +01:00
Bartek Iwańczuk
24844a0052
upgrade: dprint, swc_bundler, swc_common, swc_ecmascript (#8901) 2020-12-29 00:22:36 +01:00
Waldir Pimenta
b778f8bbff
docs(introduction): Improve wording and capitalization (#8848) 2020-12-29 10:05:29 +11:00
Casper Beyer
091059450e
feat(unstable): collect coverage from the run command (#8893)
This adds implicit coverage collection to the run command 
when a coverage collection directory is set (via an environment 
variable).
2020-12-28 16:51:26 +01:00
Luca Casonato
9419c06ab5
chore: move ProgressEvent type to deno.web lib (#8878) 2020-12-26 18:15:30 +01:00
Casper Beyer
e8587c86bf
test(cli): ensure await Promise.all does not race (#8868) 2020-12-26 08:29:46 -05:00
Yosi Pramajaya
c1fdb30394
fix: fetch bad URL will not panic (#8884) 2020-12-26 08:06:00 -05:00
Yosi Pramajaya
b15539587e
refactor(test_util): replace "warp" with "hyper" (#8846)
This commit rewrites "test_server" to use "hyper" 
instead of "warp" in an effort to reduce number of
dependencies.
2020-12-24 14:11:32 +01:00
Kitson Kelly
a4d557126e
fix(lsp): provide diagnostics for unresolved modules (#8872) 2020-12-24 21:53:03 +11:00
Bartek Iwańczuk
d199e45ad5
v1.6.2 2020-12-22 17:00:35 +01:00
Bartek Iwańczuk
6ce310fa27
chore: release crates (#8854) 2020-12-22 14:50:13 +01:00
Luca Casonato
ddda669a02
fix: implement ReadableStream fetch body handling (#8855) 2020-12-22 14:14:23 +01:00
Kitson Kelly
097c3379ba
feat(lsp): support the unstable setting (#8851) 2020-12-22 21:21:18 +11:00
Kitson Kelly
b091c6c8c9
fix(lsp): respect enable flag for requests (#8850) 2020-12-22 16:42:32 +11:00
Bartek Iwańczuk
1e144ec022
upgrade: deno_doc, deno_lint, dprint, swc (#8849) 2020-12-22 00:57:03 +01:00
Liam Murphy
4033b39036
refactor: rewrite chown_test.ts not to depend on python (#8843)
This commit rewrites "chown_test.ts" to use the GNU "id" command 
instead of python. This won't work on Windows, but these tests aren't
currently run on Windows anyway.
2020-12-21 16:30:59 +01: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
Casper Beyer
3078fcf55a
feat(unstable): record raw coverage into a directory (#8642) 2020-12-21 14:04:25 +01:00
Liam Murphy
d5ee168468
refactor: rewrite process_test.ts to use deno instead of python (#8841)
Rewrites all the subprocess python scripts to be Deno scripts.
2020-12-21 13:13:09 +01:00
Bartek Iwańczuk
3eec73ff90
Revert "fix: TLA in web worker (#8809)" (#8839)
This reverts commit e924bbdf36.
2020-12-20 15:14:19 +01:00
Bartek Iwańczuk
e924bbdf36
fix: TLA in web worker (#8809)
Implementors of `deno_core::JsRuntime` might want to do additional actions
during each turn of event loop, eg. `deno_runtime::Worker` polls inspector,
`deno_runtime::WebWorker` receives/dispatches messages from/to worker host.
Previously `JsRuntime::mod_evaluate` was implemented in such fashion that it 
only polled `JsRuntime`'s event loop. This behavior turned out to be wrong 
in the example of `WebWorker` which couldn't receive/dispatch messages because
its implementation of event loop was never called. 

This commit rewrites "mod_evaluate" to return a handle to receiver that resolves
when module's promise resolves. It is now implementors responsibility to poll
event loop after calling `mod_evaluate`.
2020-12-20 00:34:22 +01:00
Bartek Iwańczuk
660f75e066
upgrade: swc_ecmascript 0.15.1 (#8836) 2020-12-20 00:30:53 +01:00
yonatan ben avraham
afbd19ed9b
feat(unstable): support in memory certificate data for Deno.createHttpClient (#8739) 2020-12-19 23:13:48 +01:00
Bartek Iwańczuk
4ab1aa8877
upgrade: rustyline 7.1.0 (#8829) 2020-12-19 16:20:36 +01:00
Luca Casonato
b9165e9482
fix: atomically write files to $DENO_DIR (#8822) 2020-12-18 19:30:49 +01:00
Nayeem Rahman
ffb5f7a4e1
refactor: Rename runtime/rt to runtime/js (#8806) 2020-12-17 17:37:57 +01:00
Casper Beyer
55dc467b41
test(cli): ensure await all on stdout does not deadlock (#8802) 2020-12-17 15:01:47 +01:00
Trivikram Kamat
63e0ab99a1
upgrade TypeScript to 4.1.3 (#8785) 2020-12-16 11:46:32 -05:00
Bartek Iwańczuk
6984b63f2f
refactor: rewrite ops to use ResourceTable2 (#8512)
This commit migrates all ops to use new resource table
and "AsyncRefCell".

Old implementation of resource table was completely 
removed and all code referencing it was updated to use
new system.
2020-12-16 17:14:12 +01:00
Bartek Iwańczuk
9fe26f8ca1
refactor: remove dead code (#8781) 2020-12-15 21:45:29 +01:00
Kitson Kelly
892d6cc997
refactor(lsp): optimise static assets (#8771)
Fixes #8158
2020-12-16 06:34:39 +11:00
Kitson Kelly
63a821b78b
fix(cli): make dynamic import errors catchable (#8750)
Fixes #6259
2020-12-15 16:52:55 +11:00
Bartek Iwańczuk
b6d5ae1ecd
v1.6.1 2020-12-14 21:25:05 +01:00
Bartek Iwańczuk
025c0a1d37
chore: release crates (#8765) 2020-12-14 19:47:28 +01:00
Bartek Iwańczuk
a19fea918f
Revert "build: Factor out common code into core/build_util.rs (#8756)" (#8763)
This reverts commit 502c77aad9.
2020-12-14 18:42:40 +01:00
Casper Beyer
ce6b738ac0
fix(repl): recover from invalid input (#8759) 2020-12-14 11:37:08 -05:00
Bartek Iwańczuk
8f8749095c
chore: release crates (#8760) 2020-12-14 17:11:17 +01:00
Bartek Iwańczuk
3476d5434f
chore: release deno_runtime 0.2.0 (#8758) 2020-12-14 15:47:20 +01:00
Ryan Dahl
a38b6b8acc
fix: docs.rs detection (#8755) 2020-12-14 15:15:16 +01:00
Ryan Dahl
502c77aad9
build: Factor out common code into core/build_util.rs (#8756) 2020-12-14 14:28:56 +01:00
crowlKats
b2bda57073
fix(cli): show canary string in long version (#8675) 2020-12-14 13:55:07 +01:00
Bartek Iwańczuk
389f492551
chore: release crates (#8744) 2020-12-13 22:34:54 +01:00
Bartek Iwańczuk
2e74f164b6
refactor: deno_runtime crate (#8640)
This commit moves Deno JS runtime, ops, permissions and
inspector implementation to new "deno_runtime" crate located
in "runtime/" directory.

Details in "runtime/README.md".

Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-12-13 19:45:53 +01:00
Yosi Pramajaya
84ef9bd21f
fix(cli/compile): error when the output path already exists (#8681) 2020-12-12 20:41:43 +01:00
Bartek Iwańczuk
623bc22ad0
Revert "chore(test): increase file watcher timeout duration on macOS (#8733)" (#8737)
This reverts commit f4cf1b4538.
2020-12-12 16:54:00 +01:00
Yusuke Tanaka
f4cf1b4538
chore(test): increase file watcher timeout duration on macOS (#8733) 2020-12-12 14:32:46 +01:00
Tatsuya Yamamoto
93cd9ab0b8
docs: fix doc to remove annotation about removed function Deno.dir (#8732) 2020-12-12 13:16:52 +01:00
Andrew Mitchell
c05615d670
docs: Remove a deprecated function from docstring for Deno.permissions (#8729) 2020-12-12 13:15:50 +01:00
Bartek Iwańczuk
31935c6b8d
refactor(cli): more options on Worker (#8724) 2020-12-12 00:36:18 +01:00
Bartek Iwańczuk
65e72b68ac
refactor(cli): decouple ops from ProgramState and Flags (#8659)
This commit does major refactor of "Worker" and "WebWorker",
in order to decouple them from "ProgramState" and "Flags".
The main points of interest are "create_main_worker()" and
"create_web_worker_callback()" functions which are responsible
for creating "Worker" and "WebWorker" in CLI context.
As a result it is now possible to factor out common "runtime"
functionality into a separate crate.
2020-12-11 18:49:26 +01:00
crowlKats
71d468bec0
fix(cli): zsh completions (#8718) 2020-12-11 13:18:30 +01:00
Anh Hong
b8bc24d167
chore: fixed various misspellings and other typos (#8691) 2020-12-11 06:45:45 +11:00
Bartek Iwańczuk
f91fa16661
refactor(core): stack trace mapping (#8660)
This commit adds "Deno.core.createPrepareStackTrace". This function
was moved from "cli/rt/40_error_stack.js" to unify handling of stack frames in core
(before this PR there was implicit dependency on logic in "core/error.rs::JsError").
Unfortunately formatting logic must still be duplicated in "cli/error.js::PrettyJsError"
to provide coloring, but currently there's no solution to this problem.
"createPrepareStackTrace" can accept a single argument; a function that takes
a location and provides source mapped location back.
2020-12-10 14:45:41 +01:00
Kitson Kelly
1a72c9ba23
fix(lsp): only resolve sources with supported schemas (#8696)
Fixes #8695
2020-12-10 11:12:46 +11:00
Luca Casonato
de65312b7f
chore: update swc_ecmascript to 0.15.0 (#8688) 2020-12-09 23:09:10 +01:00
Kitson Kelly
95a6698cac
feat(lsp): support import maps (#8683) 2020-12-10 06:50:47 +11:00
Jae-Heon Ji
d492fb0eac
fix(op_crates/fetch): support non-ascii response headers value (#8600) 2020-12-09 16:48:06 +01:00
Ryan Dahl
f15b3d84a5
Remove dead code: itest_ignore (#8668) 2020-12-08 20:29:00 -05:00
Bartek Iwańczuk
9bff85836c
fix: pull .d.ts files from js mod (#8671) 2020-12-08 16:33:50 +01:00
Bartek Iwańczuk
df87bf1d6a
v1.6.0 2020-12-08 15:37:45 +01:00
Bartek Iwańczuk
656caa2d4f
chore: release crates (#8662) 2020-12-08 13:54:19 +01:00
Luca Casonato
e94a18240e
feat(lsp): basic support for textDocument/completion (#8651) 2020-12-08 11:36:13 +01:00
Ryan Dahl
4e025fd164
Upgrade ring to support arm64 (#8658) 2020-12-07 20:12:18 -05:00
Bartek Iwańczuk
5eedcb6b8d
chore(cli): unhide lsp command from CLI (#8647) 2020-12-07 23:27:43 +01:00
Benjamin Gruenbaum
b566d184fe
refactor(cli/rt): deduplicate code (#8649) 2020-12-07 21:22:58 +01:00
Steven Guerrero
43a35b005f
perf: use minimal op with performance.now() (#8619) 2020-12-07 08:27:25 -05:00
Nayeem Rahman
b77d6cb29e
chore(std): Remove tsconfig_test.json (#8629)
Ref #8050
2020-12-07 21:49:58 +11:00
Kitson Kelly
301d3e4b68
feat: add mvp language server (#8515)
Resolves #8400
2020-12-07 21:46:39 +11:00
Bartek Iwańczuk
c8e9b2654e
refactor(cli): Simplify choosing type lib in CliModuleLoader (#8637) 2020-12-07 11:03:03 +01:00
Bartek Iwańczuk
c0ccbcdaee
refactor(cli): Reorganize worker code, use stronger memory ordering (#8638) 2020-12-07 04:30:40 +01:00
crowlKats
7135d34cca
refactor(cli): remove Option from Flags.v8_flags (#8633) 2020-12-06 18:19:21 +01:00
Bartek Iwańczuk
e6b90beb3d
upgrade: swc_bundler 0.17.5 (#8588) 2020-12-04 13:21:38 +01:00
János Veres
93d9f51d16
fix(cli): add hygiene pass to transpile pipeline (#8586)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-12-02 20:26:04 +01:00
Bartek Iwańczuk
f49d955601
fix(compile): disable source mapping of errors (#8581)
This commit disables source mapping of errors
for standalone binaries. Since applying source
maps relies on using file fetcher infrastructure
it's not feasible to use it for standalone binaries
that are not supposed to use that infrastructure.
2020-12-01 23:33:44 +01:00
Bartek Iwańczuk
abc883e6a7
upgrade: swc_bundler 0.17.3 (#8575) 2020-12-01 21:23:48 +01:00
Bartek Iwańczuk
838d39e2ac
refactor(cli): DRY cli/ast.rs (#8555)
This commit deduplicates logic for parsing
modules in cli/ast.rs
2020-12-01 21:20:18 +01:00
Liam Murphy
c74132d3cd
fix: higlight async and of in REPL (#8569) 2020-12-01 14:52:03 -05:00
Nayeem Rahman
108972c966
chore(cli/flags): Use deno compile --output for the out file (#8563) 2020-12-01 15:11:02 +01:00
Casper Beyer
5560a6d589
fix(repl): close calls sometimes prints results (#8558) 2020-12-01 14:13:30 +01:00
Bartek Iwańczuk
53fa45eb73
disable flaky watch tests (#8557) 2020-12-01 13:32:41 +01:00
Luca Casonato
6aa692fece
feat: deno compile (#8539) 2020-11-30 20:35:12 +01:00
Marcus Hultman
c7276e15e5
feat(unstable): add cbreak option to setRaw (#8383) 2020-11-30 11:08:03 -05:00
Bartek Iwańczuk
a22794e9cc
upgrade: deno_doc, deno_lint, dprint, swc (#8552) 2020-11-30 13:01:16 +01:00
Kevin (Kun) "Kassimo" Qian
b6bfc32f8d
fix(cli): support passing cli arguments under deno eval (#8547)
Fixes #8538
2020-11-30 13:10:21 +11:00
crowlKats
973af61d8b
feat(cli/tools/upgrade): canary support (#8476) 2020-11-29 20:00:35 +01:00
Luca Casonato
47a16d2118
fix: don't unconditionally build canary (#8536) 2020-11-29 17:08:38 +01:00
crowlKats
1ed37b7751
Make canary version semver compatible (#8537) 2020-11-29 08:16:50 -05:00
Yusuke Tanaka
d9b4182868
fix(watcher): watcher doesn't exit when module resolution fails (#8521)
This commit makes the file watcher continue to work even if module
resolution fails at the initial attempt, allowing us to execute `run`
or `bundle` subcommand when a script has invalid syntax. In such
cases, the watcher observes a single file that is specified as an
command line argument.
2020-11-28 15:18:13 +01:00
Casper Beyer
5588085c72
chore: update rustyline to 7.0.0 (#8516) 2020-11-28 15:03:40 +01:00
William Perron
57f163510a
fix(cli): make output of deno info --json deterministic (#8483)
Fixes #8458
2020-11-27 16:51:47 -05:00
William Perron
a16adca06b
test(cli): fix brittle network permission test (#8526) 2020-11-27 21:02:25 +01:00
Kitson Kelly
e2858d0bbb
chore: clippy future cleanups (#8514) 2020-11-28 06:47:35 +11:00
Bartek Iwańczuk
40bf26b37d
test: fix flaky "run_watch" test (#8519) 2020-11-27 20:22:09 +01:00
Liam Murphy
228ecb0acb
refactor(repl): use SWC lexer to highlight and validate (#8496) 2020-11-27 20:14:54 +01:00
William Perron
59f10b3604
fix(cli/ops/net): add write permissions for unixpackets datagrams & unix socket (#8511)
Fixes #7781
2020-11-27 13:43:39 -05:00
Ryan Dahl
f60c80e1bd
fix flaky tests by using exec in PTY tests (#8525) 2020-11-27 12:55:58 -05:00
Ryan Dahl
29374db11f
fix test_raw_tty hang (#8520) 2020-11-27 12:08:28 -05:00
Bartek Iwańczuk
22f951aa67
fix: panic in worker when closing at top level (#8510)
Fixes panic occurring in worker when "self.close()" is called
at the top level, ie. worker shuts down while
module evaluation promise hasn't yet resolved.
2020-11-27 14:19:24 +01:00
Benjamin Gruenbaum
4f46dc999b
fix: "onload" event order (#8376)
This commit fixes order of events for "onload" event. 

Previously handler attached using "window.onload" was
always fired before handlers added using "addEventListener".
2020-11-26 22:27:55 +01:00
Bartek Iwańczuk
e84704968e
fix(watch): fix flaky tests for watcher (#8508) 2020-11-26 20:12:26 +01:00
Ryan Dahl
8486b081ae
fix: re-enable test_raw_tty (#8509) 2020-11-26 12:59:03 -05:00
crowlKats
e6685f0f01
refactor(cli/tests): replace createResolvable with deferred (#8507) 2020-11-26 17:22:36 +01:00
Bartek Iwańczuk
85a5a081b2
refactor(cli): reorganize main.rs and split workers (#8495)
Factored out "init_v8_flags", "init_logger" and 
"get_subcommand" from "main" function.

Also "Worker" was removed in favor of moving 
logic to "MainWorker" and "WebWorker" respectively.
2020-11-26 15:17:45 +01:00
Bartek Iwańczuk
8d0b1b40f5
fix(websocket): set User-Agent header (#8502) 2020-11-26 15:12:08 +01:00
crowlKats
a837fb9a07
fix(cli/websocket): set User-Agent header (#8470) 2020-11-26 13:58:50 +01:00
Yusuke Tanaka
60e980c781
refactor(cli): Remove unnecessary conversion into BTreeMap (#8498)
This commit removes unnecessary conversion into BTreeMap. The value
that gets converted into BTreeMap is _originally_ BTreeMap, so this
conversion is just superfluous.

Additionally, a test is added so that we can make sure the keys in the
emitted lockfile are sorted alphabetically.
2020-11-26 13:16:48 +01:00
crowlKats
d40b0711a7
fix(websocket): Fix PermissionDenied error being caught in constructor (#8402) 2020-11-25 15:17:46 +01:00
Nayeem Rahman
adbbd85461
BREAKING(cli/tsc_config): Make isolatedModules non-configurable (#8482) 2020-11-25 13:06:54 +01:00
Chayim Refael Friedman
f42adf2277
docs: Add missing closing parenthesis (#8477) 2020-11-25 12:54:38 +01:00
crowlKats
a08d2eee2b
add canary versioning (#8480) 2020-11-25 05:30:14 -05:00
Valentin Anger
605874ee98
feat(test): horizontal separator between disjoint runs of lines (#8484)
Places a newline between non-consecutive line block in coverage
report to improve readability.
2020-11-24 22:26:38 +01:00
Luca Casonato
501a31fcf3
fix(op_crates/fetch): redirect: "manual" fetch should return type: "default" response (#8353) 2020-11-24 21:00:35 +01:00
Kitson Kelly
276f529755
feat(cli): update to TypeScript 4.1 (#7573) 2020-11-24 09:31:10 +11:00
William Perron
266925d772
fix(cli): add file URL support for Deno.readLink (#8423) 2020-11-23 22:11:56 +01:00
Bartek Iwańczuk
bc79d55649
v1.5.4 2020-11-23 15:10:58 +01:00
Bartek Iwańczuk
230a11e8a4
Revert "docs(cli): Fix documentation about usage of deno completions … (#8468)
This reverts commit 17d4cd9213.
2020-11-23 13:41:50 +01:00
Kitson Kelly
fec7fdc691
tests(cli): add test for improper unicode encoding (#8162)
and updates swc_ecma_codegen

Closes #8161
2020-11-23 10:22:13 +11:00
Nayeem Rahman
e7fc7d7151
fix(cli/tsc): allow non-standard extensions on imports (#8464) 2020-11-23 10:20:32 +11:00
Yusuke Tanaka
e3f73d3ec0
feat(unstable): Support --watch flag for bundle and fmt subcommands (#8276)
This commit adds support for "--watch" flag for "bundle" 
and "fmt" subcommands.

In addition to this, it refactors "run --watch" command so that
module resolution will occur every time the file watcher detects 
file addition/deletion, which allows the watcher to observe a file 
that is newly added to the dependency as well.
2020-11-22 21:45:44 +01:00
Mayank Agarwal
17d4cd9213
docs(cli): Fix documentation about usage of deno completions script (#8369)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-11-22 16:29:22 +01:00
crowlKats
750f179aeb
refactor(cli/tools/upgrade): rework upgrade (#8331)
This commit does major overhaul of "upgrade" subcommand, 
reducing complexity & giving more sensible console output. 

Removes gz support for archives. 

Uses last part of url instead of scraping to get latest version.
2020-11-22 16:07:05 +01:00
Nayeem Rahman
7405356e23
chore(cli/flags): Rename --failfast to --fail-fast (#8456) 2020-11-22 15:40:33 +01:00
Nayeem Rahman
14877f7fe2
feat(unstable): Add deno test --no-run (#8093)
This commit adds new flag to "deno test" subcommand
called "--no-run" that allows to preload, cache an type
check.
2020-11-22 14:06:51 +01:00
Max Drosdo.www
686a17fc07
fix(cli): support "deno run --v8-flags=--help" without script (#8110) 2020-11-21 23:33:42 +01:00
Anonymous
27dd786016
fix: "cloneValue" should return a Set when given a Set (#7972) 2020-11-21 17:29:18 +01:00
Bartek Iwańczuk
04f4201f30
refactor(corr): accept get_error_class_fn in RuntimeOptions (#8444)
This commit adds "get_error_class_fn" field to "RuntimeOptions"
struct in order to unify configuration of "JsRuntime".
2020-11-21 15:56:14 +01:00
Bartek Iwańczuk
cf7949db2f
upgrade: rusty_v8 0.13.0, v8 8.8.278.2 (#8446) 2020-11-21 14:45:07 +01:00
Bartek Iwańczuk
b63fe3f35c
upgrade: deno_doc, deno_lint, dprint, swc (#8443) 2020-11-21 13:17:42 +01:00
Bartek Iwańczuk
91f293442d
refactor(cli): worker event serialization (#8438)
This commit simplifies code responsible for serialization
of web worker events. Instead of using "PrettyJsError"
it's enough to downcast to "deno_core::JsError", making
the code less specific to cli/ implementation.
2020-11-20 13:25:18 +01:00
Bartek Iwańczuk
e582796f42
refactor(cli): rename fmt_errors::JsError to PrettyJsError (#8435)
This commit renames "fmt_errors::JsError" to "PrettyJsError"
to avoid confusion with "deno_core::JsError".

Consequently "CoreJsError" aliases to "deno_core::JsError"
were removed.

Additionally source mapping step has been removed from
"PrettyJsError::create" to better separate domains.
2020-11-19 20:37:22 +01:00
Bartek Iwańczuk
9eaa1fb71d
refactor(cli): move tooling to cli/tools/ (#8424)
This commit moves following tools into a single "tools"
module located at "cli/tools/mod.rs":
- formatter 
- linter
- test runner
- coverage collector
- installer
- binary upgrader
- repl
2020-11-19 19:19:34 +01:00
Mark Tiedemann
f4ac2b1475
fix(cli/tests): printf.exe doesn't exist on windows (#8404) 2020-11-19 07:06:19 -05:00
Bartek Iwańczuk
636af2850c
refactor(cli): rename fs module to fs_util (#8380)
This commit renames "fs" module in "cli/" to "fs_util". This is purely
cosmetic change; there were a few places which aliased "crate::fs"
to "deno_fs" which was very confusing with "fs" module in ops.
2020-11-16 20:48:50 +01:00
Mark Tiedemann
dd9c204884
Improve Deno.version type declaration (#8391) 2020-11-16 14:36:00 -05:00
Bartek Iwańczuk
ab7b8ba8d1
v1.5.3 2020-11-16 11:14:00 +01:00
Kitson Kelly
37fbbf8101
fix(cli): local sources are not cached in memory (#8328)
Fixes #4743
Closes #5253
Fixes #5631
Fixes #6116

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2020-11-16 13:19:31 +11:00
Bartek Iwańczuk
2cbf5c26ac
feat(lint): support --rules --json (#8384)
This commit adds support for "--json" flag in combination
with "--rules". List of rules is serialized to JSON and printed.
2020-11-14 20:51:30 +01:00
Yusuke Tanaka
9029003046
build: update dlint to v0.2.10 (#8284)
Update prebuilt "dlint" binary to v0.2.10 and fix diagnostics
for "require-await" rule.

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2020-11-14 20:27:37 +01:00
Benjamin Gruenbaum
3d65e57d7c
fix: fix various global objects constructor length (#8373)
This commit changes various Web APIs constructors to 
match their signature in the browser.
2020-11-14 13:10:23 +01:00
Yusuke Tanaka
3a0ebff641
fix(fmt, lint): Make sure that target paths are not directory (#8375)
This commit merges implementations of "collect_files" and "files_in_subtree",
leaving only the former. Additionally it was ensured that directories are not yielded
from this function.
2020-11-14 13:05:26 +01:00
Divy Srivastava
d5661f677e
refactor: deno_crypto op crate (#7956)
This commit factors out "deno_crypto" op crate.

"rand" crate dependency was consequently moved to 
"deno_crypto" crate and reexported.
2020-11-13 22:01:57 +01:00
KNnut
2c8439bc1e
refactor(cli+core): various cleanups in Rust (#8336) 2020-11-13 09:17:31 +11:00
Max Drosdo.www
444c2cda4f
refactor(cli): minor cleanup of main.rs (#8362) 2020-11-13 08:49:59 +11:00
Akshat Agarwal
c744ee2756
fix(cli): don't walk the subdirectory twice when using the --ignore flag (#8040)
This commit reworks "collect_files" utility to accept "ignore" parameter
which allows to filter out files in a single iteration instead of walking
file tree second time to excude "ignored" files.
2020-11-11 20:53:55 +01:00
Benjamin Gruenbaum
a55e689e38
fix(op_crates/web): FileReader event handler order (#8348) 2020-11-11 16:59:49 +01:00
Benjamin Gruenbaum
b255a05f18
fix(web/worker) define event handlers in DOM order (#8334) 2020-11-10 07:15:42 -05:00
Andrew Mitchell
97a9620a01
test(cli/upgrade): remove test_compose_url_to_exec (#8329) 2020-11-10 10:41:33 +01:00
Benjamin Gruenbaum
94b68f9069
fix(cli/rt): dom handler order in websocket (#8320) 2020-11-10 14:34:42 +11:00
Kitson Kelly
0982056ff6
tests(cli): check ignores dynamic import errors (#8323)
Closes #6618
2020-11-10 10:18:43 +11:00
Kitson Kelly
c1fa8fbeba
fix(cli): allow root modules be .mjs/.cjs (#8310)
Fixes #6176
2020-11-10 10:10:41 +11:00
Kitson Kelly
b402b75c1d
fix(cli): allow setting of importsNotUsedAsValues in Deno.compile() (#8306)
Fixes #6663
2020-11-10 06:50:33 +11:00
Kitson Kelly
5375bf2e3f
fix(cli): allow declaration emits for Deno.compile() (#8303)
Fixes #8289
2020-11-10 06:49:15 +11:00
Scott Olson
57c2608e98
fix(cli): Use safe shell escaping in deno install (#7613) 2020-11-09 14:08:12 -05:00
KNnut
aaf7166a9d
refactor(cli): remove unnecessary format! calls (#8315) 2020-11-09 15:38:29 +01:00
Kitson Kelly
293cae5e1f
fix(cli): do not write tsbuildinfo when diagnostics are emitted (#8311)
Fixes #8309
2020-11-09 21:21:49 +11:00
Kitson Kelly
71d7482577
v1.5.2 (#8301) 2020-11-09 10:58:21 +11:00
Bartek Iwańczuk
a269dffe17
chore: remove dead code (#8298) 2020-11-08 23:35:36 +01:00
Bartek Iwańczuk
6743383d2e
upgrade: deno_doc, deno_lint, dprint, swc (#8292) 2020-11-08 23:27:36 +01:00
crowlKats
5995c58e63
refactor: auto detect target triples for upgrade (#8286) 2020-11-08 11:54:35 +01:00
Mo
ccc95bc9b9
refactor: rewrite permission_test to not depend on Python (#8291) 2020-11-08 11:50:27 +01:00
Kitson Kelly
e9edc05bed
fix(cli): ensure that transitory dependencies are emitted (#8275)
Fixes #8111
2020-11-08 07:00:42 +11:00
Kitson Kelly
88c4d3145b
fix(cli): allow remapping to locals for import map (#8262)
Fixes #7723
2020-11-07 15:04:22 +11:00
Kitson Kelly
4f67f0cc60
fix(cli): properly handle type checking root modules with type defini… (#8263) 2020-11-07 06:53:37 +11:00
Kitson Kelly
5f7c80986f
fix(cli): correct libs sent to tsc for unstable worker (#8260)
Fixes #8257
2020-11-06 12:10:19 +11:00
Kitson Kelly
96e03e0b93
refactor(cli): refactor file_fetcher (#8245) 2020-11-06 11:38:21 +11:00
Bartek Iwańczuk
791119d4af
build: rewrite tools/ scripts to deno (#8247)
This commit rewrites scripts in "tools/" directory
to use Deno instead of Python. In return it allows 
to remove huge number of Python packages in "third_party/".
2020-11-05 15:53:21 +01:00
ali ahmed
e7cfd90b0f
fix(cli/repl): Fixing syntax highlighting (#8202)
Fixes #8240
2020-11-05 14:08:01 +11:00
Ryan Dahl
ea8a598f7b
Remove dead code (#8235) 2020-11-03 13:22:33 -05: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
Yoshiya Hinosawa
e736d0f60f
fix(prompt): fix display of non-ASCII characters on Windows (#8199) 2020-11-03 01:15:29 +01:00
Bartek Iwańczuk
c3dd19c5d3
refactor(cli): remove ProgramState::permissions (#8228)
This commit removes ProgramState::permissions field.

Having permissions parsed from CLI flags stored on globally
accessible state object made it easy to mistakenly use these
permissions in situations which required "runtime" permissions.
2020-11-02 23:37:55 +01:00
Kitson Kelly
d672e1405d
refactor(cli): cleanup compiler snapshot and tsc/module_graph (#8220) 2020-11-03 06:41:20 +11:00
Trivikram Kamat
40cd4db974
feat(cli): bump TypeScript to 4.0.5 (#8138) 2020-11-03 06:39:39 +11:00
Yoshiya Hinosawa
397fec63d1
fix(op_crates/web): fix URLSearchParams, malformed url handling (#8092)
Co-authored-by: Evan <c4t@tuta.io>
2020-11-02 18:58:29 +01:00
Benjamin Gruenbaum
a8ca9fe7bb
test(op_crates/web): add EventTarget tests (#8205) 2020-11-02 18:42:22 +01:00
Yoshiya Hinosawa
0e5c8c03ac
add commit hash and target to long_version output (#8133) 2020-11-02 12:40:33 -05:00
Kitson Kelly
272e9b82eb
fix(cli): inject helpers when transpiling via swc (#8221)
Fixes #8212
2020-11-02 22:33:43 +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
Benjamin Gruenbaum
9397cf508e
fix(op_crates/web): make TextEncoder work with forced non-strings (#8206)
Fixes: #8201
2020-11-02 10:57:18 +11:00
Nayeem Rahman
d9b8778c45
refactor(cli/permissions): Cleanup Flags to Permissions conversion (#8213) 2020-10-31 23:44:42 +01:00
Luca Casonato
03769f11b5
v1.5.1 2020-10-31 15:32:43 +01:00
Bartek Iwańczuk
2a36e2f892
upgrade: deno_doc, deno_lint, dprint, swc (#8197)
- deno_doc 0.1.14
- deno_lint 0.2.7
- dprint-plugin-typescript 0.32.7
- swc_bundler 0.14.1
- swc_ecmascript 0.13.1
2020-10-30 20:39:53 +01:00
Bartek Iwańczuk
ce75101e3e
fix: Deno.fdata(), Deno.fdatasync() (#8193)
These APIs were stabilized in 1.5.0, but were
never added to the "stable" Deno namespace. This
commit fixes that.
2020-10-30 13:06:09 +01:00
Bartek Iwańczuk
4f57ca0daf
fix: panic in bundler (#8168)
This commit fixes panic in bundler which was caused
by not setting thread-local slots.
2020-10-30 12:19:49 +01:00
Nayeem Rahman
6be6c517d0
fix(cli/fmt): Strip "\\?\" prefix when displaying Windows paths (#8135) 2020-10-30 03:19:03 +01:00
Sander Hahn
1854c6f73b
fix(cli): prompt works with windows eol and eof (#8149) 2020-10-29 18:35:58 +01:00
Luca Casonato
8d99adb6c4
refactor: don't spin up V8 for deno cache (#8186) 2020-10-29 14:19:55 +01:00
Kitson Kelly
b0482400c9
fix(cli): make hashes of tsconfig deterministic (#8167)
Fixes #8163
2020-10-29 21:18:18 +11:00
Yusuke Tanaka
bfce376c68
refactor(watch): create single watcher for whole process (#8083)
This commit rewrites file watcher used with --watch flag.

Instead of creating new watcher after each restart, only a single
watcher is created for whole process. Additionally debouncing
mechanism has been added to prevent infinite restart loops 
if multiple files were changed in quick succession.

Co-authored-by: bartossh <lenart.consulting@gmail.com>
2020-10-28 12:41:18 +01:00
Kevin (Kun) "Kassimo" Qian
07359b7957
fix(repl): don't hang on unpaired braces (#8151)
Previously, entering a single ']' would cause repl to forever accepting
new lines, due to that `ValidationResult::Invalid` would actually be
consumed by the editor itself while continue building the lines. Instead
we should mark it as `Valid` and send the bad input for evaluation to
get the proper error from V8.

Before:
```
> ]
(you can keep entering new line here, and it will never consume input
until you Ctrl-C)
```

After:
```
> ]
Uncaught SyntaxError: Unexpected token ']'
>
```
2020-10-28 06:03:17 -04:00
Kitson Kelly
e01664d0ae
fix(cli): module graph handles redirects properly (#8159)
Fixes #8154
2020-10-28 20:38:09 +11:00
Kitson Kelly
6844caa9a5
fix(cli): restore tripleslash lib refs support (#8157)
Fixes #8147
2020-10-28 11:52:20 +11:00
Bartek Iwańczuk
dd01f206da
v1.5.0
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2020-10-27 16:00:23 +01:00
Ross Weir
60cd7695ef
fix(cli): handle URL paths in Deno.mkdir() (#8140) 2020-10-27 13:21:32 +01: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
Ross Weir
9fb4931a95
fix(op_crates/web): Expose event properties in console output (#8103)
Fixes #8073
2020-10-27 09:22:03 +11:00
Kitson Kelly
b03f4a4a1c
fix(cli): restore permission check on workers (#8123)
Fixes #8120
2020-10-27 06:56:00 +11:00
Luca Casonato
acc201625f
chore: add bundle_no_check benchmark (#8130) 2020-10-26 19:57:29 +01:00
Ryan Dahl
c4d33e8d77
fix: Use -rw-r--r-- for cache files (#8132) 2020-10-26 12:58:58 -04:00
Tim Reichen
ae86cbb551
rename(std/testing): rename assert*Contains to assert*Includes (#7951)
This commit renames two assertion functions to better align with JS API:
- assertStringContains -> assertStringIncludes
- assertArrayContains -> assertArrayIncludes
2020-10-26 16:03:30 +01:00
Elias Sjögreen
305a9c04ba
feat(unstable): add Deno.systemCpuInfo() (#7774) 2020-10-26 10:54:27 -04:00
Kid
4c41ba5ad7
fix(op_crates/fetch): ensure Request.method to be string (#8100)
Ensure "Request.method" to be the default value ("GET") if 
"init.method" is not defined, which follows browser's behavior.
2020-10-26 15:02:08 +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
Bartek Iwańczuk
aebbdd5cc2
Revert "feat(lint): stabilize "deno lint" subcommand (#8075)" (#8128)
This reverts commit c5c48f845a.
2020-10-26 13:36:13 +01:00
Nayeem Rahman
822e5b6536
fix(core/runtime): Indicate exceptions in promises (#8124)
Fixes #4879
2020-10-26 14:34:00 +11:00