summaryrefslogtreecommitdiff
path: root/cli/tests/integration
AgeCommit message (Collapse)Author
2022-01-24fix(lsp): respect DENO_CERT and other options related to TLS certs (#13467)Kitson Kelly
Fixes #13437
2022-01-18feat: stabilize test steps API (#13400)David Sherret
2022-01-17feat: auto-discover config file (#13313)Ryan Dahl
2022-01-18fix(runtime): don't crash when window is deleted (#13392)Bartek Iwańczuk
This commit fixes an error when user deletes "window" global JS variable. Instead of relying on "window" or "globalThis" to dispatch "load" and "unload" events, we are default to global scope of the worker.
2022-01-17fix(ext/console): don't depend on globalThis present (#13387)Bartek Iwańczuk
2022-01-16fix(cli): Don't strip shebangs from modules (#13220)Andreu Botella
Deno's module loader currently strips a shebang if a module file starts with one. However, this is no longer necessary, since there is a stage-3 TC39 that adds support for shebangs (or "hashbangs") to the language (https://github.com/tc39/proposal-hashbang), and V8, `tsc` and `swc` all support it. Furthermore, stripping shebangs causes a correctness bug with JSON modules, since a JSON file with a shebang should not parse as a JSON module, yet it does with this stripping. This change fixes this.
2022-01-14test: type check lib.deno_core.d.ts (#13356)Bartek Iwańczuk
2022-01-12feat(cli): add ignore directives to bundled code (#13309)juju
This commit adds lint and fmt ignore directives to bundled code as well as a comment stating that the code was bundled and shouldn't be edited manually.
2022-01-11fix(coverage): merge coverage ranges (#13334)Bartek Iwańczuk
Covered ranges were not merged and thus it appeared that some lines might be uncovered. To fix this I used "v8-coverage" that takes care of merging the ranges properly. With this change, coverage collected from a file by multiple entrypoints is now correctly calculated. I ended up forking https://github.com/demurgos/v8-coverage and adding "cli/tools/coverage/merge.rs" and "cli/tools/coverage/range_tree.rs".
2022-01-10cli(compile): fix output flag behaviour on compile command (#13299)Rabin Gaire
2022-01-10fix(coverage): don't type check (#13324)Bartek Iwańczuk
This commit changes "deno coverage" command not to type check. Instead of relying on infrastructure for module loading in "deno run"; the code now directly reaches into cache for original and transpiled sources. In case sources are not available the error is returned to the user, suggesting to first run "deno test --coverage" command.
2022-01-09test: add inspector test with ts files (#13312)Bartek Iwańczuk
2022-01-07chore: update copyright to 2022 (#13306)Ryan Dahl
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-07feat(lsp): provide registry details on hover if present (#13294)Kitson Kelly
Closes: #13272
2022-01-06feat(ext/websocket): server automatically handle ping/pong for incoming ↵Leo Kettmeir
WebSocket (#13172)
2022-01-03feat(compat) preload Node.js built-in modules in global vars REPL (#13127)VishnuJin
This commit adds preloading of built-in Node.js modules in the REPL if running with "deno repl --compat --unstable".
2021-12-30feat(test): Add support for "deno test --compat" (#13235)Steven Guerrero
2021-12-30fix(core): inspector works if no "Runtime.runIfWaitingForDebugger" message ↵Bartek Iwańczuk
is sent (#13191) This commit changes flow in inspector code to no longer require "Runtime.runIfWaitingForDebugger" message to complete a handshake. Even though clients like Chrome DevTools always send this message on startup, it is against the protocol to require this message to start an inspector session. Instead "Runtime.runIfWaitingForDebugger" is required only when running with "--inspect-brk" flag, which matches behavior of Node.js.
2021-12-29feat: output `cause` on JS runtime errors (#13209)Leo Kettmeir
2021-12-23fix(coverage): use only string byte indexes and 0-indexed line numbers (#13190)David Sherret
2021-12-24fix(cli): include JSON modules in bundle (#13188)Kitson Kelly
Fixes #13150
2021-12-22chore: update deno_graph and deno_doc (#13173)Kitson Kelly
2021-12-21chore(tests): remove pty_complete_imports test for deleting the cwd (#13164)David Sherret
2021-12-17fix: inspector prompts (#13123)Bartek Iwańczuk
This commit fixes prompts printed to the terminal when running with "--inspect" or "--inspect-brk" flags. When debugger disconnects error is no longer printed as users don't care about the reason debugger did disconnect. A message suggesting to go to "chrome://inspect" is printed if debugger is active. Additionally and information that process is waiting for debugger to connect is printed if running with "--inspect-brk" flag.
2021-12-16refactor(cli): use GraphData for check and emit (#12960)Nayeem Rahman
2021-12-16fix(lsp): provide diagnostics for import assertions (#13105)Kitson Kelly
Fixes: #13099
2021-12-16fix(test): wait for inspector session in side modules (#13065)Jesper van den Ende
This commit fixes inspector integration with "deno test" subcommand by waiting for inspector sessions to connect if "--inspect-brk" flag is passed. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-12-15feat(watch): support watching external files (#13087)Jesper van den Ende
2021-12-15feat: REPL import specifier auto-completions (#13078)David Sherret
2021-12-15feat: Add support for import assertions and JSON modules (#12866)Bartek Iwańczuk
This commit adds proper support for import assertions and JSON modules. Implementation of "core/modules.rs" was changed to account for multiple possible module types, instead of always assuming that the code is an "ES module". In effect "ModuleMap" now has knowledge about each modules' type (stored via "ModuleType" enum). Module loading pipeline now stores information about expected module type for each request and validates that expected type matches discovered module type based on file's "MediaType". Relevant tests were added to "core/modules.rs" and integration tests, additionally multiple WPT tests were enabled. There are still some rough edges in the implementation and not all WPT were enabled, due to: a) unclear BOM handling in source code by "FileFetcher" b) design limitation of Deno's "FileFetcher" that doesn't download the same module multiple times in a single run Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-12-14fix(ext/web): set location undefined when `--location` is not specified (#13046)Yoshiya Hinosawa
2021-12-11fix: op_set_exit_code (#13034)Bartek Iwańczuk
Fixes "op_set_exit_code" by sharing a single "Arc" between all workers (via "op state") instead of having a "global" value stored in "deno_runtime" crate. As a consequence setting an exit code is always scoped to a tree of workers, instead of being overridable if there are multiple worker tree (like in "deno test --jobs" subcommand). Refactored "cli/main.rs" functions to return "Result<i32, AnyError>" instead of "Result<(), AnyError>" so they can return exit code.
2021-12-11feat(watcher): clear screen on each restart (#12613)Bartek Iwańczuk
This commit adds automatic clearing of terminal screen after restarting execution on file change.
2021-12-09fix(watch): mitigate race condition between file write by other process and ↵David Sherret
watch read (#13038)
2021-12-10feat(cli): update to TypeScript 4.5 (#12410)Kitson Kelly
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-12-08fix: upgrade swc fixing many bundling and `--no-check` bugs (#13025)David Sherret
2021-12-07refactor(timers): refactor timers to use one async op per timer (#12862)Andreu Botella
This change also makes the timers implementation closer to the spec, and sets up the stage to implement AbortSignal.timeout() (whatwg/dom#1032). Fixes #8965 Fixes #10974 Fixes #11398
2021-12-07chore: upgrade to rustls 0.20 (#12488)Ryan Dahl
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: Bert Belder <bertbelder@gmail.com>
2021-11-30fix(test): Improve reliability of `deno test`'s op sanitizer with timers ↵Andreu Botella
(#12934) Although not easy to replicate in the wild, the `deno test` op sanitizer can fail when there are intervals that started before a test runs, since the op sanitizer can end up running in the time between the timer op for an interval's run resolves and the op for the next run starts. This change fixes that by adding a new macrotask callback that will run after the timer macrotask queue has drained. This ensures that there is a timer op if there are any timers which are unresolved by the time the op sanitizer runs.
2021-11-30feat: add `--no-check=remote` flag (#12766)Kitson Kelly
Closes #11970
2021-11-29fix(workers): Make `worker.terminate()` not immediately kill the isolate ↵Andreu Botella
(#12831) Due to a bug in V8, terminating an isolate while a module with top-level await is being evaluated would crash the process. This change makes it so calling `worker.terminate()` will signal the worker to terminate at the next iteration of the event loop, and it schedules a proper termination of the worker's isolate after 2 seconds.
2021-11-29Revert "fix(test): Improve reliability of `deno test`'s op sanitizer with ↵Bartek Iwańczuk
timers (#12908)" (#12929) This reverts commit d335343a79afbcfe719109af510fe7a1dd0df2e8.
2021-11-28fix(test): Improve reliability of `deno test`'s op sanitizer with timers ↵Andreu Botella
(#12908) Although not easy to replicate in the wild, the `deno test` op sanitizer can fail when there are intervals that started before a test runs, since the op sanitizer can end up running in the time between the timer op for an interval's run resolves and the op for the next run starts. This change fixes that by adding a new macrotask callback that will run after the timer macrotask queue has drained. This ensures that there is a timer op if there are any timers which are unresolved by the time the op sanitizer runs.
2021-11-28feat(runtime): add op_set_exit_code (#12911)Ben Noordhuis
Set the exit code to use if none is provided to Deno.exit(), or when Deno exits naturally. Needed for process.exitCode Node compat. Paves the way for #12888.
2021-11-25chore: upgrade lspower to 1.4.0 (#12894)Bartek Iwańczuk
2021-11-24fix(lsp): lsp should respect include/exclude files in format config (#12876)David Sherret
2021-11-24compat: support compat mode in REPL (#12882)Bartek Iwańczuk
This commit introduces "ProcState::maybe_resolver" field, which stores a single instance of resolver for the whole lifetime of the process, instead of creating these resolvers for each creation of module graph. As a result, this resolver can be used in fallback case where graph is not constructed (REPL, loading modules using "require") unifying resolution logic.
2021-11-24chore: speed up compat tests (#12884)Bartek Iwańczuk
This commit speeds up compat tests by using local copy of "deno_std" instead of downloading it from https://deno.land for each test. Additionally type checking is skipped.
2021-11-23fix(cli/compile): skip bundling for pre-bundled code (#12687)Zheyu Zhang
2021-11-24fix(cli): don't cache .tsbuildinfo unless emitting (#12830)Nayeem Rahman
Fixes #12755 Fixes #12807 Fixes #12832