While debugging JavaScript is certainly useful, enabling it generates about 100 extra HTTP requests because we include about 100 JavaScript files (including external dependencies and files written by us). Depending on the browser configuration, this might make the browser take a very long time processing these requests. On my machine, with these changes, refreshing a page on Firefox takes about 1 second, while previously it took about 6-8 seconds. With Chromium, there doesn't seem to be much difference. Developers are encouraged to temporarily turn debugging while debugging JavaScript (which is a task I personally do about once a month) if that makes debugging easier for them. This change doesn't affect our CSS files, since for CSS we use Sass instead of the asset pipeline. Sass already compiles all CSS files into one in the development environment.
77 lines
2.7 KiB
Ruby
77 lines
2.7 KiB
Ruby
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 on
|
|
# every request. 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.cache_classes = false
|
|
|
|
# Do not eager load code on boot.
|
|
config.eager_load = false
|
|
|
|
# Show full error reports.
|
|
config.consider_all_requests_local = 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.cache_store = :memory_store
|
|
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
|
|
|
|
# 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 }
|
|
config.action_mailer.asset_host = "http://localhost: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 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
|
|
|
|
# Debug mode disables concatenation and preprocessing of assets.
|
|
# This option may cause significant delays in view rendering with a large
|
|
# number of complex assets.
|
|
config.assets.debug = false
|
|
|
|
# Adds additional error checking when serving assets at runtime.
|
|
# Checks for improperly declared sprockets dependencies.
|
|
# Raises helpful error messages.
|
|
config.assets.raise_runtime_errors = true
|
|
# Suppress logger output for asset requests.
|
|
config.assets.quiet = true
|
|
|
|
# Raises error for missing translations
|
|
# config.action_view.raise_on_missing_translations = true
|
|
|
|
config.action_mailer.preview_path = "#{Rails.root}/spec/mailers/previews"
|
|
|
|
config.after_initialize do
|
|
Bullet.enable = true
|
|
Bullet.bullet_logger = true
|
|
if ENV["BULLET"]
|
|
Bullet.rails_logger = true
|
|
Bullet.add_footer = true
|
|
end
|
|
end
|
|
# Use an evented file watcher to asynchronously detect changes in source code,
|
|
# routes, locales, etc. This feature depends on the listen gem.
|
|
# config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
|
end
|