libv8-node 22.5.1.0 → 22.7.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f4d182c4050cbe87afb303fa22af0c30e8210e9ff4d5baa70b4b031fc94bc24
4
- data.tar.gz: bedfffdb624aef289109e1329c3a6c6d1acdd3429372ca34c902dd221d685fcd
3
+ metadata.gz: 7e5c123d55e49ce955496ecf42b08143e40d1cc18c566b99c96f75b2081fe96d
4
+ data.tar.gz: ecacab29837739fbb74c84017cc503adb4c50eeb26af6c04c322817ce13d7470
5
5
  SHA512:
6
- metadata.gz: adf67d9e1f2aae6605e5badc547a42dda99321a2946f948ea66b3514cd976aaa3a85687beac06fd7a844243d36016d61fa9bf041469c064c79b29d8877b88cad
7
- data.tar.gz: f625fd8f763be4fed375bd4d3d23638b2d1f1e45477cf46fee6ca7234b3090ea4f91ce2939109dbb6e760c46f379dea332288e60fd8621097d36cc1f6f15f619
6
+ metadata.gz: 4343ad09a6823fedbfed899fc339d2fcd0e3110b96d35926f4036c728216f40bcf8c066f1aa48b4e4ff6973a1b3db0e7a044ed9fdcf6a88d3e8b0ef3d791a7dd
7
+ data.tar.gz: '09b96e26fee9a16fa681f4fdc01c782e0169411036d8298c2a196cbf552a7d708df186705088240eac6a8b5618d79bff81163e74c355bd8e319723a2d033fef4'
@@ -1,7 +1,10 @@
1
- module Libv8; end
1
+ # frozen_string_literal: true
2
+
3
+ module Libv8
4
+ end
2
5
 
3
6
  module Libv8::Node
4
- VERSION = '22.5.1.0'.freeze
5
- NODE_VERSION = '22.5.1'.freeze
6
- LIBV8_VERSION = '21.4.254.21'.freeze # from v8/include/v8-version.h
7
+ VERSION = '22.7.0.2'
8
+ NODE_VERSION = '22.7.0'
9
+ LIBV8_VERSION = '12.4.254.21' # from src/node-.../deps/v8/include/v8-version.h
7
10
  end
data/libexec/extract-node CHANGED
@@ -32,6 +32,10 @@ cd "${src}/node-v${version}"
32
32
  #patch -p1 < "${top}"/patch/gyp-libv8_monolith.patch
33
33
  #patch -p1 < "${top}"/patch/py2-icutrim.patch
34
34
  #patch -p1 < "${top}"/patch/py2-genv8constants.patch
35
+ patch -p1 < "${top}"/patch/v8-no-assert-trivially-copyable.patch
36
+ patch -p1 < "${top}"/patch/v8-disable-madv-dontfork.patch
37
+ patch -p1 < "${top}"/patch/v8-disable-pkey.patch
38
+ patch -p1 < "${top}"/patch/v8-disable-marking.patch
35
39
 
36
40
  # TODO: the following still fails on py3 so the above one forcing py2 is needed
37
41
  # patch -p1 < ../../py3-genv8constants.patch
@@ -0,0 +1,16 @@
1
+ diff --git a/tools/v8_gypfiles/features.gypi b/tools/v8_gypfiles/features.gypi
2
+ index 6e21dac6d7..bcf022fb28 100644
3
+ --- a/tools/v8_gypfiles/features.gypi
4
+ +++ b/tools/v8_gypfiles/features.gypi
5
+ @@ -73,7 +73,10 @@
6
+ }, {
7
+ 'v8_enable_etw_stack_walking': 0,
8
+ }],
9
+ - ['OS=="linux"', {
10
+ + # Disable madvise(MADV_DONTFORK), it's a great optimization for programs
11
+ + # that fork & exec but not for programs that fork and keep running.
12
+ + # It makes mini_racer's test/test_forking.rb test segfault.
13
+ + ['False and OS=="linux"', {
14
+ # Sets -dV8_ENABLE_PRIVATE_MAPPING_FORK_OPTIMIZATION.
15
+ #
16
+ # This flag speeds up the performance of fork/execve on Linux systems for
@@ -0,0 +1,22 @@
1
+ diff --git a/deps/v8/src/flags/flag-definitions.h b/deps/v8/src/flags/flag-definitions.h
2
+ index 0d50ac1522..2854768562 100644
3
+ --- a/deps/v8/src/flags/flag-definitions.h
4
+ +++ b/deps/v8/src/flags/flag-definitions.h
5
+ @@ -1764,7 +1764,7 @@ DEFINE_BOOL(minor_ms_trace_fragmentation, false,
6
+ DEFINE_BOOL(trace_evacuation, false, "report evacuation statistics")
7
+ DEFINE_BOOL(trace_mutator_utilization, false,
8
+ "print mutator utilization, allocation speed, gc speed")
9
+ -DEFINE_BOOL(incremental_marking, true, "use incremental marking")
10
+ +DEFINE_BOOL(incremental_marking, false, "use incremental marking")
11
+ DEFINE_BOOL(incremental_marking_bailout_when_ahead_of_schedule, true,
12
+ "bails out of incremental marking when ahead of schedule")
13
+ DEFINE_BOOL(incremental_marking_task, true, "use tasks for incremental marking")
14
+ @@ -1794,7 +1794,7 @@ DEFINE_IMPLICATION(cppgc_young_generation, minor_ms)
15
+ DEFINE_NEG_IMPLICATION(cppgc_young_generation, reclaim_unmodified_wrappers)
16
+ DEFINE_BOOL(optimize_gc_for_battery, false, "optimize GC for battery")
17
+ #if defined(V8_ATOMIC_OBJECT_FIELD_WRITES)
18
+ -DEFINE_BOOL(concurrent_marking, true, "use concurrent marking")
19
+ +DEFINE_BOOL(concurrent_marking, false, "use concurrent marking")
20
+ #else
21
+ // Concurrent marking cannot be used without atomic object field loads and
22
+ // stores.
@@ -0,0 +1,17 @@
1
+ diff --git a/deps/v8/src/base/build_config.h b/deps/v8/src/base/build_config.h
2
+ index 9ed4c8f102..dfca698506 100644
3
+ --- a/deps/v8/src/base/build_config.h
4
+ +++ b/deps/v8/src/base/build_config.h
5
+ @@ -35,11 +35,8 @@
6
+ #define V8_HAS_PTHREAD_JIT_WRITE_PROTECT 0
7
+ #endif
8
+
9
+ -#if defined(V8_OS_LINUX) && defined(V8_HOST_ARCH_X64)
10
+ -#define V8_HAS_PKU_JIT_WRITE_PROTECT 1
11
+ -#else
12
+ +// disabled, see https://issues.chromium.org/issues/360909072
13
+ #define V8_HAS_PKU_JIT_WRITE_PROTECT 0
14
+ -#endif
15
+
16
+ #if defined(V8_TARGET_ARCH_IA32) || defined(V8_TARGET_ARCH_X64)
17
+ #define V8_TARGET_ARCH_STORES_RETURN_ADDRESS_ON_STACK true
@@ -0,0 +1,14 @@
1
+ diff --git a/deps/v8/src/base/small-vector.h b/deps/v8/src/base/small-vector.h
2
+ index edaab3a7a6..533a536178 100644
3
+ --- a/deps/v8/src/base/small-vector.h
4
+ +++ b/deps/v8/src/base/small-vector.h
5
+ @@ -20,9 +20,6 @@ namespace base {
6
+ // dynamic storage when it overflows.
7
+ template <typename T, size_t kSize, typename Allocator = std::allocator<T>>
8
+ class SmallVector {
9
+ - // Currently only support trivially copyable and trivially destructible data
10
+ - // types, as it uses memcpy to copy elements and never calls destructors.
11
+ - ASSERT_TRIVIALLY_COPYABLE(T);
12
+ static_assert(std::is_trivially_destructible<T>::value);
13
+
14
+ public:
data/sums/v22.6.0.sum ADDED
@@ -0,0 +1 @@
1
+ af4a8747651385515163db5da0d2e217da15cf7c832672b234128ed5118f086d
data/sums/v22.7.0.sum ADDED
@@ -0,0 +1 @@
1
+ 7a7c99282d59866d971b2da12c99596cb15782b9c3efe2e2146390c14f4d490e
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libv8-node
3
3
  version: !ruby/object:Gem::Version
4
- version: 22.5.1.0
4
+ version: 22.7.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-22 00:00:00.000000000 Z
11
+ date: 2024-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -67,6 +67,10 @@ files:
67
67
  - patch/py2-genv8constants.patch
68
68
  - patch/py2-icutrim.patch
69
69
  - patch/py3-genv8constants.patch
70
+ - patch/v8-disable-madv-dontfork.patch
71
+ - patch/v8-disable-marking.patch
72
+ - patch/v8-disable-pkey.patch
73
+ - patch/v8-no-assert-trivially-copyable.patch
70
74
  - sums/v16.10.0.sum
71
75
  - sums/v16.11.1.sum
72
76
  - sums/v16.3.0.sum
@@ -85,6 +89,8 @@ files:
85
89
  - sums/v20.2.0.sum
86
90
  - sums/v21.7.2.sum
87
91
  - sums/v22.5.1.sum
92
+ - sums/v22.6.0.sum
93
+ - sums/v22.7.0.sum
88
94
  homepage: https://github.com/rubyjs/libv8-node
89
95
  licenses:
90
96
  - MIT
@@ -105,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
111
  - !ruby/object:Gem::Version
106
112
  version: '0'
107
113
  requirements: []
108
- rubygems_version: 3.5.9
114
+ rubygems_version: 3.3.26
109
115
  signing_key:
110
116
  specification_version: 4
111
117
  summary: Node.JS's V8 JavaScript engine