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 'admin_user_list_serializer'
class AdminUserSerializer < AdminUserListSerializer
attributes :name,

View File

@@ -1,8 +1,5 @@
# frozen_string_literal: true
require_dependency 'browser_detection'
require_dependency 'discourse_ip_info'
module UserAuthTokensMixin
extend ActiveSupport::Concern

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'new_post_manager'
class CurrentUserSerializer < BasicUserSerializer
attributes :name,

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'pinned_check'
class ListableTopicSerializer < BasicTopicSerializer
attributes :reply_count,

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'application_serializer'
class NewPostResultSerializer < ApplicationSerializer
attributes :action,
:post,

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'configurable_urls'
class PostActionTypeSerializer < ApplicationSerializer
attributes(

View File

@@ -1,9 +1,5 @@
# frozen_string_literal: true
require_dependency 'gap_serializer'
require_dependency 'post_serializer'
require_dependency 'timeline_lookup'
module PostStreamSerializerMixin
def self.included(klass)
klass.attributes :post_stream

View File

@@ -1,5 +1,4 @@
# frozen_string_literal: true
require_dependency 'reviewable_score_explanation_serializer'
class ReviewableExplanationSerializer < ApplicationSerializer
attributes(

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'reviewable_score_type_serializer'
class ReviewableScoreSerializer < ApplicationSerializer
attributes :id, :score, :agree_stats, :status, :reason, :created_at, :reviewed_at

View File

@@ -1,8 +1,5 @@
# frozen_string_literal: true
require_dependency 'reviewable_action_serializer'
require_dependency 'reviewable_editable_field_serializer'
class ReviewableSerializer < ApplicationSerializer
class_attribute :_payload_for_serialization

View File

@@ -1,9 +1,5 @@
# frozen_string_literal: true
require_dependency 'discourse_tagging'
require_dependency 'wizard'
require_dependency 'wizard/builder'
class SiteSerializer < ApplicationSerializer
attributes(

View File

@@ -1,8 +1,5 @@
# frozen_string_literal: true
require_dependency 'pinned_check'
require_dependency 'new_post_manager'
class TopicViewSerializer < ApplicationSerializer
include PostStreamSerializerMixin
include SuggestedTopicsMixin

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'penalty_counts_serializer'
class TrustLevel3RequirementsSerializer < ApplicationSerializer
has_one :penalty_counts, embed: :object, serializer: PenaltyCountsSerializer

View File

@@ -1,7 +1,5 @@
# frozen_string_literal: true
require_dependency 'pinned_check'
class WebHookTopicViewSerializer < TopicViewSerializer
attributes :created_by,
:last_poster