mirror of
https://github.com/denoland/rusty_v8.git
synced 2024-11-21 05:43:13 -05:00
Rolling to V8 13.0.245.12 (#1627)
* Rolling to V8 13.0.245.12 Co-authored-by: snek <the@snek.dev>
This commit is contained in:
parent
a076d03990
commit
76993057fd
20 changed files with 54 additions and 42 deletions
17
.github/workflows/ci.yml
vendored
17
.github/workflows/ci.yml
vendored
|
@ -52,12 +52,12 @@ jobs:
|
||||||
variant: release
|
variant: release
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
|
||||||
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
|
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
|
||||||
target: x86_64-unknown-linux-gnu
|
target: x86_64-unknown-linux-gnu
|
||||||
variant: debug
|
variant: debug
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
|
||||||
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
|
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
|
||||||
target: x86_64-unknown-linux-gnu
|
target: x86_64-unknown-linux-gnu
|
||||||
variant: release
|
variant: release
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
@ -67,12 +67,12 @@ jobs:
|
||||||
variant: release # Note: we do not support windows debug builds.
|
variant: release # Note: we do not support windows debug builds.
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
|
||||||
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
|
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
|
||||||
target: aarch64-unknown-linux-gnu
|
target: aarch64-unknown-linux-gnu
|
||||||
variant: debug
|
variant: debug
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
|
||||||
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
|
- os: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
|
||||||
target: aarch64-unknown-linux-gnu
|
target: aarch64-unknown-linux-gnu
|
||||||
variant: release
|
variant: release
|
||||||
cargo: cargo
|
cargo: cargo
|
||||||
|
@ -103,6 +103,11 @@ jobs:
|
||||||
python-version: 3.11.x
|
python-version: 3.11.x
|
||||||
architecture: x64
|
architecture: x64
|
||||||
|
|
||||||
|
- name: Install ubuntu deps
|
||||||
|
if: startsWith(matrix.config.os, 'ubuntu')
|
||||||
|
run: |
|
||||||
|
sudo apt-get install -y glib2.0
|
||||||
|
|
||||||
- name: Install cross compilation toolchain
|
- name: Install cross compilation toolchain
|
||||||
if: matrix.config.target == 'aarch64-unknown-linux-gnu'
|
if: matrix.config.target == 'aarch64-unknown-linux-gnu'
|
||||||
run: |
|
run: |
|
||||||
|
@ -111,7 +116,7 @@ jobs:
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install -yq --no-install-suggests --no-install-recommends \
|
sudo apt install -yq --no-install-suggests --no-install-recommends \
|
||||||
binfmt-support g++-10-aarch64-linux-gnu g++-10-multilib \
|
binfmt-support g++-10-aarch64-linux-gnu g++-10-multilib \
|
||||||
gcc-10-aarch64-linux-gnu libc6-arm64-cross qemu qemu-user \
|
gcc-10-aarch64-linux-gnu libc6-arm64-cross qemu-system qemu-user \
|
||||||
qemu-user-binfmt
|
qemu-user-binfmt
|
||||||
|
|
||||||
sudo ln -s /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 \
|
sudo ln -s /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 \
|
||||||
|
@ -232,7 +237,7 @@ jobs:
|
||||||
|
|
||||||
publish:
|
publish:
|
||||||
needs: build
|
needs: build
|
||||||
runs-on: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-22.04-xl' || 'ubuntu-22.04' }}
|
runs-on: ${{ github.repository == 'denoland/rusty_v8' && 'ubuntu-24.04-xl' || 'ubuntu-24.04' }}
|
||||||
if: github.repository == 'denoland/rusty_v8' && startsWith(github.ref, 'refs/tags/')
|
if: github.repository == 'denoland/rusty_v8' && startsWith(github.ref, 'refs/tags/')
|
||||||
steps:
|
steps:
|
||||||
- name: Configure git
|
- name: Configure git
|
||||||
|
|
5
.gitmodules
vendored
5
.gitmodules
vendored
|
@ -18,7 +18,7 @@
|
||||||
url = https://chromium.googlesource.com/chromium/src/buildtools.git
|
url = https://chromium.googlesource.com/chromium/src/buildtools.git
|
||||||
[submodule "third_party/icu"]
|
[submodule "third_party/icu"]
|
||||||
path = third_party/icu
|
path = third_party/icu
|
||||||
url = https://github.com/denoland/icu.git
|
url = https://chromium.googlesource.com/chromium/deps/icu.git
|
||||||
[submodule "third_party/abseil-cpp"]
|
[submodule "third_party/abseil-cpp"]
|
||||||
path = third_party/abseil-cpp
|
path = third_party/abseil-cpp
|
||||||
url = https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp.git
|
url = https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp.git
|
||||||
|
@ -34,3 +34,6 @@
|
||||||
[submodule "third_party/libunwind/src"]
|
[submodule "third_party/libunwind/src"]
|
||||||
path = third_party/libunwind/src
|
path = third_party/libunwind/src
|
||||||
url = https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git
|
url = https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git
|
||||||
|
[submodule "third_party/fast_float/src"]
|
||||||
|
path = third_party/fast_float/src
|
||||||
|
url = https://chromium.googlesource.com/external/github.com/fastfloat/fast_float.git
|
||||||
|
|
3
.gn
3
.gn
|
@ -92,4 +92,7 @@ default_args = {
|
||||||
v8_enable_v8_checks = false
|
v8_enable_v8_checks = false
|
||||||
|
|
||||||
use_relative_vtables_abi = false
|
use_relative_vtables_abi = false
|
||||||
|
|
||||||
|
v8_depend_on_icu_data_file = false
|
||||||
|
icu_copy_icudata_to_root_build_dir = false
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Rusty V8 Binding
|
# Rusty V8 Binding
|
||||||
|
|
||||||
V8 Version: 12.9.202.18
|
V8 Version: 13.0.245.12
|
||||||
|
|
||||||
[![ci](https://github.com/denoland/rusty_v8/workflows/ci/badge.svg?branch=main)](https://github.com/denoland/rusty_v8/actions)
|
[![ci](https://github.com/denoland/rusty_v8/workflows/ci/badge.svg?branch=main)](https://github.com/denoland/rusty_v8/actions)
|
||||||
[![crates](https://img.shields.io/crates/v/v8.svg)](https://crates.io/crates/v8)
|
[![crates](https://img.shields.io/crates/v/v8.svg)](https://crates.io/crates/v8)
|
||||||
|
|
2
build
2
build
|
@ -1 +1 @@
|
||||||
Subproject commit c6d44e625aa64fa89cbdc971dfd301353bee04f3
|
Subproject commit d0a7da7e88ffc90355cc94f44d3b5e9084b8381e
|
|
@ -1 +1 @@
|
||||||
Subproject commit 60a590902cf146c282f15242401bd8543256e2a2
|
Subproject commit a7a84ac61eae5a8946807265a2fd8bd812daf384
|
|
@ -1,5 +1,5 @@
|
||||||
[toolchain]
|
[toolchain]
|
||||||
channel = "1.80.0"
|
channel = "1.81.0"
|
||||||
components = ["rustfmt", "clippy"]
|
components = ["rustfmt", "clippy"]
|
||||||
targets = [
|
targets = [
|
||||||
"x86_64-apple-darwin",
|
"x86_64-apple-darwin",
|
||||||
|
|
|
@ -3745,8 +3745,8 @@ void v8__CompiledWasmModule__DELETE(v8::CompiledWasmModule* self) {
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
||||||
size_t icu_get_default_locale(char* output, size_t output_len) {
|
size_t icu_get_default_locale(char* output, size_t output_len) {
|
||||||
const icu_73::Locale& default_locale = icu::Locale::getDefault();
|
const icu_74::Locale& default_locale = icu::Locale::getDefault();
|
||||||
icu_73::CheckedArrayByteSink sink(output, static_cast<uint32_t>(output_len));
|
icu_74::CheckedArrayByteSink sink(output, static_cast<uint32_t>(output_len));
|
||||||
UErrorCode status = U_ZERO_ERROR;
|
UErrorCode status = U_ZERO_ERROR;
|
||||||
default_locale.toLanguageTag(sink, status);
|
default_locale.toLanguageTag(sink, status);
|
||||||
assert(status == U_ZERO_ERROR);
|
assert(status == U_ZERO_ERROR);
|
||||||
|
|
|
@ -5,14 +5,14 @@ use std::ffi::CString;
|
||||||
extern "C" {
|
extern "C" {
|
||||||
fn icu_get_default_locale(output: *mut char, output_len: usize) -> usize;
|
fn icu_get_default_locale(output: *mut char, output_len: usize) -> usize;
|
||||||
fn icu_set_default_locale(locale: *const char);
|
fn icu_set_default_locale(locale: *const char);
|
||||||
fn udata_setCommonData_73(this: *const u8, error_code: *mut i32);
|
fn udata_setCommonData_74(this: *const u8, error_code: *mut i32);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// This function bypasses the normal ICU data loading process and allows you to force ICU's system
|
/// This function bypasses the normal ICU data loading process and allows you to force ICU's system
|
||||||
/// data to come out of a user-specified area in memory.
|
/// data to come out of a user-specified area in memory.
|
||||||
///
|
///
|
||||||
/// ICU data must be at least 8-aligned, and should be 16-aligned. See
|
/// ICU data must be at least 8-aligned, and should be 16-aligned. See
|
||||||
/// https://unicode-org.github.io/icu/userguide/icudata
|
/// https://unicode-org.github.io/icu/userguide/icu_data/
|
||||||
///
|
///
|
||||||
/// The format of this data is that of the icu common data file, as is generated by the pkgdata
|
/// The format of this data is that of the icu common data file, as is generated by the pkgdata
|
||||||
/// tool with mode=common or mode=dll. You can read in a whole common mode file and pass the
|
/// 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" {
|
||||||
/// functionality for application data.
|
/// functionality for application data.
|
||||||
// TODO(ry) Map error code to something useful.
|
// TODO(ry) Map error code to something useful.
|
||||||
#[inline(always)]
|
#[inline(always)]
|
||||||
pub fn set_common_data_73(data: &'static [u8]) -> Result<(), i32> {
|
pub fn set_common_data_74(data: &'static [u8]) -> Result<(), i32> {
|
||||||
let mut error_code = 0i32;
|
let mut error_code = 0i32;
|
||||||
unsafe {
|
unsafe {
|
||||||
udata_setCommonData_73(data.as_ptr(), &mut error_code);
|
udata_setCommonData_74(data.as_ptr(), &mut error_code);
|
||||||
}
|
}
|
||||||
if error_code == 0 {
|
if error_code == 0 {
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
@ -7,13 +7,13 @@ error[E0277]: the trait bound `OwnedIsolate: v8::scope::param::NewEscapableHandl
|
||||||
| required by a bound introduced by this call
|
| required by a bound introduced by this call
|
||||||
|
|
|
|
||||||
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
|
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
|
||||||
<AllowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`AllowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<CallbackScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`CallbackScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<ContextScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`ContextScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<DisallowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`DisallowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<EscapableHandleScope<'p, 'e, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`EscapableHandleScope<'p, 'e, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<HandleScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`HandleScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<TryCatch<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`TryCatch<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
note: required by a bound in `EscapableHandleScope::<'s, 'e>::new`
|
note: required by a bound in `EscapableHandleScope::<'s, 'e>::new`
|
||||||
--> src/scope.rs
|
--> src/scope.rs
|
||||||
|
|
|
|
||||||
|
@ -27,10 +27,10 @@ error[E0277]: the trait bound `OwnedIsolate: v8::scope::param::NewEscapableHandl
|
||||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `v8::scope::param::NewEscapableHandleScope<'_, '_>` is not implemented for `OwnedIsolate`
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `v8::scope::param::NewEscapableHandleScope<'_, '_>` is not implemented for `OwnedIsolate`
|
||||||
|
|
|
|
||||||
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
|
= help: the following other types implement trait `v8::scope::param::NewEscapableHandleScope<'s, 'e>`:
|
||||||
<AllowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`AllowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<CallbackScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`CallbackScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<ContextScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`ContextScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<DisallowJavascriptExecutionScope<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`DisallowJavascriptExecutionScope<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
<EscapableHandleScope<'p, 'e, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`EscapableHandleScope<'p, 'e, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<HandleScope<'p, C> as v8::scope::param::NewEscapableHandleScope<'s, 'p>>
|
`HandleScope<'p, C>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'p>`
|
||||||
<TryCatch<'p, P> as v8::scope::param::NewEscapableHandleScope<'s, 'e>>
|
`TryCatch<'p, P>` implements `v8::scope::param::NewEscapableHandleScope<'s, 'e>`
|
||||||
|
|
|
@ -45,7 +45,7 @@ mod setup {
|
||||||
fn initialize_once() {
|
fn initialize_once() {
|
||||||
static START: Once = Once::new();
|
static START: Once = Once::new();
|
||||||
START.call_once(|| {
|
START.call_once(|| {
|
||||||
assert!(v8::icu::set_common_data_73(align_data::include_aligned!(
|
assert!(v8::icu::set_common_data_74(align_data::include_aligned!(
|
||||||
align_data::Align16,
|
align_data::Align16,
|
||||||
"../third_party/icu/common/icudtl.dat"
|
"../third_party/icu/common/icudtl.dat"
|
||||||
))
|
))
|
||||||
|
@ -9124,7 +9124,7 @@ fn icu_date() {
|
||||||
#[test]
|
#[test]
|
||||||
fn icu_set_common_data_fail() {
|
fn icu_set_common_data_fail() {
|
||||||
assert!(
|
assert!(
|
||||||
v8::icu::set_common_data_73(&[1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0]).is_err()
|
v8::icu::set_common_data_74(&[1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0]).is_err()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
third_party/abseil-cpp
vendored
2
third_party/abseil-cpp
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit ed3733b91e472a1e7a641c1f0c1e6c0ea698e958
|
Subproject commit 1f7e21e34c3807a8841c9562cfc8b3213eb50bfc
|
1
third_party/fast_float/src
vendored
Submodule
1
third_party/fast_float/src
vendored
Submodule
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 3e57d8dcfb0a04b5a8a26b486b54490a2e9b310f
|
2
third_party/icu
vendored
2
third_party/icu
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit a22a8f24224ddda8b856437d7e8560de1da3f8e1
|
Subproject commit 9408c6fd4a39e6fef0e1c4077602e1c83b15f3fb
|
2
third_party/libc++/src
vendored
2
third_party/libc++/src
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit f801c947082a3e0a4b48780303526b73905f6ecd
|
Subproject commit 50ab693ecb611942ce4440d8c9ed707ee65ed5e8
|
2
third_party/libc++abi/src
vendored
2
third_party/libc++abi/src
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit eb6567388e89d9730c76dee71d68ac82e4a1abf6
|
Subproject commit 29b2e9a0f48688da116692cb04758393053d269c
|
2
third_party/libunwind/src
vendored
2
third_party/libunwind/src
vendored
|
@ -1 +1 @@
|
||||||
Subproject commit 116c20dae60d84a77005697cf29f72783f81b0f9
|
Subproject commit dc70138c3e68e2f946585f134e20815851e26263
|
|
@ -1 +1 @@
|
||||||
Subproject commit 63b7be17f8981d716ea9a0d65bb04654d79548a8
|
Subproject commit e47c184ec52d50c7aa2a99cd3bd26ebcafaa94b9
|
|
@ -2,7 +2,7 @@ from v8_deps import deps
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
def process(name, dep):
|
def process(name, dep):
|
||||||
if name == 'build' or name == 'third_party/icu':
|
if name == 'build':
|
||||||
# We have our own fork of this
|
# We have our own fork of this
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
2
v8
2
v8
|
@ -1 +1 @@
|
||||||
Subproject commit d5e5d10dc91365077bad1ea2303c5e59ebb85ddb
|
Subproject commit da24147866cee8f676686056f481734c57e8a8df
|
Loading…
Reference in a new issue