1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-27 16:10:57 -05:00
Commit graph

27 commits

Author SHA1 Message Date
Aaron O'Mullan
1cc38f5155
feat(serde_v8): deserialize ArrayBuffers (#13436)
Previously we would only deserialize `ArrayBufferView`s as zero-copy bufs

This avoids rewrapping `ArrayBuffers` in `ArrayBufferView`s when implementing APIs that take [BufferSource](https://webidl.spec.whatwg.org/#BufferSource) args passed through the op-layer
2022-01-20 15:11:09 +01:00
Ryan Dahl
1fb5858009
chore: update copyright to 2022 (#13306)
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-07 22:09:52 -05:00
Aaron O'Mullan
12423e16b7
fix(serde_v8): support #[serde(default)] (#13300) 2022-01-07 13:07:58 +01:00
Bartek Iwańczuk
c59f90d01f
chore: upgrade to Rust 1.57.0 (#12968) 2021-12-04 14:19:06 +01:00
Luca Casonato
6af916c3f4
fix: non ascii buffer response in http server (#12728) 2021-11-10 16:48:46 +01:00
Bartek Iwańczuk
8e31bbbe55
chore: update to Rust edition 2021 (#12578) 2021-11-02 10:03:37 -04:00
Luca Casonato
be68b82eb4
chore: update to rusty_v8 0.33.0 (#12564) 2021-10-27 23:26:15 +02:00
Aaron O'Mullan
c27ef0ac7b
perf(http): encode string bodies in op-layer (#12451)
Using serde_v8's StringOrBuffer
2021-10-26 22:00:01 +02:00
Aaron O'Mullan
f250faaf05
feat(serde_v8): allow all values to deserialize to unit type (#12504) 2021-10-20 23:17:12 +02:00
Aaron O'Mullan
783b4da48a
feat(serde_v8): StringOrBuffer (#12503) 2021-10-20 15:40:20 +02:00
Aaron O'Mullan
4f48efcc55
chore: return serde_v8 to main repo (#12500)
Reduces fragmentation, avoids version drift and facilitates coordinating serde_v8 and op-layer changes
2021-10-20 00:00:45 +02:00
Bartek Iwańczuk
e75ffab0c8
chore: move serde_v8 to separate repo (#10909)
Now available at https://github.com/denoland/serde_v8
2021-06-09 20:37:43 +02:00
Aaron O'Mullan
eb56186e44
fix(serde_v8): remove intentional deserialization error on non-utf8 strings (#10156)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-05-19 20:45:48 +02:00
Tim Ramlot
635253bd3a
feat(runtime/worker): Structured cloning worker message passing (#9323)
This commit upgrade "Worker.postMessage()" implementation to use 
structured clone algorithm instead of non-spec compliant JSON serialization.
2021-05-11 21:09:09 +02:00
Aaron O'Mullan
4e6790a5fa
feat(serde_v8): ZeroCopyBuf (#10432)
Bidirectional zero-copy serialization of buffers between v8 & rust
that can be nested in structs/tuples/etc.
2021-04-30 08:42:09 -04:00
Yoshiya Hinosawa
8424647d22
chore: update copyright headers (#10243) 2021-04-20 14:27:36 +09:00
Aaron O'Mullan
167f017ca0
refactor(core): move SerializablePkg to serde_v8 (#10231) 2021-04-19 15:19:49 +02:00
Aaron O'Mullan
2538de9ced
refactor(serde_v8): move magic code to subfolder and minor cleanup (#10230) 2021-04-18 14:55:41 +02:00
Aaron O'Mullan
043021cbd3
lint(serde_v8): fix "inconsistent struct constructor" (#10227) 2021-04-18 14:35:06 +02:00
Aaron O'Mullan
5f2a83f563
perf(serde_v8): preallocate vector when serializing arrays (#9955) 2021-04-04 15:04:35 +02:00
Aaron O'Mullan
84e1df3ce2
perf(serde_v8): drop need for EscapableHandleScope (#9990)
This is another improvement to serde_v8's serialization code, 
it drops the need for creating a v8::EscapableHandleScope or "subscope".
2021-04-04 02:03:57 +02:00
Aaron O'Mullan
19d0e6b671
perf(serde_v8): introduce Serializable boxable object (#9983) 2021-04-04 01:17:02 +02:00
Aaron O'Mullan
878599ca7c
perf(serde_v8): drop need for RC in serializer (#9987)
Which substantially improves the performance of to_v8() 
by removing Rc's overhead (extra allocs, drops, checks, etc...)
2021-04-04 00:42:16 +02:00
Aaron O'Mullan
105c0ee3b4
perf(serde_v8/de): implement SeqAccess size_hint (#9975) 2021-04-02 20:12:10 -04:00
Aaron O'Mullan
fec1b2a5a4
refactor: new optimized op-layer using serde_v8 (#9843)
- Improves op performance.
- Handle op-metadata (errors, promise IDs) explicitly in the op-layer vs
  per op-encoding (aka: out-of-payload).
- Remove shared queue & custom "asyncHandlers", all async values are
  returned in batches via js_recv_cb.
- The op-layer should be thought of as simple function calls with little
  indirection or translation besides the conceptually straightforward
  serde_v8 bijections.
- Preserve concepts of json/bin/min as semantic groups of their
  inputs/outputs instead of their op-encoding strategy, preserving these
  groups will also facilitate partial transitions over to v8 Fast API for the
  "min" and "bin" groups
2021-03-31 10:37:38 -04:00
Aaron O'Mullan
fa67aeb026
chore: add Deno copyright headers to all rust files (#9909) 2021-03-27 01:26:27 +01:00
Aaron O'Mullan
3d2e05dc7b
Introduce serde_v8 (#9722) 2021-03-25 22:36:46 -04:00