libv8-node 22.7.0.4 → 23.6.1.0

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: b654ccd6686b278a5017ce5eb20136a1128fe84e3365debbd8c996fb17ae3e2d
4
- data.tar.gz: e702ca7850adbf4edb6f9cfd795394067d962796a9ae8303313ad9445573d2df
3
+ metadata.gz: 38468603a3a54757810d8053aa25d2467736691a7def9a983d279100e678c071
4
+ data.tar.gz: 4d1dad42c57ec900d65944a923fca313ca6f032992a86d7a2b4e07210d690f9c
5
5
  SHA512:
6
- metadata.gz: 18d41e8a22de24f599978f6bfc7160c438c6bf5d828a41e0dd2981baf6780bd4a27f4d70ca6a1e0d3bded734be2a4d33a69c9515be69a0aa90436223cf86cadd
7
- data.tar.gz: 6325c4c49b8aa517442df39514891fa26e96fe56a29bd07226fc77ecd6e13f897e25ede1b23d212554b541b792b4d18b9e67354265fb18f98504715de29b51a1
6
+ metadata.gz: eb945de4fde1b0ddbe3ac3bfe982859eae46882ec00c253c41ef9c353b150e42ce3551d40707993d93025ce0d5b945533214a7a5ece820c9f8f652403e0c1a82
7
+ data.tar.gz: 632d3d6e061ae78d10dafa995ff0f149a8bee3e720c53949d565f1cd80a430666bf8f601935276a9e4cfdffb4de511f5e22d50dadce087eed035beff8575592a
@@ -4,7 +4,7 @@ module Libv8
4
4
  end
5
5
 
6
6
  module Libv8::Node
7
- VERSION = '22.7.0.4'
8
- NODE_VERSION = '22.7.0'
9
- LIBV8_VERSION = '12.4.254.21' # from src/node-.../deps/v8/include/v8-version.h
7
+ VERSION = '23.6.1.0'
8
+ NODE_VERSION = '23.6.1'
9
+ LIBV8_VERSION = '12.9.202.28' # from src/node-.../deps/v8/include/v8-version.h
10
10
  end
data/libexec/build-libv8 CHANGED
@@ -19,7 +19,7 @@ cd "${src}/node-v${version}"
19
19
 
20
20
  # Maglev is disabled because of a suspected x64 snapshot regression in
21
21
  # DoComputeOutputFrames
22
- configure_flags='--v8-disable-maglev --openssl-no-asm --without-npm --shared --with-intl=full-icu'
22
+ configure_flags='--openssl-no-asm --without-npm --shared --with-intl=full-icu'
23
23
  eval "$("${libexec}/platform")"
24
24
 
25
25
  echo "configure: ${configure_flags}"
data/libexec/extract-node CHANGED
@@ -29,21 +29,6 @@ extract "${src}" "${src}/node-v${version}.tar.gz"
29
29
 
30
30
  cd "${src}/node-v${version}"
31
31
 
32
- #patch -p1 < "${top}"/patch/gyp-libv8_monolith.patch
33
- #patch -p1 < "${top}"/patch/py2-icutrim.patch
34
- #patch -p1 < "${top}"/patch/py2-genv8constants.patch
35
- patch -p1 < "${top}"/patch/v8-no-assert-trivially-copyable.patch
32
+ patch -p1 < "${top}"/patch/v8-std-is-trivially-destructible.patch
36
33
  patch -p1 < "${top}"/patch/v8-disable-madv-dontfork.patch
37
34
  patch -p1 < "${top}"/patch/v8-disable-pkey.patch
38
- patch -p1 < "${top}"/patch/v8-disable-marking.patch
39
-
40
- # TODO: the following still fails on py3 so the above one forcing py2 is needed
41
- # patch -p1 < ../../py3-genv8constants.patch
42
- #
43
- # This is the error:
44
- #
45
- # Traceback (most recent call last):
46
- # File "tools/genv8constants.py", line 99, in <module>
47
- # curr_val += int('0x%s' % octetstr, 16) << (curr_octet * 8)
48
- # ValueError: invalid literal for int() with base 16: "0xb'04 '"
49
- # node_dtrace_ustack.target.mk:13: recipe for target '/usbkey/user_home/vagrant/ruby-libv8-node/src/node-14.14.0/out/Release/obj/gen/v8constants.h' failed
data/libexec/inject-libv8 CHANGED
@@ -56,7 +56,9 @@ for lib in libv8_monolith.a; do
56
56
  "$AR" "$AREXTRACTFLAGS" "$BASEDIR/out/${BUILDTYPE}/$lib"
57
57
 
58
58
  # strip all objects
59
- "$FIND" -type f -exec "$STRIP" -Sx {} +
59
+ if [ "$BUILDTYPE" = "Release" ]; then
60
+ "$FIND" -type f -exec "$STRIP" -Sx {} +
61
+ fi
60
62
 
61
63
  # rebuild the archive
62
64
  "$FIND" -type f -exec "$AR" "$ARCOLLECTFLAGS" "../$lib" {} +
@@ -0,0 +1,22 @@
1
+ diff --git a/deps/v8/src/base/macros.h b/deps/v8/src/base/macros.h
2
+ index d404b6120a..053ac0e5ba 100644
3
+ --- a/deps/v8/src/base/macros.h
4
+ +++ b/deps/v8/src/base/macros.h
5
+ @@ -173,7 +173,7 @@ namespace base {
6
+ // base::is_trivially_copyable will differ for these cases.
7
+ template <typename T>
8
+ struct is_trivially_copyable {
9
+ -#if V8_CC_MSVC || (__GNUC__ == 12 && __GNUC_MINOR__ <= 2)
10
+ +#if V8_CC_MSVC || (__GNUC__ == 12 && __GNUC_MINOR__ <= 2) || defined(__clang__)
11
+ // Unfortunately, MSVC 2015 is broken in that std::is_trivially_copyable can
12
+ // be false even though it should be true according to the standard.
13
+ // (status at 2018-02-26, observed on the msvc waterfall bot).
14
+ @@ -186,6 +186,8 @@ struct is_trivially_copyable {
15
+ // distributions, so the same polyfill is also used.
16
+ // See
17
+ // https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=aeba3e009b0abfccaf01797556445dbf891cc8dc
18
+ + //
19
+ + // The same is observed with at least clang 14 and 15.
20
+ static constexpr bool value =
21
+ // Copy constructor is trivial or deleted.
22
+ (std::is_trivially_copy_constructible<T>::value ||
data/sums/v22.13.1.sum ADDED
@@ -0,0 +1 @@
1
+ e7d5b1e84e7f3c3cebda81e2b138469eef41ba4ecf16a87fd15fc3f7afa3f701
data/sums/v22.9.0.sum ADDED
@@ -0,0 +1 @@
1
+ 296854aa1dca140b0462c2415637d0419e42af91114538a7e6fdf623971a6833
data/sums/v23.6.1.sum ADDED
@@ -0,0 +1 @@
1
+ 35c0f7957085083071fcf01c7eaea953fba98f17afc4d7c189e3ef56925b453c
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.7.0.4
4
+ version: 23.6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-14 00:00:00.000000000 Z
11
+ date: 2025-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -63,14 +63,9 @@ files:
63
63
  - libexec/inject-libv8
64
64
  - libexec/metadata
65
65
  - libexec/platform
66
- - patch/gyp-libv8_monolith.patch
67
- - patch/py2-genv8constants.patch
68
- - patch/py2-icutrim.patch
69
- - patch/py3-genv8constants.patch
70
66
  - patch/v8-disable-madv-dontfork.patch
71
- - patch/v8-disable-marking.patch
72
67
  - patch/v8-disable-pkey.patch
73
- - patch/v8-no-assert-trivially-copyable.patch
68
+ - patch/v8-std-is-trivially-destructible.patch
74
69
  - sums/v16.10.0.sum
75
70
  - sums/v16.11.1.sum
76
71
  - sums/v16.3.0.sum
@@ -88,9 +83,12 @@ files:
88
83
  - sums/v20.12.1.sum
89
84
  - sums/v20.2.0.sum
90
85
  - sums/v21.7.2.sum
86
+ - sums/v22.13.1.sum
91
87
  - sums/v22.5.1.sum
92
88
  - sums/v22.6.0.sum
93
89
  - sums/v22.7.0.sum
90
+ - sums/v22.9.0.sum
91
+ - sums/v23.6.1.sum
94
92
  homepage: https://github.com/rubyjs/libv8-node
95
93
  licenses:
96
94
  - MIT
@@ -1,44 +0,0 @@
1
- --- a/node.gyp 2020-11-04 15:55:48.000000000 +0100
2
- +++ b/node.gyp 2020-11-04 15:55:51.000000000 +0100
3
- @@ -1467,6 +1467,16 @@
4
- }],
5
- ],
6
- }, # node_mksnapshot
7
- + {
8
- + 'target_name': 'libv8_monolith',
9
- + 'type': 'none',
10
- + 'includes': [
11
- + 'node.gypi'
12
- + ],
13
- + #'dependencies': [
14
- + # 'tools/v8_gypfiles/v8.gyp:v8_monolith',
15
- + #],
16
- + },
17
- ], # end targets
18
-
19
- 'conditions': [
20
- --- a/tools/v8_gypfiles/v8.gyp 2020-11-04 16:34:06.000000000 +0100
21
- +++ b/tools/v8_gypfiles/v8.gyp 2020-11-04 16:34:10.000000000 +0100
22
- @@ -1726,5 +1726,21 @@
23
- '<(V8_ROOT)/third_party/zlib/google/compression_utils_portable.h',
24
- ],
25
- }, # v8_zlib
26
- + {
27
- + 'target_name': 'v8_monolith',
28
- + 'type': 'static_library',
29
- + 'sources': [
30
- + '<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\"v8.*?sources = ")',
31
- + '<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\"v8_libbase.*?sources = ")',
32
- + '<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\"v8_libplatform.*?sources = ")',
33
- + '<!@pymod_do_main(GN-scraper "<(V8_ROOT)/BUILD.gn" "\\"v8_libsampler.*?sources = ")',
34
- + ],
35
- + 'dependencies': [
36
- + 'v8',
37
- + 'v8_libbase',
38
- + 'v8_libplatform',
39
- + 'v8_libsampler',
40
- + ],
41
- + }
42
- ],
43
- }
44
-
@@ -1,10 +0,0 @@
1
- --- a/tools/genv8constants.py 2020-11-04 09:49:14.000000000 +0100
2
- +++ b/tools/genv8constants.py 2020-11-04 12:40:46.000000000 +0100
3
- @@ -1,4 +1,4 @@
4
- -#!/usr/bin/env python
5
- +#!/usr/bin/env python2
6
-
7
- #
8
- # genv8constants.py output_file libv8_base.a
9
-
10
-
@@ -1,14 +0,0 @@
1
- --- a/tools/icu/icutrim.py 2020-11-03 16:54:23.000000000 +0100
2
- +++ b/tools/icu/icutrim.py 2020-11-03 16:54:27.000000000 +0100
3
- @@ -316,7 +316,10 @@
4
- erritems = fi.readlines()
5
- fi.close()
6
- #Item zone/zh_Hant_TW.res depends on missing item zone/zh_Hant.res
7
- - pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*", 'utf-8'))
8
- + if str == bytes:
9
- + pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*"))
10
- + else:
11
- + pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*", 'utf-8'))
12
- for i in range(len(erritems)):
13
- line = erritems[i].strip()
14
- m = pat.match(line)
@@ -1,20 +0,0 @@
1
- --- a/tools/genv8constants.py 2020-11-04 09:49:14.000000000 +0100
2
- +++ b/tools/genv8constants.py 2020-11-04 09:49:25.000000000 +0100
3
- @@ -33,9 +33,14 @@
4
-
5
- sys.exit()
6
-
7
- -pattern = re.compile(bytes('([0-9a-fA-F]{8}|[0-9a-fA-F]{16}) <(.*)>:'))
8
- -v8dbg = re.compile(bytes('^v8dbg.*$'))
9
- -numpattern = re.compile(bytes('^[0-9a-fA-F]{2} $'))
10
- +if str == bytes:
11
- + pattern = re.compile(bytes('([0-9a-fA-F]{8}|[0-9a-fA-F]{16}) <(.*)>:'))
12
- + v8dbg = re.compile(bytes('^v8dbg.*$'))
13
- + numpattern = re.compile(bytes('^[0-9a-fA-F]{2} $'))
14
- +else:
15
- + pattern = re.compile(bytes('([0-9a-fA-F]{8}|[0-9a-fA-F]{16}) <(.*)>:', 'utf-8'))
16
- + v8dbg = re.compile(bytes('^v8dbg.*$', 'utf-8'))
17
- + numpattern = re.compile(bytes('^[0-9a-fA-F]{2} $', 'utf-8'))
18
- octets = 4
19
-
20
- outfile.write("""
@@ -1,22 +0,0 @@
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.
@@ -1,14 +0,0 @@
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: