From 0675ddc87604f0d581a3dfa7285fd273f58fe948 Mon Sep 17 00:00:00 2001 From: Eric Knibbe Date: Wed, 6 Aug 2025 12:07:10 -0400 Subject: [PATCH] download_queue: display hash of rejected download --- Library/Homebrew/download_queue.rb | 2 ++ Library/Homebrew/exceptions.rb | 2 +- Library/Homebrew/retryable_download.rb | 2 +- Library/Homebrew/test/exceptions_spec.rb | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/download_queue.rb b/Library/Homebrew/download_queue.rb index 2a6bc147ee..b20381cc64 100644 --- a/Library/Homebrew/download_queue.rb +++ b/Library/Homebrew/download_queue.rb @@ -82,7 +82,9 @@ module Homebrew if future.rejected? if exception.is_a?(ChecksumMismatchError) + actual = Digest::SHA256.file(downloadable.cached_download).hexdigest opoo "#{downloadable.download_queue_type} reports different checksum: #{exception.expected}" + puts (" " * downloadable.download_queue_type.size) + " SHA-256 checksum of downloaded file: #{actual}" Homebrew.failed = true if downloadable.is_a?(Resource::Patch) next 2 else diff --git a/Library/Homebrew/exceptions.rb b/Library/Homebrew/exceptions.rb index c678cf70dd..969e941508 100644 --- a/Library/Homebrew/exceptions.rb +++ b/Library/Homebrew/exceptions.rb @@ -735,7 +735,7 @@ class ChecksumMismatchError < RuntimeError @expected = expected super <<~EOS - SHA256 mismatch + SHA-256 mismatch Expected: #{Formatter.success(expected.to_s)} Actual: #{Formatter.error(actual.to_s)} File: #{path} diff --git a/Library/Homebrew/retryable_download.rb b/Library/Homebrew/retryable_download.rb index 3eb131a2b0..06203579f0 100644 --- a/Library/Homebrew/retryable_download.rb +++ b/Library/Homebrew/retryable_download.rb @@ -70,7 +70,7 @@ module Homebrew unless quiet puts "Downloaded to: #{download}" unless already_downloaded - puts "SHA256: #{download.sha256}" + puts "SHA-256: #{download.sha256}" end json_download = downloadable.is_a?(API::JSONDownload) diff --git a/Library/Homebrew/test/exceptions_spec.rb b/Library/Homebrew/test/exceptions_spec.rb index 58bdd2fce8..8af7cd4eba 100644 --- a/Library/Homebrew/test/exceptions_spec.rb +++ b/Library/Homebrew/test/exceptions_spec.rb @@ -217,7 +217,7 @@ RSpec.describe "Exception" do let(:expected_checksum) { instance_double(Checksum, to_s: "deadbeef") } let(:actual_checksum) { instance_double(Checksum, to_s: "deadcafe") } - it(:to_s) { expect(error.to_s).to match(/SHA256 mismatch/) } + it(:to_s) { expect(error.to_s).to match(/SHA-256 mismatch/) } end describe ResourceMissingError do