DEV: Add support for Rails 6

Minor fixes to add Rails 6 support to Discourse, we now will boot
with RAILS_MASTER=1, all specs pass

Only one tiny deprecation left

Largest change was the way ActiveModel:Errors changed interface a
bit but there is a simple backwards compat way of working it
This commit is contained in:
Sam Saffron
2019-04-30 16:58:18 +10:00
parent cf235fbd48
commit 1be01f8dd4
31 changed files with 83 additions and 54 deletions

View File

@@ -10,9 +10,19 @@
module ActiveRecord
module AttributeMethods
module ClassMethods
# this is for Rails 5
def enforce_raw_sql_whitelist(*args)
return
end
BLANK_ARRAY = [].freeze
# this patch just allows everyting in Rails 6
def disallow_raw_sql!(args, permit: nil)
# we may consider moving to https://github.com/rails/rails/pull/33330
# once all frozen string hints are in place
return BLANK_ARRAY
end
end
end
end

View File

@@ -0,0 +1,9 @@
# this is a quick backport of a new method introduced in Rails 6
# to be removed after we upgrade to Rails 6
if ! defined? ActionView::Base.with_view_paths
class ActionView::Base
class << self
alias with_view_paths new
end
end
end