DEV: Upgrading Discourse to Zeitwerk (#8098)

Zeitwerk simplifies working with dependencies in dev and makes it easier reloading class chains. 

We no longer need to use Rails "require_dependency" anywhere and instead can just use standard 
Ruby patterns to require files.

This is a far reaching change and we expect some followups here.
This commit is contained in:
Krzysztof Kotlarek
2019-10-02 14:01:53 +10:00
committed by Sam
parent 68d35b14f4
commit 427d54b2b0
496 changed files with 293 additions and 1050 deletions

View File

@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency "spam_handler"
class AllowedIpAddressValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)

View File

@ -1,7 +1,5 @@
# frozen_string_literal: true
require 'validators/reply_by_email_address_validator'
class AlternativeReplyByEmailAddressesValidator
def initialize(opts = {})
@opts = opts

View File

@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency "common_passwords/common_passwords"
class PasswordValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)

View File

@ -1,10 +1,6 @@
# frozen_string_literal: true
require_dependency 'validators/stripped_length_validator'
module Validators; end
class Validators::PostValidator < ActiveModel::Validator
class PostValidator < ActiveModel::Validator
def validate(record)
presence(record)
@ -51,7 +47,7 @@ class Validators::PostValidator < ActiveModel::Validator
SiteSetting.post_length
end
Validators::StrippedLengthValidator.validate(post, :raw, post.raw, range)
StrippedLengthValidator.validate(post, :raw, post.raw, range)
end
def raw_quality(post)

View File

@ -1,7 +1,6 @@
# frozen_string_literal: true
module Validators; end
class Validators::StrippedLengthValidator < ActiveModel::EachValidator
class StrippedLengthValidator < ActiveModel::EachValidator
def self.validate(record, attribute, value, range)
unless value.nil?
stripped_length = value.strip.length

View File

@ -4,7 +4,7 @@ require_dependency "file_helper"
module Validators; end
class Validators::UploadValidator < ActiveModel::Validator
class UploadValidator < ActiveModel::Validator
def validate(upload)
# staff can upload any file in PM