0
0
Fork 0
mirror of https://github.com/denoland/rusty_v8.git synced 2024-11-25 15:29:43 -05:00
Commit graph

1223 commits

Author SHA1 Message Date
Divy Srivastava
08e1a1c361
Add v8::Object [Get/Set]AlignedPointer[From/In]InternalField (#1026) 2022-07-13 12:35:31 +05:30
Bartek Iwańczuk
2193d827b9
feat: WasmAsyncResolvePromiseCallback (#1029) 2022-07-13 07:51:10 +02:00
Aapo Alasuutari
d8480fc7ef
Add Uint32 / Int32 Value method bindings (#1030) 2022-07-13 09:33:55 +05:30
denobot
d2db387448
Rolling to V8 10.4.132.16 (#1012) 2022-07-12 22:27:57 +00:00
Ryan Dahl
53299dceb4
Add back gn args --list on build (#1013) 2022-07-08 10:55:58 -04:00
Ryan Dahl
8dfb1e6559
v0.45.0 2022-07-08 07:32:51 -04:00
Divy Srivastava
47a7bece35
V8 Fast API Sequence (#1022)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-07-08 08:54:24 +05:30
Divy Srivastava
1d0a4c1792
V8 Fast API Calls (#1021)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-07-07 16:30:35 +05:30
Divy Srivastava
e6b443a6e8
Add ReturnValue::set_bool (#1020) 2022-07-04 07:02:13 +05:30
Divy Srivastava
61714dd2b2
v0.44.3 2022-06-29 17:49:01 +05:30
Divy Srivastava
95f2ba399c
Expose from_function_callback_info (#1016) 2022-06-28 16:49:37 +05:30
Kayla Washburn
b9d44e31a2
chore: add check for no-fail-fast label (#1017) 2022-06-27 12:37:04 -06:00
Divy Srivastava
f5d275f622
Add type specialized setters for v8::ReturnValue (#1015) 2022-06-27 08:12:06 +05:30
Bert Belder
ccf181a8b3
v0.44.2 2022-06-21 14:42:15 +02:00
Bert Belder
6251318210
chore: upgrade 'regex' crate (#1011)
The version we were using before had a security vulnerability:
https://github.com/denoland/rusty_v8/security/dependabot/1
2022-06-21 14:42:15 +02:00
denobot
7b59ce4c2d
Rolling to V8 10.4.132.8 (#1010) 2022-06-21 14:17:30 +02:00
Luca Casonato
6e34531c2e
Track v8 10.4 (#1001) 2022-06-21 12:09:02 +02:00
Bert Belder
392124aae1
build: fix flags for Clang 13 and 14 (#1009) 2022-06-21 07:59:49 +02:00
Ryan Dahl
7a7cf44610
v0.44.1 2022-06-15 13:17:31 +00:00
Luca Casonato
b34bc08430
Also run CI on tag (#1007) 2022-06-15 12:04:35 +00:00
Bartek Iwańczuk
2493ac8b17
v0.44.0 2022-06-15 01:59:14 +02:00
denobot
c53d85114e
Rolling to V8 10.4.132.5 (#1002)
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2022-06-15 00:26:50 +02:00
denobot
d05949e6b1
Rolling to V8 10.3.174.8 (#995) 2022-05-28 18:28:43 +02:00
Luca Casonato
65692e80eb
Use denobot account for auto-rolling (#992) 2022-05-28 17:16:00 +02:00
Luca Casonato
fe3d2b0d50
Update autoroll branch to autoroll2 (#990) 2022-05-27 18:19:53 +02:00
Bert Belder
453df4efd5
v0.43.1 2022-05-26 00:49:45 +02:00
github-actions[bot]
0b112c78e0
Rolling to V8 10.3.174.6 (#984) 2022-05-26 00:45:55 +02:00
Bert Belder
b2443ce763
fix(v8): don't crash on Apple Silicon when mprotect() fails expectedly (#982) 2022-05-25 21:59:06 +02:00
Colin Ihrig
40b0b69d91
v0.43.0 2022-05-24 17:53:57 +02:00
Andreu Botella
d43535c48b
ShadowRealm integration callback (#959) 2022-05-24 16:26:12 +02:00
Chengzhong Wu
5f90045ad0
feat: add Context::get_extras_binding_object (#975) 2022-05-24 15:57:35 +02:00
Bert Belder
9b1bb41d86
chore: reduce size of distributed static library (#918)
Closes: #974
2022-05-24 10:28:23 +02:00
Bert Belder
a9567bc31a
chore: clean up and remove redundant gn args (#981) 2022-05-24 10:28:15 +02:00
Bert Belder
9cc57eb44d
chore: update README to reflect Python 3 requirement (#980) 2022-05-24 00:27:13 +02:00
Bert Belder
e7105d4eff
chore: actually run unit tests in build.rs (#980) 2022-05-24 00:27:13 +02:00
Bert Belder
973c986411
chore: auto-format Cargo.toml (#980) 2022-05-24 00:27:13 +02:00
Colin Ihrig
0605e9bc34
feat: add ObjectTemplate::set_immutable_proto() (#977)
This commit exposes SetImmutableProto().
2022-05-19 18:15:32 -04:00
Andreu Botella
15ac9f4533
feat: Context slots (#937) 2022-05-19 23:24:58 +02:00
Bert Belder
356a07c8f6
chore: upgrade Rust crates (#972) 2022-05-18 12:06:19 +02:00
Bert Belder
8b36e84060
test: make the 'heap_limits' test run a lot faster (#972) 2022-05-18 12:06:12 +02:00
Bert Belder
2f189e1668
Upgrade V8 to 10.3.174.3 (#969) 2022-05-18 10:53:34 +02:00
Divy Srivastava
740f751408
Set v8::Promise internal field count to 1 (#967) 2022-05-15 17:40:44 +05:30
Divy Srivastava
9d0c3e4603
ci: use xxl windows runners (#966) 2022-05-14 15:26:53 +05:30
Divy Srivastava
86c8eb4ec2
v0.42.1 2022-05-13 22:26:13 +05:30
Divy Srivastava
afc2dc4596
chore: Upgrade Rust to 1.60.0 (#965) 2022-05-13 20:15:54 +05:30
Timo
242e4cf97f
Fix misuse of MaybeUninit and avoid refs to uninit memory (#954) 2022-05-11 02:22:10 +02:00
Ryan Dahl
f36d8dae7f
print gn args --list (#962) 2022-05-09 16:44:34 -04:00
Spencer
0cd8ae6f16
feat: add FunctionTemplate::instance_template binding (#952) 2022-05-09 19:43:33 +02:00
Andreu Botella
1ed35fd22e
feat: Weak handles and finalizers (#895)
This change adds support for weak handles that don't prevent GC of the
referenced objects, through the `v8::Weak<T>` API. A weak handle can
be empty (if it was created empty or its object was GC'd) or
non-empty, and if non-empty it allows getting its object as a global
or local.

When creating a `v8::Weak` you can also set a finalizer that will be
called at some point after the object is GC'd, as long as the weak
handle is still alive at that point. This finalization corresponds to
the second-pass callback in `kParameter` mode in the C++ API, so it
will only be called after the object is GC'd. The finalizer function
is a `FnOnce` that may close over data, and which takes a
`&mut Isolate` as an argument.

The C++ finalization API doesn't guarantee _when_ or even _if_ the
finalizer will ever be called, but in order to prevent memory leaks,
the rusty_v8 wrapper ensures that it will be called at some point,
even if it's just before the isolate gets dropped.

`v8::Weak<T>` implements `Clone`, but a finalizer is tied to a single
weak handle, so its clones won't be able to keep the finalizer alive.
And in fact, cloning will create a new weak handle that isn't tied to
a finalizer at all. `v8::Weak::clone_with_finalizer` can be used to
make a clone of a weak handle which has a finalizer tied to it.

Note that `v8::Weak<T>` doesn't implement `Hash`, because the hash
would have to change once the handle's object is GC'd, which is a big
gotcha and would break some of the algorithms that rely on hashes,
such as the Rust std's `HashMap`.
2022-05-09 12:20:55 +02:00
Ryan Dahl
ebb10e5368
refactor: small build.rs clean ups (#961) 2022-05-07 13:47:17 -04:00