libv8-node 24.1.0.0 → 24.12.0.0
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 +4 -4
- data/ext/libv8-node/builder.rb +2 -0
- data/ext/libv8-node/extconf.rb +1 -1
- data/ext/libv8-node/location.rb +3 -5
- data/ext/libv8-node/paths.rb +2 -0
- data/lib/libv8/node/version.rb +3 -3
- data/lib/libv8/node.rb +2 -0
- data/lib/libv8-node.rb +2 -0
- data/libexec/build-macos-x86_64 +60 -0
- data/patch/v8-disable-madv-dontfork.patch +3 -3
- data/sums/v24.12.0.sum +1 -0
- metadata +53 -11
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1b236529e0b7a1bc84cf99a96962ada218873a6cd24c8093fda5c8c33c9a6f90
|
|
4
|
+
data.tar.gz: e558d5b144f431d251409a73c70e98e32be7c59747f560687f30c6d9129a3d27
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f8e856fdf8828f71750f0141409ec8c134b30d1ac5478407aad6048de333e6f84dcf58bc1a47b9a81fb1d4508eb1f2267b87efb14f999ffeb6fc8a916f3f9040
|
|
7
|
+
data.tar.gz: 8365e6536ee648018e00773b8a194c07b0df395056523f60a90de3e949b82e0c6db3deedd147f72ded6bbf9d73e5dae0127eda36cd165ef78cbd43a84f48103b
|
data/ext/libv8-node/builder.rb
CHANGED
data/ext/libv8-node/extconf.rb
CHANGED
data/ext/libv8-node/location.rb
CHANGED
|
@@ -9,16 +9,14 @@ module Libv8; end
|
|
|
9
9
|
module Libv8::Node
|
|
10
10
|
class Location
|
|
11
11
|
def install!
|
|
12
|
-
File.
|
|
13
|
-
f.write(to_yaml)
|
|
14
|
-
end
|
|
12
|
+
File.write(Pathname(__FILE__).dirname.join('.location.yml'), to_yaml)
|
|
15
13
|
|
|
16
14
|
0
|
|
17
15
|
end
|
|
18
16
|
|
|
19
17
|
def self.load!
|
|
20
18
|
File.open(Pathname(__FILE__).dirname.join('.location.yml')) do |f|
|
|
21
|
-
YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(f) : YAML.load(f)
|
|
19
|
+
YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(f) : YAML.load(f)
|
|
22
20
|
end
|
|
23
21
|
end
|
|
24
22
|
|
|
@@ -58,7 +56,7 @@ module Libv8::Node
|
|
|
58
56
|
|
|
59
57
|
class ArchiveNotFound < StandardError
|
|
60
58
|
def initialize(filename)
|
|
61
|
-
super
|
|
59
|
+
super("libv8 did not install properly, expected binary v8 archive '#{filename}'to exist, but it was not found")
|
|
62
60
|
end
|
|
63
61
|
end
|
|
64
62
|
end
|
data/ext/libv8-node/paths.rb
CHANGED
data/lib/libv8/node/version.rb
CHANGED
|
@@ -4,7 +4,7 @@ module Libv8
|
|
|
4
4
|
end
|
|
5
5
|
|
|
6
6
|
module Libv8::Node
|
|
7
|
-
VERSION = '24.
|
|
8
|
-
NODE_VERSION = '24.
|
|
9
|
-
LIBV8_VERSION = '13.6.233.
|
|
7
|
+
VERSION = '24.12.0.0'
|
|
8
|
+
NODE_VERSION = '24.12.0'
|
|
9
|
+
LIBV8_VERSION = '13.6.233.17' # from src/node-.../deps/v8/include/v8-version.h
|
|
10
10
|
end
|
data/lib/libv8/node.rb
CHANGED
data/lib/libv8-node.rb
CHANGED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
set -u
|
|
5
|
+
|
|
6
|
+
BASEDIR="${PWD}"
|
|
7
|
+
|
|
8
|
+
export TARGET_PLATFORM=x86_64-darwin
|
|
9
|
+
export RUBY_TARGET_PLATFORM=x86_64-darwin
|
|
10
|
+
|
|
11
|
+
bundle install
|
|
12
|
+
|
|
13
|
+
# shellcheck disable=SC2034
|
|
14
|
+
RUBY_PLATFORM=$(./libexec/metadata ruby_platform)
|
|
15
|
+
GEM_PLATFORM=$(./libexec/metadata gem_platform)
|
|
16
|
+
GEM_VERSION=$(./libexec/metadata gem_version)
|
|
17
|
+
NODE_VERSION=$(./libexec/metadata node_version)
|
|
18
|
+
LIBV8_VERSION=$(./libexec/metadata libv8_version)
|
|
19
|
+
|
|
20
|
+
./libexec/download-node "$NODE_VERSION"
|
|
21
|
+
./libexec/extract-node "$NODE_VERSION"
|
|
22
|
+
|
|
23
|
+
# Validate that we have the correct V8 version.
|
|
24
|
+
libv8_version_h=$(./libexec/metadata libv8_version_h)
|
|
25
|
+
if [ "$libv8_version_h" != "$LIBV8_VERSION" ]; then
|
|
26
|
+
echo "LIBV8 version mismatch: expected $LIBV8_VERSION but found $libv8_version_h"
|
|
27
|
+
exit 1
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
# Build the package.
|
|
31
|
+
./libexec/build-libv8 "$NODE_VERSION"
|
|
32
|
+
./libexec/build-monolith "$NODE_VERSION"
|
|
33
|
+
./libexec/inject-libv8 "$NODE_VERSION"
|
|
34
|
+
|
|
35
|
+
# Run V8 tests.
|
|
36
|
+
cd test/gtest
|
|
37
|
+
cmake -S . -B build
|
|
38
|
+
cd build
|
|
39
|
+
cmake --build .
|
|
40
|
+
if ! ./c_v8_tests; then
|
|
41
|
+
echo "Tests failed."
|
|
42
|
+
exit 1
|
|
43
|
+
fi
|
|
44
|
+
|
|
45
|
+
# Build the gem.
|
|
46
|
+
cd "${BASEDIR}"
|
|
47
|
+
bundle exec rake binary
|
|
48
|
+
|
|
49
|
+
# Test that the gem can be installed and used.
|
|
50
|
+
gem install pkg/libv8-node-"$GEM_VERSION"-"$GEM_PLATFORM".gem
|
|
51
|
+
|
|
52
|
+
rm -rf test/mini_racer
|
|
53
|
+
git clone https://github.com/rubyjs/mini_racer.git test/mini_racer --depth 1
|
|
54
|
+
cd test/mini_racer
|
|
55
|
+
ruby -i -ne "\$_ =~ /^\s+LIBV8_NODE_VERSION/ ? print(\" LIBV8_NODE_VERSION = \\\"$GEM_VERSION\\\"\\n\") : print" lib/mini_racer/version.rb
|
|
56
|
+
# shellcheck disable=SC2016
|
|
57
|
+
ruby -i -ne '$_ =~ /spec.required_ruby_version/ ? "" : print' mini_racer.gemspec
|
|
58
|
+
bundle install
|
|
59
|
+
bundle exec rake compile
|
|
60
|
+
bundle exec rake test
|
|
@@ -6,11 +6,11 @@ index 6e21dac6d7..bcf022fb28 100644
|
|
|
6
6
|
}, {
|
|
7
7
|
'v8_enable_etw_stack_walking': 0,
|
|
8
8
|
}],
|
|
9
|
-
- ['OS=="linux"', {
|
|
9
|
+
- ['OS=="linux" or OS=="openharmony"', {
|
|
10
10
|
+ # Disable madvise(MADV_DONTFORK), it's a great optimization for programs
|
|
11
11
|
+ # that fork & exec but not for programs that fork and keep running.
|
|
12
12
|
+ # It makes mini_racer's test/test_forking.rb test segfault.
|
|
13
|
-
+ ['False and OS=="linux"', {
|
|
13
|
+
+ ['False and (OS=="linux" or OS=="openharmony")', {
|
|
14
14
|
# Sets -dV8_ENABLE_PRIVATE_MAPPING_FORK_OPTIMIZATION.
|
|
15
15
|
#
|
|
16
|
-
# This flag speeds up the performance of fork/execve on Linux systems for
|
|
16
|
+
# This flag speeds up the performance of fork/execve on Linux systems for
|
data/sums/v24.12.0.sum
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ad24a1f29e55c9539228f2c51a032da279188b681c4dc019cced7f82a0fcdd8d
|
metadata
CHANGED
|
@@ -1,15 +1,56 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: libv8-node
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 24.
|
|
4
|
+
version: 24.12.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ''
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: base64
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - ">="
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '0'
|
|
19
|
+
type: :development
|
|
20
|
+
prerelease: false
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - ">="
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: '0'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: logger
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '0'
|
|
33
|
+
type: :development
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - ">="
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '0'
|
|
40
|
+
- !ruby/object:Gem::Dependency
|
|
41
|
+
name: mutex_m
|
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - ">="
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: '0'
|
|
47
|
+
type: :development
|
|
48
|
+
prerelease: false
|
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0'
|
|
13
54
|
- !ruby/object:Gem::Dependency
|
|
14
55
|
name: rake
|
|
15
56
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -28,16 +69,16 @@ dependencies:
|
|
|
28
69
|
name: rubocop
|
|
29
70
|
requirement: !ruby/object:Gem::Requirement
|
|
30
71
|
requirements:
|
|
31
|
-
- - "
|
|
72
|
+
- - ">="
|
|
32
73
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 1.
|
|
74
|
+
version: 1.8.0
|
|
34
75
|
type: :development
|
|
35
76
|
prerelease: false
|
|
36
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
78
|
requirements:
|
|
38
|
-
- - "
|
|
79
|
+
- - ">="
|
|
39
80
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: 1.
|
|
81
|
+
version: 1.8.0
|
|
41
82
|
description: Node.JS's V8 JavaScript engine for multiplatform goodness
|
|
42
83
|
email:
|
|
43
84
|
- ''
|
|
@@ -57,6 +98,7 @@ files:
|
|
|
57
98
|
- lib/libv8/node.rb
|
|
58
99
|
- lib/libv8/node/version.rb
|
|
59
100
|
- libexec/build-libv8
|
|
101
|
+
- libexec/build-macos-x86_64
|
|
60
102
|
- libexec/build-monolith
|
|
61
103
|
- libexec/download-node
|
|
62
104
|
- libexec/extract-node
|
|
@@ -92,11 +134,12 @@ files:
|
|
|
92
134
|
- sums/v23.6.1.sum
|
|
93
135
|
- sums/v23.8.0.sum
|
|
94
136
|
- sums/v24.1.0.sum
|
|
137
|
+
- sums/v24.12.0.sum
|
|
95
138
|
homepage: https://github.com/rubyjs/libv8-node
|
|
96
139
|
licenses:
|
|
97
140
|
- MIT
|
|
98
|
-
metadata:
|
|
99
|
-
|
|
141
|
+
metadata:
|
|
142
|
+
rubygems_mfa_required: 'true'
|
|
100
143
|
rdoc_options: []
|
|
101
144
|
require_paths:
|
|
102
145
|
- lib
|
|
@@ -112,8 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
112
155
|
- !ruby/object:Gem::Version
|
|
113
156
|
version: '0'
|
|
114
157
|
requirements: []
|
|
115
|
-
rubygems_version:
|
|
116
|
-
signing_key:
|
|
158
|
+
rubygems_version: 4.0.3
|
|
117
159
|
specification_version: 4
|
|
118
160
|
summary: Node.JS's V8 JavaScript engine
|
|
119
161
|
test_files: []
|