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