lib/code_ownership/private.rb in code_ownership-1.32.3 vs lib/code_ownership/private.rb in code_ownership-1.32.4

- old
+ new

@@ -3,11 +3,13 @@ # typed: strict require 'code_ownership/private/extension_loader' require 'code_ownership/private/team_plugins/ownership' require 'code_ownership/private/team_plugins/github' +require 'code_ownership/private/codeowners_file' require 'code_ownership/private/parse_js_packages' +require 'code_ownership/private/glob_cache' require 'code_ownership/private/validations/files_have_owners' require 'code_ownership/private/validations/github_codeowners_up_to_date' require 'code_ownership/private/validations/files_have_unique_owners' require 'code_ownership/private/ownership_mappers/file_annotations' require 'code_ownership/private/ownership_mappers/team_globs' @@ -35,11 +37,11 @@ sig { void } def self.bust_caches! @configuration = nil @tracked_files = nil - @files_by_mapper = nil + @glob_cache = nil end sig { params(files: T::Array[String], autocorrect: T::Boolean, stage_changes: T::Boolean).void } def self.validate!(files:, autocorrect: true, stage_changes: true) errors = Validator.all.flat_map do |validator| @@ -85,24 +87,13 @@ else found_team end end - sig { params(files: T::Array[String]).returns(T::Hash[String, T::Array[String]]) } - def self.files_by_mapper(files) - @files_by_mapper ||= T.let(@files_by_mapper, T.nilable(T::Hash[String, T::Array[String]])) - @files_by_mapper ||= begin - files_by_mapper = files.map { |file| [file, []] }.to_h - - Mapper.all.each do |mapper| - mapper.map_files_to_owners(files).each do |file, _team| - files_by_mapper[file] ||= [] - T.must(files_by_mapper[file]) << mapper.description - end - end - - files_by_mapper - end + sig { returns(GlobCache) } + def self.glob_cache + @glob_cache ||= T.let(@glob_cache, T.nilable(GlobCache)) + @glob_cache ||= Mapper.to_glob_cache end end private_constant :Private end