Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rubygem-bootsnap for
openSUSE:Factory checked in at 2022-02-24 18:20:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-bootsnap (Old)
and /work/SRC/openSUSE:Factory/.rubygem-bootsnap.new.1958 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-bootsnap"
Thu Feb 24 18:20:14 2022 rev:17 rq:956112 version:1.10.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-bootsnap/rubygem-bootsnap.changes
2022-02-07 23:38:31.598265353 +0100
+++
/work/SRC/openSUSE:Factory/.rubygem-bootsnap.new.1958/rubygem-bootsnap.changes
2022-02-24 18:23:29.446657702 +0100
@@ -1,0 +2,25 @@
+Tue Feb 15 07:24:24 UTC 2022 - Stephan Kulow <[email protected]>
+
+updated to version 1.10.3
+ see installed CHANGELOG.md
+
+ # 1.10.3
+
+ * Fix Regexp and Date type support in YAML compile cache. (#400)
+
+ * Improve the YAML compile cache to support `UTF-8` symbols. (#398, #399)
+ [The default `MessagePack` symbol serializer assumes all symbols are
ASCII](https://github.com/msgpack/msgpack-ruby/pull/211),
+ because of this, non-ASCII compatible symbol would be restored with
`ASCII_8BIT` encoding (AKA `BINARY`).
+ Bootsnap now properly cache them in `UTF-8`.
+
+ Note that the above only apply for actual YAML symbols (e..g `--- :foo`).
+ The issue is still present for string keys parsed with
`YAML.load_file(..., symbolize_names: true)`, that is a bug
+ in `msgpack` that will hopefully be solved soon, see:
https://github.com/msgpack/msgpack-ruby/pull/246
+
+ * Entirely disable the YAML compile cache if `Encoding.default_internal` is
set to an encoding not supported by `msgpack`. (#398)
+ `Psych` coerce strings to `Encoding.default_internal`, but `MessagePack`
doesn't. So in this scenario we can't provide
+ YAML caching at all without returning the strings in the wrong encoding.
+ This never came up in practice but might as well be safe.
+
+
+-------------------------------------------------------------------
Old:
----
bootsnap-1.10.2.gem
New:
----
bootsnap-1.10.3.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-bootsnap.spec ++++++
--- /var/tmp/diff_new_pack.C9qKhN/_old 2022-02-24 18:23:29.866657590 +0100
+++ /var/tmp/diff_new_pack.C9qKhN/_new 2022-02-24 18:23:29.870657589 +0100
@@ -24,7 +24,7 @@
#
Name: rubygem-bootsnap
-Version: 1.10.2
+Version: 1.10.3
Release: 0
%define mod_name bootsnap
%define mod_full_name %{mod_name}-%{version}
++++++ bootsnap-1.10.2.gem -> bootsnap-1.10.3.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md 2022-01-21 15:49:27.000000000 +0100
+++ new/CHANGELOG.md 2022-02-02 09:29:18.000000000 +0100
@@ -1,5 +1,23 @@
# Unreleased
+# 1.10.3
+
+* Fix Regexp and Date type support in YAML compile cache. (#400)
+
+* Improve the YAML compile cache to support `UTF-8` symbols. (#398, #399)
+ [The default `MessagePack` symbol serializer assumes all symbols are
ASCII](https://github.com/msgpack/msgpack-ruby/pull/211),
+ because of this, non-ASCII compatible symbol would be restored with
`ASCII_8BIT` encoding (AKA `BINARY`).
+ Bootsnap now properly cache them in `UTF-8`.
+
+ Note that the above only apply for actual YAML symbols (e..g `--- :foo`).
+ The issue is still present for string keys parsed with `YAML.load_file(...,
symbolize_names: true)`, that is a bug
+ in `msgpack` that will hopefully be solved soon, see:
https://github.com/msgpack/msgpack-ruby/pull/246
+
+* Entirely disable the YAML compile cache if `Encoding.default_internal` is
set to an encoding not supported by `msgpack`. (#398)
+ `Psych` coerce strings to `Encoding.default_internal`, but `MessagePack`
doesn't. So in this scenario we can't provide
+ YAML caching at all without returning the strings in the wrong encoding.
+ This never came up in practice but might as well be safe.
+
# 1.10.2
* Reduce the `Kernel.require` extra stack frames some more. Now bootsnap
should only add one extra frame per `require` call.
@@ -22,7 +40,7 @@
Since `1.8.0`, `YAML.load_file` was no longer cached when Psych 4 was used.
This is because `load_file` loads
in safe mode by default, so the Bootsnap cache could defeat that safety.
Now when precompiling YAML files, Bootsnap first try to parse them in safe
mode, and if it can't fallback to unsafe mode,
- and the cache contains a flag that records wether it was generated in safe
mode or not.
+ and the cache contains a flag that records whether it was generated in safe
mode or not.
`YAML.unsafe_load_file` will use safe caches just fine, but `YAML.load_file`
will fallback to uncached YAML parsing
if the cache was generated using unsafe parsing.
@@ -63,7 +81,7 @@
# 1.8.0
-* Improve support for Pysch 4. (#368)
+* Improve support for Psych 4. (#368)
# 1.7.7
@@ -81,8 +99,8 @@
# 1.7.4
-* Stop raising errors when encoutering various file system errors. The cache
is now best effort,
- if somehow it can't be saved, bootsnapp will gracefully fallback to the
original operation (e.g. `Kernel.require`).
+* Stop raising errors when encountering various file system errors. The cache
is now best effort,
+ if somehow it can't be saved, bootsnap will gracefully fallback to the
original operation (e.g. `Kernel.require`).
(#353, #177, #262)
# 1.7.3
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ext/bootsnap/bootsnap.c new/ext/bootsnap/bootsnap.c
--- old/ext/bootsnap/bootsnap.c 2022-01-21 15:49:27.000000000 +0100
+++ new/ext/bootsnap/bootsnap.c 2022-02-02 09:29:18.000000000 +0100
@@ -2,7 +2,7 @@
* Suggested reading order:
* 1. Skim Init_bootsnap
* 2. Skim bs_fetch
- * 3. The rest of everything
+ * 3. The rest of everyrything
*
* Init_bootsnap sets up the ruby objects and binds bs_fetch to
* Bootsnap::CompileCache::Native.fetch.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bootsnap/compile_cache/yaml.rb
new/lib/bootsnap/compile_cache/yaml.rb
--- old/lib/bootsnap/compile_cache/yaml.rb 2022-01-21 15:49:27.000000000
+0100
+++ new/lib/bootsnap/compile_cache/yaml.rb 2022-02-02 09:29:18.000000000
+0100
@@ -5,7 +5,15 @@
module Bootsnap
module CompileCache
module YAML
- UnsupportedTags = Class.new(StandardError)
+ Uncompilable = Class.new(StandardError)
+ UnsupportedTags = Class.new(Uncompilable)
+
+ SUPPORTED_INTERNAL_ENCODINGS = [
+ nil, # UTF-8
+ Encoding::UTF_8,
+ Encoding::ASCII,
+ Encoding::BINARY,
+ ].freeze
class << self
attr_accessor(:msgpack_factory, :supported_options)
@@ -16,7 +24,9 @@
end
def precompile(path)
- Bootsnap::CompileCache::Native.precompile(
+ return false unless CompileCache::YAML.supported_internal_encoding?
+
+ CompileCache::Native.precompile(
cache_dir,
path.to_s,
@implementation,
@@ -29,6 +39,21 @@
::YAML.singleton_class.prepend(@implementation::Patch)
end
+ # Psych coerce strings to `Encoding.default_internal` but Message Pack
only support
+ # UTF-8, US-ASCII and BINARY. So if Encoding.default_internal is set
to anything else
+ # we can't safely use the cache
+ def supported_internal_encoding?
+ SUPPORTED_INTERNAL_ENCODINGS.include?(Encoding.default_internal)
+ end
+
+ module EncodingAwareSymbols
+ extend self
+
+ def unpack(payload)
+ (+payload).force_encoding(Encoding::UTF_8).to_sym
+ end
+ end
+
def init!
require("yaml")
require("msgpack")
@@ -43,7 +68,12 @@
# We want them to roundtrip cleanly, so we use a custom factory.
# see: https://github.com/msgpack/msgpack-ruby/pull/122
factory = MessagePack::Factory.new
- factory.register_type(0x00, Symbol)
+ factory.register_type(
+ 0x00,
+ Symbol,
+ packer: :to_msgpack_ext,
+ unpacker: EncodingAwareSymbols.method(:unpack).to_proc,
+ )
if defined? MessagePack::Timestamp
factory.register_type(
@@ -119,13 +149,15 @@
extend self
def input_to_storage(contents, _)
- obj = CompileCache::YAML.strict_load(contents)
+ obj = ::YAML.unsafe_load(contents)
packer = CompileCache::YAML.msgpack_factory.packer
packer.pack(false) # not safe loaded
- packer.pack(obj)
+ begin
+ packer.pack(obj)
+ rescue NoMethodError, RangeError
+ return UNCOMPILABLE # The object included things that we can't
serialize
+ end
packer.to_s
- rescue NoMethodError, RangeError, UnsupportedTags
- UNCOMPILABLE # The object included things that we can't serialize
end
def storage_to_output(data, kwargs)
@@ -148,13 +180,20 @@
extend self
def input_to_storage(contents, _)
- obj = ::YAML.load(contents)
+ obj = begin
+ CompileCache::YAML.strict_load(contents)
+ rescue Psych::DisallowedClass, Psych::BadAlias, Uncompilable
+ return UNCOMPILABLE
+ end
+
packer = CompileCache::YAML.msgpack_factory.packer
packer.pack(true) # safe loaded
- packer.pack(obj)
+ begin
+ packer.pack(obj)
+ rescue NoMethodError, RangeError
+ return UNCOMPILABLE
+ end
packer.to_s
- rescue NoMethodError, RangeError, Psych::DisallowedClass,
Psych::BadAlias
- UNCOMPILABLE # The object included things that we can't serialize
end
def storage_to_output(data, kwargs)
@@ -179,44 +218,48 @@
module Patch
def load_file(path, *args)
+ return super unless CompileCache::YAML.supported_internal_encoding?
+
return super if args.size > 1
if (kwargs = args.first)
return super unless kwargs.is_a?(Hash)
- return super unless (kwargs.keys -
::Bootsnap::CompileCache::YAML.supported_options).empty?
+ return super unless (kwargs.keys -
CompileCache::YAML.supported_options).empty?
end
begin
- ::Bootsnap::CompileCache::Native.fetch(
- Bootsnap::CompileCache::YAML.cache_dir,
+ CompileCache::Native.fetch(
+ CompileCache::YAML.cache_dir,
File.realpath(path),
- ::Bootsnap::CompileCache::YAML::Psych4::SafeLoad,
+ CompileCache::YAML::Psych4::SafeLoad,
kwargs,
)
rescue Errno::EACCES
- ::Bootsnap::CompileCache.permission_error(path)
+ CompileCache.permission_error(path)
end
end
ruby2_keywords :load_file if respond_to?(:ruby2_keywords, true)
def unsafe_load_file(path, *args)
+ return super unless CompileCache::YAML.supported_internal_encoding?
+
return super if args.size > 1
if (kwargs = args.first)
return super unless kwargs.is_a?(Hash)
- return super unless (kwargs.keys -
::Bootsnap::CompileCache::YAML.supported_options).empty?
+ return super unless (kwargs.keys -
CompileCache::YAML.supported_options).empty?
end
begin
- ::Bootsnap::CompileCache::Native.fetch(
- Bootsnap::CompileCache::YAML.cache_dir,
+ CompileCache::Native.fetch(
+ CompileCache::YAML.cache_dir,
File.realpath(path),
- ::Bootsnap::CompileCache::YAML::Psych4::UnsafeLoad,
+ CompileCache::YAML::Psych4::UnsafeLoad,
kwargs,
)
rescue Errno::EACCES
- ::Bootsnap::CompileCache.permission_error(path)
+ CompileCache.permission_error(path)
end
end
@@ -228,13 +271,15 @@
extend self
def input_to_storage(contents, _)
- obj = CompileCache::YAML.strict_load(contents)
+ obj = ::YAML.load(contents)
packer = CompileCache::YAML.msgpack_factory.packer
packer.pack(false) # not safe loaded
- packer.pack(obj)
+ begin
+ packer.pack(obj)
+ rescue NoMethodError, RangeError
+ return UNCOMPILABLE # The object included things that we can't
serialize
+ end
packer.to_s
- rescue NoMethodError, RangeError, UnsupportedTags
- UNCOMPILABLE # The object included things that we can't serialize
end
def storage_to_output(data, kwargs)
@@ -253,44 +298,48 @@
module Patch
def load_file(path, *args)
+ return super unless CompileCache::YAML.supported_internal_encoding?
+
return super if args.size > 1
if (kwargs = args.first)
return super unless kwargs.is_a?(Hash)
- return super unless (kwargs.keys -
::Bootsnap::CompileCache::YAML.supported_options).empty?
+ return super unless (kwargs.keys -
CompileCache::YAML.supported_options).empty?
end
begin
- ::Bootsnap::CompileCache::Native.fetch(
- Bootsnap::CompileCache::YAML.cache_dir,
+ CompileCache::Native.fetch(
+ CompileCache::YAML.cache_dir,
File.realpath(path),
- ::Bootsnap::CompileCache::YAML::Psych3,
+ CompileCache::YAML::Psych3,
kwargs,
)
rescue Errno::EACCES
- ::Bootsnap::CompileCache.permission_error(path)
+ CompileCache.permission_error(path)
end
end
ruby2_keywords :load_file if respond_to?(:ruby2_keywords, true)
def unsafe_load_file(path, *args)
+ return super unless CompileCache::YAML.supported_internal_encoding?
+
return super if args.size > 1
if (kwargs = args.first)
return super unless kwargs.is_a?(Hash)
- return super unless (kwargs.keys -
::Bootsnap::CompileCache::YAML.supported_options).empty?
+ return super unless (kwargs.keys -
CompileCache::YAML.supported_options).empty?
end
begin
- ::Bootsnap::CompileCache::Native.fetch(
- Bootsnap::CompileCache::YAML.cache_dir,
+ CompileCache::Native.fetch(
+ CompileCache::YAML.cache_dir,
File.realpath(path),
- ::Bootsnap::CompileCache::YAML::Psych3,
+ CompileCache::YAML::Psych3,
kwargs,
)
rescue Errno::EACCES
- ::Bootsnap::CompileCache.permission_error(path)
+ CompileCache.permission_error(path)
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bootsnap/compile_cache.rb
new/lib/bootsnap/compile_cache.rb
--- old/lib/bootsnap/compile_cache.rb 2022-01-21 15:49:27.000000000 +0100
+++ new/lib/bootsnap/compile_cache.rb 2022-02-02 09:29:18.000000000 +0100
@@ -3,6 +3,9 @@
module Bootsnap
module CompileCache
UNCOMPILABLE = BasicObject.new
+ def UNCOMPILABLE.inspect
+ "<Bootsnap::UNCOMPILABLE>"
+ end
Error = Class.new(StandardError)
PermissionError = Class.new(Error)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bootsnap/version.rb new/lib/bootsnap/version.rb
--- old/lib/bootsnap/version.rb 2022-01-21 15:49:27.000000000 +0100
+++ new/lib/bootsnap/version.rb 2022-02-02 09:29:18.000000000 +0100
@@ -1,5 +1,5 @@
# frozen_string_literal: true
module Bootsnap
- VERSION = "1.10.2"
+ VERSION = "1.10.3"
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/bootsnap.rb new/lib/bootsnap.rb
--- old/lib/bootsnap.rb 2022-01-21 15:49:27.000000000 +0100
+++ new/lib/bootsnap.rb 2022-02-02 09:29:18.000000000 +0100
@@ -10,128 +10,128 @@
class << self
attr_reader :logger
- end
- def self.log!
- self.logger = $stderr.method(:puts)
- end
+ def log!
+ self.logger = $stderr.method(:puts)
+ end
- def self.logger=(logger)
- @logger = logger
- self.instrumentation = if logger.respond_to?(:debug)
- ->(event, path) { @logger.debug("[Bootsnap] #{event} #{path}") }
- else
- ->(event, path) { @logger.call("[Bootsnap] #{event} #{path}") }
+ def logger=(logger)
+ @logger = logger
+ self.instrumentation = if logger.respond_to?(:debug)
+ ->(event, path) { @logger.debug("[Bootsnap] #{event} #{path}") }
+ else
+ ->(event, path) { @logger.call("[Bootsnap] #{event} #{path}") }
+ end
end
- end
- def self.instrumentation=(callback)
- @instrumentation = callback
- if respond_to?(:instrumentation_enabled=, true)
- self.instrumentation_enabled = !!callback
+ def instrumentation=(callback)
+ @instrumentation = callback
+ if respond_to?(:instrumentation_enabled=, true)
+ self.instrumentation_enabled = !!callback
+ end
end
- end
- def self._instrument(event, path)
- @instrumentation.call(event, path)
- end
+ def _instrument(event, path)
+ @instrumentation.call(event, path)
+ end
+
+ def setup(
+ cache_dir:,
+ development_mode: true,
+ load_path_cache: true,
+ autoload_paths_cache: nil,
+ disable_trace: nil,
+ compile_cache_iseq: true,
+ compile_cache_yaml: true,
+ compile_cache_json: true
+ )
+ unless autoload_paths_cache.nil?
+ warn "[DEPRECATED] Bootsnap's `autoload_paths_cache:` option is
deprecated and will be removed. " \
+ "If you use Zeitwerk this option is useless, and if you are still
using the classic autoloader " \
+ "upgrading is recommended."
+ end
+
+ unless disable_trace.nil?
+ warn "[DEPRECATED] Bootsnap's `disable_trace:` option is deprecated
and will be removed. " \
+ "If you use Ruby 2.5 or newer this option is useless, if not
upgrading is recommended."
+ end
+
+ if compile_cache_iseq && !iseq_cache_supported?
+ warn "Ruby 2.5 has a bug that break code tracing when code is loaded
from cache. It is recommened " \
+ "to turn `compile_cache_iseq` off on Ruby 2.5"
+ end
- def self.setup(
- cache_dir:,
- development_mode: true,
- load_path_cache: true,
- autoload_paths_cache: nil,
- disable_trace: nil,
- compile_cache_iseq: true,
- compile_cache_yaml: true,
- compile_cache_json: true
- )
- unless autoload_paths_cache.nil?
- warn "[DEPRECATED] Bootsnap's `autoload_paths_cache:` option is
deprecated and will be removed. " \
- "If you use Zeitwerk this option is useless, and if you are still
using the classic autoloader " \
- "upgrading is recommended."
- end
-
- unless disable_trace.nil?
- warn "[DEPRECATED] Bootsnap's `disable_trace:` option is deprecated and
will be removed. " \
- "If you use Ruby 2.5 or newer this option is useless, if not upgrading
is recommended."
- end
-
- if compile_cache_iseq && !iseq_cache_supported?
- warn "Ruby 2.5 has a bug that break code tracing when code is loaded
from cache. It is recommened " \
- "to turn `compile_cache_iseq` off on Ruby 2.5"
- end
-
- if load_path_cache
- Bootsnap::LoadPathCache.setup(
- cache_path: cache_dir + "/bootsnap/load-path-cache",
- development_mode: development_mode,
+ if load_path_cache
+ Bootsnap::LoadPathCache.setup(
+ cache_path: cache_dir + "/bootsnap/load-path-cache",
+ development_mode: development_mode,
+ )
+ end
+
+ Bootsnap::CompileCache.setup(
+ cache_dir: cache_dir + "/bootsnap/compile-cache",
+ iseq: compile_cache_iseq,
+ yaml: compile_cache_yaml,
+ json: compile_cache_json,
)
end
- Bootsnap::CompileCache.setup(
- cache_dir: cache_dir + "/bootsnap/compile-cache",
- iseq: compile_cache_iseq,
- yaml: compile_cache_yaml,
- json: compile_cache_json,
- )
- end
+ def iseq_cache_supported?
+ return @iseq_cache_supported if defined? @iseq_cache_supported
- def self.iseq_cache_supported?
- return @iseq_cache_supported if defined? @iseq_cache_supported
+ ruby_version = Gem::Version.new(RUBY_VERSION)
+ @iseq_cache_supported = ruby_version < Gem::Version.new("2.5.0") ||
ruby_version >= Gem::Version.new("2.6.0")
+ end
- ruby_version = Gem::Version.new(RUBY_VERSION)
- @iseq_cache_supported = ruby_version < Gem::Version.new("2.5.0") ||
ruby_version >= Gem::Version.new("2.6.0")
- end
+ def default_setup
+ env = ENV["RAILS_ENV"] || ENV["RACK_ENV"] || ENV["ENV"]
+ development_mode = ["", nil, "development"].include?(env)
- def self.default_setup
- env = ENV["RAILS_ENV"] || ENV["RACK_ENV"] || ENV["ENV"]
- development_mode = ["", nil, "development"].include?(env)
-
- unless ENV["DISABLE_BOOTSNAP"]
- cache_dir = ENV["BOOTSNAP_CACHE_DIR"]
- unless cache_dir
- config_dir_frame = caller.detect do |line|
- line.include?("/config/")
- end
+ unless ENV["DISABLE_BOOTSNAP"]
+ cache_dir = ENV["BOOTSNAP_CACHE_DIR"]
+ unless cache_dir
+ config_dir_frame = caller.detect do |line|
+ line.include?("/config/")
+ end
- unless config_dir_frame
- $stderr.puts("[bootsnap/setup] couldn't infer cache directory!
Either:")
- $stderr.puts("[bootsnap/setup] 1. require bootsnap/setup from your
application's config directory; or")
- $stderr.puts("[bootsnap/setup] 2. Define the environment variable
BOOTSNAP_CACHE_DIR")
+ unless config_dir_frame
+ $stderr.puts("[bootsnap/setup] couldn't infer cache directory!
Either:")
+ $stderr.puts("[bootsnap/setup] 1. require bootsnap/setup from
your application's config directory; or")
+ $stderr.puts("[bootsnap/setup] 2. Define the environment
variable BOOTSNAP_CACHE_DIR")
- raise("couldn't infer bootsnap cache directory")
- end
+ raise("couldn't infer bootsnap cache directory")
+ end
- path = config_dir_frame.split(/:\d+:/).first
- path = File.dirname(path) until File.basename(path) == "config"
- app_root = File.dirname(path)
-
- cache_dir = File.join(app_root, "tmp", "cache")
- end
+ path = config_dir_frame.split(/:\d+:/).first
+ path = File.dirname(path) until File.basename(path) == "config"
+ app_root = File.dirname(path)
- setup(
- cache_dir: cache_dir,
- development_mode: development_mode,
- load_path_cache: !ENV["DISABLE_BOOTSNAP_LOAD_PATH_CACHE"],
- compile_cache_iseq: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"] &&
iseq_cache_supported?,
- compile_cache_yaml: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"],
- compile_cache_json: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"],
- )
+ cache_dir = File.join(app_root, "tmp", "cache")
+ end
- if ENV["BOOTSNAP_LOG"]
- log!
+ setup(
+ cache_dir: cache_dir,
+ development_mode: development_mode,
+ load_path_cache: !ENV["DISABLE_BOOTSNAP_LOAD_PATH_CACHE"],
+ compile_cache_iseq: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"] &&
iseq_cache_supported?,
+ compile_cache_yaml: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"],
+ compile_cache_json: !ENV["DISABLE_BOOTSNAP_COMPILE_CACHE"],
+ )
+
+ if ENV["BOOTSNAP_LOG"]
+ log!
+ end
end
end
- end
- if RbConfig::CONFIG["host_os"] =~ /mswin|mingw|cygwin/
- def self.absolute_path?(path)
- path[1] == ":"
- end
- else
- def self.absolute_path?(path)
- path.start_with?("/")
+ if RbConfig::CONFIG["host_os"] =~ /mswin|mingw|cygwin/
+ def absolute_path?(path)
+ path[1] == ":"
+ end
+ else
+ def absolute_path?(path)
+ path.start_with?("/")
+ end
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2022-01-21 15:49:27.000000000 +0100
+++ new/metadata 2022-02-02 09:29:18.000000000 +0100
@@ -1,14 +1,14 @@
--- !ruby/object:Gem::Specification
name: bootsnap
version: !ruby/object:Gem::Version
- version: 1.10.2
+ version: 1.10.3
platform: ruby
authors:
- Burke Libbey
autorequire:
bindir: exe
cert_chain: []
-date: 2022-01-21 00:00:00.000000000 Z
+date: 2022-02-02 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: msgpack