diff --git a/Library/Homebrew/software_spec.rb b/Library/Homebrew/software_spec.rb index 246a7f699e..9ff5d55aac 100644 --- a/Library/Homebrew/software_spec.rb +++ b/Library/Homebrew/software_spec.rb @@ -430,7 +430,6 @@ class BottleSpecification def initialize @rebuild = 0 @prefix = Homebrew::DEFAULT_PREFIX - @all_tags_cellar = Homebrew::DEFAULT_CELLAR @repository = Homebrew::DEFAULT_REPOSITORY @collector = Utils::Bottles::Collector.new @root_url_specs = {} @@ -472,7 +471,7 @@ class BottleSpecification # ) # end - return collector.dig(Utils::Bottles.tag, :cellar) || @all_tags_cellar if val.nil? + return collector.dig(Utils::Bottles.tag, :cellar) || @all_tags_cellar || Homebrew::DEFAULT_CELLAR if val.nil? @all_tags_cellar = val end @@ -534,6 +533,14 @@ class BottleSpecification end cellar ||= all_tags_cellar + cellar ||= if tag.to_s.end_with?("_linux") + Homebrew::DEFAULT_LINUX_CELLAR + elsif tag.to_s.start_with?("arm64_") + Homebrew::DEFAULT_MACOS_ARM_CELLAR + else + Homebrew::DEFAULT_MACOS_CELLAR + end + collector[tag] = { checksum: Checksum.new(digest), cellar: cellar } end diff --git a/Library/Homebrew/test/dev-cmd/bottle_spec.rb b/Library/Homebrew/test/dev-cmd/bottle_spec.rb index 39f440180f..190bc63cc9 100644 --- a/Library/Homebrew/test/dev-cmd/bottle_spec.rb +++ b/Library/Homebrew/test/dev-cmd/bottle_spec.rb @@ -586,7 +586,7 @@ describe "brew bottle" do new_catalina_sha256 = "ec6d7f08412468f28dee2be17ad8cd8b883b16b34329efcecce019b8c9736428" new_hash = { "tags" => { "catalina" => { "sha256" => new_catalina_sha256 } } } expected_checksum_hash = { mojave: "7571772bf7a0c9fe193e70e521318b53993bee6f351976c9b6e01e00d13d6c3f" } - expected_checksum_hash[:cellar] = Homebrew::DEFAULT_CELLAR + expected_checksum_hash[:cellar] = Homebrew::DEFAULT_MACOS_CELLAR expect(homebrew.merge_bottle_spec([:sha256], old_spec, new_hash)).to eq [ ["sha256 catalina: old: #{old_catalina_sha256.inspect}, new: #{new_catalina_sha256.inspect}"], [expected_checksum_hash],