instance method behavior=

Ruby on Rails edge

Since v4.0.13

Available in: v4.0.13 v4.1.16 v4.2.11.3 v5.0.7.2 v5.1.7 v5.2.8.1 v6.0.6.1 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3.2 v8.0.5.1 v8.1.3.1 edge

Signature

behavior=(behavior)

Sets the behavior to the specified value. Can be a single value, array, or an object that responds to call.

Available behaviors:

:raise

Raise ActiveSupport::DeprecationException.

:stderr

Log all deprecation warnings to $stderr.

:log

Log all deprecation warnings to Rails.logger.

:notify

Use ActiveSupport::Notifications to notify deprecation.rails.

:report

Use ActiveSupport::ErrorReporter to report deprecations.

:silence

Do nothing.

Setting behaviors only affects deprecations that happen after boot time. Deprecation warnings raised by gems are not affected by this setting because they happen before Rails boots up.

deprecator = ActiveSupport::Deprecation.new
deprecator.behavior = :stderr
deprecator.behavior = [:stderr, :log]
deprecator.behavior = MyCustomHandler
deprecator.behavior = ->(message, callstack, deprecation_horizon, gem_name) {
  # custom stuff
}

If you are using Rails, you can set config.active_support.report_deprecations = false to disable all deprecation behaviors. This is similar to the :silence option but more performant.

Parameters

behavior req
Source
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 137
      def behavior=(behavior)
        @behavior = Array(behavior).map { |b| DEFAULT_BEHAVIORS[b] || arity_coerce(b) }
      end

Defined in activesupport/lib/active_support/deprecation/behaviors.rb line 137 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveSupport::Deprecation::Behavior

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close