класс ActiveSupport::Deprecation
Отмечание как устаревшее в Active Support
Отмечание как устаревшее определяет API, используемый Rails для пометки методов, переменных экземпляра, объектов и констант как устаревших. Оно также доступно для использования в gem или приложениях.
Для gem используйте Deprecation.new, чтобы создать объект Deprecation и сохранить его в вашем модуле или классе (чтобы пользователи смогли его настроить).
module MyLibrary
def self.deprecator
@deprecator ||= ActiveSupport::Deprecation.new("2.0", "MyLibrary")
end
end
Для Railtie или Engine, вы также можете добавить его в deprecators приложения, чтобы конфигурация приложения могла быть применена к нему.
module MyLibrary
class Railtie < Rails::Railtie
initializer "my_library.deprecator" do |app|
app.deprecators[:my_library] = MyLibrary.deprecator
end
end
end
С помощью вышеуказанного инициализатора, настройки конфигурации, такие как следующие, будут влиять на MyLibrary.deprecator:
# in config/environments/test.rb config.active_support.deprecation = :raise
Константы
- DEFAULT_BEHAVIORS
-
Поведение по умолчанию при отображении предупреждений по
Rails.env.
Атрибуты
Номер версии, в которой поведение будет удалено, по умолчанию.
Публичные методы класса
# File activesupport/lib/active_support/deprecation.rb, line 71 def initialize(deprecation_horizon = "8.1", gem_name = "Rails") self.gem_name = gem_name self.deprecation_horizon = deprecation_horizon # By default, warnings are not silenced and debugging is off. self.silenced = false self.debug = false @silence_counter = Concurrent::ThreadLocalVar.new(0) @explicitly_allowed_warnings = Concurrent::ThreadLocalVar.new(nil) end
При инициализации принимает два параметра. Первый — версия библиотеки, второй — имя библиотеки.
ActiveSupport::Deprecation.new('2.0', 'MyLibrary')
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.