Commit graph

8470 commits

Author SHA1 Message Date
David Sherret ff871e6264
chore(ci): fix canary publish on main (#17374)
Ref #17358
2023-01-12 17:53:47 +00:00
David Sherret 3713a10b64
chore(ci): use mtime cache for fastci (#17373) 2023-01-12 12:07:37 -05:00
David Sherret 120bc5450f
chore(ci): do not clone submodule ./test_util/wpt unnecessarily (#17372) 2023-01-12 11:22:38 -05:00
David Sherret dabcdf2324
chore(ci): only install node for the benchmarks (#17371) 2023-01-12 10:49:46 -05:00
Bartek Iwańczuk 1776dca6c7
ci: update Windows runner, update Google Cloud integration, update Node (#17358)
This commit rolls up following PRs into a single one:
- https://github.com/denoland/deno/pull/16672
- https://github.com/denoland/deno/pull/16674
- https://github.com/denoland/deno/pull/16972

Generation script was updated to take into account these changes.

Co-authored-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Geert-Jan Zwiers <geertjanzwiers@protonmail.com>
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-01-12 16:19:35 +01:00
Bartek Iwańczuk 4d66be1e05
Revert "test: fix flaky deno_land_unsafe_ssl test (#17357)" (#17368)
This reverts commit ee2c6cb04a.

Closes https://github.com/denoland/deno/issues/17359
2023-01-12 15:25:20 +01:00
Divy Srivastava dd2829be0c
fix(napi): Implement napi_threadsafe_function ref and unref (#17304)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-01-12 13:47:55 +01:00
Leo Kettmeir cc806cdf21
fix: check if BroadcastChannel is open before sending (#17366)
Fixes #16978
2023-01-12 13:43:36 +01:00
Leo Kettmeir a6b3910bdf
feat: allow passing a ReadableStream to Deno.writeFile/Deno.writeTextFile (#17329)
Closes #13229
2023-01-12 03:37:23 +01:00
Leo Kettmeir 692f9af14a
fix: don't unwrap in test pipe handling logic (#17341)
Fixes #14746
2023-01-12 02:30:23 +01:00
David Sherret 9d54765f3e
chore(ci): skip non-ubuntu test release jobs on PRs (#17353) 2023-01-11 19:49:18 -05:00
Bartek Iwańczuk ee2c6cb04a
test: fix flaky deno_land_unsafe_ssl test (#17357) 2023-01-12 01:04:25 +01:00
Asher Gomez cc4bc2c01c
fix(ci): use Node 18 (#17355) 2023-01-11 18:30:38 -05:00
David Sherret b0eaa0ba70
chore(ci): save cache on main at end of workflow (#17354)
Seems like our caching was totally broken. We need to save the cache
after building and not before.

```
Warning: Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.
Warning: Cache save failed.
```
2023-01-11 22:21:02 +01:00
Leo Kettmeir b0e0e4f24b
fix: don't panic on resolveDns if unsupported record type is specified (#17336)
Fixes #14373
2023-01-11 21:31:14 +01:00
David Sherret 6ee5563f68
chore(ci): do not run CI on draft PRs unless explicitly run via commit message (#17350)
This will help us reduce CI time during development. The CI can be
explicitly run on draft PRs by adding `[ci]` to the commit message.
2023-01-11 18:44:11 +00:00
David Sherret 8c3c02354d
fix(fmt): better handling of link reference definitions when formatting markdown (#17352)
Two fixes:

- https://github.com/dprint/dprint-plugin-markdown/pull/75
- https://github.com/dprint/dprint-plugin-markdown/pull/73
2023-01-11 18:35:45 +00:00
Bartek Iwańczuk d0a53c3ce5
refactor(napi): Cleanup tests (#17347) 2023-01-11 15:47:26 +01:00
David Sherret e26fc195ef
chore(ci): checkout less submodules based on job (#17343)
Co-authored-by: Luca Casonato <lucacasonato@users.noreply.github.com>
2023-01-11 08:23:08 -05:00
David Sherret e246f06cfb
chore(ci): ci refactor - Part 1 - Generate ci yaml by js (#17335) 2023-01-10 19:16:11 -05:00
Bartek Iwańczuk 14ada3dce2
fix(napi): support for env cleanup hooks (#17324)
This commit adds support for "napi_add_env_cleanup_hook" and
"napi_remove_env_cleanup_hook" function for Node-API.
2023-01-10 19:15:10 +01:00
Nayeem Rahman 71ea4ef274
fix(watch): preserve ProcState::file_fetcher between restarts (#15466)
This commit changes "ProcState" to store "file_fetcher" field in an "Arc",
allowing it to be preserved between restarts and thus keeping the state
alive between the restarts. File watchers for "deno test" and "deno bench"
now reset "ProcState" between restarts.
2023-01-10 16:28:10 +01:00
Bartek Iwańczuk 0329bc69da
fix(napi): handle static properties in classes (#17320)
Adds support for static properties when using "napi_define_class".
2023-01-10 15:35:46 +01:00
Bartek Iwańczuk 636352e0ca
fix(npm): allow to read package.json if permissions are granted (#17209)
This commit changes signature of "deno_core::ModuleLoader::resolve" to pass
an enum indicating whether or not we're resolving a specifier for dynamic import.

Additionally "CliModuleLoader" was changes to store both "parent permissions" (or
"root permissions") as well as "dynamic permissions" that allow to check for permissions
in top-level module load an dynamic imports.

Then all code paths that have anything to do with Node/npm compat are now checking
for permissions which are passed from module loader instance associated with given
worker.
2023-01-10 14:35:44 +01:00
Marcos Casagrande 45768f0e83
fix(ext/web/streams): fix ReadableStream asyncIterator (#16276) 2023-01-09 21:17:36 +01:00
Leo Kettmeir e6c49d14b1
feat(runtime/os): add Deno.env.has() (#17315) 2023-01-09 20:19:55 +01:00
Geert-Jan Zwiers fa175d8cda
fix(cli/args): update value_name of inspect args to resolve broken completions (#17287)
This PR updates the name used in `clap::Arg::value_name` for the
`--inspect*` flags from `HOST:PORT` to `HOST_AND_PORT` because the
former causes an arguments error when using shell completions in the
`zsh` shell.
2023-01-09 13:29:43 +01:00
Leo Kettmeir c41d4ff90e
feat(core): allow specifying name and dependencies of an Extension (#17301) 2023-01-08 23:48:46 +01:00
David Sherret 2be1282be4
fix(install): should always include --no-config in shim unless --config is specified (#17300)
Closes #17294
2023-01-08 09:03:55 -05:00
Dj ad82918f56
feat(ext/ffi): structs by value (#15060)
Adds support for passing and returning structs as buffers to FFI. This does not implement fastapi support for structs. Needed for certain system APIs such as AppKit on macOS.
2023-01-08 09:28:10 +05:30
Geert-Jan Zwiers 84ef26ac9b
refactor(cli/tools): move flag and config logic to CliOptions (#17008)
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-01-07 15:22:09 -05:00
Bartek Iwańczuk fac6447815
refactor(permissions): add PermissionsContainer struct for internal 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-07 17:25:34 +01:00
Chengzhong Wu 82e930726e
fix(core): get v8 console from context extra bindings (#17243)
Explicitly get `console` object from V8 instead of relying on `console`
defined on the global object.
2023-01-06 22:37:42 +01:00
David Sherret d1cdf65b10
fix(npm): handle declaration file resolution where packages incorrectly define "types" last in "exports" (#17290)
Closes #17279
2023-01-06 12:57:52 -05:00
David Sherret 7db729a42d
fix(npm): support old packages and registries with no integrity, but with a sha1sum (#17289)
Closes #17281
2023-01-06 11:36:12 -05:00
Jun Jiang f26700862a
chore: upgrade tokio to 1.24.0 (#17271) 2023-01-06 16:37:23 +01:00
David Sherret 3e72241fda
fix(npm): reduce copy packages when resolving optional peer dependencies (#17280)
If an optional peer dependency entry previously wasn't resolved and it's
now being resolved, then it will add it as if it were a dependency of
the previously resolved package instead of creating a new "copy package"
(seems to be what npm and pnpm does).

Closes #17240
2023-01-06 09:13:21 -05:00
David Sherret c9b0d2709b
fix(npm): panic resolving some dependencies with dist tags (#17278)
This would only occur if a dist tag for a package was resolved more than
once.

Closes #17275
2023-01-06 08:48:56 -05:00
Kenta Moriuchi ff89ff4abb
perf(ext,runtime): remove using SafeArrayIterator from for-of (#17255) 2023-01-06 21:45:23 +09:00
Doni Rubiagatra 39cbaa6d34
fix(cli): uninstall command accept short flags (#17259) 2023-01-06 02:09:39 +00:00
Yiyu Lin 896dd56b7a
refactor(cli,core,ext,rt): remove some unnecessary clone or malloc (#17274) 2023-01-05 14:29:50 -05:00
Geert-Jan Zwiers 4e6b78cb43
refactor(cli): clean up clones (#17268) 2023-01-05 12:33:09 -05:00
denobot fa271b70db
chore: forward v1.29.2 release commit to main (#17277)
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-01-05 16:48:19 +01:00
David Sherret 0ee64ad847
fix: upgrade deno_ast to 0.23 (#17269)
Closes #17172
Closes #15669
Closes #8529
2023-01-04 18:54:54 -05:00
Yiyu Lin 319f607476
chore(cli,ext,rt): remove some unnecessary clone or malloc (#17261) 2023-01-04 13:20:36 +01:00
Yiyu Lin 2da882137e
docs(cli): do not need gen doc for cli (#17260) 2023-01-04 13:19:58 +01:00
Asher Gomez e010eb69c2
chore(CI): update to actions/cache@v3 (#17201) 2023-01-04 15:05:38 +09:00
Asher Gomez 1b001d1b18
fix(permissions): process URL in Deno.FfiPermissionDescriptor.path for revoke() and request() (#17094)
Previously, `Deno.permissions.[revoke|request]()` wouldn't correctly
process the `path: URL` when `name` was `ffi`. This change fixes that
behaviour and adds a new function, `formDescriptor()`, to ensure `URL`
arguments are consistently handled across
`Deno.permissions.[query|revoke|request]()`.
2023-01-03 21:50:14 +01:00
Geert-Jan Zwiers deed07e1d9
chore: resolve clippy errors in windows build (#17215) 2023-01-03 15:04:02 -05:00
Bartek Iwańczuk c1ffd3d2cb
fix(lsp): don't error if completionItem/resolve request fails (#17250) 2023-01-03 18:13:21 +01:00