1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-01 16:51:13 -05:00
Commit graph

397 commits

Author SHA1 Message Date
Tristan F
652694f15d
docs(security): clarify storage explosion attacks in policy (#18697)
Deno does not cover storage explosion attacks from evaluated runtime
code.

I've chosen the following parts for this clarification:
- _Evaluated_ code - storage explosion attacks caused by services in
Deno such as the HTTP server should still be covered.
- Isolated - If the storage explosion attack can happen at arbitrary
different files, it may leave a much more lasting impact on a targeted
host system than on simply the Deno cache.
2023-04-24 13:03:53 +02:00
Bartek Iwańczuk
779d379c68
chore: upgrade rusty_v8 to 0.69.0 (#18796) 2023-04-22 00:36:52 +00:00
Divy Srivastava
9496dfc685
fix(ext/node): implement asymmetric keygen (#18651)
Towards #18455 

This commit implements the keypair generation for asymmetric keys for
the `generateKeyPair` API.

See how key material is managed in this implementation:
https://www.notion.so/denolandinc/node-crypto-design-99fc33f568d24e47a5e4b36002c5325d?pvs=4

Private and public key encoding depend on `KeyObject#export` which is
not implemented. I've also skipped ED448 and X448 since we need a crate
for that in WebCrypto too.
2023-04-19 22:27:34 +05:30
denobot
4e5d370b56
chore: forward v1.32.5 release commit to main (#18758)
Co-authored-by: levex <levex@users.noreply.github.com>
Co-authored-by: Levente Kurusa <lkurusa@kernelstuff.org>
2023-04-18 22:20:49 +02:00
David Sherret
2eb0f9fb5c
ci: don't run wpt tests on debug (#18688) 2023-04-13 14:40:06 +00:00
David Sherret
e39bc959c1
ci: use non-XL runners more (#18675)
![image](https://user-images.githubusercontent.com/1609021/231593822-b9d7c9db-4416-4735-bd89-f28a260607f1.png)

Non-xl runners are faster than the linux xl job, so let's use them for
now

Closes #17103
2023-04-13 11:44:39 +02:00
David Sherret
b82168a1f6
ci: do not run build job on draft prs (#18634)
We had a PR land that didn't actually pass the steps because it passed
on a draft pr. This prevents running the "build" job on draft prs.
2023-04-08 09:27:21 -04:00
Divy Srivastava
bafffa95a0
ci: update to Ubuntu 22.04 runners for all workflows (#18526) 2023-04-01 08:35:31 +05:30
David Sherret
d00f8b4e84
ci: fix main (#18420) 2023-03-24 13:47:50 -04:00
David Sherret
de4667febe
chore: fix located_script_name test (#18418)
Closes #18417
2023-03-24 16:00:47 +00:00
David Sherret
049982c332
ci: bump deno version used in release scripts (#18353) 2023-03-22 18:19:18 +00:00
David Sherret
f603ebba77
chore(ci): save a cargo cache specifically for linting (#18219) 2023-03-16 13:42:31 -04:00
David Sherret
82ee73d795
chore(ci): cache test debug ubuntu-22.04-xl build (#18216) 2023-03-15 21:47:15 -04:00
David Sherret
1c285ac214
chore(ci): fix ci to restore the cache (#18215) 2023-03-15 22:03:07 +00:00
David Sherret
6f9c0a9b7a
chore(ci): escape quotes in "Lint PR title" step (#18200) 2023-03-14 23:55:04 -04:00
Divy Srivastava
485e12062c
ci: update to Ubuntu-22.04-XL runners (#18181)
Updates CI to use ubuntu-22.04-xl runners. A change to sysroot setup
was necessary that links `libdl.so.2` and `libdl.a` that are no longer
present on ubuntu-22.04.

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-03-14 22:12:33 +05:30
David Sherret
b9d2ac32d5
chore(ci): verify the PR title as part of linting (#18163)
This verifies the PR title as part of the lint step.
2023-03-13 18:59:13 +00:00
Ryan Dahl
4c2aeb2502
Update code-of-conduct email (#18162) 2023-03-13 17:14:06 +00:00
Filip Skokan
92c388761a
wpt: only tag daily runs as master (#18155)
This PR updates the WPT upload script so that it only labels runs that
come from the daily WPT job as "master".

This is so that only the daily synchronized runs get selected when
viewing dashboards such as
[this](https://wpt.fyi/results/?label=master&label=experimental&product=deno&product=node.js&product=chrome&product=edge&product=firefox&product=safari&aligned&view=subtest&q=deno%3A%21missing).
2023-03-13 13:24:16 +01:00
David Sherret
a7a804919d
chore(ci): update other workflows to use cargo-toolchain.toml (#18109)
I accidentally missed these in #18104
2023-03-10 11:55:51 +01:00
David Sherret
0da193882e
chore(ci): ensure Rust toolchain installation is based on rust-toolchain.toml (#18104)
It seems like `dtolnay/rust-toolchain` does not want to support
rust-toolchain.toml unfortunately and we had thought it did.
2023-03-09 17:01:41 -05:00
Filip Skokan
64503fabd8
test(wpt): implement process timeout, fix expectations update, and more... (#17892)
- relands #17872
- updates the timeouts to be re-configurable just for CI
- fixes `./tools/wpt.ts update`
- adds option not "ignore" during, applied to wpt epoch runs only
2023-03-02 23:05:17 +01:00
David Sherret
f5840bdcd3
chore: upgrade to Rust 1.67 (#17548)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-01-27 10:43:16 -05:00
Spencer Comfort
87c2493855
chore(ci): update python to 3.11 (#17530) 2023-01-26 16:52:32 +05:30
David Sherret
e09d298a4a
chore(ci): use windows-2022 runner on skipped release job on PRs (#17398) 2023-01-13 19:06:30 +00:00
David Sherret
377f593273
chore: forward 1.29.3 release back to main (#17401) 2023-01-13 13:36:51 -05:00
David Sherret
5707a958ac
chore(ci): try to make sysroot step more reliable (#17383)
Main is failing a lot because of:

```
Err:8 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 debootstrap all 1.0.118ubuntu1.8
  Connection failed [IP: 40.81.13.82 80]
Fetched 44.1 MB in 60s (734 kB/s)
E: Failed to fetch http://azure.archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_1.0.118ubuntu1.8_all.deb  Connection failed [IP: 40.81.13.82 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
```
2023-01-12 21:35:25 -05:00
David Sherret
5a84ecf0cd
chore(ci): only run doc tests on linux (#17379)
Doc tests were observed to take over 100s on the Mac CI in one instance.
2023-01-12 19:56:19 -05:00
David Sherret
0ae83847f4
chore(ci): skip running the benchmarks on a PR except when a label is added (#17377) 2023-01-12 15:45:41 -05:00
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
David Sherret
9d54765f3e
chore(ci): skip non-ubuntu test release jobs on PRs (#17353) 2023-01-11 19:49:18 -05: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
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
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
Asher Gomez
e010eb69c2
chore(CI): update to actions/cache@v3 (#17201) 2023-01-04 15:05:38 +09:00
David Sherret
10e4b2e140
chore: update copyright year to 2023 (#17247)
Yearly tradition of creating extra noise in git.
2023-01-02 21:00:42 +00:00
Bartek Iwańczuk
7526bbc584
ci: update release action (#17034) 2022-12-13 15:59:21 +01:00
David Sherret
5e1113ec77
chore: move/remove some repo top level files (#16951) 2022-12-05 17:30:58 -05:00
Bartek Iwańczuk
14904f6a2c
ci: increase timeout to 120 minutes (#16764) 2022-11-22 21:03:36 +01:00
Bartek Iwańczuk
fedeea6dde
chore: remove stale bot (#16718) 2022-11-20 18:54:35 +01:00
Aaron O'Mullan
238590aa9f
chore: use Rust 1.65.0 (#16688) 2022-11-18 02:59:10 +01:00
David Sherret
15db936348
chore: fix post_publish workflow trigger (#16619) 2022-11-13 18:05:08 +01:00
David Sherret
f81ad0b7c2
fix: update latest release version after github release publish (#16603) 2022-11-13 10:35:03 -05:00
Abdul Rauf
23a04b15c1
chore(ci): update github actions (#16534) 2022-11-06 21:26:21 +05:30
Divy Srivastava
57f17bd3e6
enable bench bot (#16339)
Run benchmarks on a bare metal server. The bot is a webhook on Deno
deploy which can provision a spot instance on Equinix Metal. The machine
type is `m3.small.x86` running a Ubuntu 22.04.

Commands:

`+bench` - Provision and schedule benchmarks for this PR.
`+bench status <id>` - Get current status of the metal instance.

The bot source is here: https://github.com/denoland/bench_bot
2022-10-19 08:03:28 +05:30
Divy Srivastava
cd1c63ad71
fix(build): don't export all symbols to dynamic symbol table (#16171)
Currently, we use `-rdynamic` for exporting Node API symbols to the
symbol table. `-rdynamic` will export *all* symbols, that means
previously unused functions will not be optimized away introducing a lot
of binary bloat. 

This patch uses `-exported_symbol` and `--export-dynamic-symbol` link
flags (not as universal as `-rdynamic`) to only mark Node API symbols to
be put in the dynamic symbol table.
2022-10-06 21:20:00 +05:30
Mathias Lafeldt
1848c7e361
Fix: Honor linter rules in CI and locally (#15492)
RUSTFLAGS take precedence over `target.<triple>.rustflags`. Therefore,
setting the env var globally in CI would always override whatever linter
rules are allowed or denied in .cargo/config.toml.

With this change, we ensure that problems are detected both in CI and
locally, using either cargo clippy or lint.js.
2022-08-19 08:17:18 -04:00
David Sherret
af618e3b8f
chore: make the start_release workflow go faster (#15416) 2022-08-08 19:31:45 -04:00
David Sherret
102595976f
chore: use gist for release instruction checklist (#15414) 2022-08-06 09:45:34 -04:00
Nayeem Rahman
34328690dc
fix(test): output parallel test results independently (#15399) 2022-08-04 12:38:40 -04:00
Kitson Kelly
0b3b2e198d
chore: add perf and needs investigation to stalebot (#15381) 2022-08-02 10:40:14 +10:00
Bartek Iwańczuk
03377ca1d2
chore: cycle cache key (#15371) 2022-08-01 14:18:34 +02:00
Nassim Zen
b5eb154d74
chore(ci): update actions to run on macos-12 (#15272) 2022-07-21 22:53:52 +02:00
David Sherret
9b4ae0868d
chore: update deno automation to 0.12 (#15248) 2022-07-19 16:35:58 -04:00
Nayeem Rahman
12df9f3679
chore(ci): Run wpt launcher with preinstalled Deno (#15098) 2022-07-11 17:30:32 +02:00
Aapo Alasuutari
3da182b0b8
fix(ext/ffi): Avoid keeping JsRuntimeState RefCell borrowed for event loop middleware calls (#15116) 2022-07-09 11:49:20 +02:00
David Sherret
d7feddfca0
ci: use a known good version of deno instead of latest in publish scripts (#15037) 2022-07-02 00:22:07 -04:00
Divy Srivastava
ab11b45d1d
refactor(bench): continuous benchmarking improvements (#14821) 2022-06-28 17:51:05 +05:30
Jesse Jackson
7b1662a8e6
chore: Fix broken link in stale bot text (#14843) 2022-06-13 12:39:43 +02:00
Roj
271cd7afc9
chore: delete FUNDING.yml (#14849) 2022-06-11 23:15:55 +05:30
Lucas Michot
4911acb148
chore(scripts): always run workflows against Deno's most recent version. (#14819) 2022-06-08 16:46:57 +02:00
Nayeem Rahman
9385a91312
refactor(core): Move Deno.core bindings to ops (#14793) 2022-06-07 11:25:10 +02:00
David Sherret
1081659be1
chore(scripts/release): increase internally used deno version (#14784) 2022-06-05 15:44:45 -04:00
Ryan Dahl
99289451dc
Remove .github/CODEOWNERS (#14781)
It's too spammy and has the opposite of the intended effect: people ignore code
review duties because they assume any code-review-requests are automated and
unrelated to their work. Please just manually request reviews.
2022-06-02 10:20:16 -04:00
Leo Kettmeir
4e1ca1d178
refactor: use spawn API across codebase (#14414) 2022-05-18 22:00:11 +02:00
Luca Casonato
0ee76da07b
chore: update to rust 1.60.0 & update Cargo.lock (#14260)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2022-05-13 01:12:55 +02:00
Aaron O'Mullan
f18d0539b1
cleanup(ops): simpler is_unit_result() (#14586)
Rough token-string matching is robust enough and much easier to grok
2022-05-12 20:22:42 +02:00
Luca Casonato
64f9711f7d
ci: use xl windows runners (#14554)
Thanks GitHub :)
2022-05-10 14:33:44 +02:00
Nayeem Rahman
cb884de2e9
fix(runtime/web_worker): Use biased select when getting module result (#14553) 2022-05-10 11:26:57 +02:00
Luca Casonato
242273e69b
chore: update deps (#14416) 2022-05-05 12:41:59 +02:00
Bartek Iwańczuk
3f08a40412
refactor: add core.formatLocationFilename, remove op_format_filename (#14474)
This commit moves "op_format_location" to "core/ops_builtin.rs"
and removes "Deno.core.createPrepareStackTrace" in favor of
"Deno.core.prepareStackTrace".

Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2022-05-03 19:45:57 +02:00
David Sherret
58eab0e2b3
fix(test): capture worker stdout and stderr in test output (#14410) 2022-04-26 19:00:04 -04:00
Divy Srivastava
57f7e07c13
Reland "perf(http): optimize ReadableStreams backed by a resource" (#14346) 2022-04-22 16:19:08 +05:30
David Sherret
94613107d5
chore(ci): skip ci cache when doing a release (#14350) 2022-04-21 12:05:24 -04:00
denobot
29c8cd8aae
1.21.0 (#14336)
Co-authored-by: ry <ry@users.noreply.github.com>
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-04-20 21:50:16 -04:00
Bartek Iwańczuk
03019e7781
Revert various PRs related to "ext/http" (#14339)
* Revert "feat(ext/http): stream auto resp body compression (#14325)"
* Revert "core: introduce `resource.read_return` (#14331)"
* Revert "perf(http): optimize `ReadableStream`s backed by a resource (#14284)"
2022-04-21 02:22:55 +02:00
David Sherret
aaaa877d91
chore: fix version bump credentials (#14338) 2022-04-20 19:57:22 -04:00
Leo Kettmeir
8a7539cab3
feat(runtime): two-tier subprocess API (#11618) 2022-04-21 00:20:33 +02:00
Divy Srivastava
2612b6f20f
core: introduce resource.read_return (#14331) 2022-04-20 18:39:13 +02:00
David Sherret
b4af648c15
chore: release fixes based on doing the v1.20.6 release (#14289) 2022-04-15 09:39:41 -04:00
David Sherret
0e4574b2e3
chore: forward v1.20.6 release commit to main (#14288) 2022-04-14 15:50:48 -04:00
Bartek Iwańczuk
f7e7f54849
chore: use lock file for tooling scripts (#14253)
This commit adds lock file for maintenance scripts in "tools/"
directory. 

The lock file is stored in "tools/deno.lock.json".
2022-04-13 18:51:16 +02:00
Nayeem Rahman
4d18f558e4
feat(ext/web): Add error events for event listener and timer errors (#14159)
- feat: Add handleable error event for even listener errors
- feat: Add handleable error event for setTimeout()/setInterval() errors
- feat: Add Deno.core.destructureError()
- feat: Add Deno.core.terminate()
- fix: Don't throw listener errors from dispatchEvent()
- fix: Use biased mode when selecting between mod_evaluate() and
  run_event_loop() results
2022-04-13 11:50:57 +02:00
David Sherret
a4eee007ef
chore: update release instructions based on 1.20.5 release (#14239) 2022-04-08 12:32:25 -04:00
David Sherret
e33329b47e
chore(ci): automatically open PR to forward patch release back to main (#14180) 2022-04-04 14:56:29 -04:00
David Sherret
c0ee027d34
chore(ci): automatically include releases notes in release draft (#14179) 2022-04-02 11:25:12 -04:00
David Sherret
5cab3e7dba
build: use workflows for bumping versions and cargo publishing on the CI (#13995) 2022-03-30 16:37:00 -04:00
Luca Casonato
25b73a366f
fix(ext/ffi): enforce unstable check on ops (#14115) 2022-03-25 12:29:54 +01:00
Aaron O'Mullan
6516130b01
chore: drop src/ in bench_util & serde_v8 (#14097)
To align with conventions used in our other crates
2022-03-24 11:23:40 +01:00
Eliaz Bobadilla
c52d72e8e1
ci: update actions/checkout@v2 to v3 (#14089) 2022-03-24 13:36:33 +09:00
Aaron O'Mullan
f580134b1e
cleanup(serde_v8): streamline magic types (#14076)
Formalize magic types and how they're "transerialized", also makes U16String deserializable
2022-03-23 21:15:01 +01:00
Aaron O'Mullan
f81334d5bd
feat(core): disableable extensions & ops (#14063)
Streamlines a common middleware pattern and provides foundations for avoiding variably sized v8::ExternalReferences & enabling fully monomorphic op callpaths
2022-03-22 16:39:58 +01:00
David Sherret
b410937556
chore: fix development issues on Windows (#14030) 2022-03-21 14:30:43 +01:00
Divy Srivastava
3c47500975
chore: add Rust toolchain components (#14004) 2022-03-17 21:54:24 +05:30