summaryrefslogtreecommitdiff
path: root/cli/tools/standalone.rs
AgeCommit message (Collapse)Author
2023-01-18refactor(cli): Integrate standalone mode cert handling into `Flags` (#17419)Andreu Botella
The way the standalone mode handles the `--cert` flag is different to all other modes. This is because `--cert` takes a path to the certificate file, which is directly added to the root cert store; except for compile mode, where its byte contents are stored in the standalone metadata, and they are added to the root cert store after the `ProcState` is created. This change instead changes `Flags::ca_file` (an `Option<String>`) into `Flags::ca_data`, which can represent a `String` file path or a `Vec<u8>` with the certificate contents. That way, standalone mode can create a `ProcState` whose root cert store alreay contains the certificate. This change also adds a tests for certificates in standalone mode, since there weren't any before. This refactor will help with implementing web workers in standalone mode in the future.
2023-01-13refactor(cli/tools): reduce cloning (#17309)Geert-Jan Zwiers
2023-01-07refactor(permissions): add PermissionsContainer struct for internal ↵Bartek Iwańczuk
mutability (#17134) Turns out we were cloning permissions which after prompting were discarded, so the state of permissions was never preserved. To handle that we need to store all permissions behind "Arc<Mutex<>>" (because there are situations where we need to send them to other thread). Testing and benching code still uses "Permissions" in most places - it's undesirable to share the same permission set between various test/bench files - otherwise granting or revoking permissions in one file would influence behavior of other test files.
2023-01-02chore: update copyright year to 2023 (#17247)David Sherret
Yearly tradition of creating extra noise in git.
2022-12-14chore: fix recent regression with `deno upgrade` not handling redirects (#17045)David Sherret
2022-12-12fix: always derive http client from cli flags (#17029)David Sherret
I'm not sure how to test this. It doesn't seem to have an existing test. Closes #15921
2022-12-09fix: respect the `--quiet` flag in more cases (#16998)David Sherret
2022-12-09refactor: cleanup main.rs (#16996)David Sherret
1. Extracts out some code from main.rs 2. Inlines all the `x_command` functions in main.rs
2022-12-08fix(compile): ensure import map is used when specified in deno config file ↵David Sherret
(#16990) Closes #14246
2022-11-28refactor: create util folder, move nap_sym to napi/sym, move http_cache to ↵David Sherret
cache folder (#16857)
2022-11-26refactor: `DenoDir` - move to cache folder and make `root_dir` private (#16823)David Sherret
2022-11-18chore: use Rust 1.65.0 (#16688)Aaron O'Mullan
2022-11-03fix(lock): add --no-lock flag to disable auto discovery of lock file (#16526)Bartek Iwańczuk
2022-09-28feat: add --allow-sys permission flag (#16028)Yoshiya Hinosawa
2022-09-22fix(compile): keep non-exe extension in output name on Windows (#15994)David Sherret
2022-09-22feat(npm): add flag for creating and resolving npm packages to a local ↵David Sherret
node_modules folder (#15971)
2022-09-07feat: add --no-npm flag to disable npm: imports (#15673)Bartek Iwańczuk
This commit adds "--no-npm" flag, it's similar to "--no-remote" flag. This flag makes Deno error out if "npm:" specifier is encountered.
2022-09-03BREAKING(unstable): remove --compat mode (#15678)Bartek Iwańczuk
This commit removes "compat" mode. We shipped support for "npm:" specifier support in v1.25 and that is preferred way to interact with Node code that we will iterate and improve upon.
2022-06-28refactor: add `RootConfig` (#14985)David Sherret
2022-06-27refactor: create `args` folder (#14982)David Sherret
2022-06-13feat: no type-check by default (#14691)Bartek Iwańczuk
This commit changes default default behavior of type checking for several subcommands. Instead of type checking and reporting type errors only for local files, the type checking is skipped entirely. Type checking can still be enabled using the "--check" flag. Following subcomands are affected: - deno cache - deno install - deno eval - deno run
2022-05-17feat: subcommands type-check only local files by default (#14623)Bartek Iwańczuk
This commit changes default mode of type-checking to "local" and adds "--check" flag to following subcommands: - deno bench - deno bundle - deno cache - deno compile - deno eval - deno install - deno test
2022-05-13feat: add --no-config flag (#14555)Bartek Iwańczuk
This flag disables loading of configuration file, ie. it will not be automatically discovered and loaded. Of course this flag conflicts with "--config" flag and they cannot be used together.
2022-04-11feat: Add "deno check" subcommand for type checking (#14072)Bartek Iwańczuk
This commit adds new "deno check" subcommand. Currently it is an alias for "deno cache" with the difference that remote modules don't emit TS diagnostics by default. Prints warning for "deno run" subcommand if "--check" flag is not present and there's no "--no-check" flag. Adds "DENO_FUTURE_CHECK" env variable that allows to opt into new behavior now.
2022-03-29refactor(flags): rename CheckFlag to TypecheckMode (#14111)Bartek Iwańczuk
2022-03-28chore: fix compile_windows_ext test (#14142)David Sherret
2022-03-18fix(cli): improve `deno compile` error messages (#13944)TrickyPi
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-02-24fix(compile): Support import maps (#13756)Divy Srivastava
2022-02-15feat(cli): Replace bundling with eszip in deno compile (#13563)William Tetlow
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2022-02-12feat: permission prompt by default (#13650)Ryan Dahl
2022-02-11refactor: use `Arc` instead of making copies of `Flags` struct (#13610)Maxim
2022-01-31feat(cli): add "--no-clear-screen" flag (#13454)Zheyu Zhang
This commit adds "--no-clear-screen" flag which can be used with "--watch" flag to disable clearing of terminal screen on each file change.
2022-01-10cli(compile): fix output flag behaviour on compile command (#13299)Rabin Gaire
2022-01-10fix: install shim with `--allow-all` should not output each permission ↵David Sherret
individually (#13325)
2022-01-07chore: update copyright to 2022 (#13306)Ryan Dahl
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2021-12-15feat(watch): support watching external files (#13087)Jesper van den Ende
2021-11-30feat: add `--no-check=remote` flag (#12766)Kitson Kelly
Closes #11970
2021-11-16refactor: re-export anyhow from deno_core (#12777)Ryan Dahl
2021-10-05feat: add --compat flag to provide built-in Node modules (#12293)Bartek Iwańczuk
This commit adds "--compat" flag. When the flag is passed a set of mappings for built-in Node modules is injected into the import map. If user doesn't explicitly provide an import map (using "--import-map" flag) then a map is created on the fly. If there are already existing mappings in import map that would clash with built-in Node modules a set of diagnostics is printed to the terminal with suggestions how to proceed.
2021-09-04refactor: factor out DenoSubcommand enum variant into structs (#11896)Bartek Iwańczuk
This commit refactors "DenoSubcommand" enum in a way that variants no longer contain anonymous structures but instead contain dedicated structures for each subcommand, eg. "DenoSubcommand::Lint" now contains "LintSubcommand".
2021-08-10refactor: --unsafely-ignore-certificate-errors (#11629)Bartek Iwańczuk
2021-08-09feat: Add --unsafely-treat-insecure-origin-as-secure flag to disable SSL ↵TheAifam5
verification (#11324) This commit adds "--unsafely-treat-insecure-origin-as-secure" flag that allows to disable SSL verification for all domains, or specific domains if they were passed as an argument to the flag. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-08-07feat(tls): Optionally support loading native certs (#11491)Justin Chase
This commit adds "DENO_TLS_CA_STORE" env variable to support optionally loading certificates from the users local certificate store. This will allow them to successfully connect via tls with corporate and self signed certs provided they have them installed in their keystore. It also allows them to deal with revoked certs by simply updating their keystore without having to upgrade Deno. Currently supported values are "mozilla", "system" or empty value.
2021-08-06feat: ffi to replace plugins (#11152)Elias Sjögreen
This commit removes implementation of "native plugins" and replaces it with FFI API. Effectively "Deno.openPlugin" API was replaced with "Deno.dlopen" API.
2021-07-28feat(lsp): ability to set DENO_DIR via settings (#11527)Kitson Kelly
Ref: denoland/vscode_deno#287
2021-07-23feat: add --enable-testing-features-do-not-use (#11499)Luca Casonato
This flag does nothing yet. It is added in preparation for the addition of classic workers.
2021-07-07fix(cli/tools/upgrade): check if passed version is valid (#11296)Leo K
2021-04-26Remove denort optimization (#10350)Ryan Dahl
denort is an optimization to "deno compile" to produce slightly smaller output. It's a decent idea, but causes a lot of negative side-effects: - Deno's link time is a source of constant agony both locally and in CI, denort doubles link time. - The release process is a long and arduous undertaking with many manual steps. denort necessitates an additional manual zip + upload from M1 apple computers. - The "deno compile" interface is complicated with the "--lite" option. This is confusing for uses ("why wouldn't you want lite?"). The benefits of this feature do not outweigh the negatives. We must find a different approach to optimizing "deno compile" output.
2021-04-23fix(cli): standalone bin corruption on M1 (#10311)Aaron O'Mullan
2021-04-12feat(runtime/permissions): prompt fallback (#9376)crowlKats
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>