Skip to content

Commit 23b178a

Browse files
authored
Merge branch 'main' into string_value_view
2 parents 5b2734d + b0364c0 commit 23b178a

File tree

21 files changed

+55
-43
lines changed

21 files changed

+55
-43
lines changed

.github/workflows/ci.yml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,12 @@ jobs:
5252
variant: release
5353
cargo: cargo
5454

55-
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
55+
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
5656
target: x86_64-unknown-linux-gnu
5757
variant: debug
5858
cargo: cargo
5959

60-
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
60+
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
6161
target: x86_64-unknown-linux-gnu
6262
variant: release
6363
cargo: cargo
@@ -67,12 +67,12 @@ jobs:
6767
variant: release # Note: we do not support windows debug builds.
6868
cargo: cargo
6969

70-
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
70+
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
7171
target: aarch64-unknown-linux-gnu
7272
variant: debug
7373
cargo: cargo
7474

75-
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
75+
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
7676
target: aarch64-unknown-linux-gnu
7777
variant: release
7878
cargo: cargo
@@ -103,6 +103,11 @@ jobs:
103103
python-version: 3.11.x
104104
architecture: x64
105105

106+
- name: Install ubuntu deps
107+
if: startsWith(matrix.config.os, 'ubuntu')
108+
run: |
109+
sudo apt-get install -y glib2.0
110+
106111
- name: Install cross compilation toolchain
107112
if: matrix.config.target == 'aarch64-unknown-linux-gnu'
108113
run: |
@@ -111,7 +116,7 @@ jobs:
111116
sudo apt update
112117
sudo apt install -yq --no-install-suggests --no-install-recommends \
113118
binfmt-support g++-10-aarch64-linux-gnu g++-10-multilib \
114-
gcc-10-aarch64-linux-gnu libc6-arm64-cross qemu qemu-user \
119+
gcc-10-aarch64-linux-gnu libc6-arm64-cross qemu-system qemu-user \
115120
qemu-user-binfmt aarch64-linux-gnu-g++
116121
117122
sudo ln -s /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 \
@@ -232,7 +237,7 @@ jobs:
232237

233238
publish:
234239
needs: build
235-
runs-on: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
240+
runs-on: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
236241
if: github.repository == 'denoland/rusty_v8' && startsWith(github.ref, 'refs/tags/')
237242
steps:
238243
- name: Configure git

.gitmodules

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
url = https://chromium.googlesource.com/chromium/src/buildtools.git
1919
[submodule "third_party/icu"]
2020
path = third_party/icu
21-
url = https://github.com/denoland/icu.git
21+
url = https://chromium.googlesource.com/chromium/deps/icu.git
2222
[submodule "third_party/abseil-cpp"]
2323
path = third_party/abseil-cpp
2424
url = https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp.git
@@ -34,3 +34,6 @@
3434
[submodule "third_party/libunwind/src"]
3535
path = third_party/libunwind/src
3636
url = https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git
37+
[submodule "third_party/fast_float/src"]
38+
path = third_party/fast_float/src
39+
url = https://chromium.googlesource.com/external/github.com/fastfloat/fast_float.git

.gn

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ default_args = {
7878

7979
# Enable V8 object print for debugging.
8080
# v8_enable_object_print = true
81-
81+
8282
# V8 12.3 added google/fuzztest as a third party dependency.
8383
# https://chromium.googlesource.com/v8/v8.git/+/d5acece0c9b89b18716c177d1fcc8f734191e1e2%5E%21/#F4
8484
#
@@ -92,4 +92,7 @@ default_args = {
9292
v8_enable_v8_checks = false
9393

9494
use_relative_vtables_abi = false
95+
96+
v8_depend_on_icu_data_file = false
97+
icu_copy_icudata_to_root_build_dir = false
9598
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Rusty V8 Binding
22

3-
V8 Version: 12.9.202.18
3+
V8 Version: 13.0.245.12
44

55
[![ci](https://github.com/denoland/rusty_v8/workflows/ci/badge.svg?branch=main)](https://github.com/denoland/rusty_v8/actions)
66
[![crates](https://img.shields.io/crates/v/v8.svg)](https://crates.io/crates/v8)

build

Submodule build updated 119 files

buildtools

Submodule buildtools updated from 60a5909 to a7a84ac

rust-toolchain.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[toolchain]
2-
channel = "1.80.0"
2+
channel = "1.81.0"
33
components = ["rustfmt", "clippy"]
44
targets = [
55
"x86_64-apple-darwin",

src/binding.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3745,8 +3745,8 @@ void v8__CompiledWasmModule__DELETE(v8::CompiledWasmModule* self) {
37453745
extern "C" {
37463746

37473747
size_t icu_get_default_locale(char* output, size_t output_len) {
3748-
const icu_73::Locale& default_locale = icu::Locale::getDefault();
3749-
icu_73::CheckedArrayByteSink sink(output, static_cast<uint32_t>(output_len));
3748+
const icu_74::Locale& default_locale = icu::Locale::getDefault();
3749+
icu_74::CheckedArrayByteSink sink(output, static_cast<uint32_t>(output_len));
37503750
UErrorCode status = U_ZERO_ERROR;
37513751
default_locale.toLanguageTag(sink, status);
37523752
assert(status == U_ZERO_ERROR);

src/icu.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ use std::ffi::CString;
55
extern "C" {
66
fn icu_get_default_locale(output: *mut char, output_len: usize) -> usize;
77
fn icu_set_default_locale(locale: *const char);
8-
fn udata_setCommonData_73(this: *const u8, error_code: *mut i32);
8+
fn udata_setCommonData_74(this: *const u8, error_code: *mut i32);
99
}
1010

1111
/// This function bypasses the normal ICU data loading process and allows you to force ICU's system
1212
/// data to come out of a user-specified area in memory.
1313
///
1414
/// ICU data must be at least 8-aligned, and should be 16-aligned. See
15-
/// https://unicode-org.github.io/icu/userguide/icudata
15+
/// https://unicode-org.github.io/icu/userguide/icu_data/
1616
///
1717
/// The format of this data is that of the icu common data file, as is generated by the pkgdata
1818
/// tool with mode=common or mode=dll. You can read in a whole common mode file and pass the
@@ -42,10 +42,10 @@ extern "C" {
4242
/// functionality for application data.
4343
// TODO(ry) Map error code to something useful.
4444
#[inline(always)]
45-
pub fn set_common_data_73(data: &'static [u8]) -> Result<(), i32> {
45+
pub fn set_common_data_74(data: &'static [u8]) -> Result<(), i32> {
4646
let mut error_code = 0i32;
4747
unsafe {
48-
udata_setCommonData_73(data.as_ptr(), &mut error_code);
48+
udata_setCommonData_74(data.as_ptr(), &mut error_code);
4949
}
5050
if error_code == 0 {
5151
Ok(())

tests/compile_fail/handle_scope_escape_to_nowhere.stderr

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ error[E0277]: the trait bound `OwnedIsolate: v8::scope::param::NewEscapableHandl
77
| required by a bound introduced by this call
88
|
99
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
10-
<AllowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
11-
<CallbackScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
12-
<ContextScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
13-
<DisallowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
14-
<EscapableHandleScope<'p, 'e, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
15-
<HandleScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
16-
<TryCatch<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
10+
`AllowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
11+
`CallbackScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
12+
`ContextScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
13+
`DisallowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
14+
`EscapableHandleScope<'p, 'e, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
15+
`HandleScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
16+
`TryCatch<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
1717
note: required by a bound in `EscapableHandleScope::<'s, 'e>::new`
1818
--> src/scope.rs
1919
|
@@ -27,10 +27,10 @@ error[E0277]: the trait bound `OwnedIsolate: v8::scope::param::NewEscapableHandl
2727
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `v8::scope::param::NewEscapableHandleScope<'_, '_>` is not implemented for `OwnedIsolate`
2828
|
2929
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
30-
<AllowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
31-
<CallbackScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
32-
<ContextScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
33-
<DisallowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
34-
<EscapableHandleScope<'p, 'e, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
35-
<HandleScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
36-
<TryCatch<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
30+
`AllowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
31+
`CallbackScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
32+
`ContextScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
33+
`DisallowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
34+
`EscapableHandleScope<'p, 'e, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
35+
`HandleScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
36+
`TryCatch<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`

0 commit comments

Comments
 (0)