Commit Graph

1204 Commits

Author SHA1 Message Date
Matt Mastracci
a90b6b9c88
V0.83.2 (#1394)
v0.83.2
2024-02-09 14:40:59 -07:00
Matt Mastracci
a8606e3dcb
feat: allow v8::Data as a generic for get_*_from_snapshot_once (#1393) 2024-02-09 20:39:30 +00:00
Guillaume Bort
477f5af361
Fix misleading BigInt rustdoc (#1379)
* Fix misleading BigInt rustdoc

The original documentation was unclear about the value of the bool. I interpreted it as being `true` if the value was truncated.
2024-02-03 17:44:56 +00:00
Michael Howell
54e93385b8
Fix busted doc comment (#1392)
* Fix busted doc comment

This doc comment contains raw HTML, when it's supposed
to contain generics. Fix this by wrapping them as code.

* Update src/handle.rs

---------

Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-02-03 17:44:27 +00:00
denobot
d719d4b171
Rolling to V8 12.1.285.27 (#1383) 2024-01-29 08:43:20 +05:30
Divy Srivastava
ff2a50ccdf
v0.83.1 (#1389)
0.83.1
2024-01-10 13:22:53 +00:00
Divy Srivastava
9f10d76f59
Retrieve value from cppgc::Member handle (#1388) 2024-01-10 04:30:54 +00:00
Divy Srivastava
21e7d7b3f2
Remove AllCanRead flag from PropertyHandlerFlags (#1387) 2024-01-10 08:21:04 +05:30
Divy Srivastava
70a07c050b
isolate->GetCppHeap() can return nullptr if no heap is attached (#1385)
Changes `v8::Isolate::get_cpp_heap` to return a `Option<&Heap>`.
2024-01-06 18:05:15 +00:00
Divy Srivastava
e4cdf58665
Add faq for non-main thread init crash (#1384) 2024-01-06 11:50:07 +00:00
Divy Srivastava
20262ae895
v0.83.0 (#1382) 2024-01-06 16:27:32 +05:30
Divy Srivastava
3de68239a5
Upgrade to V8 12.1.285.6 (#1374)
1. [[exceptions] Unify pending and scheduled exceptions](https://chromium-review.googlesource.com/c/v8/v8/+/5050065)

Reset no longer clears exception if it was rethrown. The test had to be adjusted for the same.

2. [[api] Allow passing CppHeap on Isolate creation](https://chromium-review.googlesource.com/c/v8/v8/+/4989254)

`AttachCppHeap` was deprecated but the alternative of passing `CppHeap` via Isolate CreateParams hard crashes (SIGSEGV). There are no tests for this in V8 and it seems the [Chromium CL](https://chromium-review.googlesource.com/c/chromium/src/+/4992764) is also crashing. For now I've just suppressed the deprecation warning until the crash is fixed in V8.

3. v8::Serializer impl must not throw more than one exception. 

I changed `get_shared_buffer_id()` to not throw and return `None`. V8 internally calls data clone error when it's the SAB is not clonable.

Other changes:

- `v8::ScriptCompiler` size increased by 3 words with `v8::ScriptCompiler::CompilationDetails`.
- `v8::ObjectTemplate::SetAccessor` & `v8::ObjectTemplate::SetAccessorProperty` signature changed and also deprecated.
- `v8::Context::SetContinuationPreservedEmbedderData` deprecated. Use `v8::Isolate::GetContinuationPreservedEmbedderData` instead.
- `GetStalledTopLevelAwaitMessage` deprecated. Use `GetStalledTopLevelAwaitMessages` instead.
- `v8::Isolate::AttachCppHeap` deprecated. Set the heap on Isolate creation using CreateParams instead. 
- `v8::ScriptOrigin` deprecated. Use constructor without the isolate.
- `v8::SnapshotCreator` is deprecated. Use the version that passes CreateParams instead.
- `v8::Isolate` assertion failures.

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-01-05 18:50:42 +05:30
Guillaume Bort
60e0859514
Explicit panic instead of silent memory corruption (#1377)
Due to the automatic entry and exit behavior of Isolate upon creation and drop, it is crucial to ensure that v8::OwnedIsolate instances are dropped in the reverse order of their creation. Dropping them in the incorrect order can result in the corruption of the thread-local stack managed by v8, leading to memory corruption and potential segfaults. This introduces a check to verify the `this == Isolate::GetCurrent()` requirement before invoking the exit function. If the requirement is not met, a clean panic is triggered to provide explicit error handling instead of allowing silent memory corruption.
2023-12-12 07:32:40 -07:00
Matt Mastracci
811cce27c0
chore: disable android example deps on non-android platforms (#1375) 2023-12-08 16:34:43 -07:00
Matt Mastracci
0331922b66
chore: bump deps (#1376) 2023-12-08 16:34:34 -07:00
Divy Srivastava
713758ba13
chore: track v8 12.1 (#1372) 2023-12-05 17:29:27 +05:30
Bartek Iwańczuk
fa11bcd769
v0.82.0 (#1369) 2023-11-26 19:37:55 -05:00
denobot
16ce1957a0
Rolling to V8 12.0.267.8 (#1365)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-11-27 00:17:35 +01:00
Laurence Rowe
ec2c901895
feat: Support custom host objects in ValueSerializer (#1322)
Add v8::ValueSerializerImpl::{has_custom_host_object,is_host_object} 
equivalents for v8::ValueSerializer::Delegate::{HasCustomHostObject,IsCustomHostObject}.

This enables serializing custom host objects without embedder fields.
2023-11-21 00:24:59 +01:00
Luca Casonato
75a2646b89
chore: track v8 12.0 (#1360) 2023-11-01 11:16:08 +01:00
Luca Casonato
48fcce44d6
0.81.0 2023-11-01 11:11:39 +01:00
denobot
92f7d41a4c
Rolling to V8 12.0.267.1 (#1361)
Co-authored-by: Luca Casonato <hello@lcas.dev>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-11-01 01:26:06 +01:00
Divy Srivastava
7072da4199
Add cppgc bindings (#1336)
https://v8.dev/blog/high-performance-cpp-gc

Oilpan in Deno design doc: https://www.notion.so/denolandinc/Oilpan-cppgc-in-Deno-e194f4268e9f4135ba97610ff7d3a949?pvs=4

Oilpan can be used to implement GC'able resources in Deno

Closes https://github.com/denoland/rusty_v8/issues/933
2023-10-30 20:40:15 +05:30
Niranjan Kurhade
fe574ecc4d
Fixed the broken link of releases in README (#1357) 2023-10-29 16:05:49 +05:30
Matt Mastracci
0654d2248a
chore: disable zlib in rusty_v8 (#1358) 2023-10-27 10:00:49 -06:00
Bartek Iwańczuk
9af2c16185
v0.80.0 (#1355) 2023-10-26 20:27:52 +00:00
Matt Mastracci
01d82405e1
feat: add call_with_context to v8::Function (#1350) 2023-10-26 12:28:14 -06:00
Bartek Iwańczuk
be0e017cd5
chore: update V8 to latest floated patch (#1354)
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2023-10-26 16:39:22 +00:00
Divy Srivastava
ba5d0870db
v0.79.2 (#1345) 2023-10-07 16:38:16 +00:00
Divy Srivastava
cdfb89e8a7
Add test for --expose-deno-builtins (#1344) 2023-10-07 16:04:11 +00:00
denobot
09a6fdea3c
Rolling to V8 11.8.172.13 (#1335) 2023-10-06 10:31:09 -07:00
Bartek Iwańczuk
547e7ca868
v0.79.1 (#1343) 2023-10-03 16:24:45 +00:00
Matt Mastracci
da5ca4f2d1
feat: add get_backing_store to ArrayBufferView (#1342) 2023-10-03 15:23:59 +00:00
Matt Mastracci
efca1408f6
fix: arraybuffer init from vec was broken if vec reallocated to box (#1341) 2023-10-03 09:17:18 -06:00
Matt Mastracci
088c998929
0.79.0 (#1339) 2023-10-02 18:40:46 +00:00
Matt Mastracci
bf277f4f8e
feat: new_backing_store_from_bytes and empty for ArrayBuffer and SharedArrayBuffer (#1334) 2023-10-02 12:08:51 -06:00
Matt Mastracci
12dca0cf03
feat: add scope-less data() access on ArrayBufferView (#1338) 2023-09-29 18:20:29 -06:00
Matt Mastracci
768e598831
0.78.0 (#1330) 2023-09-22 11:40:55 -06:00
Matt Mastracci
bb5dadb418
fix: better fix for empty Uint8Array (#1329) 2023-09-22 17:34:30 +00:00
Luca Casonato
97fab5ce0f
v0.77.0 2023-09-21 09:00:21 +02:00
denobot
55cc17a6b7
Rolling to V8 11.8.172.6 (#1320) 2023-09-21 08:19:03 +02:00
Matt Mastracci
8f282fa04b
chore: typo (#1327) 2023-09-20 11:56:59 -06:00
Matt Mastracci
35578c8580
fix: never create a null slice (#1326) 2023-09-20 14:37:10 +00:00
Laurence Rowe
b2a7cfe0c2
fix(Symbol): deprecate for_global in favour of for_key and for_api (#1324)
`for_global` was documented as `for_key` but implemented as `for_api`.

Closes #1323
2023-09-18 17:48:13 -06:00
Bartek Iwańczuk
0f0697039e
v0.76.0 (#1319) 2023-09-13 16:40:57 +02:00
denobot
f147f0250d
Rolling to V8 11.8.172.3 (#1317) 2023-09-12 16:30:24 -07:00
Bert Belder
53e048ffc7
fix: crash on x86_64 systems that support memory protection keys (#1318)
Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2023-09-12 23:26:42 +00:00
denobot
6eb4b811df
Rolling to V8 11.8.172.1 (#1316) 2023-09-08 17:01:54 +02:00
Bartek Iwańczuk
bdd4fc3f6e
chore: track v8 11.8 (#1315) 2023-09-08 14:58:23 +02:00
denobot
4cf545b925
Rolling to V8 11.7.439.15 (#1311) 2023-09-06 07:23:41 -04:00