actionmailer 7.1.3.4 → 7.2.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of actionmailer might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -169
- data/lib/action_mailer/base.rb +5 -6
- data/lib/action_mailer/delivery_methods.rb +1 -2
- data/lib/action_mailer/gem_version.rb +3 -3
- data/lib/action_mailer/parameterized.rb +5 -7
- data/lib/action_mailer/preview.rb +0 -24
- data/lib/action_mailer/test_helper.rb +0 -20
- data/lib/action_mailer.rb +1 -1
- metadata +17 -65
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 33b08224cd80a8da81e643112d68aab4cf942837315aaec1b64a6d93d6dda8f9
|
4
|
+
data.tar.gz: 337bc34d7159fdd158ead152ccfe448f4e4e4b369a19b9170395eee0045b2a9d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cbb0510820e521d939a83728f49870c1f02992f380d2ecd9e2001aef84a4035c95fe587d320ac42505a95fa2e8c33c25487950e187a3272f97496d36e991112c
|
7
|
+
data.tar.gz: 01465edf206bce82eed44490e4ebb800aae748c20ffcfcdf4d4e298854eb4f4a60235a0e5ae4446f11d26d3390ba2eefdcfc50751de92d364fe308010dfd2d50
|
data/CHANGELOG.md
CHANGED
@@ -1,178 +1,16 @@
|
|
1
|
-
## Rails 7.
|
1
|
+
## Rails 7.2.0.beta2 (June 04, 2024) ##
|
2
2
|
|
3
3
|
* No changes.
|
4
4
|
|
5
5
|
|
6
|
-
## Rails 7.
|
6
|
+
## Rails 7.2.0.beta1 (May 29, 2024) ##
|
7
7
|
|
8
|
-
*
|
9
|
-
|
10
|
-
|
11
|
-
## Rails 7.1.3.2 (February 21, 2024) ##
|
12
|
-
|
13
|
-
* No changes.
|
14
|
-
|
15
|
-
|
16
|
-
## Rails 7.1.3.1 (February 21, 2024) ##
|
17
|
-
|
18
|
-
* No changes.
|
19
|
-
|
20
|
-
|
21
|
-
## Rails 7.1.3 (January 16, 2024) ##
|
22
|
-
|
23
|
-
* No changes.
|
24
|
-
|
25
|
-
|
26
|
-
## Rails 7.1.2 (November 10, 2023) ##
|
27
|
-
|
28
|
-
* No changes.
|
29
|
-
|
30
|
-
|
31
|
-
## Rails 7.1.1 (October 11, 2023) ##
|
32
|
-
|
33
|
-
* No changes.
|
34
|
-
|
35
|
-
|
36
|
-
## Rails 7.1.0 (October 05, 2023) ##
|
37
|
-
|
38
|
-
* No changes.
|
39
|
-
|
40
|
-
|
41
|
-
## Rails 7.1.0.rc2 (October 01, 2023) ##
|
42
|
-
|
43
|
-
* No changes.
|
44
|
-
|
45
|
-
|
46
|
-
## Rails 7.1.0.rc1 (September 27, 2023) ##
|
47
|
-
|
48
|
-
* Introduce `ActionMailer::FormBuilder`
|
49
|
-
|
50
|
-
Use the `default_form_builder` method in mailers to set the default form builder
|
51
|
-
for templates rendered by that mailer. Matches the behaviour in Action Controller.
|
52
|
-
|
53
|
-
*Alex Ghiculescu*
|
54
|
-
|
55
|
-
|
56
|
-
## Rails 7.1.0.beta1 (September 13, 2023) ##
|
57
|
-
|
58
|
-
* Mailers are listed in alphabetical order on the mailer preview page now.
|
59
|
-
|
60
|
-
*Martin Spickermann*
|
61
|
-
|
62
|
-
* Deprecate passing params to `assert_enqueued_email_with` via the `:args`
|
63
|
-
kwarg. `assert_enqueued_email_with` now supports a `:params` kwarg, so use
|
64
|
-
that to pass params:
|
65
|
-
|
66
|
-
```ruby
|
67
|
-
# BEFORE
|
68
|
-
assert_enqueued_email_with MyMailer, :my_method, args: { my_param: "value" }
|
69
|
-
|
70
|
-
# AFTER
|
71
|
-
assert_enqueued_email_with MyMailer, :my_method, params: { my_param: "value" }
|
72
|
-
```
|
73
|
-
|
74
|
-
To specify named mailer args as a Hash, wrap the Hash in an array:
|
75
|
-
|
76
|
-
```ruby
|
77
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [{ my_arg: "value" }]
|
78
|
-
# OR
|
79
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [my_arg: "value"]
|
80
|
-
```
|
81
|
-
|
82
|
-
*Jonathan Hefner*
|
83
|
-
|
84
|
-
* Accept procs for args and params in `assert_enqueued_email_with`
|
85
|
-
|
86
|
-
```ruby
|
87
|
-
assert_enqueued_email_with DeliveryJob, params: -> p { p[:token] =~ /\w+/ } do
|
88
|
-
UserMailer.with(token: user.generate_token).email_verification.deliver_later
|
89
|
-
end
|
90
|
-
```
|
91
|
-
|
92
|
-
*Max Chernyak*
|
93
|
-
|
94
|
-
* Added `*_deliver` callbacks to `ActionMailer::Base` that wrap mail message delivery.
|
95
|
-
|
96
|
-
Example:
|
97
|
-
|
98
|
-
```ruby
|
99
|
-
class EventsMailer < ApplicationMailer
|
100
|
-
after_deliver do
|
101
|
-
User.find_by(email: message.to.first).update(email_provider_id: message.message_id, emailed_at: Time.current)
|
102
|
-
end
|
103
|
-
end
|
104
|
-
```
|
105
|
-
|
106
|
-
*Ben Sheldon*
|
107
|
-
|
108
|
-
* Added `deliver_enqueued_emails` to `ActionMailer::TestHelper`. This method
|
109
|
-
delivers all enqueued email jobs.
|
110
|
-
|
111
|
-
Example:
|
112
|
-
|
113
|
-
```ruby
|
114
|
-
def test_deliver_enqueued_emails
|
115
|
-
deliver_enqueued_emails do
|
116
|
-
ContactMailer.welcome.deliver_later
|
117
|
-
end
|
118
|
-
assert_emails 1
|
119
|
-
end
|
120
|
-
```
|
121
|
-
|
122
|
-
*Andrew Novoselac*
|
123
|
-
|
124
|
-
* The `deliver_later_queue_name` used by the default mailer job can now be
|
125
|
-
configured on a per-mailer basis. Previously this was only configurable
|
126
|
-
for all mailers via `ActionMailer::Base`.
|
127
|
-
|
128
|
-
Example:
|
129
|
-
|
130
|
-
```ruby
|
131
|
-
class EventsMailer < ApplicationMailer
|
132
|
-
self.deliver_later_queue_name = :throttled_mailer
|
133
|
-
end
|
134
|
-
```
|
135
|
-
|
136
|
-
*Jeffrey Hardy*
|
137
|
-
|
138
|
-
* Email previews now include an expandable section to show all headers.
|
139
|
-
|
140
|
-
Headers like `Message-ID` for threading or email service provider specific
|
141
|
-
features like analytics tags or account metadata can now be viewed directly
|
142
|
-
in the mailer preview.
|
143
|
-
|
144
|
-
*Matt Swanson*
|
145
|
-
|
146
|
-
* Default `ActionMailer::Parameterized#params` to an empty `Hash`
|
147
|
-
|
148
|
-
*Sean Doyle*
|
149
|
-
|
150
|
-
* Introduce the `capture_emails` test helper.
|
151
|
-
|
152
|
-
Returns all emails that are sent in a block.
|
153
|
-
|
154
|
-
```ruby
|
155
|
-
def test_emails
|
156
|
-
emails = capture_emails do
|
157
|
-
ContactMailer.welcome.deliver_now
|
158
|
-
ContactMailer.welcome.deliver_later
|
159
|
-
end
|
160
|
-
assert_email "Hi there", emails.first.subject
|
161
|
-
end
|
162
|
-
```
|
163
|
-
|
164
|
-
*Alex Ghiculescu*
|
165
|
-
|
166
|
-
* Added ability to download `.eml` file for the email preview.
|
167
|
-
|
168
|
-
*Igor Kasyanchuk*
|
8
|
+
* Remove deprecated params via `:args` for `assert_enqueued_email_with`.
|
169
9
|
|
170
|
-
*
|
10
|
+
*Rafael Mendonça França*
|
171
11
|
|
172
|
-
|
173
|
-
`config.action_mailer.preview_paths`. Appending paths to this configuration option
|
174
|
-
will cause those paths to be used in the search for mailer previews.
|
12
|
+
* Remove deprecated `config.action_mailer.preview_path`.
|
175
13
|
|
176
|
-
*
|
14
|
+
*Rafael Mendonça França*
|
177
15
|
|
178
|
-
Please check [7-
|
16
|
+
Please check [7-1-stable](https://github.com/rails/rails/blob/7-1-stable/actionmailer/CHANGELOG.md) for previous changes.
|
data/lib/action_mailer/base.rb
CHANGED
@@ -625,17 +625,16 @@ module ActionMailer
|
|
625
625
|
payload[:perform_deliveries] = mail.perform_deliveries
|
626
626
|
end
|
627
627
|
|
628
|
-
def method_missing(method_name,
|
629
|
-
if action_methods.include?(method_name.
|
630
|
-
MessageDelivery.new(self, method_name,
|
628
|
+
def method_missing(method_name, ...)
|
629
|
+
if action_methods.include?(method_name.name)
|
630
|
+
MessageDelivery.new(self, method_name, ...)
|
631
631
|
else
|
632
632
|
super
|
633
633
|
end
|
634
634
|
end
|
635
|
-
ruby2_keywords(:method_missing)
|
636
635
|
|
637
636
|
def respond_to_missing?(method, include_all = false)
|
638
|
-
action_methods.include?(method.
|
637
|
+
action_methods.include?(method.name) || super
|
639
638
|
end
|
640
639
|
end
|
641
640
|
|
@@ -669,7 +668,7 @@ module ActionMailer
|
|
669
668
|
true
|
670
669
|
end
|
671
670
|
|
672
|
-
def method_missing(
|
671
|
+
def method_missing(...)
|
673
672
|
nil
|
674
673
|
end
|
675
674
|
end
|
@@ -32,8 +32,7 @@ module ActionMailer
|
|
32
32
|
|
33
33
|
add_delivery_method :sendmail, Mail::Sendmail,
|
34
34
|
location: "/usr/sbin/sendmail",
|
35
|
-
|
36
|
-
arguments: Gem::Version.new(Mail::VERSION.version) >= Gem::Version.new("2.8.0") ? %w[-i] : "-i"
|
35
|
+
arguments: %w[-i]
|
37
36
|
|
38
37
|
add_delivery_method :test, Mail::TestMailer
|
39
38
|
end
|
@@ -114,14 +114,13 @@ module ActionMailer
|
|
114
114
|
end
|
115
115
|
|
116
116
|
private
|
117
|
-
def method_missing(method_name,
|
118
|
-
if @mailer.action_methods.include?(method_name.
|
119
|
-
ActionMailer::Parameterized::MessageDelivery.new(@mailer, method_name, @params,
|
117
|
+
def method_missing(method_name, ...)
|
118
|
+
if @mailer.action_methods.include?(method_name.name)
|
119
|
+
ActionMailer::Parameterized::MessageDelivery.new(@mailer, method_name, @params, ...)
|
120
120
|
else
|
121
121
|
super
|
122
122
|
end
|
123
123
|
end
|
124
|
-
ruby2_keywords(:method_missing)
|
125
124
|
|
126
125
|
def respond_to_missing?(method, include_all = false)
|
127
126
|
@mailer.respond_to?(method, include_all)
|
@@ -129,11 +128,10 @@ module ActionMailer
|
|
129
128
|
end
|
130
129
|
|
131
130
|
class MessageDelivery < ActionMailer::MessageDelivery # :nodoc:
|
132
|
-
def initialize(mailer_class, action, params,
|
133
|
-
super(mailer_class, action,
|
131
|
+
def initialize(mailer_class, action, params, ...)
|
132
|
+
super(mailer_class, action, ...)
|
134
133
|
@params = params
|
135
134
|
end
|
136
|
-
ruby2_keywords(:initialize)
|
137
135
|
|
138
136
|
private
|
139
137
|
def processed_mailer
|
@@ -25,31 +25,7 @@ module ActionMailer
|
|
25
25
|
mattr_accessor :preview_interceptors, instance_writer: false, default: [ActionMailer::InlinePreviewInterceptor]
|
26
26
|
end
|
27
27
|
|
28
|
-
def preview_path
|
29
|
-
ActionMailer.deprecator.warn(<<-MSG.squish)
|
30
|
-
Using preview_path option is deprecated and will be removed in Rails 7.2.
|
31
|
-
Please use preview_paths instead.
|
32
|
-
MSG
|
33
|
-
self.class.preview_paths.first
|
34
|
-
end
|
35
|
-
|
36
28
|
module ClassMethods
|
37
|
-
def preview_path=(value)
|
38
|
-
ActionMailer.deprecator.warn(<<-MSG.squish)
|
39
|
-
Using preview_path= option is deprecated and will be removed in Rails 7.2.
|
40
|
-
Please use preview_paths= instead.
|
41
|
-
MSG
|
42
|
-
self.preview_paths << value
|
43
|
-
end
|
44
|
-
|
45
|
-
def preview_path
|
46
|
-
ActionMailer.deprecator.warn(<<-MSG.squish)
|
47
|
-
Using preview_path option is deprecated and will be removed in Rails 7.2.
|
48
|
-
Please use preview_paths instead.
|
49
|
-
MSG
|
50
|
-
self.preview_paths.first
|
51
|
-
end
|
52
|
-
|
53
29
|
# Register one or more Interceptors which will be called before mail is previewed.
|
54
30
|
def register_preview_interceptors(*interceptors)
|
55
31
|
interceptors.flatten.compact.each { |interceptor| register_preview_interceptor(interceptor) }
|
@@ -160,26 +160,6 @@ module ActionMailer
|
|
160
160
|
mailer = mailer.instance_variable_get(:@mailer)
|
161
161
|
end
|
162
162
|
|
163
|
-
if args.is_a?(Hash)
|
164
|
-
ActionMailer.deprecator.warn <<~MSG
|
165
|
-
Passing a Hash to the assert_enqueued_email_with :args kwarg causes the
|
166
|
-
Hash to be treated as params. This behavior is deprecated and will be
|
167
|
-
removed in Rails 7.2.
|
168
|
-
|
169
|
-
To specify a params Hash, use the :params kwarg:
|
170
|
-
|
171
|
-
assert_enqueued_email_with MyMailer, :my_method, params: { my_param: "value" }
|
172
|
-
|
173
|
-
Or, to specify named mailer args as a Hash, wrap the Hash in an array:
|
174
|
-
|
175
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [{ my_arg: "value" }]
|
176
|
-
# OR
|
177
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [my_arg: "value"]
|
178
|
-
MSG
|
179
|
-
|
180
|
-
params, args = args, nil
|
181
|
-
end
|
182
|
-
|
183
163
|
args = Array(args) unless args.is_a?(Proc)
|
184
164
|
queue ||= mailer.deliver_later_queue_name || ActiveJob::Base.default_queue_name
|
185
165
|
|
data/lib/action_mailer.rb
CHANGED
@@ -35,7 +35,7 @@ require "active_support/core_ext/module/attr_internal"
|
|
35
35
|
require "active_support/core_ext/string/inflections"
|
36
36
|
require "active_support/lazy_load_hooks"
|
37
37
|
|
38
|
-
# :include:
|
38
|
+
# :include: ../README.rdoc
|
39
39
|
module ActionMailer
|
40
40
|
extend ::ActiveSupport::Autoload
|
41
41
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionmailer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.
|
4
|
+
version: 7.2.0.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
@@ -16,118 +16,70 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 7.
|
19
|
+
version: 7.2.0.beta2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 7.
|
26
|
+
version: 7.2.0.beta2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: actionpack
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 7.
|
33
|
+
version: 7.2.0.beta2
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 7.
|
40
|
+
version: 7.2.0.beta2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: actionview
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 7.
|
47
|
+
version: 7.2.0.beta2
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 7.
|
54
|
+
version: 7.2.0.beta2
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activejob
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 7.
|
61
|
+
version: 7.2.0.beta2
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 7.
|
68
|
+
version: 7.2.0.beta2
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: mail
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '2.5'
|
76
|
-
- - ">="
|
77
|
-
- !ruby/object:Gem::Version
|
78
|
-
version: 2.5.4
|
79
|
-
type: :runtime
|
80
|
-
prerelease: false
|
81
|
-
version_requirements: !ruby/object:Gem::Requirement
|
82
|
-
requirements:
|
83
|
-
- - "~>"
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '2.5'
|
86
|
-
- - ">="
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: 2.5.4
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: net-imap
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - ">="
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '0'
|
96
|
-
type: :runtime
|
97
|
-
prerelease: false
|
98
|
-
version_requirements: !ruby/object:Gem::Requirement
|
99
|
-
requirements:
|
100
|
-
- - ">="
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: '0'
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: net-pop
|
105
71
|
requirement: !ruby/object:Gem::Requirement
|
106
72
|
requirements:
|
107
73
|
- - ">="
|
108
74
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
75
|
+
version: 2.8.0
|
110
76
|
type: :runtime
|
111
77
|
prerelease: false
|
112
78
|
version_requirements: !ruby/object:Gem::Requirement
|
113
79
|
requirements:
|
114
80
|
- - ">="
|
115
81
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: net-smtp
|
119
|
-
requirement: !ruby/object:Gem::Requirement
|
120
|
-
requirements:
|
121
|
-
- - ">="
|
122
|
-
- !ruby/object:Gem::Version
|
123
|
-
version: '0'
|
124
|
-
type: :runtime
|
125
|
-
prerelease: false
|
126
|
-
version_requirements: !ruby/object:Gem::Requirement
|
127
|
-
requirements:
|
128
|
-
- - ">="
|
129
|
-
- !ruby/object:Gem::Version
|
130
|
-
version: '0'
|
82
|
+
version: 2.8.0
|
131
83
|
- !ruby/object:Gem::Dependency
|
132
84
|
name: rails-dom-testing
|
133
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -182,10 +134,10 @@ licenses:
|
|
182
134
|
- MIT
|
183
135
|
metadata:
|
184
136
|
bug_tracker_uri: https://github.com/rails/rails/issues
|
185
|
-
changelog_uri: https://github.com/rails/rails/blob/v7.
|
186
|
-
documentation_uri: https://api.rubyonrails.org/v7.
|
137
|
+
changelog_uri: https://github.com/rails/rails/blob/v7.2.0.beta2/actionmailer/CHANGELOG.md
|
138
|
+
documentation_uri: https://api.rubyonrails.org/v7.2.0.beta2/
|
187
139
|
mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
|
188
|
-
source_code_uri: https://github.com/rails/rails/tree/v7.
|
140
|
+
source_code_uri: https://github.com/rails/rails/tree/v7.2.0.beta2/actionmailer
|
189
141
|
rubygems_mfa_required: 'true'
|
190
142
|
post_install_message:
|
191
143
|
rdoc_options: []
|
@@ -195,12 +147,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
195
147
|
requirements:
|
196
148
|
- - ">="
|
197
149
|
- !ruby/object:Gem::Version
|
198
|
-
version:
|
150
|
+
version: 3.1.0
|
199
151
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
200
152
|
requirements:
|
201
|
-
- - "
|
153
|
+
- - ">"
|
202
154
|
- !ruby/object:Gem::Version
|
203
|
-
version:
|
155
|
+
version: 1.3.1
|
204
156
|
requirements:
|
205
157
|
- none
|
206
158
|
rubygems_version: 3.3.27
|