diff --git a/Library/Homebrew/Gemfile.lock b/Library/Homebrew/Gemfile.lock index 653af52b81..e38f75a8da 100644 --- a/Library/Homebrew/Gemfile.lock +++ b/Library/Homebrew/Gemfile.lock @@ -189,7 +189,7 @@ GEM warning (1.2.1) webrick (1.7.0) webrobots (0.1.2) - zeitwerk (2.5.0) + zeitwerk (2.5.1) PLATFORMS ruby diff --git a/Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.0.rbi b/Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.1.rbi similarity index 94% rename from Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.0.rbi rename to Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.1.rbi index 6b45c36fc3..1943a250a7 100644 --- a/Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.0.rbi +++ b/Library/Homebrew/sorbet/rbi/gems/zeitwerk@2.5.1.rbi @@ -22,20 +22,6 @@ module Zeitwerk end end -class Zeitwerk::Autoloads - def initialize; end - - def a2c; end - def abspath_for(parent, cname); end - def c2a; end - def clear; end - def cref_for(abspath); end - def define(parent, cname, abspath); end - def delete(abspath); end - def each(&block); end - def empty?; end -end - class Zeitwerk::Error < ::StandardError; end module Zeitwerk::ExplicitNamespace @@ -95,6 +81,7 @@ class Zeitwerk::Loader private def autoload_file(parent, cname, file); end + def autoload_path_set_by_me_for?(parent, cname); end def autoload_subdir(parent, cname, subdir); end def promote_namespace_from_implicit_to_explicit(dir:, file:, parent:, cname:); end def raise_if_conflicting_directory(dir); end diff --git a/Library/Homebrew/sorbet/rbi/hidden-definitions/hidden.rbi b/Library/Homebrew/sorbet/rbi/hidden-definitions/hidden.rbi index f058efd910..4df0b8ef7d 100644 --- a/Library/Homebrew/sorbet/rbi/hidden-definitions/hidden.rbi +++ b/Library/Homebrew/sorbet/rbi/hidden-definitions/hidden.rbi @@ -5537,6 +5537,8 @@ end module MonitorMixin def initialize(*args); end + EXCEPTION_IMMEDIATE = ::T.let(nil, ::T.untyped) + EXCEPTION_NEVER = ::T.let(nil, ::T.untyped) end class MonitorMixin::ConditionVariable diff --git a/Library/Homebrew/vendor/bundle/bundler/setup.rb b/Library/Homebrew/vendor/bundle/bundler/setup.rb index 0babf27019..3f28db8bf6 100644 --- a/Library/Homebrew/vendor/bundle/bundler/setup.rb +++ b/Library/Homebrew/vendor/bundle/bundler/setup.rb @@ -7,7 +7,7 @@ $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/concurrent-ruby-1.1.9 $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/i18n-1.8.10/lib" $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/minitest-5.14.4/lib" $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/tzinfo-2.0.4/lib" -$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/zeitwerk-2.5.0/lib" +$:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/zeitwerk-2.5.1/lib" $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/activesupport-6.1.4.1/lib" $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/public_suffix-4.0.6/lib" $:.unshift "#{path}/../#{ruby_engine}/#{ruby_version}/gems/addressable-2.8.0/lib" diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/autoloads.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/autoloads.rb deleted file mode 100644 index 7e145727bf..0000000000 --- a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/autoloads.rb +++ /dev/null @@ -1,71 +0,0 @@ -# frozen_string_literal: true - -module Zeitwerk - # @private - class Autoloads - # Maps crefs for which an autoload has been defined to the corresponding - # absolute path. - # - # [Object, :User] => "/Users/fxn/blog/app/models/user.rb" - # [Object, :Hotel] => "/Users/fxn/blog/app/models/hotel" - # ... - # - # This colection is transient, callbacks delete its entries as autoloads get - # executed. - # - # @sig Hash[[Module, Symbol], String] - attr_reader :c2a - - # This is the inverse of c2a, for inverse lookups. - # - # @sig Hash[String, [Module, Symbol]] - attr_reader :a2c - - # @sig () -> void - def initialize - @c2a = {} - @a2c = {} - end - - # @sig (Module, Symbol, String) -> void - def define(parent, cname, abspath) - parent.autoload(cname, abspath) - cref = [parent, cname] - c2a[cref] = abspath - a2c[abspath] = cref - end - - # @sig () { () -> [[Module, Symbol], String] } -> void - def each(&block) - c2a.each(&block) - end - - # @sig (Module, Symbol) -> String? - def abspath_for(parent, cname) - c2a[[parent, cname]] - end - - # @sig (String) -> [Module, Symbol]? - def cref_for(abspath) - a2c[abspath] - end - - # @sig (String) -> [Module, Symbol]? - def delete(abspath) - cref = a2c.delete(abspath) - c2a.delete(cref) - cref - end - - # @sig () -> void - def clear - c2a.clear - a2c.clear - end - - # @sig () -> bool - def empty? - c2a.empty? && a2c.empty? - end - end -end diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk.rb similarity index 93% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk.rb index 9d13313a31..a1335d1106 100644 --- a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk.rb +++ b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk.rb @@ -3,7 +3,6 @@ module Zeitwerk require_relative "zeitwerk/real_mod_name" require_relative "zeitwerk/loader" - require_relative "zeitwerk/autoloads" require_relative "zeitwerk/registry" require_relative "zeitwerk/explicit_namespace" require_relative "zeitwerk/inflector" diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/error.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/error.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/error.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/error.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/explicit_namespace.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/explicit_namespace.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/explicit_namespace.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/explicit_namespace.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/gem_inflector.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/gem_inflector.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/gem_inflector.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/gem_inflector.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/inflector.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/inflector.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/inflector.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/inflector.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/kernel.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/kernel.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/kernel.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/kernel.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader.rb similarity index 94% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader.rb index dd0b345030..d6073c695f 100644 --- a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader.rb +++ b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader.rb @@ -14,22 +14,16 @@ module Zeitwerk include Helpers include Config - # Keeps track of autoloads defined by the loader which have not been - # executed so far. + # Maps absolute paths for which an autoload has been set ---and not + # executed--- to their corresponding parent class or module and constant + # name. # - # This metadata helps us implement a few things: - # - # 1. When autoloads are triggered, ensure they define the expected constant - # and invoke user callbacks. If reloading is enabled, remember cref and - # abspath for later unloading logic. - # - # 2. When unloading, remove autoloads that have not been executed. - # - # 3. Eager load with a recursive const_get, rather than a recursive require, - # for consistency with lazy loading. + # "/Users/fxn/blog/app/models/user.rb" => [Object, :User], + # "/Users/fxn/blog/app/models/hotel/pricing.rb" => [Hotel, :Pricing] + # ... # # @private - # @sig Zeitwerk::Autoloads + # @sig Hash[String, [Module, Symbol]] attr_reader :autoloads # We keep track of autoloaded directories to remove them from the registry @@ -87,7 +81,7 @@ module Zeitwerk def initialize super - @autoloads = Autoloads.new + @autoloads = {} @autoloaded_dirs = [] @to_unload = {} @lazy_subdirs = Hash.new { |h, cpath| h[cpath] = [] } @@ -138,7 +132,7 @@ module Zeitwerk # is enough. unloaded_files = Set.new - autoloads.each do |(parent, cname), abspath| + autoloads.each do |abspath, (parent, cname)| if parent.autoload?(cname) unload_autoload(parent, cname) else @@ -234,7 +228,7 @@ module Zeitwerk next if honour_exclusions && excluded_from_eager_load?(abspath) if ruby?(abspath) - if cref = autoloads.cref_for(abspath) + if cref = autoloads[abspath] cget(*cref) end elsif dir?(abspath) && !root_dirs.key?(abspath) @@ -376,7 +370,7 @@ module Zeitwerk # @sig (Module, Symbol, String) -> void def autoload_subdir(parent, cname, subdir) - if autoload_path = autoloads.abspath_for(parent, cname) + if autoload_path = autoload_path_set_by_me_for?(parent, cname) cpath = cpath(parent, cname) register_explicit_namespace(cpath) if ruby?(autoload_path) # We do not need to issue another autoload, the existing one is enough @@ -432,7 +426,7 @@ module Zeitwerk # @sig (Module, Symbol, String) -> void def set_autoload(parent, cname, abspath) - autoloads.define(parent, cname, abspath) + parent.autoload(cname, abspath) if logger if ruby?(abspath) @@ -442,6 +436,7 @@ module Zeitwerk end end + autoloads[abspath] = [parent, cname] Registry.register_autoload(self, abspath) # See why in the documentation of Zeitwerk::Registry.inceptions. @@ -450,6 +445,15 @@ module Zeitwerk end end + # @sig (Module, Symbol) -> String? + def autoload_path_set_by_me_for?(parent, cname) + if autoload_path = strict_autoload_path(parent, cname) + autoload_path if autoloads.key?(autoload_path) + else + Registry.inception?(cpath(parent, cname)) + end + end + # @sig (String) -> void def register_explicit_namespace(cpath) ExplicitNamespace.register(cpath, self) diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/callbacks.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/callbacks.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/callbacks.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/callbacks.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/config.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/config.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/config.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/config.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/helpers.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/helpers.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/loader/helpers.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/loader/helpers.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/real_mod_name.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/real_mod_name.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/real_mod_name.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/real_mod_name.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/registry.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/registry.rb similarity index 100% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/registry.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/registry.rb diff --git a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/version.rb b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/version.rb similarity index 71% rename from Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/version.rb rename to Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/version.rb index daff0b4d73..6a40d9dad3 100644 --- a/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.0/lib/zeitwerk/version.rb +++ b/Library/Homebrew/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.5.1/lib/zeitwerk/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Zeitwerk - VERSION = "2.5.0" + VERSION = "2.5.1" end