Marcus Weiner
b0dc42f900
Add support for setting V8 heap limits and using a near-heap-limit callback ( #427 )
2020-07-30 18:40:18 +02:00
Bert Belder
31036d8130
Upgrade crates ( #428 )
2020-07-28 15:12:30 +02:00
Bert Belder
da0c5f76e4
Add 'CallbackScope<()>' that doesn't assume an entered Context ( #425 )
...
Certain callbacks (e.g. `WasmLoadSourceMapCallback`) expect the
embedder to return a local handle (a `Local<String>` in this case), but
do not provide a `Local<Context>` as an argument, nor does it provide
any other argument that we might obtain a context from. This is not
unexpected - WASM execution as such is not tied to a context, and a
`Local<String>` can be created without a context too because it's a
primitive value that has no JavaScript prototype.
2020-07-19 11:02:23 +02:00
Ryan Dahl
e2dd7a7f7d
v0.7.0
2020-07-18 10:55:29 -04:00
Bartek Iwańczuk
040fbce4fe
chore: update Rust to 1.45.0 ( #424 )
2020-07-18 10:55:15 -04:00
Ben Sheffield
e74b6bcd0d
Add 'Object::set_accessor_with_setter' ( #422 )
2020-07-17 11:17:29 -04:00
Bert Belder
9684640b48
Implement the 'Hash' trait for local and global handles ( #415 )
2020-07-08 10:27:34 +02:00
Bert Belder
2b11a57d47
Refactor 'v8__internal__GetIsolateFromHeapObject' ( #415 )
...
It turns out that using `v8::internal::MaybeObject` was, although
harmless, not appropriate here, because this function does not deal
deal with (potentially) weak handles.
2020-07-08 09:41:37 +02:00
Bert Belder
82d0287028
'External' handles can be created without entering a Context ( #416 )
2020-07-05 01:36:51 +02:00
Bert Belder
91c8c7d1c7
Implement 'Eq' for all subtypes of 'Value' and its handles ( #414 )
2020-07-04 07:11:56 +02:00
Bert Belder
d3f6e4d36c
Add 'Value::same_value_zero()' ( #414 )
2020-07-04 07:11:04 +02:00
Skyler Lipthay
1b84bc74f6
Add 'Value::boolean_value()' and 'Value::to_boolean()' ( #412 )
2020-07-03 14:42:19 +02:00
Skyler Lipthay
8ebfb027c0
Add 'Object::has(_index)' and 'Object::delete(_index)' ( #412 )
2020-07-03 14:41:40 +02:00
Bert Belder
b981aaceee
Add 'External::new()' and 'External::value()' ( #413 )
2020-07-03 14:01:42 +02:00
Bert Belder
acf6bfe0e4
Add the 'HandleScope::with_context()' scope constructor ( #410 )
2020-07-01 10:44:23 +02:00
Bert Belder
c13625148f
Refactor handle types 'Local' and 'Global' ( #410 )
...
* Merged all handle type implementations into one file ('handle.h').
* Made it so that `Global` handles cannot be empty.
* Renamed the `AsHandle` trait to `Handle`, and made it more generally
useful.
* Simplified how `PartialEq` is implemented for V8 heap objects and/or
the `Local`/`Global` handles that reference them.
2020-07-01 10:44:23 +02:00
Bert Belder
850af2e857
Remove 'FinalizationGroup' bindings ( #410 )
...
V8 no longer supports or even defines this type.
2020-07-01 10:44:23 +02:00
Bert Belder
17a40b3914
v0.6.0
2020-06-26 18:07:27 +02:00
Bert Belder
c1104f335e
Upgrade V8 to 8.5.216 ( #409 )
2020-06-26 17:32:44 +02:00
Bert Belder
8635fb2a60
Upgrade crates ( #409 )
2020-06-26 17:29:10 +02:00
Bert Belder
4e64cefc9c
Remove unnecessary 'DerefMut' impl from 'Local<T>' ( #406 )
...
Local handles never need to be mutable. This patch also rounds up the
last few places where we were still asking the user to pass an `&mut T`
to an API method.
2020-06-26 15:05:39 +02:00
Bert Belder
b1a4dfea8b
Remove 'context' param from (almost) all public methods ( #406 )
2020-06-26 03:00:06 +02:00
Bert Belder
de2cca4c7f
Integrate 'TryCatch' in the scope system ( #406 )
2020-06-26 01:50:32 +02:00
Bert Belder
3b6ed67f5e
Rewrite the scope system from scratch ( #406 )
2020-06-26 01:42:00 +02:00
Bert Belder
8a4dc30445
Rename to_local() to cast_local(), use a closure ( #406 )
...
This makes it possible to add a run-time check that verifies that the
specified closure is actually the one that contains the local handle.
2020-06-19 20:18:07 +02:00
Bert Belder
dfd5069ef6
Upgrade crates ( #408 )
2020-06-19 20:13:37 +02:00
Bert Belder
dba9cb5ec3
ci: upgrade to Rust 1.44.1 ( #408 )
2020-06-19 20:12:24 +02:00
Bert Belder
6db41791ca
Remove unused 'v8::Locker' constructor/destructor bindings ( #407 )
2020-06-17 06:15:09 +02:00
Bert Belder
106a8085e2
Remove an unnecessary try_into() call ( #407 )
2020-06-17 06:15:08 +02:00
Bert Belder
54f6bfe8c1
Reflow comments and strings that exceed the 80-char column limit ( #407 )
2020-06-17 06:15:08 +02:00
Bert Belder
acdcede4d6
ci: upgrade to Rust 1.44.0 ( #402 )
2020-06-05 04:36:50 +02:00
Bert Belder
72042f2401
ci: use upstream actions/cache@v2 ( #402 )
...
Upstream finally tagged v2.0.0 so there's no reason to use our own fork
any longer.
2020-06-05 04:36:39 +02:00
Bert Belder
35e7e73ff4
Add (failing) test: escaping twice from EscapableHandleScope should panic ( #401 )
2020-06-05 03:57:31 +02:00
Ryan Dahl
5bb08e89b1
v0.5.1
2020-06-04 10:29:48 -04:00
Ryan Dahl
d8be935b19
upgrade crates
2020-06-04 10:29:48 -04:00
Ryan Dahl
3676a938b5
upgrade: V8 8.5.104 ( #398 )
2020-06-03 18:49:52 -04:00
Ryan Dahl
775f848a8f
v0.5.0
2020-06-01 17:34:32 -04:00
Ryan Dahl
5c5ff3a521
Add module_snapshot test ( #396 )
2020-06-01 17:32:20 -04:00
Bert Belder
74d806cbe3
Make error constructors in Exception less repetitive ( #394 )
2020-06-01 08:57:45 +02:00
Bert Belder
e4c260b8d2
Fix typo in signature of trait method 'Shared::from_unique_ptr()' ( #393 )
2020-06-01 08:44:10 +02:00
Bert Belder
771acbab02
Reflow comment and fix a typo in it ( #391 )
...
Closes: #374
2020-05-31 23:05:23 +02:00
Max Bruce
1937d30eba
Add bindings for 'Object::get_(own)_property_names()' ( #337 )
...
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2020-05-31 23:04:01 +02:00
George Hahn
d87341a7ce
Fallback to curl if download_file.py fails ( #373 )
2020-05-31 14:36:56 -04:00
Bert Belder
a9ea69b5d5
Add more comments explaining why Local::from_raw() is appropriate ( #389 )
2020-05-31 19:39:08 +02:00
utam0k
25276c8249
Improve error message when build.rs fails because OUT_DIR is not set ( #387 )
2020-05-31 19:25:25 +02:00
Bert Belder
405a874c36
Fix remaining Local::from_raw()
misuse, and correct some lifetimes ( #388 )
2020-05-31 19:00:04 +02:00
Bert Belder
c114c46e15
Fix incorrect function signatures in module.rs ( #388 )
...
* `usize` and `int` are not equivalent or interchangeable at any level.
* Removed an unnecessary mutable borrow.
2020-05-31 19:00:01 +02:00
Bert Belder
af9ac3c4b9
Uncomment broken test, use #[ignore] instead ( #388 )
2020-05-31 18:59:51 +02:00
Bert Belder
cfbfb9524f
Add test that triggers an unsolved HandleScope bug ( #385 )
2020-05-31 13:42:13 +02:00
Bert Belder
8213c0e428
Remove incorrect uses of Local::from_raw() ( #385 )
2020-05-31 13:41:42 +02:00