actionmailbox 7.0.7.2 → 7.1.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.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -150
  3. data/MIT-LICENSE +1 -1
  4. data/README.md +2 -2
  5. data/app/controllers/action_mailbox/ingresses/mailgun/inbound_emails_controller.rb +1 -0
  6. data/app/controllers/action_mailbox/ingresses/postmark/inbound_emails_controller.rb +1 -0
  7. data/app/controllers/action_mailbox/ingresses/sendgrid/inbound_emails_controller.rb +1 -0
  8. data/app/controllers/rails/conductor/action_mailbox/inbound_emails/sources_controller.rb +3 -1
  9. data/app/controllers/rails/conductor/action_mailbox/inbound_emails_controller.rb +2 -0
  10. data/app/controllers/rails/conductor/action_mailbox/incinerates_controller.rb +2 -0
  11. data/app/controllers/rails/conductor/action_mailbox/reroutes_controller.rb +2 -0
  12. data/app/models/action_mailbox/inbound_email/message_id.rb +1 -1
  13. data/app/models/action_mailbox/inbound_email.rb +8 -0
  14. data/app/views/rails/conductor/action_mailbox/inbound_emails/index.html.erb +3 -3
  15. data/config/routes.rb +1 -1
  16. data/db/migrate/20180917164000_create_action_mailbox_tables.rb +7 -1
  17. data/lib/action_mailbox/base.rb +24 -8
  18. data/lib/action_mailbox/callbacks.rb +2 -0
  19. data/lib/action_mailbox/deprecator.rb +7 -0
  20. data/lib/action_mailbox/engine.rb +4 -0
  21. data/lib/action_mailbox/gem_version.rb +4 -4
  22. data/lib/action_mailbox/mail_ext/addresses.rb +5 -1
  23. data/lib/action_mailbox/mail_ext/recipients.rb +2 -1
  24. data/lib/action_mailbox/router.rb +2 -0
  25. data/lib/action_mailbox/version.rb +1 -1
  26. data/lib/action_mailbox.rb +8 -0
  27. data/lib/rails/generators/mailbox/USAGE +1 -3
  28. data/lib/tasks/install.rake +1 -1
  29. metadata +19 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c278d1ad3573cba9b9c8dce2ff1a065442ece61e4543bb3c57a718bca6c07a01
4
- data.tar.gz: 39b8f0705464972adffbcf35e2abcc1a37575a2e95696e7d1fa0dcd64f1f2014
3
+ metadata.gz: 22dd8d01edccd6360fc964c0e3a79338950ad8ef7c87eeb3fce1f5e4b2e8d266
4
+ data.tar.gz: c6957d1d5a3cd19c8f77be0696cb3478a663ad9e6ab1af466947a22dcb7c0bd4
5
5
  SHA512:
6
- metadata.gz: 281034a550b71e60b92dc351e7290e95732082eedecd35cb7ff0d64a851b034d426f7837c2713dc0bc1d75b24086a3bc1c81beb7e5a34507f4134b8e2041af79
7
- data.tar.gz: 42be4c46d88c7a2cc802cd70a80b37e00b2940ebd07cf9e5354d4041a387be9b78810d0f6d7209423915e5fbf23b1bfc58904f71c23b13c4ee5c6000f948668c
6
+ metadata.gz: 31c9a097037817519b40656857531585a8346ec82bf967ac1b5ca02ddc9ca7576c14524dfb5b2fd7d40514b4eaf034d589f1c948a8320e2ba5e9e76e98f55e68
7
+ data.tar.gz: e8cacf3a6618b13b82f1c48a8458bdf04590154c90ad84d3b8eec0aa031172e0248b8963088f86f9e3b120c77c4faeb0655c87ef8b14f2da0ff0d586fcfe8b67
data/CHANGELOG.md CHANGED
@@ -1,160 +1,21 @@
1
- ## Rails 7.0.7.2 (August 22, 2023) ##
1
+ ## Rails 7.1.0.beta1 (September 13, 2023) ##
2
2
 
3
- * No changes.
3
+ * Added `bounce_now_with` to send the bounce email without going through a mailer queue.
4
4
 
5
+ *Ronan Limon Duparcmeur*
5
6
 
6
- ## Rails 7.0.7.1 (August 22, 2023) ##
7
+ * Support configured primary key types in generated migrations.
7
8
 
8
- * No changes.
9
+ *Nishiki Liu*
9
10
 
11
+ * Fixed ingress controllers' ability to accept emails that contain no UTF-8 encoded parts.
10
12
 
11
- ## Rails 7.0.7 (August 09, 2023) ##
13
+ Fixes #46297.
12
14
 
13
- * No changes.
15
+ *Jan Honza Sterba*
14
16
 
17
+ * Add X-Forwarded-To addresses to recipients.
15
18
 
16
- ## Rails 7.0.6 (June 29, 2023) ##
19
+ *Andrew Stewart*
17
20
 
18
- * No changes.
19
-
20
-
21
- ## Rails 7.0.5.1 (June 26, 2023) ##
22
-
23
- * No changes.
24
-
25
-
26
- ## Rails 7.0.5 (May 24, 2023) ##
27
-
28
- * No changes.
29
-
30
-
31
- ## Rails 7.0.4.3 (March 13, 2023) ##
32
-
33
- * No changes.
34
-
35
-
36
- ## Rails 7.0.4.2 (January 24, 2023) ##
37
-
38
- * No changes.
39
-
40
-
41
- ## Rails 7.0.4.1 (January 17, 2023) ##
42
-
43
- * No changes.
44
-
45
-
46
- ## Rails 7.0.4 (September 09, 2022) ##
47
-
48
- * No changes.
49
-
50
-
51
- ## Rails 7.0.3.1 (July 12, 2022) ##
52
-
53
- * No changes.
54
-
55
-
56
- ## Rails 7.0.3 (May 09, 2022) ##
57
-
58
- * No changes.
59
-
60
-
61
- ## Rails 7.0.2.4 (April 26, 2022) ##
62
-
63
- * No changes.
64
-
65
-
66
- ## Rails 7.0.2.3 (March 08, 2022) ##
67
-
68
- * No changes.
69
-
70
-
71
- ## Rails 7.0.2.2 (February 11, 2022) ##
72
-
73
- * No changes.
74
-
75
-
76
- ## Rails 7.0.2.1 (February 11, 2022) ##
77
-
78
- * No changes.
79
-
80
-
81
- ## Rails 7.0.2 (February 08, 2022) ##
82
-
83
- * No changes.
84
-
85
-
86
- ## Rails 7.0.1 (January 06, 2022) ##
87
-
88
- * No changes.
89
-
90
-
91
- ## Rails 7.0.0 (December 15, 2021) ##
92
-
93
- * No changes.
94
-
95
-
96
- ## Rails 7.0.0.rc3 (December 14, 2021) ##
97
-
98
- * No changes.
99
-
100
-
101
- ## Rails 7.0.0.rc2 (December 14, 2021) ##
102
-
103
- * No changes.
104
-
105
- ## Rails 7.0.0.rc1 (December 06, 2021) ##
106
-
107
- * Removed deprecated environment variable `MAILGUN_INGRESS_API_KEY`.
108
-
109
- *Rafael Mendonça França*
110
-
111
- * Removed deprecated `Rails.application.credentials.action_mailbox.mailgun_api_key`.
112
-
113
- *Rafael Mendonça França*
114
-
115
-
116
- ## Rails 7.0.0.alpha2 (September 15, 2021) ##
117
-
118
- * No changes.
119
-
120
-
121
- ## Rails 7.0.0.alpha1 (September 15, 2021) ##
122
-
123
- * Add `attachments` to the list of permitted parameters for inbound emails conductor.
124
-
125
- When using the conductor to test inbound emails with attachments, this prevents an
126
- unpermitted parameter warning in default configurations, and prevents errors for
127
- applications that set:
128
-
129
- ```ruby
130
- config.action_controller.action_on_unpermitted_parameters = :raise
131
- ```
132
-
133
- *David Jones*, *Dana Henke*
134
-
135
- * Add ability to configure ActiveStorage service
136
- for storing email raw source.
137
-
138
- ```yml
139
- # config/storage.yml
140
- incoming_emails:
141
- service: Disk
142
- root: /secure/dir/for/emails/only
143
- ```
144
-
145
- ```ruby
146
- config.action_mailbox.storage_service = :incoming_emails
147
- ```
148
-
149
- *Yurii Rashkovskii*
150
-
151
- * Add ability to incinerate an inbound message through the conductor interface.
152
-
153
- *Santiago Bartesaghi*
154
-
155
- * OpenSSL constants are now used for Digest computations.
156
-
157
- *Dirkjan Bussink*
158
-
159
-
160
- Please check [6-1-stable](https://github.com/rails/rails/blob/6-1-stable/actionmailbox/CHANGELOG.md) for previous changes.
21
+ Please check [7-0-stable](https://github.com/rails/rails/blob/7-0-stable/actionmailbox/CHANGELOG.md) for previous changes.
data/MIT-LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2018-2022 Basecamp, LLC
3
+ Copyright (c) 37signals LLC
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -1,12 +1,12 @@
1
1
  # Action Mailbox
2
2
 
3
- Action Mailbox routes incoming emails to controller-like mailboxes for processing in Rails. It ships with ingresses for Mailgun, Mandrill, Postmark, and SendGrid. You can also handle inbound mails directly via the built-in Exim, Postfix, and Qmail ingresses.
3
+ Action Mailbox routes incoming emails to controller-like mailboxes for processing in \Rails. It ships with ingresses for Mailgun, Mandrill, Postmark, and SendGrid. You can also handle inbound mails directly via the built-in Exim, Postfix, and Qmail ingresses.
4
4
 
5
5
  The inbound emails are turned into `InboundEmail` records using Active Record and feature lifecycle tracking, storage of the original email on cloud storage via Active Storage, and responsible data handling with on-by-default incineration.
6
6
 
7
7
  These inbound emails are routed asynchronously using Active Job to one or several dedicated mailboxes, which are capable of interacting directly with the rest of your domain model.
8
8
 
9
- You can read more about Action Mailbox in the [Action Mailbox Basics](https://edgeguides.rubyonrails.org/action_mailbox_basics.html) guide.
9
+ You can read more about Action Mailbox in the [Action Mailbox Basics](https://guides.rubyonrails.org/action_mailbox_basics.html) guide.
10
10
 
11
11
  ## License
12
12
 
@@ -44,6 +44,7 @@ module ActionMailbox
44
44
  # <tt>https://example.com/rails/action_mailbox/mailgun/inbound_emails/mime</tt>.
45
45
  class Ingresses::Mailgun::InboundEmailsController < ActionMailbox::BaseController
46
46
  before_action :authenticate
47
+ param_encoding :create, "body-mime", Encoding::ASCII_8BIT
47
48
 
48
49
  def create
49
50
  ActionMailbox::InboundEmail.create_and_extract_message_id! mail
@@ -46,6 +46,7 @@ module ActionMailbox
46
46
  # content in JSON payload"*. Action Mailbox needs the raw email content to work.
47
47
  class Ingresses::Postmark::InboundEmailsController < ActionMailbox::BaseController
48
48
  before_action :authenticate_by_password
49
+ param_encoding :create, "RawEmail", Encoding::ASCII_8BIT
49
50
 
50
51
  def create
51
52
  ActionMailbox::InboundEmail.create_and_extract_message_id! params.require("RawEmail")
@@ -46,6 +46,7 @@ module ActionMailbox
46
46
  # full MIME message."* Action Mailbox needs the raw MIME message to work.
47
47
  class Ingresses::Sendgrid::InboundEmailsController < ActionMailbox::BaseController
48
48
  before_action :authenticate_by_password
49
+ param_encoding :create, :email, Encoding::ASCII_8BIT
49
50
 
50
51
  def create
51
52
  ActionMailbox::InboundEmail.create_and_extract_message_id! mail
@@ -1,7 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # :enddoc:
4
+
3
5
  module Rails
4
- class Conductor::ActionMailbox::InboundEmails::SourcesController < Rails::Conductor::BaseController
6
+ class Conductor::ActionMailbox::InboundEmails::SourcesController < Rails::Conductor::BaseController # :nodoc:
5
7
  def new
6
8
  end
7
9
 
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # :enddoc:
4
+
3
5
  module Rails
4
6
  class Conductor::ActionMailbox::InboundEmailsController < Rails::Conductor::BaseController
5
7
  def index
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # :enddoc:
4
+
3
5
  module Rails
4
6
  # Incinerating will destroy an email that is due and has already been processed.
5
7
  class Conductor::ActionMailbox::IncineratesController < Rails::Conductor::BaseController
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # :enddoc:
4
+
3
5
  module Rails
4
6
  # Rerouting will run routing and processing on an email that has already been, or attempted to be, processed.
5
7
  class Conductor::ActionMailbox::ReroutesController < Rails::Conductor::BaseController
@@ -5,7 +5,7 @@
5
5
  # web request.
6
6
  #
7
7
  # If an inbound email does not, against the rfc822 mandate, specify a Message-ID, one will be generated
8
- # using the approach from <tt>Mail::MessageIdField</tt>.
8
+ # using the approach from +Mail::MessageIdField+.
9
9
  module ActionMailbox::InboundEmail::MessageId
10
10
  extend ActiveSupport::Concern
11
11
 
@@ -43,6 +43,14 @@ module ActionMailbox
43
43
  def processed?
44
44
  delivered? || failed? || bounced?
45
45
  end
46
+
47
+ def instrumentation_payload # :nodoc:
48
+ {
49
+ id: id,
50
+ message_id: message_id,
51
+ status: status
52
+ }
53
+ end
46
54
  end
47
55
  end
48
56
 
@@ -2,6 +2,9 @@
2
2
 
3
3
  <h1>All inbound emails</h1>
4
4
 
5
+ <%= link_to "New inbound email by form", main_app.new_rails_conductor_inbound_email_path %> |
6
+ <%= link_to "New inbound email by source", main_app.new_rails_conductor_inbound_email_source_path %>
7
+
5
8
  <table>
6
9
  <tr><th>Message ID</th><th>Status</th></tr>
7
10
  <% @inbound_emails.each do |inbound_email| %>
@@ -11,6 +14,3 @@
11
14
  </tr>
12
15
  <% end %>
13
16
  </table>
14
-
15
- <%= link_to "New inbound email by form", main_app.new_rails_conductor_inbound_email_path %> |
16
- <%= link_to "New inbound email by source", main_app.new_rails_conductor_inbound_email_source_path %>
data/config/routes.rb CHANGED
@@ -16,7 +16,7 @@ Rails.application.routes.draw do
16
16
 
17
17
  # TODO: Should these be mounted within the engine only?
18
18
  scope "rails/conductor/action_mailbox/", module: "rails/conductor/action_mailbox" do
19
- resources :inbound_emails, as: :rails_conductor_inbound_emails
19
+ resources :inbound_emails, as: :rails_conductor_inbound_emails, only: %i[index new show create]
20
20
  get "inbound_emails/sources/new", to: "inbound_emails/sources#new", as: :new_rails_conductor_inbound_email_source
21
21
  post "inbound_emails/sources", to: "inbound_emails/sources#create", as: :rails_conductor_inbound_email_sources
22
22
 
@@ -1,6 +1,6 @@
1
1
  class CreateActionMailboxTables < ActiveRecord::Migration[6.0]
2
2
  def change
3
- create_table :action_mailbox_inbound_emails do |t|
3
+ create_table :action_mailbox_inbound_emails, id: primary_key_type do |t|
4
4
  t.integer :status, default: 0, null: false
5
5
  t.string :message_id, null: false
6
6
  t.string :message_checksum, null: false
@@ -10,4 +10,10 @@ class CreateActionMailboxTables < ActiveRecord::Migration[6.0]
10
10
  t.index [ :message_id, :message_checksum ], name: "index_action_mailbox_inbound_emails_uniqueness", unique: true
11
11
  end
12
12
  end
13
+
14
+ private
15
+ def primary_key_type
16
+ config = Rails.configuration.generators
17
+ config.options[config.orm][:primary_key_type] || :primary_key
18
+ end
13
19
  end
@@ -6,6 +6,8 @@ require "action_mailbox/callbacks"
6
6
  require "action_mailbox/routing"
7
7
 
8
8
  module ActionMailbox
9
+ # = Action Mailbox \Base
10
+ #
9
11
  # The base class for all application mailboxes. Not intended to be inherited from directly. Inherit from
10
12
  # +ApplicationMailbox+ instead, as that's where the app-specific routing is configured. This routing
11
13
  # is specified in the following ways:
@@ -29,7 +31,7 @@ module ActionMailbox
29
31
  #
30
32
  # Application mailboxes need to override the #process method, which is invoked by the framework after
31
33
  # callbacks have been run. The callbacks available are: +before_processing+, +after_processing+, and
32
- # +around_processing+. The primary use case is ensure certain preconditions to processing are fulfilled
34
+ # +around_processing+. The primary use case is to ensure that certain preconditions to processing are fulfilled
33
35
  # using +before_processing+ callbacks.
34
36
  #
35
37
  # If a precondition fails to be met, you can halt the processing using the +#bounced!+ method,
@@ -79,14 +81,16 @@ module ActionMailbox
79
81
  end
80
82
 
81
83
  def perform_processing # :nodoc:
82
- track_status_of_inbound_email do
83
- run_callbacks :process do
84
- process
84
+ ActiveSupport::Notifications.instrument "process.action_mailbox", instrumentation_payload do
85
+ track_status_of_inbound_email do
86
+ run_callbacks :process do
87
+ process
88
+ end
85
89
  end
90
+ rescue => exception
91
+ # TODO: Include a reference to the inbound_email in the exception raised so error handling becomes easier
92
+ rescue_with_handler(exception) || raise
86
93
  end
87
- rescue => exception
88
- # TODO: Include a reference to the inbound_email in the exception raised so error handling becomes easier
89
- rescue_with_handler(exception) || raise
90
94
  end
91
95
 
92
96
  def process
@@ -97,14 +101,26 @@ module ActionMailbox
97
101
  inbound_email.delivered? || inbound_email.bounced?
98
102
  end
99
103
 
100
-
101
104
  # Enqueues the given +message+ for delivery and changes the inbound email's status to +:bounced+.
102
105
  def bounce_with(message)
103
106
  inbound_email.bounced!
104
107
  message.deliver_later
105
108
  end
106
109
 
110
+ # Immediately sends the given +message+ and changes the inbound email's status to +:bounced+.
111
+ def bounce_now_with(message)
112
+ inbound_email.bounced!
113
+ message.deliver_now
114
+ end
115
+
107
116
  private
117
+ def instrumentation_payload
118
+ {
119
+ mailbox: self,
120
+ inbound_email: inbound_email.instrumentation_payload
121
+ }
122
+ end
123
+
108
124
  def track_status_of_inbound_email
109
125
  inbound_email.processing!
110
126
  yield
@@ -3,6 +3,8 @@
3
3
  require "active_support/callbacks"
4
4
 
5
5
  module ActionMailbox
6
+ # = Action Mailbox \Callbacks
7
+ #
6
8
  # Defines the callbacks related to processing.
7
9
  module Callbacks
8
10
  extend ActiveSupport::Concern
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ActionMailbox
4
+ def self.deprecator # :nodoc:
5
+ @deprecator ||= ActiveSupport::Deprecation.new
6
+ end
7
+ end
@@ -22,6 +22,10 @@ module ActionMailbox
22
22
 
23
23
  config.action_mailbox.storage_service = nil
24
24
 
25
+ initializer "action_mailbox.deprecator", before: :load_environment_config do |app|
26
+ app.deprecators[:action_mailbox] = ActionMailbox.deprecator
27
+ end
28
+
25
29
  initializer "action_mailbox.config" do
26
30
  config.after_initialize do |app|
27
31
  ActionMailbox.logger = app.config.action_mailbox.logger || Rails.logger
@@ -1,16 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActionMailbox
4
- # Returns the currently loaded version of Action Mailbox as a <tt>Gem::Version</tt>.
4
+ # Returns the currently loaded version of Action Mailbox as a +Gem::Version+.
5
5
  def self.gem_version
6
6
  Gem::Version.new VERSION::STRING
7
7
  end
8
8
 
9
9
  module VERSION
10
10
  MAJOR = 7
11
- MINOR = 0
12
- TINY = 7
13
- PRE = "2"
11
+ MINOR = 1
12
+ TINY = 0
13
+ PRE = "beta1"
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
16
16
  end
@@ -7,7 +7,7 @@ module Mail
7
7
  end
8
8
 
9
9
  def recipients_addresses
10
- to_addresses + cc_addresses + bcc_addresses + x_original_to_addresses
10
+ to_addresses + cc_addresses + bcc_addresses + x_original_to_addresses + x_forwarded_to_addresses
11
11
  end
12
12
 
13
13
  def to_addresses
@@ -26,6 +26,10 @@ module Mail
26
26
  Array(header[:x_original_to]).collect { |header| Mail::Address.new header.to_s }
27
27
  end
28
28
 
29
+ def x_forwarded_to_addresses
30
+ Array(header[:x_forwarded_to]).collect { |header| Mail::Address.new header.to_s }
31
+ end
32
+
29
33
  private
30
34
  def address_list(obj)
31
35
  if obj&.respond_to?(:element)
@@ -3,7 +3,8 @@
3
3
  module Mail
4
4
  class Message
5
5
  def recipients
6
- Array(to) + Array(cc) + Array(bcc) + Array(header[:x_original_to]).map(&:to_s)
6
+ Array(to) + Array(cc) + Array(bcc) + Array(header[:x_original_to]).map(&:to_s) +
7
+ Array(header[:x_forwarded_to]).map(&:to_s)
7
8
  end
8
9
  end
9
10
  end
@@ -1,6 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActionMailbox
4
+ # = Action Mailbox \Router
5
+ #
4
6
  # Encapsulates the routes that live on the ApplicationMailbox and performs the actual routing when
5
7
  # an inbound_email is received.
6
8
  class Router
@@ -3,7 +3,7 @@
3
3
  require_relative "gem_version"
4
4
 
5
5
  module ActionMailbox
6
- # Returns the currently loaded version of Action Mailbox as a <tt>Gem::Version</tt>.
6
+ # Returns the currently loaded version of Action Mailbox as a +Gem::Version+.
7
7
  def self.version
8
8
  gem_version
9
9
  end
@@ -1,7 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "active_support"
4
+ require "active_support/rails"
5
+ require "active_support/core_ext/numeric/time"
6
+
7
+ require "action_mailbox/version"
8
+ require "action_mailbox/deprecator"
3
9
  require "action_mailbox/mail_ext"
4
10
 
11
+ # :markup: markdown
12
+ # :include: actionmailbox/README.md
5
13
  module ActionMailbox
6
14
  extend ActiveSupport::Autoload
7
15
 
@@ -1,11 +1,9 @@
1
1
  Description:
2
- ============
3
2
  Generates a new mailbox class in app/mailboxes and invokes your template
4
3
  engine and test framework generators.
5
4
 
6
5
  Example:
7
- ========
8
- bin/rails generate mailbox inbox
6
+ `bin/rails generate mailbox inbox`
9
7
 
10
8
  creates an InboxMailbox class and test:
11
9
  Mailbox: app/mailboxes/inbox_mailbox.rb
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- desc "Installs Action Mailbox and its dependencies"
3
+ desc "Install Action Mailbox and its dependencies"
4
4
  task "action_mailbox:install" do
5
5
  Rails::Command.invoke :generate, ["action_mailbox:install"]
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actionmailbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.7.2
4
+ version: 7.1.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-08-22 00:00:00.000000000 Z
12
+ date: 2023-09-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -17,70 +17,70 @@ dependencies:
17
17
  requirements:
18
18
  - - '='
19
19
  - !ruby/object:Gem::Version
20
- version: 7.0.7.2
20
+ version: 7.1.0.beta1
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '='
26
26
  - !ruby/object:Gem::Version
27
- version: 7.0.7.2
27
+ version: 7.1.0.beta1
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: activerecord
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - '='
33
33
  - !ruby/object:Gem::Version
34
- version: 7.0.7.2
34
+ version: 7.1.0.beta1
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - '='
40
40
  - !ruby/object:Gem::Version
41
- version: 7.0.7.2
41
+ version: 7.1.0.beta1
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: activestorage
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - '='
47
47
  - !ruby/object:Gem::Version
48
- version: 7.0.7.2
48
+ version: 7.1.0.beta1
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - '='
54
54
  - !ruby/object:Gem::Version
55
- version: 7.0.7.2
55
+ version: 7.1.0.beta1
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: activejob
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - '='
61
61
  - !ruby/object:Gem::Version
62
- version: 7.0.7.2
62
+ version: 7.1.0.beta1
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - '='
68
68
  - !ruby/object:Gem::Version
69
- version: 7.0.7.2
69
+ version: 7.1.0.beta1
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: actionpack
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - '='
75
75
  - !ruby/object:Gem::Version
76
- version: 7.0.7.2
76
+ version: 7.1.0.beta1
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
81
  - - '='
82
82
  - !ruby/object:Gem::Version
83
- version: 7.0.7.2
83
+ version: 7.1.0.beta1
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: mail
86
86
  requirement: !ruby/object:Gem::Requirement
@@ -177,6 +177,7 @@ files:
177
177
  - lib/action_mailbox.rb
178
178
  - lib/action_mailbox/base.rb
179
179
  - lib/action_mailbox/callbacks.rb
180
+ - lib/action_mailbox/deprecator.rb
180
181
  - lib/action_mailbox/engine.rb
181
182
  - lib/action_mailbox/gem_version.rb
182
183
  - lib/action_mailbox/mail_ext.rb
@@ -206,10 +207,10 @@ licenses:
206
207
  - MIT
207
208
  metadata:
208
209
  bug_tracker_uri: https://github.com/rails/rails/issues
209
- changelog_uri: https://github.com/rails/rails/blob/v7.0.7.2/actionmailbox/CHANGELOG.md
210
- documentation_uri: https://api.rubyonrails.org/v7.0.7.2/
210
+ changelog_uri: https://github.com/rails/rails/blob/v7.1.0.beta1/actionmailbox/CHANGELOG.md
211
+ documentation_uri: https://api.rubyonrails.org/v7.1.0.beta1/
211
212
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
212
- source_code_uri: https://github.com/rails/rails/tree/v7.0.7.2/actionmailbox
213
+ source_code_uri: https://github.com/rails/rails/tree/v7.1.0.beta1/actionmailbox
213
214
  rubygems_mfa_required: 'true'
214
215
  post_install_message:
215
216
  rdoc_options: []
@@ -222,11 +223,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
222
223
  version: 2.7.0
223
224
  required_rubygems_version: !ruby/object:Gem::Requirement
224
225
  requirements:
225
- - - ">="
226
+ - - ">"
226
227
  - !ruby/object:Gem::Version
227
- version: '0'
228
+ version: 1.3.1
228
229
  requirements: []
229
- rubygems_version: 3.3.3
230
+ rubygems_version: 3.4.18
230
231
  signing_key:
231
232
  specification_version: 4
232
233
  summary: Inbound email handling framework.