Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-05-31 | fix: media type for .cjs and application/node (#6005) | Bartek Iwańczuk | |
2020-05-20 | refactor: reorganize TS compiler (#5603) | Bartek Iwańczuk | |
2020-05-18 | refactor: rewrite TS dependency analysis in Rust (#5029) | Bartek Iwańczuk | |
This commit completely overhauls how module analysis is performed in TS compiler by moving the logic to Rust. In the current setup module analysis is performed using "ts.preProcessFile" API in a special TS compiler worker running on a separate thread. "ts.preProcessFile" allowed us to build a lot of functionality in CLI including X-TypeScript-Types header support and @deno-types directive support. Unfortunately at the same time complexity of the ops required to perform supporting tasks exploded and caused some hidden permission escapes. This PR introduces "ModuleGraphLoader" which can parse source and load recursively all dependent source files; as well as declaration files. All dependencies used in TS compiler and now fetched and collected upfront in Rust before spinning up TS compiler. To achieve feature parity with existing APIs this commit includes a lot of changes: * add "ModuleGraphLoader" - can fetch local and remote sources - parses source code using SWC and extracts imports, exports, file references, special headers - this struct inherited all of the hidden complexity and cruft from TS version and requires several follow up PRs * rewrite cli/tsc.rs to perform module analysis upfront and send all required source code to TS worker in one message * remove op_resolve_modules and op_fetch_source_files from cli/ops/compiler.rs * run TS worker on the same thread | |||
2020-05-11 | refactor: check permissions in SourceFileFetcher (#5011) | Bartek Iwańczuk | |
This PR hot-fixes permission escapes in dynamic imports, workers and runtime compiler APIs. "permissions" parameter was added to public APIs of SourceFileFetcher and appropriate permission checks are performed during loading of local and remote files. | |||
2020-05-07 | fix(imports): fix panic on unsupported scheme (#5131) | Bartek Iwańczuk | |
2020-05-07 | fix(deno_dir): better error message (#5120) | Yoshiya Hinosawa | |
Add better error messages when a cache subdirectory in `DENO_DIR` cannot be created. | |||
2020-04-15 | remove calls to futures::executor::block_on (#4760) | Bartek Iwańczuk | |
2020-04-03 | clippy (#4618) | Kitson Kelly | |
2020-03-10 | Add global "quiet" flag (#4135) | Florian Häglsperger | |
2020-03-06 | Add content type for wasm, fix encoding in wasm test fixture (#4269) | Aurélien Bertron | |
2020-02-28 | http_cache: change .headers.json to .metadata.json (#4175) | Ryan Dahl | |
Add original URL to metadata. This is so the VS Code Plugin can reverse look up the URL for cache entries. Ref #4069. | |||
2020-02-28 | Support TypeScript eval through `deno eval -T` flag (#4141) | Kevin (Kun) "Kassimo" Qian | |
2020-02-28 | fetch_cached_remote_source support redirect URL without base (#4099) | Kevin (Kun) "Kassimo" Qian | |
2020-02-25 | Remove _async from method names since _sync are gone (#4128) | Ryan Dahl | |
2020-02-23 | refactor: use OpError instead of ErrBox for errors in ops (#4058) | Bartek Iwańczuk | |
To better reflect changes in error types in JS from #3662 this PR changes default error type used in ops from "ErrBox" to "OpError". "OpError" is a type that can be sent over to JSON; it has all information needed to construct error in JavaScript. That made "GetErrorKind" trait useless and so it was removed altogether. To provide compatibility with previous use of "ErrBox" an implementation of "From<ErrBox> for OpError" was added, however, it is an escape hatch and ops implementors should strive to use "OpError" directly. | |||
2020-02-21 | refactor: remove unneeded ErrorKinds (#3936) | Bartek Iwańczuk | |
2020-02-19 | refactor: rewrite file_fetcher to use async fns, lift blocking call (#4037) | Bartek Iwańczuk | |
2020-02-19 | refactor: rewrite HTTP cache for file fetcher (#4030) | Bartek Iwańczuk | |
2020-02-19 | Support loading additional TS lib files (#3863) | Kitson Kelly | |
Fixes #3726 This PR provides support for referencing other lib files (like lib.dom.d.ts that are not used by default in Deno. | |||
2020-02-18 | refactor: cleanup cli/lib.rs (#4006) | Bartek Iwańczuk | |
* rename methods on Worker related to module loading * reorganize cli/lib.rs * remove cli/progress.rs and cli/shell.rs | |||
2020-02-17 | feat: add --cert flag for http client (#3972) | geoFlux | |
2020-02-12 | fix: Correctly determine a --cached-only error (#3979) | Nayeem Rahman | |
2020-02-04 | Do not encode files loaded from network as utf8 (#3856) | Tilman Roeder | |
2020-02-03 | Use tokio::test for some of cli's unit tests (#3868) | Ryan Dahl | |
2020-02-02 | Remove //tests symlink (#3849) | Luka Hartwig | |
2020-01-26 | Improve support of type definitions (#3755) | Kitson Kelly | |
2020-01-26 | fix clippy warnings (#3798) | Ben Noordhuis | |
2020-01-24 | Do not panic and improve error message on cache failure (#3784) | Kevin (Kun) "Kassimo" Qian | |
2020-01-20 | refactor: reduce number of ErrorKind variants (#3662) | Bartek Iwańczuk | |
2020-01-16 | perf: share http client in file fetcher (#3683) | Bartek Iwańczuk | |
2020-01-11 | Add gzip, brotli and ETag support for file fetcher (#3597) | EnokMan | |
2020-01-05 | Rename crates: 'deno' to 'deno_core' and 'deno_cli' to 'deno' (#3600) | Ry Dahl | |
2020-01-04 | Use async at places, use &self instead of self: &Self (#3594) | Gurwinder Singh | |
2020-01-02 | Happy new year! (#3578) | Ry Dahl | |
2020-01-01 | cleanup after tokio upgrade (#3571) | Gurwinder Singh | |
tokio_util::run and tokio::run_on_current_thread should accept Future<Output=()> instead of Future<Output=Result<(), ()>>. Currently, all the passed futures have to add Ok(()) or futures::future::ok(()) unnecessarily to call this method. | |||
2019-12-23 | Upgrades rust to 1.40.0 (#3542) | Axetroy | |
2019-12-15 | Use async-await at few places, fix spelling mistake (#3499) | Gurwinder Singh | |
2019-12-03 | feat: Add --no-remote, rename --no-fetch to --cached-only (#3417) | Nayeem Rahman | |
2019-11-25 | better error message for missing module (#3402) | Bartek Iwańczuk | |
2019-11-22 | remove tokio_util::block_on (#3388) | Bartek Iwańczuk | |
This PR removes tokio_util::block_on - refactored compiler and file fetcher slightly so that we can safely block there - that's because only blocking path consist of only synchronous operations. Additionally I removed excessive use of tokio_util::panic_on_error and tokio_util::run_in_task and moved both functions to cli/worker.rs, to tests module. Closes #2960 | |||
2019-11-16 | Use futures 0.3 API (#3358) | Bartek Iwańczuk | |
2019-11-15 | Fix remote .wasm import content type issue (#3351) | Kevin (Kun) "Kassimo" Qian | |
2019-11-14 | Loader: support .wasm imports (#3328) | Kevin (Kun) "Kassimo" Qian | |
* loader: support .wasm imports * http_server: true * Support named exports * Clippy | |||
2019-10-17 | feat: --reload flag to take arg for partial reload (#3109) | Michał Sabiniarz | |
Example: To reload only std modules --reload=https://deno.land/std/ | |||
2019-10-16 | fix: remote jsx/tsx files were compiled as js/ts (#3125) | Yusuke Sakurai | |
2019-10-06 | remove more calls to tokio_util::block_on (#3059) | Bartek Iwańczuk | |
towards #2960 | |||
2019-10-04 | Merge deno_cli_snapshots into deno_cli (#3064) | Ryan Dahl | |
2019-10-02 | feat: JSX Support (#3038) | Yusuke Sakurai | |
2019-09-19 | Remove test.py, use cargo test as test frontend (#2967) | Ryan Dahl | |
Fixes #2933 | |||
2019-09-04 | Run tests after "cargo build" on travis (#2854) | Ryan Dahl | |