1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-01-05 13:59:01 -05:00
denoland-deno/ext/web
Koen 2d60600724
fix(ext/web): Copy EventTarget list before dispatch (#19360)
Related issue: https://github.com/denoland/deno/issues/19358.

This is a regression that seems to have been introduced in
https://github.com/denoland/deno/pull/18905. It looks to have been a
performance optimization.

The issue is probably easiest described with some code:
```ts
const target = new EventTarget();
const event = new Event("foo");
target.addEventListener("foo", () => {
  console.log('base');
  target.addEventListener("foo", () => {
    console.log('nested');
  });
});
target.dispatchEvent(event);
```
Essentially, the second event listener is being attached while the `foo`
event is still being dispatched. It should then not fire that second
event listener, but Deno currently does.
2023-06-09 01:13:21 +02:00
..
benches bench: fix benchmarks with extensions (#19059) 2023-05-09 22:53:37 +02:00
00_infra.js fix(core): Use safe primordials wrappers (#18687) 2023-04-14 22:23:28 +02:00
01_dom_exception.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
01_mimesniff.js fix(core): Use safe primordials wrappers (#18687) 2023-04-14 22:23:28 +02:00
02_event.js fix(ext/web): Copy EventTarget list before dispatch (#19360) 2023-06-09 01:13:21 +02:00
02_structured_clone.js fix(core): Use safe primordials wrappers (#18687) 2023-04-14 22:23:28 +02:00
02_timers.js fix(node): make sure "setImmediate" is not clamped to 4ms (#19213) 2023-05-22 22:19:44 +00:00
03_abort_signal.js refactor: further work on node http client (#19327) 2023-06-09 01:13:18 +02:00
04_global_interfaces.js refactor: rename InternalModuleLoader to ExtModuleLoader, use ext: scheme for snapshotted modules (#18041) 2023-03-08 12:44:54 +01:00
05_base64.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
06_streams.js fix(core): Use primordials for methods (#18839) 2023-05-01 15:30:02 +02:00
06_streams_types.d.ts chore: update copyright year to 2023 (#17247) 2023-01-02 21:00:42 +00:00
08_text_encoding.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
09_file.js fix(core): let V8 drive extension ESM loads (#18997) 2023-05-09 12:37:13 +02:00
10_filereader.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
12_location.js fix(core): Use safe primordials wrappers (#18687) 2023-04-14 22:23:28 +02:00
13_message_port.js fix(core): Use primordials for methods (#18839) 2023-05-01 15:30:02 +02:00
14_compression.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
15_performance.js refactor(webidl): move prefix & context out of converters options bag (#18931) 2023-05-01 10:47:13 +00:00
blob.rs Revert "fix(cli): don't store blob and data urls in the module cache (#18261)" (#18572) 2023-04-03 21:05:39 +09:00
Cargo.toml 1.34.1 (#19310) 2023-05-30 01:30:46 +02:00
compression.rs feat(ops): reland fast zero copy string arguments (#17996) 2023-03-03 19:04:10 +05:30
hr_timer_lock.rs feat(ext/web): Request higher-resolution timer on Windows if user requests setTimeout w/short delay (#19149) 2023-05-17 13:59:55 -06:00
internal.d.ts refactor: rename InternalModuleLoader to ExtModuleLoader, use ext: scheme for snapshotted modules (#18041) 2023-03-08 12:44:54 +01:00
lib.deno_web.d.ts chore: update copyright year to 2023 (#17247) 2023-01-02 21:00:42 +00:00
lib.rs feat(ext/web): Request higher-resolution timer on Windows if user requests setTimeout w/short delay (#19149) 2023-05-17 13:59:55 -06:00
message_port.rs chore: use rustfmt imports_granularity option (#17421) 2023-01-14 23:18:58 -05:00
README.md Rename extensions/ directory to ext/ (#11643) 2021-08-11 12:27:05 +02:00
timers.rs feat(ext/web): Request higher-resolution timer on Windows if user requests setTimeout w/short delay (#19149) 2023-05-17 13:59:55 -06:00

deno web

Op crate that implements Event, TextEncoder, TextDecoder and File API (https://w3c.github.io/FileAPI).

Testing for text encoding is done via WPT in cli/.