mini_racer 0.14.0 → 0.15.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/CHANGELOG +7 -0
- data/ext/mini_racer_loader/mini_racer_loader.c +1 -1
- data/lib/mini_racer/version.rb +2 -2
- data/lib/mini_racer.rb +18 -8
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 90d5084c78cd0f28234ab0990db86169bdc6cc9b9f1dd36dca8c53568a5baa54
|
4
|
+
data.tar.gz: 3afba3cadc22350a49a43208ba8d2e6915648f7e54e23137191ffd0890c71dcd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6ed1e268ed3ba3f38662448f0f18f363659f9929fc15ca60eb4f622efbc4dbbd507ab83b77fbe83d8d482ae2d48c501c843f94e5dd2e1e1c250c6e28cefd93c9
|
7
|
+
data.tar.gz: 76fe13afa08283976eb7ab2b8d48e1443bd59eddf3cc7f8ae5479538fe6ca1e3ff14e1c3b8d15561e48257bc9d84ddb5e5cc7fdfab9260c837ed33e0d94ab473
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
- 0.15.0 - 05-09-2024
|
2
|
+
|
3
|
+
- Use libv8-node 22.7.0 - this corrects issues with multithreaded behavior and forking in single threaded mode.
|
4
|
+
|
5
|
+
- 0.14.1 - 14-08-2024
|
6
|
+
|
7
|
+
- No longer use mini_racer_loader if LD_PRELOAD is defined and adds a malloc provider. This resolves segfaults when people LD_PRELOAD jemalloc or tcmalloc.
|
1
8
|
|
2
9
|
- 0.14.0 - 06-08-2024
|
3
10
|
|
@@ -115,7 +115,7 @@ failed:
|
|
115
115
|
rb_raise(rb_eLoadError, "%s", error);
|
116
116
|
}
|
117
117
|
|
118
|
-
__attribute__((visibility("default"))) void Init_mini_racer_loader()
|
118
|
+
__attribute__((visibility("default"))) void Init_mini_racer_loader(void)
|
119
119
|
{
|
120
120
|
VALUE mMiniRacer = rb_define_module("MiniRacer");
|
121
121
|
VALUE mLoader = rb_define_module_under(mMiniRacer, "Loader");
|
data/lib/mini_racer/version.rb
CHANGED
data/lib/mini_racer.rb
CHANGED
@@ -4,14 +4,23 @@ require "pathname"
|
|
4
4
|
if RUBY_ENGINE == "truffleruby"
|
5
5
|
require "mini_racer/truffleruby"
|
6
6
|
else
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
7
|
+
if ENV["LD_PRELOAD"].to_s.include?("malloc")
|
8
|
+
require "mini_racer_extension"
|
9
|
+
else
|
10
|
+
require "mini_racer_loader"
|
11
|
+
ext_filename = "mini_racer_extension.#{RbConfig::CONFIG["DLEXT"]}"
|
12
|
+
ext_path =
|
13
|
+
Gem.loaded_specs["mini_racer"].require_paths.map do |p|
|
14
|
+
(p = Pathname.new(p)).absolute? ? p : Pathname.new(__dir__).parent + p
|
15
|
+
end
|
16
|
+
ext_found = ext_path.map { |p| p + ext_filename }.find { |p| p.file? }
|
17
|
+
|
18
|
+
unless ext_found
|
19
|
+
raise LoadError,
|
20
|
+
"Could not find #{ext_filename} in #{ext_path.map(&:to_s)}"
|
21
|
+
end
|
22
|
+
MiniRacer::Loader.load(ext_found.to_s)
|
23
|
+
end
|
15
24
|
end
|
16
25
|
|
17
26
|
require "thread"
|
@@ -307,6 +316,7 @@ module MiniRacer
|
|
307
316
|
@last_eval = Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
308
317
|
@ensure_gc_mutex.synchronize do
|
309
318
|
@ensure_gc_thread = nil if !@ensure_gc_thread&.alive?
|
319
|
+
return if !Thread.main.alive? # avoid "can't alloc thread" exception
|
310
320
|
@ensure_gc_thread ||= Thread.new do
|
311
321
|
ensure_gc_after_idle_seconds = @ensure_gc_after_idle / 1000.0
|
312
322
|
done = false
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mini_racer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sam Saffron
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-09-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 22.7.0.1
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 22.7.0.1
|
97
97
|
description: Minimal embedded v8 engine for Ruby
|
98
98
|
email:
|
99
99
|
- sam.saffron@gmail.com
|
@@ -119,9 +119,9 @@ licenses:
|
|
119
119
|
- MIT
|
120
120
|
metadata:
|
121
121
|
bug_tracker_uri: https://github.com/discourse/mini_racer/issues
|
122
|
-
changelog_uri: https://github.com/discourse/mini_racer/blob/v0.
|
123
|
-
documentation_uri: https://www.rubydoc.info/gems/mini_racer/0.
|
124
|
-
source_code_uri: https://github.com/discourse/mini_racer/tree/v0.
|
122
|
+
changelog_uri: https://github.com/discourse/mini_racer/blob/v0.15.0/CHANGELOG
|
123
|
+
documentation_uri: https://www.rubydoc.info/gems/mini_racer/0.15.0
|
124
|
+
source_code_uri: https://github.com/discourse/mini_racer/tree/v0.15.0
|
125
125
|
post_install_message:
|
126
126
|
rdoc_options: []
|
127
127
|
require_paths:
|