libv8-node 22.5.1.0 → 22.7.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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