We're disabling `action_controller.raise_on_missing_callback_actions` because sometimes we include `before_action :something, only: actions` in concerns, and we include these concerns in controllers that don't have all these actions. Note that Rails 7.1 logs to STDOUT by default [1]; we're re-adding the condition `if ENV["RAILS_LOG_TO_STDOUT"].present?` because we're still using files and we're rotating the logs to avoid running out of space. Also note that the GraphQL controller test (which is actually a request test, since it's got `type: :request`) that was raising an exception no longer does it thanks to the new default value for the `config.action_dispatch.show_exceptions` configuration option. So we're updating the test accordingly. This option doesn't affect regular controller tests (without the `type: :request` option), so in other tests we're still checking exceptions. [1] Pull request 47138 in https://github.com/rails/rails
93 lines
3.4 KiB
Ruby
93 lines
3.4 KiB
Ruby
Warning[:deprecated] = true
|
|
require "active_support/core_ext/integer/time"
|
|
|
|
Rails.application.configure do
|
|
# Settings specified here will take precedence over those in config/application.rb.
|
|
|
|
# In the development environment your application's code is reloaded any time
|
|
# it changes. This slows down response time but is perfect for development
|
|
# since you don't have to restart the web server when you make code changes.
|
|
config.enable_reloading = true
|
|
|
|
# Do not eager load code on boot.
|
|
config.eager_load = false
|
|
|
|
# Show full error reports.
|
|
config.consider_all_requests_local = true
|
|
|
|
# Enable server timing
|
|
config.server_timing = true
|
|
|
|
# Enable/disable caching. By default caching is disabled.
|
|
# Run rails dev:cache to toggle caching.
|
|
if Rails.root.join("tmp/caching-dev.txt").exist?
|
|
config.action_controller.perform_caching = true
|
|
config.action_controller.enable_fragment_cache_logging = true
|
|
|
|
config.cache_store = :memory_store, { namespace: proc { Tenant.current_schema }}
|
|
config.public_file_server.headers = {
|
|
"Cache-Control" => "public, max-age=#{2.days.to_i}"
|
|
}
|
|
else
|
|
config.action_controller.perform_caching = false
|
|
|
|
config.cache_store = :null_store
|
|
end
|
|
|
|
# Allow accessing the application through a domain so subdomains can be used
|
|
config.hosts << "lvh.me"
|
|
config.hosts << /.*\.lvh\.me/
|
|
|
|
# Don't care if the mailer can't send.
|
|
config.action_mailer.raise_delivery_errors = false
|
|
config.action_mailer.default_url_options = { host: "localhost", port: 3000 }
|
|
|
|
# Deliver emails to a development mailbox at /letter_opener
|
|
config.action_mailer.delivery_method = :letter_opener
|
|
config.action_mailer.perform_caching = false
|
|
|
|
# Print deprecation notices to the Rails logger.
|
|
config.active_support.deprecation = :log
|
|
|
|
# Raise exceptions for disallowed deprecations.
|
|
config.active_support.disallowed_deprecation = :raise
|
|
|
|
# Tell Active Support which deprecation messages to disallow.
|
|
config.active_support.disallowed_deprecation_warnings = []
|
|
|
|
# Raise an error on page load if there are pending migrations.
|
|
config.active_record.migration_error = :page_load
|
|
|
|
# Highlight code that triggered database queries in logs.
|
|
config.active_record.verbose_query_logs = true
|
|
|
|
# Highlight code that enqueued background job in logs.
|
|
config.active_job.verbose_enqueue_logs = true
|
|
|
|
# Suppress logger output for asset requests.
|
|
config.assets.quiet = true
|
|
|
|
# Raises error for missing translations.
|
|
# config.i18n.raise_on_missing_translations = true
|
|
|
|
# Annotate rendered view with file names.
|
|
# config.action_view.annotate_rendered_view_with_filenames = true
|
|
|
|
config.eager_load_paths << "#{Rails.root}/spec/mailers/previews"
|
|
config.action_mailer.preview_path = "#{Rails.root}/spec/mailers/previews"
|
|
|
|
# Limit size of local logs
|
|
# TODO: replace with config.log_file_size after upgrading to Rails 7.1
|
|
logger = ActiveSupport::Logger.new(config.default_log_file, 1, 100.megabytes)
|
|
logger.formatter = config.log_formatter
|
|
config.logger = ActiveSupport::TaggedLogging.new(logger)
|
|
|
|
# Uncomment if you wish to allow Action Cable access from any origin.
|
|
# config.action_cable.disable_request_forgery_protection = true
|
|
|
|
# Raise error when a before_action's only/except options reference missing actions
|
|
# config.action_controller.raise_on_missing_callback_actions = true
|
|
end
|
|
|
|
require Rails.root.join("config", "environments", "custom", "development")
|