Skip to content

Commit c09956a

Browse files
committed
Remove deprecated support to pass deferrable: true to add_foreign_key
1 parent 95b48d8 commit c09956a

File tree

5 files changed

+6
-28
lines changed

5 files changed

+6
-28
lines changed

activerecord/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
* Remove deprecated support to pass `deferrable: true` to `add_foreign_key`.
2+
3+
*Rafael Mendonça França*
4+
15
* Remove deprecated support to quote `ActiveSupport::Duration`.
26

37
*Rafael Mendonça França*

activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -522,14 +522,6 @@ def index_name(table_name, options) # :nodoc:
522522
end
523523

524524
def add_foreign_key(from_table, to_table, **options)
525-
if options[:deferrable] == true
526-
ActiveRecord.deprecator.warn(<<~MSG)
527-
`deferrable: true` is deprecated in favor of `deferrable: :immediate`, and will be removed in Rails 7.2.
528-
MSG
529-
530-
options[:deferrable] = :immediate
531-
end
532-
533525
assert_valid_deferrable(options[:deferrable])
534526

535527
super

activerecord/lib/active_record/connection_adapters/sqlite3/schema_statements.rb

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,6 @@ def indexes(table_name)
5353
end
5454

5555
def add_foreign_key(from_table, to_table, **options)
56-
if options[:deferrable] == true
57-
ActiveRecord.deprecator.warn(<<~MSG)
58-
`deferrable: true` is deprecated in favor of `deferrable: :immediate`, and will be removed in Rails 7.2.
59-
MSG
60-
61-
options[:deferrable] = :immediate
62-
end
63-
6456
assert_valid_deferrable(options[:deferrable])
6557

6658
alter_table(from_table) do |definition|

activerecord/test/cases/migration/foreign_key_test.rb

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -589,18 +589,6 @@ def test_schema_dumping_with_defferable_initially_immediate
589589

590590
assert_match %r{\s+add_foreign_key "astronauts", "rockets", deferrable: :immediate$}, output
591591
end
592-
593-
def test_deferrable_true_foreign_key
594-
assert_deprecated(ActiveRecord.deprecator) do
595-
@connection.add_foreign_key :astronauts, :rockets, column: "rocket_id", deferrable: true
596-
end
597-
598-
foreign_keys = @connection.foreign_keys("astronauts")
599-
assert_equal 1, foreign_keys.size
600-
601-
fk = foreign_keys.first
602-
assert_equal :immediate, fk.deferrable
603-
end
604592
end
605593

606594
def test_does_not_create_foreign_keys_when_bypassed_by_config

guides/source/7_2_release_notes.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,8 @@ Please refer to the [Changelog][active-record] for detailed changes.
160160

161161
* Remove deprecated support to quote `ActiveSupport::Duration`.
162162

163+
* Remove deprecated support to pass `deferrable: true` to `add_foreign_key`.
164+
163165
### Deprecations
164166

165167
* Deprecate `Rails.application.config.active_record.allow_deprecated_singular_associations_name`

0 commit comments

Comments
 (0)