Skip to content

Commit

Permalink
Fix CI for Mail 2.8+
Browse files Browse the repository at this point in the history
CI is broken since mikel/mail#1120, which is in the new `mail` release.

Example: https://buildkite.com/rails/rails/builds/91421#0184e03b-58dc-43f9-aa40-55949848dc67

This commit fixes it. The `adddress_list` method was renamed.
  • Loading branch information
ghiculescu committed Dec 5, 2022
1 parent 87bfded commit 9e443a8
Showing 1 changed file with 15 additions and 4 deletions.
19 changes: 15 additions & 4 deletions actionmailbox/lib/action_mailbox/mail_ext/addresses.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,23 @@
module Mail
class Message
def from_address
header[:from]&.address_list&.addresses&.first
address_list(header[:from])&.addresses&.first
end

def recipients_addresses
to_addresses + cc_addresses + bcc_addresses + x_original_to_addresses + x_forwarded_to_addresses
end

def to_addresses
Array(header[:to]&.address_list&.addresses)
Array(address_list(header[:to])&.addresses)
end

def cc_addresses
Array(header[:cc]&.address_list&.addresses)
Array(address_list(header[:cc])&.addresses)
end

def bcc_addresses
Array(header[:bcc]&.address_list&.addresses)
Array(address_list(header[:bcc])&.addresses)
end

def x_original_to_addresses
Expand All @@ -29,5 +29,16 @@ def x_original_to_addresses
def x_forwarded_to_addresses
Array(header[:x_forwarded_to]).collect { |header| Mail::Address.new header.to_s }
end

private
def address_list(obj)
if obj&.respond_to?(:element)
# Mail 2.8+
obj.element
else
# Mail <= 2.7.x
obj&.address_list
end
end
end
end

0 comments on commit 9e443a8

Please sign in to comment.