0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-10-29 08:58:01 -04:00
denoland-deno/cli
Asher Gomez 6fb7e8d93b
feat(permissions): add "--deny-*" flags (#19070)
This commit adds new "--deny-*" permission flags. These are complimentary to
"--allow-*" flags.

These flags can be used to restrict access to certain resources, even if they
were granted using "--allow-*" flags or the "--allow-all" ("-A") flag.

Eg. specifying "--allow-read --deny-read" will result in a permission error,
while "--allow-read --deny-read=/etc" will allow read access to all FS but the
"/etc" directory.

Runtime permissions APIs ("Deno.permissions") were adjusted as well, mainly
by adding, a new "PermissionStatus.partial" field. This field denotes that
while permission might be granted to requested resource, it's only partial (ie.
a "--deny-*" flag was specified that excludes some of the requested resources).
Eg. specifying "--allow-read=foo/ --deny-read=foo/bar" and then querying for
permissions like "Deno.permissions.query({ name: "read", path: "foo/" })"
will return "PermissionStatus { state: "granted", onchange: null, partial: true }",
denoting that some of the subpaths don't have read access.

Closes #18804.

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Nayeem Rahman <nayeemrmn99@gmail.com>
2023-08-03 13:19:19 +02:00
..
args feat(permissions): add "--deny-*" flags (#19070) 2023-08-03 13:19:19 +02:00
bench chore: upgrade to dprint 0.39 (#19768) 2023-07-08 18:34:08 +00:00
cache feat(unstable/lsp): support navigating to deno_modules folder (#20030) 2023-08-02 16:57:25 -04:00
js fix(node): node:test reports correct location (#20025) 2023-08-02 17:11:04 +02:00
lsp feat(unstable/lsp): support navigating to deno_modules folder (#20030) 2023-08-02 16:57:25 -04:00
napi 1.35.3 (#19947) 2023-07-26 10:18:02 -04:00
npm feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
ops fix(bench): run warmup benchmark to break JIT bias (#19844) 2023-07-17 21:17:28 +00:00
schemas feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
standalone refactor(runtime): use new fd methods from resource table (#20010) 2023-08-01 14:48:39 -04:00
tests feat(permissions): add "--deny-*" flags (#19070) 2023-08-03 13:19:19 +02:00
tools refactor: use '--reporter' and '--junit-path' flags for 'deno test' (#20031) 2023-08-02 22:05:34 -04:00
tsc feat(permissions): add "--deny-*" flags (#19070) 2023-08-03 13:19:19 +02:00
util feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
auth_tokens.rs chore: upgrade to Rust 1.67 (#17548) 2023-01-27 10:43:16 -05:00
build.rs refactor: update core extension api usage (#19952) 2023-07-31 18:19:15 +00:00
Cargo.toml chore: remove unused dependencies (#19962) 2023-07-28 15:10:13 +05:30
deno.ico fix(cli): add icon and metadata to deno.exe on Windows (#6693) 2020-07-15 21:54:38 +02:00
deno_std.rs 1.35.3 (#19947) 2023-07-26 10:18:02 -04:00
emit.rs refactor(lsp): move config file related code to config.rs (#19790) 2023-07-10 21:45:09 +00:00
errors.rs feat: TypeScript 5.0.2 (except decorators) (#18294) 2023-03-21 15:46:40 +00:00
factory.rs feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
file_fetcher.rs feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
graph_util.rs feat(unstable): optional deno_modules directory (#19977) 2023-08-02 00:49:09 +00:00
http_util.rs feat(unstable): add more options to Deno.createHttpClient (#17385) 2023-05-21 03:43:54 +02:00
js.rs feat(ext/node): properly segregate node globals (#19307) 2023-07-19 10:30:04 +02:00
main.rs fix(lint): allow to use --rules with --rules-tags (#19754) 2023-07-25 17:24:06 -04:00
module_loader.rs fix(ext/node): fix import json using npm specifier (#19723) 2023-08-01 23:20:08 +00:00
node.rs refactor(ext/node): CjsCodeAnalyzer - analyze_cjs optionally pass source text (#19896) 2023-07-24 15:35:13 -04:00
README.md docs(cli): do not need gen doc for cli (#17260) 2023-01-04 13:19:58 +01:00
resolver.rs feat: top level package.json install when node_modules dir is explicitly opted into (#19233) 2023-05-23 18:51:48 -04:00
version.rs refactor: make version and user_agent &'static str (#18400) 2023-03-23 23:27:58 +01:00
worker.rs feat(npm): support running non-bin scripts in npm pkgs via deno run (#19975) 2023-08-01 18:47:57 -04:00

Deno CLI Crate

crates

This provides the actual deno executable and the user-facing APIs.

The deno crate uses the deno_core to provide the executable.