Skip to content

Relatively short method chain with hash passed last breaks chain on multiple lines #729

@rafbm

Description

@rafbm

Removing one method call, eg. changing the line to config.action_dispatch.merge! does not produce this behavior. Not sure if this follows a generally accepted “max chained method calls on a single line” guideline which I’m not aware of?

Metadata

  • Ruby version: 2.6.6p146
  • @prettier/plugin-ruby or prettier gem version: 1.0.1
  • Options: All current defaults.

Input

module Missive
  class Application < Rails::Application
    config.action_dispatch.rescue_responses.merge!(
      # We created more threads than RAILS_MAX_THREADS
      'ActiveRecord::ConnectionTimeoutError' => :service_unavailable,
      # Some query hits a timeout
      'ActiveRecord::QueryCanceled' => :service_unavailable,
      # Rack::Timeout
      'Rack::Timeout::RequestExpiryError' => :service_unavailable,
      'Rack::Timeout::RequestTimeoutError' => :service_unavailable,
      'Rack::Timeout::RequestTimeoutException' => :service_unavailable,
    )
  end
end

Current output

module Missive
  class Application < Rails::Application
    config
      .action_dispatch
      .rescue_responses
      .merge!(
        # We created more threads than RAILS_MAX_THREADS
        'ActiveRecord::ConnectionTimeoutError' => :service_unavailable,
        # Some query hits a timeout
        'ActiveRecord::QueryCanceled' => :service_unavailable,
        # Rack::Timeout
        'Rack::Timeout::RequestExpiryError' => :service_unavailable,
        'Rack::Timeout::RequestTimeoutError' => :service_unavailable,
        'Rack::Timeout::RequestTimeoutException' => :service_unavailable
      )
  end
end

Expected output

module Missive
  class Application < Rails::Application
    config.action_dispatch.rescue_responses.merge!(
      # We created more threads than RAILS_MAX_THREADS
      'ActiveRecord::ConnectionTimeoutError' => :service_unavailable,
      # Some query hits a timeout
      'ActiveRecord::QueryCanceled' => :service_unavailable,
      # Rack::Timeout
      'Rack::Timeout::RequestExpiryError' => :service_unavailable,
      'Rack::Timeout::RequestTimeoutError' => :service_unavailable,
      'Rack::Timeout::RequestTimeoutException' => :service_unavailable,
    )
  end
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions