actionmailer 7.1.0 → 7.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -122
- data/lib/action_mailer/base.rb +18 -19
- data/lib/action_mailer/delivery_methods.rb +1 -2
- data/lib/action_mailer/gem_version.rb +2 -2
- data/lib/action_mailer/mail_helper.rb +11 -3
- data/lib/action_mailer/parameterized.rb +5 -7
- data/lib/action_mailer/preview.rb +0 -24
- data/lib/action_mailer/railtie.rb +0 -10
- data/lib/action_mailer/test_helper.rb +0 -20
- data/lib/action_mailer.rb +1 -1
- data/lib/rails/generators/mailer/templates/mailer.rb.tt +3 -1
- metadata +20 -68
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 07b7a9aec1986d24d75eb514f3e717e949f2fc27929a1b8e6d32528b11aa39e5
|
4
|
+
data.tar.gz: 70a624c37e3d140754177912693c5399aa19ece3542f1ace5b51c3a76defe9d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ffa758070ad98f04f49308a31b8e53c104ca906b31f613d04ffb62f75c04c7b14212bc0184709856dedc41f9ccb7dd4f1683ce42f89b14c55401dbdaee370239
|
7
|
+
data.tar.gz: f367f213daa44ac80ecf02085c3d829ac807f425f48bd2e5f935d638ae83372cade6c68522a0d9cb2f2fa3b2149b819b036c0aa4ac307d479877121cd951d31d
|
data/CHANGELOG.md
CHANGED
@@ -1,143 +1,37 @@
|
|
1
|
-
## Rails 7.
|
1
|
+
## Rails 7.2.2 (October 30, 2024) ##
|
2
2
|
|
3
3
|
* No changes.
|
4
4
|
|
5
5
|
|
6
|
-
## Rails 7.1.
|
6
|
+
## Rails 7.2.1.2 (October 23, 2024) ##
|
7
7
|
|
8
|
-
*
|
9
|
-
|
10
|
-
|
11
|
-
## Rails 7.1.0.rc1 (September 27, 2023) ##
|
12
|
-
|
13
|
-
* Introduce `ActionMailer::FormBuilder`
|
14
|
-
|
15
|
-
Use the `default_form_builder` method in mailers to set the default form builder
|
16
|
-
for templates rendered by that mailer. Matches the behaviour in Action Controller.
|
17
|
-
|
18
|
-
*Alex Ghiculescu*
|
19
|
-
|
20
|
-
|
21
|
-
## Rails 7.1.0.beta1 (September 13, 2023) ##
|
22
|
-
|
23
|
-
* Mailers are listed in alphabetical order on the mailer preview page now.
|
24
|
-
|
25
|
-
*Martin Spickermann*
|
26
|
-
|
27
|
-
* Deprecate passing params to `assert_enqueued_email_with` via the `:args`
|
28
|
-
kwarg. `assert_enqueued_email_with` now supports a `:params` kwarg, so use
|
29
|
-
that to pass params:
|
30
|
-
|
31
|
-
```ruby
|
32
|
-
# BEFORE
|
33
|
-
assert_enqueued_email_with MyMailer, :my_method, args: { my_param: "value" }
|
34
|
-
|
35
|
-
# AFTER
|
36
|
-
assert_enqueued_email_with MyMailer, :my_method, params: { my_param: "value" }
|
37
|
-
```
|
38
|
-
|
39
|
-
To specify named mailer args as a Hash, wrap the Hash in an array:
|
40
|
-
|
41
|
-
```ruby
|
42
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [{ my_arg: "value" }]
|
43
|
-
# OR
|
44
|
-
assert_enqueued_email_with MyMailer, :my_method, args: [my_arg: "value"]
|
45
|
-
```
|
46
|
-
|
47
|
-
*Jonathan Hefner*
|
8
|
+
* Fix NoMethodError in `block_format` helper
|
48
9
|
|
49
|
-
*
|
10
|
+
*Michael Leimstaedtner*
|
50
11
|
|
51
|
-
```ruby
|
52
|
-
assert_enqueued_email_with DeliveryJob, params: -> p { p[:token] =~ /\w+/ } do
|
53
|
-
UserMailer.with(token: user.generate_token).email_verification.deliver_later
|
54
|
-
end
|
55
|
-
```
|
56
12
|
|
57
|
-
|
13
|
+
## Rails 7.2.1.1 (October 15, 2024) ##
|
58
14
|
|
59
|
-
*
|
15
|
+
* Avoid regex backtracking in `block_format` helper
|
60
16
|
|
61
|
-
|
17
|
+
[CVE-2024-47889]
|
62
18
|
|
63
|
-
|
64
|
-
class EventsMailer < ApplicationMailer
|
65
|
-
after_deliver do
|
66
|
-
User.find_by(email: message.to.first).update(email_provider_id: message.message_id, emailed_at: Time.current)
|
67
|
-
end
|
68
|
-
end
|
69
|
-
```
|
19
|
+
*John Hawthorn*
|
70
20
|
|
71
|
-
*Ben Sheldon*
|
72
21
|
|
73
|
-
|
74
|
-
delivers all enqueued email jobs.
|
22
|
+
## Rails 7.2.1 (August 22, 2024) ##
|
75
23
|
|
76
|
-
|
77
|
-
|
78
|
-
```ruby
|
79
|
-
def test_deliver_enqueued_emails
|
80
|
-
deliver_enqueued_emails do
|
81
|
-
ContactMailer.welcome.deliver_later
|
82
|
-
end
|
83
|
-
assert_emails 1
|
84
|
-
end
|
85
|
-
```
|
86
|
-
|
87
|
-
*Andrew Novoselac*
|
88
|
-
|
89
|
-
* The `deliver_later_queue_name` used by the default mailer job can now be
|
90
|
-
configured on a per-mailer basis. Previously this was only configurable
|
91
|
-
for all mailers via `ActionMailer::Base`.
|
92
|
-
|
93
|
-
Example:
|
94
|
-
|
95
|
-
```ruby
|
96
|
-
class EventsMailer < ApplicationMailer
|
97
|
-
self.deliver_later_queue_name = :throttled_mailer
|
98
|
-
end
|
99
|
-
```
|
100
|
-
|
101
|
-
*Jeffrey Hardy*
|
102
|
-
|
103
|
-
* Email previews now include an expandable section to show all headers.
|
104
|
-
|
105
|
-
Headers like `Message-ID` for threading or email service provider specific
|
106
|
-
features like analytics tags or account metadata can now be viewed directly
|
107
|
-
in the mailer preview.
|
108
|
-
|
109
|
-
*Matt Swanson*
|
110
|
-
|
111
|
-
* Default `ActionMailer::Parameterized#params` to an empty `Hash`
|
112
|
-
|
113
|
-
*Sean Doyle*
|
114
|
-
|
115
|
-
* Introduce the `capture_emails` test helper.
|
116
|
-
|
117
|
-
Returns all emails that are sent in a block.
|
118
|
-
|
119
|
-
```ruby
|
120
|
-
def test_emails
|
121
|
-
emails = capture_emails do
|
122
|
-
ContactMailer.welcome.deliver_now
|
123
|
-
ContactMailer.welcome.deliver_later
|
124
|
-
end
|
125
|
-
assert_email "Hi there", emails.first.subject
|
126
|
-
end
|
127
|
-
```
|
24
|
+
* No changes.
|
128
25
|
|
129
|
-
*Alex Ghiculescu*
|
130
26
|
|
131
|
-
|
27
|
+
## Rails 7.2.0 (August 09, 2024) ##
|
132
28
|
|
133
|
-
|
29
|
+
* Remove deprecated params via `:args` for `assert_enqueued_email_with`.
|
134
30
|
|
135
|
-
*
|
31
|
+
*Rafael Mendonça França*
|
136
32
|
|
137
|
-
|
138
|
-
`config.action_mailer.preview_paths`. Appending paths to this configuration option
|
139
|
-
will cause those paths to be used in the search for mailer previews.
|
33
|
+
* Remove deprecated `config.action_mailer.preview_path`.
|
140
34
|
|
141
|
-
*
|
35
|
+
*Rafael Mendonça França*
|
142
36
|
|
143
|
-
Please check [7-
|
37
|
+
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
@@ -14,7 +14,7 @@ module ActionMailer
|
|
14
14
|
#
|
15
15
|
# Action Mailer allows you to send email from your application using a mailer model and views.
|
16
16
|
#
|
17
|
-
#
|
17
|
+
# == Mailer Models
|
18
18
|
#
|
19
19
|
# To use Action Mailer, you need to create a mailer model.
|
20
20
|
#
|
@@ -86,7 +86,7 @@ module ActionMailer
|
|
86
86
|
# format.html { render "some_other_template" }
|
87
87
|
# end
|
88
88
|
#
|
89
|
-
#
|
89
|
+
# == Mailer views
|
90
90
|
#
|
91
91
|
# Like Action Controller, each mailer class has a corresponding view directory in which each
|
92
92
|
# method of the class looks for a template with its name.
|
@@ -114,7 +114,7 @@ module ActionMailer
|
|
114
114
|
# <%= truncate(@note.body, length: 25) %>
|
115
115
|
#
|
116
116
|
#
|
117
|
-
#
|
117
|
+
# == Generating URLs
|
118
118
|
#
|
119
119
|
# URLs can be generated in mailer views using <tt>url_for</tt> or named routes. Unlike controllers from
|
120
120
|
# Action Pack, the mailer instance doesn't have any context about the incoming request, so you'll need
|
@@ -142,7 +142,7 @@ module ActionMailer
|
|
142
142
|
#
|
143
143
|
# By default when <tt>config.force_ssl</tt> is +true+, URLs generated for hosts will use the HTTPS protocol.
|
144
144
|
#
|
145
|
-
#
|
145
|
+
# == Sending mail
|
146
146
|
#
|
147
147
|
# Once a mailer action and template are defined, you can deliver your message or defer its creation and
|
148
148
|
# delivery for later:
|
@@ -167,7 +167,7 @@ module ActionMailer
|
|
167
167
|
# You never instantiate your mailer class. Rather, you just call the method you defined on the class itself.
|
168
168
|
# All instance methods are expected to return a message object to be sent.
|
169
169
|
#
|
170
|
-
#
|
170
|
+
# == Multipart Emails
|
171
171
|
#
|
172
172
|
# Multipart messages can also be used implicitly because Action Mailer will automatically detect and use
|
173
173
|
# multipart templates, where each template is named after the name of the action, followed by the content
|
@@ -188,7 +188,7 @@ module ActionMailer
|
|
188
188
|
# This means that you'll have to manually add each part to the email and set the content type of the email
|
189
189
|
# to <tt>multipart/alternative</tt>.
|
190
190
|
#
|
191
|
-
#
|
191
|
+
# == Attachments
|
192
192
|
#
|
193
193
|
# Sending attachment in emails is easy:
|
194
194
|
#
|
@@ -228,7 +228,7 @@ module ActionMailer
|
|
228
228
|
# end
|
229
229
|
# end
|
230
230
|
#
|
231
|
-
#
|
231
|
+
# == Inline Attachments
|
232
232
|
#
|
233
233
|
# You can also specify that a file should be displayed inline with other HTML. This is useful
|
234
234
|
# if you want to display a corporate logo or a photo.
|
@@ -254,7 +254,7 @@ module ActionMailer
|
|
254
254
|
#
|
255
255
|
# <%= image_tag attachments['photo.png'].url, alt: 'Our Photo', class: 'photo' -%>
|
256
256
|
#
|
257
|
-
#
|
257
|
+
# == Observing and Intercepting Mails
|
258
258
|
#
|
259
259
|
# Action Mailer provides hooks into the Mail observer and interceptor methods. These allow you to
|
260
260
|
# register classes that are called during the mail delivery life cycle.
|
@@ -267,7 +267,7 @@ module ActionMailer
|
|
267
267
|
# the delivery agents. Your class should make any needed modifications directly to the passed
|
268
268
|
# in +Mail::Message+ instance.
|
269
269
|
#
|
270
|
-
#
|
270
|
+
# == Default \Hash
|
271
271
|
#
|
272
272
|
# Action Mailer provides some intelligent defaults for your emails, these are usually specified in a
|
273
273
|
# default method inside the class definition:
|
@@ -316,7 +316,7 @@ module ActionMailer
|
|
316
316
|
#
|
317
317
|
# config.action_mailer.default_options = { from: "no-reply@example.org" }
|
318
318
|
#
|
319
|
-
#
|
319
|
+
# == \Callbacks
|
320
320
|
#
|
321
321
|
# You can specify callbacks using <tt>before_action</tt> and <tt>after_action</tt> for configuring your messages,
|
322
322
|
# and using <tt>before_deliver</tt> and <tt>after_deliver</tt> for wrapping the delivery process.
|
@@ -350,7 +350,7 @@ module ActionMailer
|
|
350
350
|
# using <tt>before_action</tt> rather than <tt>after_action</tt> in your
|
351
351
|
# Action Mailer classes so that headers are parsed properly.
|
352
352
|
#
|
353
|
-
#
|
353
|
+
# == Rescuing Errors
|
354
354
|
#
|
355
355
|
# +rescue+ blocks inside of a mailer method cannot rescue errors that occur
|
356
356
|
# outside of rendering -- for example, record deserialization errors in a
|
@@ -373,7 +373,7 @@ module ActionMailer
|
|
373
373
|
# end
|
374
374
|
# end
|
375
375
|
#
|
376
|
-
#
|
376
|
+
# == Previewing emails
|
377
377
|
#
|
378
378
|
# You can preview your email templates visually by adding a mailer preview file to the
|
379
379
|
# <tt>ActionMailer::Base.preview_paths</tt>. Since most emails do something interesting
|
@@ -410,7 +410,7 @@ module ActionMailer
|
|
410
410
|
# and <tt>register_preview_interceptor</tt> if they should operate on both sending and
|
411
411
|
# previewing emails.
|
412
412
|
#
|
413
|
-
#
|
413
|
+
# == Configuration options
|
414
414
|
#
|
415
415
|
# These options are specified on the class level, like
|
416
416
|
# <tt>ActionMailer::Base.raise_delivery_errors = true</tt>
|
@@ -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
|
@@ -25,10 +25,18 @@ module ActionMailer
|
|
25
25
|
}.join("\n\n")
|
26
26
|
|
27
27
|
# Make list points stand on their own line
|
28
|
-
|
29
|
-
formatted.
|
28
|
+
output = +""
|
29
|
+
splits = formatted.split(/(\*+|\#+)/)
|
30
|
+
while line = splits.shift
|
31
|
+
if line.start_with?("*", "#") && splits.first&.start_with?(" ")
|
32
|
+
output.chomp!(" ") while output.end_with?(" ")
|
33
|
+
output << " #{line} #{splits.shift.strip}\n"
|
34
|
+
else
|
35
|
+
output << line
|
36
|
+
end
|
37
|
+
end
|
30
38
|
|
31
|
-
|
39
|
+
output
|
32
40
|
end
|
33
41
|
|
34
42
|
# Access the mailer instance.
|
@@ -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) }
|
@@ -71,16 +71,6 @@ module ActionMailer
|
|
71
71
|
initializer "action_mailer.set_autoload_paths", before: :set_autoload_paths do |app|
|
72
72
|
options = app.config.action_mailer
|
73
73
|
app.config.paths["test/mailers/previews"].concat(options.preview_paths)
|
74
|
-
|
75
|
-
# Preview paths configuration needs a pass.
|
76
|
-
#
|
77
|
-
# config.paths is cached as soon as it is accessed. Therefore, mutating
|
78
|
-
# paths["test/mailers/previews"] does not guarantee config.autoload_paths
|
79
|
-
# is going to include them.
|
80
|
-
#
|
81
|
-
# If config.paths was accessed before, config.autoload_paths is going to
|
82
|
-
# have whatever paths["test/mailers/previews"] had when cached.
|
83
|
-
app.config.autoload_paths.concat(options.preview_paths)
|
84
74
|
end
|
85
75
|
|
86
76
|
initializer "action_mailer.compile_config_methods" do
|
@@ -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
|
|
@@ -1,7 +1,9 @@
|
|
1
1
|
<% module_namespacing do -%>
|
2
2
|
class <%= class_name %>Mailer < ApplicationMailer
|
3
|
-
<% actions.
|
3
|
+
<% actions.each_with_index do |action, index| -%>
|
4
|
+
<% if index != 0 -%>
|
4
5
|
|
6
|
+
<% end -%>
|
5
7
|
# Subject can be set in your I18n file at config/locales/en.yml
|
6
8
|
# with the following lookup:
|
7
9
|
#
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionmailer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.
|
4
|
+
version: 7.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,118 +16,70 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 7.
|
19
|
+
version: 7.2.2
|
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.2
|
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.2
|
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.2
|
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.2
|
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.2
|
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.2
|
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.2
|
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
|
-
requirement: !ruby/object:Gem::Requirement
|
106
|
-
requirements:
|
107
|
-
- - ">="
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
110
|
-
type: :runtime
|
111
|
-
prerelease: false
|
112
|
-
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
requirements:
|
114
|
-
- - ">="
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
version: '0'
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: net-smtp
|
119
71
|
requirement: !ruby/object:Gem::Requirement
|
120
72
|
requirements:
|
121
73
|
- - ">="
|
122
74
|
- !ruby/object:Gem::Version
|
123
|
-
version:
|
75
|
+
version: 2.8.0
|
124
76
|
type: :runtime
|
125
77
|
prerelease: false
|
126
78
|
version_requirements: !ruby/object:Gem::Requirement
|
127
79
|
requirements:
|
128
80
|
- - ">="
|
129
81
|
- !ruby/object:Gem::Version
|
130
|
-
version:
|
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,12 +134,12 @@ 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.2/actionmailer/CHANGELOG.md
|
138
|
+
documentation_uri: https://api.rubyonrails.org/v7.2.2/
|
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.2/actionmailer
|
189
141
|
rubygems_mfa_required: 'true'
|
190
|
-
post_install_message:
|
142
|
+
post_install_message:
|
191
143
|
rdoc_options: []
|
192
144
|
require_paths:
|
193
145
|
- lib
|
@@ -195,7 +147,7 @@ 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
|
- - ">="
|
@@ -203,8 +155,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
203
155
|
version: '0'
|
204
156
|
requirements:
|
205
157
|
- none
|
206
|
-
rubygems_version: 3.
|
207
|
-
signing_key:
|
158
|
+
rubygems_version: 3.5.16
|
159
|
+
signing_key:
|
208
160
|
specification_version: 4
|
209
161
|
summary: Email composition and delivery framework (part of Rails).
|
210
162
|
test_files: []
|