deno/cli/tools/jupyter
Matt Mastracci 5193834cf2
refactor(cli): clean up test runner channels (#22422)
Gets us closer to solving #20707.

Rewrites the `TestEventSender`:

- Allow for explicit creation of multiple streams. This will allow for
one-std{out,err}-per-worker
- All test events are received along with a worker ID, allowing for
eventual, proper parallel threading of test events.
 
In theory this should open up proper interleaving of test output,
however that is left for a future PR.

I had some plans for a better performing synchronization primitive, but
the inter-thread communication is tricky. This does, however, speed up
the processing of large numbers of tests 15-25% (possibly even more on
100,000+).

Before

```
ok | 1000 passed | 0 failed (32ms)
ok | 10000 passed | 0 failed (276ms)
```

After

```
ok | 1000 passed | 0 failed (25ms)
ok | 10000 passed | 0 failed (230ms)
```
2024-02-23 11:11:15 -07:00
..
resources fix(jupyter): Rename logo assets so they are discoverable (#20806) 2023-10-06 22:31:12 +02:00
install.rs feat(jupyter): don't require --unstable flag (#21963) 2024-01-18 23:16:14 +01:00
jupyter_msg.rs chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00
mod.rs refactor(cli): clean up test runner channels (#22422) 2024-02-23 11:11:15 -07:00
server.rs chore: update copyright to 2024 (#21753) 2024-01-01 19:58:21 +00:00