提交 c9591102 编写于 作者: Y Yves Senn

Merge pull request #11277 from arunagw/deprecation-removed

Deprecation removed
* Remove deprecated `scope` use without passing a callable object.
*Arun Agrawal*
* Remove deprecated `transaction_joinable=` in favor of `begin_transaction`
with `:joinable` option.
*Arun Agrawal*
* Remove deprecated `decrement_open_transactions`.
*Arun Agrawal*
* Remove deprecated `increment_open_transactions`.
*Arun Agrawal*
* Remove deprecated `PostgreSQLAdapter#outside_transaction?`
method. You can use `#transaction_open?` instead.
......
......@@ -387,20 +387,6 @@ def open_transactions
@transaction.number
end
def increment_open_transactions
ActiveSupport::Deprecation.warn "#increment_open_transactions is deprecated and has no effect"
end
def decrement_open_transactions
ActiveSupport::Deprecation.warn "#decrement_open_transactions is deprecated and has no effect"
end
def transaction_joinable=(joinable)
message = "#transaction_joinable= is deprecated. Please pass the :joinable option to #begin_transaction instead."
ActiveSupport::Deprecation.warn message
@transaction.joinable = joinable
end
def create_savepoint
end
......
......@@ -141,19 +141,6 @@ def scope_attributes? # :nodoc:
def scope(name, body, &block)
extension = Module.new(&block) if block
# Check body.is_a?(Relation) to prevent the relation actually being
# loaded by respond_to?
if body.is_a?(Relation) || !body.respond_to?(:call)
ActiveSupport::Deprecation.warn(
"Using #scope without passing a callable object is deprecated. For " \
"example `scope :red, where(color: 'red')` should be changed to " \
"`scope :red, -> { where(color: 'red') }`. There are numerous gotchas " \
"in the former usage and it makes the implementation more complicated " \
"and buggy. (If you prefer, you can just define a class method named " \
"`self.red`.)"
)
end
singleton_class.send(:define_method, name) do |*args|
if body.respond_to?(:call)
scope = all.scoping { body.call(*args) }
......
......@@ -435,16 +435,6 @@ def test_scoped_are_lazy_loaded_if_table_still_does_not_exist
end
end
def test_eager_scopes_are_deprecated
klass = Class.new(ActiveRecord::Base)
klass.table_name = 'posts'
assert_deprecated do
klass.scope :welcome_2, klass.where(:id => posts(:welcome).id)
end
assert_equal [posts(:welcome).title], klass.welcome_2.map(&:title)
end
def test_eager_default_scope_relations_are_remove
klass = Class.new(ActiveRecord::Base)
klass.table_name = 'posts'
......
......@@ -593,14 +593,5 @@ def test_transaction_isolation__read_committed
assert_equal original_salary, Developer.find(1).salary
end
test "#transaction_joinable= is deprecated" do
Developer.transaction do
conn = Developer.connection
assert conn.current_transaction.joinable?
assert_deprecated { conn.transaction_joinable = false }
assert !conn.current_transaction.joinable?
end
end
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册