diff --git a/app/lib/formatter.rb b/app/lib/formatter.rb index 4ee3c234..21cd4f17 100644 --- a/app/lib/formatter.rb +++ b/app/lib/formatter.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true require 'singleton' -require_relative './sanitize_config' +require_relative './sanitize/config' class HTMLRenderer < Redcarpet::Render::HTML def block_code(code, language) diff --git a/app/lib/sanitize_config.rb b/app/lib/sanitize/config.rb similarity index 100% rename from app/lib/sanitize_config.rb rename to app/lib/sanitize/config.rb diff --git a/config/application.rb b/config/application.rb index 906ce23c..1758473b 100644 --- a/config/application.rb +++ b/config/application.rb @@ -6,7 +6,7 @@ require 'rails/all' # you've limited to :test, :development, or :production. Bundler.require(*Rails.groups) -require_relative '../app/lib/exceptions' +require_relative '../lib/exceptions' require_relative '../lib/paperclip/lazy_thumbnail' require_relative '../lib/paperclip/gif_transcoder' require_relative '../lib/paperclip/video_transcoder' @@ -23,7 +23,7 @@ require_relative '../lib/gabsocial/redis_config' module GabSocial class Application < Rails::Application # Initialize configuration defaults for originally generated Rails version. - config.load_defaults 5.2 + config.load_defaults 6.0 # Settings in config/environments/* take precedence over those specified here. # Application configuration should go into files in config/initializers diff --git a/config/initializers/inflections.rb b/config/initializers/inflections.rb index 6831bdb6..7b169a7e 100644 --- a/config/initializers/inflections.rb +++ b/config/initializers/inflections.rb @@ -10,7 +10,27 @@ # inflect.uncountable %w( fish sheep ) # end -# : TODO : WTF IS THIS? + + +# When converting a file path to a constant name and vice versa, Rails uses inflections to know +# what to do. It uses the `humanize` method to convert a path to a constant, and it uses +# `underscore` to convert a constant to a path. +# +# The inflections below are ones that do not follow the typical convention of underscore/humanize. +# Referring to it as an "acronym" is the easiest way to tell it, "this constant should just be +# downcased to become a path". +# +# BEFORE: +# 'StatsD'.underscore +# => "stats_d" +# 'statsd'.humanize +# => "Statsd" +# +# AFTER: (inflect.acronym 'StatsD') +# 'StatsD'.underscore +# => "statsd" +# 'statsd'.humanize +# => "StatsD" ActiveSupport::Inflector.inflections(:en) do |inflect| inflect.acronym 'StatsD' inflect.acronym 'OEmbed' @@ -19,4 +39,5 @@ ActiveSupport::Inflector.inflections(:en) do |inflect| inflect.acronym 'PubSubHubbub' inflect.acronym 'ActivityStreams' inflect.acronym 'JsonLd' + inflect.acronym 'REST' end diff --git a/config/initializers/new_framework_defaults_6_0.rb b/config/initializers/new_framework_defaults_6_0.rb deleted file mode 100644 index d45195a0..00000000 --- a/config/initializers/new_framework_defaults_6_0.rb +++ /dev/null @@ -1,53 +0,0 @@ -# Be sure to restart your server when you modify this file. -# -# This file contains migration options to ease your Rails 6.0 upgrade. -# -# Once upgraded flip defaults one by one to migrate to the new default. -# -# Read the Guide for Upgrading Ruby on Rails for more info on each option. - -# Don't force requests from old versions of IE to be UTF-8 encoded. -Rails.application.config.action_view.default_enforce_utf8 = false - -# Embed purpose and expiry metadata inside signed and encrypted -# cookies for increased security. -# -# This option is not backwards compatible with earlier Rails versions. -# It's best enabled when your entire app is migrated and stable on 6.0. -# Rails.application.config.action_dispatch.use_cookies_with_metadata = true - -# Change the return value of `ActionDispatch::Response#content_type` to Content-Type header without modification. -# Rails.application.config.action_dispatch.return_only_media_type_on_content_type = false - -# Return false instead of self when enqueuing is aborted from a callback. -Rails.application.config.active_job.return_false_on_aborted_enqueue = true - -# Send Active Storage analysis and purge jobs to dedicated queues. -Rails.application.config.active_storage.queues.analysis = :active_storage_analysis -Rails.application.config.active_storage.queues.purge = :active_storage_purge - -# When assigning to a collection of attachments declared via `has_many_attached`, replace existing -# attachments instead of appending. Use #attach to add new attachments without replacing existing ones. -Rails.application.config.active_storage.replace_on_assign_to_many = true - -# Use ActionMailer::MailDeliveryJob for sending parameterized and normal mail. -# -# The default delivery jobs (ActionMailer::Parameterized::DeliveryJob, ActionMailer::DeliveryJob), -# will be removed in Rails 6.1. This setting is not backwards compatible with earlier Rails versions. -# If you send mail in the background, job workers need to have a copy of -# MailDeliveryJob to ensure all delivery jobs are processed properly. -# Make sure your entire app is migrated and stable on 6.0 before using this setting. -Rails.application.config.action_mailer.delivery_job = "ActionMailer::MailDeliveryJob" - -# Enable the same cache key to be reused when the object being cached of type -# `ActiveRecord::Relation` changes by moving the volatile information (max updated at and count) -# of the relation's cache key into the cache version to support recycling cache key. -Rails.application.config.active_record.collection_cache_versioning = true - - -# The Rails 6 default autoloader is Zeitwerk. Zeitwerk has specific expectations on where certain -# classes should be defined. It also requires that constants are not autoloaded in initializers. -# Enabling Zeitwerk would be good, but it'll take some work. Using the :classic autoloader gives -# us the same autoloading that Rails 5.2 had. -# Rails.application.config.autoloader = :zeitwerk -Rails.application.config.autoloader = :classic diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb index 288453a0..1322c750 100644 --- a/config/initializers/sidekiq.rb +++ b/config/initializers/sidekiq.rb @@ -1,5 +1,7 @@ # frozen_string_literal: true +require_relative '../../app/lib/sidekiq_error_handler' + namespace = ENV.fetch('REDIS_NAMESPACE') { nil } redis_params = { url: ENV['REDIS_URL'] } diff --git a/config/initializers/suppress_csrf_warnings.rb b/config/initializers/suppress_csrf_warnings.rb index 410ab585..41350c25 100644 --- a/config/initializers/suppress_csrf_warnings.rb +++ b/config/initializers/suppress_csrf_warnings.rb @@ -1,3 +1,3 @@ # frozen_string_literal: true -ActionController::Base.log_warning_on_csrf_failure = false +Rails.application.config.action_controller.log_warning_on_csrf_failure = false diff --git a/app/lib/exceptions.rb b/lib/exceptions.rb similarity index 100% rename from app/lib/exceptions.rb rename to lib/exceptions.rb