mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Merge pull request #26689 from kamipo/deprecate_passing_name_to_indexes
Deprecate passing `name` to `indexes` like `tables`
This commit is contained in:
commit
fdc219e0f8
7 changed files with 29 additions and 5 deletions
|
@ -1,9 +1,13 @@
|
|||
* Deprecate passing `name` to `indexes`.
|
||||
|
||||
*Ryuta Kamizono*
|
||||
|
||||
* Remove deprecated tasks: `db:test:clone`, `db:test:clone_schema`, `db:test:clone_structure`.
|
||||
|
||||
*Rafel Mendonça França*
|
||||
|
||||
* Compare deserialized values for `PostgreSQL::OID::Hstore` types when
|
||||
calling `ActiveRecord::Dirty#changed_in_place?`
|
||||
calling `ActiveRecord::Dirty#changed_in_place?`.
|
||||
|
||||
Fixes #27502.
|
||||
|
||||
|
|
|
@ -69,7 +69,9 @@ module ActiveRecord
|
|||
end
|
||||
|
||||
# Returns an array of indexes for the given table.
|
||||
# def indexes(table_name, name = nil) end
|
||||
def indexes(table_name, name = nil)
|
||||
raise NotImplementedError, "#indexes is not implemented"
|
||||
end
|
||||
|
||||
# Checks to see if an index exists on a table for a given index definition.
|
||||
#
|
||||
|
|
|
@ -367,6 +367,12 @@ module ActiveRecord
|
|||
|
||||
# Returns an array of indexes for the given table.
|
||||
def indexes(table_name, name = nil) #:nodoc:
|
||||
if name
|
||||
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
||||
Passing name to #indexes is deprecated without replacement.
|
||||
MSG
|
||||
end
|
||||
|
||||
indexes = []
|
||||
current_index = nil
|
||||
execute_and_free("SHOW KEYS FROM #{quote_table_name(table_name)}", "SCHEMA") do |result|
|
||||
|
|
|
@ -166,7 +166,13 @@ module ActiveRecord
|
|||
end
|
||||
|
||||
# Returns an array of indexes for the given table.
|
||||
def indexes(table_name, name = nil)
|
||||
def indexes(table_name, name = nil) # :nodoc:
|
||||
if name
|
||||
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
||||
Passing name to #indexes is deprecated without replacement.
|
||||
MSG
|
||||
end
|
||||
|
||||
table = Utils.extract_schema_qualified_name(table_name.to_s)
|
||||
|
||||
result = query(<<-SQL, "SCHEMA")
|
||||
|
|
|
@ -316,6 +316,12 @@ module ActiveRecord
|
|||
|
||||
# Returns an array of indexes for the given table.
|
||||
def indexes(table_name, name = nil) #:nodoc:
|
||||
if name
|
||||
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
||||
Passing name to #indexes is deprecated without replacement.
|
||||
MSG
|
||||
end
|
||||
|
||||
exec_query("PRAGMA index_list(#{quote_table_name(table_name)})", "SCHEMA").map do |row|
|
||||
sql = <<-SQL
|
||||
SELECT sql
|
||||
|
|
|
@ -95,7 +95,7 @@ module ActiveRecord
|
|||
end
|
||||
|
||||
def test_indexes_logs_name
|
||||
@connection.indexes("items", "hello")
|
||||
assert_deprecated { @connection.indexes("items", "hello") }
|
||||
assert_equal "SCHEMA", @subscriber.logged[0][1]
|
||||
end
|
||||
|
||||
|
|
|
@ -287,7 +287,7 @@ module ActiveRecord
|
|||
def test_indexes_logs_name
|
||||
with_example_table do
|
||||
assert_logged [["PRAGMA index_list(\"ex\")", "SCHEMA", []]] do
|
||||
@conn.indexes("ex", "hello")
|
||||
assert_deprecated { @conn.indexes("ex", "hello") }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue