summaryrefslogtreecommitdiff
path: root/cli/compat
AgeCommit message (Collapse)Author
2022-04-201.21.0 (#14336)denobot
Co-authored-by: ry <ry@users.noreply.github.com> Co-authored-by: David Sherret <dsherret@gmail.com>
2022-04-14chore: forward v1.20.6 release commit to main (#14288)David Sherret
2022-04-07chore: forward v1.20.5 release commit to main (#14232)David Sherret
2022-03-311.20.4 (#14168)David Sherret
2022-03-30build: use workflows for bumping versions and cargo publishing on the CI ↵David Sherret
(#13995)
2022-03-30chore: add semi-colon to compat/mod.rs export default output (#14154)David Sherret
2022-03-25chore: forward v1.20.3 release commit to main (#14121)Luca Casonato
2022-03-241.20.2Kitson Kelly
2022-03-23chore: remove all `pub(crate)`s from the cli crate (#14083)David Sherret
2022-03-22fix(compat): Changes an instance of collect::<Vec<_>>().join("") to ↵Yoav Lavi
collect::<String>() (#14082)
2022-03-16chore: fix build (#13997)Ryan Dahl
2022-03-16v1.20.0Ryan Dahl
2022-03-10v1.19.3Yoshiya Hinosawa
2022-03-031.19.2 (#13825)Satya Rohith
2022-02-27feat(compat): CJS/ESM interoperability (#13553)Bartek Iwańczuk
This commit adds CJS/ESM interoperability when running in --compat mode. Before executing files, they are analyzed and all CommonJS modules are transformed on the fly to a ES modules. This is done by utilizing analyze_cjs() functionality from deno_ast. After discovering exports and reexports, an ES module is rendered and saved in memory for later use. There's a caveat that all files ending with ".js" extension are considered as CommonJS modules (unless there's a related "package.json" with "type": "module").
2022-02-24chore: upgrade to Rust 1.59 (#13767)David Sherret
2022-02-241.19.1 (#13762)David Sherret
2022-02-17v1.19.0Bartek Iwańczuk
2022-02-07fix(compat): ESM resolver for package subpath (#13599)Bartek Iwańczuk
2022-02-04chore: forward v1.18.2 to main (#13595)Bartek Iwańczuk
2022-02-01refactor: integrate deno_graph breaking changes (#13495)Kitson Kelly
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-01-27chore: forward v1.18.1 to main (#13514)Bartek Iwańczuk
2022-01-201.18.0Divy Srivastava
2022-01-13chore: forward v1.17.3 to main (#13364)Bartek Iwańczuk
2022-01-07chore: update copyright to 2022 (#13306)Ryan Dahl
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-06chore: forward 1.17.2 to main (#13295)Bartek Iwańczuk
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-22chore: merge v1.17.1 into main (#13184)Bartek Iwańczuk
2021-12-18refactor: use `once_cell` instead of `lazy_static` (#13135)Divy Srivastava
2021-12-16v1.17.0Bartek Iwańczuk
2021-12-04chore: merge v1.16.4 into main (#12984)Luca Casonato
2021-11-24chore: merge v1.16.3 into main (#12892)Bert Belder
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-171.16.2 (#12794)David Sherret
2021-11-11v1.16.1Luca Casonato
2021-11-09feat(cli): support React 17 JSX transforms (#12631)Kitson Kelly
Closes #8440
2021-11-01port check_if_should_use_esm_loader to rust (#12562)Ryan Dahl
2021-10-28feat(compat): integrate import map and classic resolutions in ESM resolution ↵Bartek Iwańczuk
(#12549) This commit integrates import map and "classic" resolutions in the "--compat" mode when using ES modules; in effect "http:", "https:" and "blob:" imports now work in compat mode. The algorithm works as follows: 1. If there's an import map, try to resolve using it and if succeeded return the specifier 2. Try to resolve using "Node ESM resolution", and if succeeded return the specifier 3. Fall back to regular ESM resolution
2021-10-27chore: update to rusty_v8 0.33.0 (#12564)Luca Casonato
2021-10-25v1.15.3 (#12533)Yoshiya Hinosawa
2021-10-21compat: add DENO_NODE_COMPAT_URL env variable (#12508)Bartek Iwańczuk
2021-10-18feat(unstable): Node CJS and ESM resolvers for compat mode (#12424)Bartek Iwańczuk
This commit adds CJS and ESM Node resolvers to the "--compat" mode. The functionality is spread across "cli/compat" module and Node compatibility layer in "deno_std/node"; this stems from the fact that ES module resolution can only be implemented in Rust as it needs to directly integrated with "deno_core"; however "deno_std/node" already provided CJS module resolution. Currently this resolution is only active when running a files using "deno run --compat --unstable <filename>", and is not available in other subcommands, which will be changed in follow up commits.