actionmailer 7.1.5.2 → 7.2.0.beta1

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.

Potentially problematic release.


This version of actionmailer might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f5817b1ff95fad6df7d513243a1a7676179210576d57896419782e057f141551
4
- data.tar.gz: 5c14d145c98a2f011c30d6f96f8dc687c24798b98d1e73281925848f9d64112e
3
+ metadata.gz: fb3256479066f6e71da2f41cb8a37cd1b14f3bd42d8e5e77ae5718b307cd2f62
4
+ data.tar.gz: 9291f3df95d95b264683c027560a7942ccc609871eddc79f1f266a3d9a668d8c
5
5
  SHA512:
6
- metadata.gz: dd48b9da300f69269a4213b638c221922a18deed8097790683751af6543093be8c701d0725008a25e0e06f7092ad7e6ece80eec576a35de6b37d965822d0de41
7
- data.tar.gz: 6f2507b4ddc9ac5fbb1f3c7d860d755188b2285db72f591a0c567f6b006b7a7b9f1d25f117566fc3aaa4f7b9ee98785b5eb020506a1b84932a10f62f2832867f
6
+ metadata.gz: 0243c77d172d2431deda2bc81d240357f8eaaeb48b069eef03eb3e7113c59dba5251d9c95c61350e90cfcf20080ab3f79f001c176b1fe231cb5bfd9ef27a51f0
7
+ data.tar.gz: 537da0a128c3e07b1b895cc11616d188193a9a440d6c5150244b75d4efeabe6c2e9fcebebd08fa58c0be55ecd46ac0ae365147187aa444a780726e5d0dc9d69b
data/CHANGELOG.md CHANGED
@@ -1,214 +1,11 @@
1
- ## Rails 7.1.5.2 (August 13, 2025) ##
1
+ ## Rails 7.2.0.beta1 (May 29, 2024) ##
2
2
 
3
- * No changes.
3
+ * Remove deprecated params via `:args` for `assert_enqueued_email_with`.
4
4
 
5
+ *Rafael Mendonça França*
5
6
 
6
- ## Rails 7.1.5.1 (December 10, 2024) ##
7
+ * Remove deprecated `config.action_mailer.preview_path`.
7
8
 
8
- * No changes.
9
+ *Rafael Mendonça França*
9
10
 
10
-
11
- ## Rails 7.1.5 (October 30, 2024) ##
12
-
13
- * No changes.
14
-
15
-
16
- ## Rails 7.1.4.2 (October 23, 2024) ##
17
-
18
- * Fix NoMethodError in `block_format` helper
19
-
20
- *Michael Leimstaedtner*
21
-
22
-
23
- ## Rails 7.1.4.1 (October 15, 2024) ##
24
-
25
- * Avoid regex backtracking in `block_format` helper
26
-
27
- [CVE-2024-47889]
28
-
29
- *John Hawthorn*
30
-
31
-
32
- ## Rails 7.1.4 (August 22, 2024) ##
33
-
34
- * No changes.
35
-
36
-
37
- ## Rails 7.1.3.4 (June 04, 2024) ##
38
-
39
- * No changes.
40
-
41
-
42
- ## Rails 7.1.3.3 (May 16, 2024) ##
43
-
44
- * No changes.
45
-
46
-
47
- ## Rails 7.1.3.2 (February 21, 2024) ##
48
-
49
- * No changes.
50
-
51
-
52
- ## Rails 7.1.3.1 (February 21, 2024) ##
53
-
54
- * No changes.
55
-
56
-
57
- ## Rails 7.1.3 (January 16, 2024) ##
58
-
59
- * No changes.
60
-
61
-
62
- ## Rails 7.1.2 (November 10, 2023) ##
63
-
64
- * No changes.
65
-
66
-
67
- ## Rails 7.1.1 (October 11, 2023) ##
68
-
69
- * No changes.
70
-
71
-
72
- ## Rails 7.1.0 (October 05, 2023) ##
73
-
74
- * No changes.
75
-
76
-
77
- ## Rails 7.1.0.rc2 (October 01, 2023) ##
78
-
79
- * No changes.
80
-
81
-
82
- ## Rails 7.1.0.rc1 (September 27, 2023) ##
83
-
84
- * Introduce `ActionMailer::FormBuilder`
85
-
86
- Use the `default_form_builder` method in mailers to set the default form builder
87
- for templates rendered by that mailer. Matches the behaviour in Action Controller.
88
-
89
- *Alex Ghiculescu*
90
-
91
-
92
- ## Rails 7.1.0.beta1 (September 13, 2023) ##
93
-
94
- * Mailers are listed in alphabetical order on the mailer preview page now.
95
-
96
- *Martin Spickermann*
97
-
98
- * Deprecate passing params to `assert_enqueued_email_with` via the `:args`
99
- kwarg. `assert_enqueued_email_with` now supports a `:params` kwarg, so use
100
- that to pass params:
101
-
102
- ```ruby
103
- # BEFORE
104
- assert_enqueued_email_with MyMailer, :my_method, args: { my_param: "value" }
105
-
106
- # AFTER
107
- assert_enqueued_email_with MyMailer, :my_method, params: { my_param: "value" }
108
- ```
109
-
110
- To specify named mailer args as a Hash, wrap the Hash in an array:
111
-
112
- ```ruby
113
- assert_enqueued_email_with MyMailer, :my_method, args: [{ my_arg: "value" }]
114
- # OR
115
- assert_enqueued_email_with MyMailer, :my_method, args: [my_arg: "value"]
116
- ```
117
-
118
- *Jonathan Hefner*
119
-
120
- * Accept procs for args and params in `assert_enqueued_email_with`
121
-
122
- ```ruby
123
- assert_enqueued_email_with DeliveryJob, params: -> p { p[:token] =~ /\w+/ } do
124
- UserMailer.with(token: user.generate_token).email_verification.deliver_later
125
- end
126
- ```
127
-
128
- *Max Chernyak*
129
-
130
- * Added `*_deliver` callbacks to `ActionMailer::Base` that wrap mail message delivery.
131
-
132
- Example:
133
-
134
- ```ruby
135
- class EventsMailer < ApplicationMailer
136
- after_deliver do
137
- User.find_by(email: message.to.first).update(email_provider_id: message.message_id, emailed_at: Time.current)
138
- end
139
- end
140
- ```
141
-
142
- *Ben Sheldon*
143
-
144
- * Added `deliver_enqueued_emails` to `ActionMailer::TestHelper`. This method
145
- delivers all enqueued email jobs.
146
-
147
- Example:
148
-
149
- ```ruby
150
- def test_deliver_enqueued_emails
151
- deliver_enqueued_emails do
152
- ContactMailer.welcome.deliver_later
153
- end
154
- assert_emails 1
155
- end
156
- ```
157
-
158
- *Andrew Novoselac*
159
-
160
- * The `deliver_later_queue_name` used by the default mailer job can now be
161
- configured on a per-mailer basis. Previously this was only configurable
162
- for all mailers via `ActionMailer::Base`.
163
-
164
- Example:
165
-
166
- ```ruby
167
- class EventsMailer < ApplicationMailer
168
- self.deliver_later_queue_name = :throttled_mailer
169
- end
170
- ```
171
-
172
- *Jeffrey Hardy*
173
-
174
- * Email previews now include an expandable section to show all headers.
175
-
176
- Headers like `Message-ID` for threading or email service provider specific
177
- features like analytics tags or account metadata can now be viewed directly
178
- in the mailer preview.
179
-
180
- *Matt Swanson*
181
-
182
- * Default `ActionMailer::Parameterized#params` to an empty `Hash`
183
-
184
- *Sean Doyle*
185
-
186
- * Introduce the `capture_emails` test helper.
187
-
188
- Returns all emails that are sent in a block.
189
-
190
- ```ruby
191
- def test_emails
192
- emails = capture_emails do
193
- ContactMailer.welcome.deliver_now
194
- ContactMailer.welcome.deliver_later
195
- end
196
- assert_email "Hi there", emails.first.subject
197
- end
198
- ```
199
-
200
- *Alex Ghiculescu*
201
-
202
- * Added ability to download `.eml` file for the email preview.
203
-
204
- *Igor Kasyanchuk*
205
-
206
- * Support multiple preview paths for mailers.
207
-
208
- Option `config.action_mailer.preview_path` is deprecated in favor of
209
- `config.action_mailer.preview_paths`. Appending paths to this configuration option
210
- will cause those paths to be used in the search for mailer previews.
211
-
212
- *fatkodima*
213
-
214
- Please check [7-0-stable](https://github.com/rails/rails/blob/7-0-stable/actionmailer/CHANGELOG.md) for previous changes.
11
+ Please check [7-1-stable](https://github.com/rails/rails/blob/7-1-stable/actionmailer/CHANGELOG.md) for previous changes.
@@ -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, *args)
629
- if action_methods.include?(method_name.to_s)
630
- MessageDelivery.new(self, method_name, *args)
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.to_s) || super
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(*args)
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
- # See breaking change in the mail gem - https://github.com/mikel/mail/commit/7e1196bd29815a0901d7290c82a332c0959b163a
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
@@ -8,9 +8,9 @@ module ActionMailer
8
8
 
9
9
  module VERSION
10
10
  MAJOR = 7
11
- MINOR = 1
12
- TINY = 5
13
- PRE = "2"
11
+ MINOR = 2
12
+ TINY = 0
13
+ PRE = "beta1"
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
16
16
  end
@@ -25,18 +25,10 @@ module ActionMailer
25
25
  }.join("\n\n")
26
26
 
27
27
  # Make list points stand on their own line
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
28
+ formatted.gsub!(/[ ]*([*]+) ([^*]*)/) { " #{$1} #{$2.strip}\n" }
29
+ formatted.gsub!(/[ ]*([#]+) ([^#]*)/) { " #{$1} #{$2.strip}\n" }
38
30
 
39
- output
31
+ formatted
40
32
  end
41
33
 
42
34
  # Access the mailer instance.
@@ -114,14 +114,13 @@ module ActionMailer
114
114
  end
115
115
 
116
116
  private
117
- def method_missing(method_name, *args)
118
- if @mailer.action_methods.include?(method_name.to_s)
119
- ActionMailer::Parameterized::MessageDelivery.new(@mailer, method_name, @params, *args)
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, *args)
133
- super(mailer_class, action, *args)
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
 
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actionmailer
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.5.2
4
+ version: 7.2.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
+ autorequire:
8
9
  bindir: bin
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2024-05-29 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: activesupport
@@ -15,118 +16,70 @@ dependencies:
15
16
  requirements:
16
17
  - - '='
17
18
  - !ruby/object:Gem::Version
18
- version: 7.1.5.2
19
+ version: 7.2.0.beta1
19
20
  type: :runtime
20
21
  prerelease: false
21
22
  version_requirements: !ruby/object:Gem::Requirement
22
23
  requirements:
23
24
  - - '='
24
25
  - !ruby/object:Gem::Version
25
- version: 7.1.5.2
26
+ version: 7.2.0.beta1
26
27
  - !ruby/object:Gem::Dependency
27
28
  name: actionpack
28
29
  requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
31
  - - '='
31
32
  - !ruby/object:Gem::Version
32
- version: 7.1.5.2
33
+ version: 7.2.0.beta1
33
34
  type: :runtime
34
35
  prerelease: false
35
36
  version_requirements: !ruby/object:Gem::Requirement
36
37
  requirements:
37
38
  - - '='
38
39
  - !ruby/object:Gem::Version
39
- version: 7.1.5.2
40
+ version: 7.2.0.beta1
40
41
  - !ruby/object:Gem::Dependency
41
42
  name: actionview
42
43
  requirement: !ruby/object:Gem::Requirement
43
44
  requirements:
44
45
  - - '='
45
46
  - !ruby/object:Gem::Version
46
- version: 7.1.5.2
47
+ version: 7.2.0.beta1
47
48
  type: :runtime
48
49
  prerelease: false
49
50
  version_requirements: !ruby/object:Gem::Requirement
50
51
  requirements:
51
52
  - - '='
52
53
  - !ruby/object:Gem::Version
53
- version: 7.1.5.2
54
+ version: 7.2.0.beta1
54
55
  - !ruby/object:Gem::Dependency
55
56
  name: activejob
56
57
  requirement: !ruby/object:Gem::Requirement
57
58
  requirements:
58
59
  - - '='
59
60
  - !ruby/object:Gem::Version
60
- version: 7.1.5.2
61
+ version: 7.2.0.beta1
61
62
  type: :runtime
62
63
  prerelease: false
63
64
  version_requirements: !ruby/object:Gem::Requirement
64
65
  requirements:
65
66
  - - '='
66
67
  - !ruby/object:Gem::Version
67
- version: 7.1.5.2
68
+ version: 7.2.0.beta1
68
69
  - !ruby/object:Gem::Dependency
69
70
  name: mail
70
- requirement: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '2.5'
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- version: 2.5.4
78
- type: :runtime
79
- prerelease: false
80
- version_requirements: !ruby/object:Gem::Requirement
81
- requirements:
82
- - - "~>"
83
- - !ruby/object:Gem::Version
84
- version: '2.5'
85
- - - ">="
86
- - !ruby/object:Gem::Version
87
- version: 2.5.4
88
- - !ruby/object:Gem::Dependency
89
- name: net-imap
90
- requirement: !ruby/object:Gem::Requirement
91
- requirements:
92
- - - ">="
93
- - !ruby/object:Gem::Version
94
- version: '0'
95
- type: :runtime
96
- prerelease: false
97
- version_requirements: !ruby/object:Gem::Requirement
98
- requirements:
99
- - - ">="
100
- - !ruby/object:Gem::Version
101
- version: '0'
102
- - !ruby/object:Gem::Dependency
103
- name: net-pop
104
- requirement: !ruby/object:Gem::Requirement
105
- requirements:
106
- - - ">="
107
- - !ruby/object:Gem::Version
108
- version: '0'
109
- type: :runtime
110
- prerelease: false
111
- version_requirements: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- version: '0'
116
- - !ruby/object:Gem::Dependency
117
- name: net-smtp
118
71
  requirement: !ruby/object:Gem::Requirement
119
72
  requirements:
120
73
  - - ">="
121
74
  - !ruby/object:Gem::Version
122
- version: '0'
75
+ version: 2.8.0
123
76
  type: :runtime
124
77
  prerelease: false
125
78
  version_requirements: !ruby/object:Gem::Requirement
126
79
  requirements:
127
80
  - - ">="
128
81
  - !ruby/object:Gem::Version
129
- version: '0'
82
+ version: 2.8.0
130
83
  - !ruby/object:Gem::Dependency
131
84
  name: rails-dom-testing
132
85
  requirement: !ruby/object:Gem::Requirement
@@ -181,11 +134,12 @@ licenses:
181
134
  - MIT
182
135
  metadata:
183
136
  bug_tracker_uri: https://github.com/rails/rails/issues
184
- changelog_uri: https://github.com/rails/rails/blob/v7.1.5.2/actionmailer/CHANGELOG.md
185
- documentation_uri: https://api.rubyonrails.org/v7.1.5.2/
137
+ changelog_uri: https://github.com/rails/rails/blob/v7.2.0.beta1/actionmailer/CHANGELOG.md
138
+ documentation_uri: https://api.rubyonrails.org/v7.2.0.beta1/
186
139
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
187
- source_code_uri: https://github.com/rails/rails/tree/v7.1.5.2/actionmailer
140
+ source_code_uri: https://github.com/rails/rails/tree/v7.2.0.beta1/actionmailer
188
141
  rubygems_mfa_required: 'true'
142
+ post_install_message:
189
143
  rdoc_options: []
190
144
  require_paths:
191
145
  - lib
@@ -193,7 +147,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
193
147
  requirements:
194
148
  - - ">="
195
149
  - !ruby/object:Gem::Version
196
- version: 2.7.0
150
+ version: 3.1.0
197
151
  required_rubygems_version: !ruby/object:Gem::Requirement
198
152
  requirements:
199
153
  - - ">="
@@ -201,7 +155,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
201
155
  version: '0'
202
156
  requirements:
203
157
  - none
204
- rubygems_version: 3.6.9
158
+ rubygems_version: 3.5.10
159
+ signing_key:
205
160
  specification_version: 4
206
161
  summary: Email composition and delivery framework (part of Rails).
207
162
  test_files: []