diff options
139 files changed, 286 insertions, 7 deletions
diff --git a/app/controllers/admin/services_controller.rb b/app/controllers/admin/services_controller.rb index e70aa549140..91a36af34f3 100644 --- a/app/controllers/admin/services_controller.rb +++ b/app/controllers/admin/services_controller.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Admin::ServicesController < Admin::ApplicationController include ServiceParams @@ -30,7 +32,7 @@ class Admin::ServicesController < Admin::ApplicationController def services_templates Service.available_services_names.map do |service_name| - service_template = service_name.concat("_service").camelize.constantize + service_template = "#{service_name}_service".camelize.constantize service_template.where(template: true).first_or_create end end diff --git a/app/models/ability.rb b/app/models/ability.rb index bb600eaccba..a853106e5bd 100644 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require_dependency 'declarative_policy' class Ability diff --git a/app/models/abuse_report.rb b/app/models/abuse_report.rb index 4cbd90c5817..1b78fd04ebb 100644 --- a/app/models/abuse_report.rb +++ b/app/models/abuse_report.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class AbuseReport < ActiveRecord::Base include CacheMarkdownField diff --git a/app/models/active_session.rb b/app/models/active_session.rb index b4a86dbb331..0d9c6a4a1f0 100644 --- a/app/models/active_session.rb +++ b/app/models/active_session.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ActiveSession include ActiveModel::Model diff --git a/app/models/appearance.rb b/app/models/appearance.rb index b770aadef0e..bffba3e13fa 100644 --- a/app/models/appearance.rb +++ b/app/models/appearance.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Appearance < ActiveRecord::Base include CacheableAttributes include CacheMarkdownField diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb index 17297769e7e..bbe7811841a 100644 --- a/app/models/application_setting.rb +++ b/app/models/application_setting.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ApplicationSetting < ActiveRecord::Base include CacheableAttributes include CacheMarkdownField diff --git a/app/models/audit_event.rb b/app/models/audit_event.rb index 112a8778b4e..8508c88d406 100644 --- a/app/models/audit_event.rb +++ b/app/models/audit_event.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class AuditEvent < ActiveRecord::Base serialize :details, Hash # rubocop:disable Cop/ActiveRecordSerialize diff --git a/app/models/award_emoji.rb b/app/models/award_emoji.rb index 4d1a15c53aa..99c7866d636 100644 --- a/app/models/award_emoji.rb +++ b/app/models/award_emoji.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class AwardEmoji < ActiveRecord::Base DOWNVOTE_NAME = "thumbsdown".freeze UPVOTE_NAME = "thumbsup".freeze diff --git a/app/models/badge.rb b/app/models/badge.rb index 265c5d872d4..7e3b6b659e4 100644 --- a/app/models/badge.rb +++ b/app/models/badge.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Badge < ActiveRecord::Base # This structure sets the placeholders that the urls # can have. This hash also sets which action to ask when diff --git a/app/models/blob.rb b/app/models/blob.rb index 71c974b4c09..acc64ffca67 100644 --- a/app/models/blob.rb +++ b/app/models/blob.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # Blob is a Rails-specific wrapper around Gitlab::Git::Blob objects class Blob < SimpleDelegator CACHE_TIME = 60 # Cache raw blobs referred to by a (mutable) ref for 1 minute diff --git a/app/models/board.rb b/app/models/board.rb index bb6bb753daf..a137863456c 100644 --- a/app/models/board.rb +++ b/app/models/board.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Board < ActiveRecord::Base belongs_to :group belongs_to :project diff --git a/app/models/broadcast_message.rb b/app/models/broadcast_message.rb index 4aa236555cb..baf8adb318b 100644 --- a/app/models/broadcast_message.rb +++ b/app/models/broadcast_message.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class BroadcastMessage < ActiveRecord::Base include CacheMarkdownField include Sortable diff --git a/app/models/chat_name.rb b/app/models/chat_name.rb index fbd0f123341..03b0af53046 100644 --- a/app/models/chat_name.rb +++ b/app/models/chat_name.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ChatName < ActiveRecord::Base LAST_USED_AT_INTERVAL = 1.hour diff --git a/app/models/chat_team.rb b/app/models/chat_team.rb index 25ecf2d5937..4e724f9adf7 100644 --- a/app/models/chat_team.rb +++ b/app/models/chat_team.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ChatTeam < ActiveRecord::Base validates :team_id, presence: true validates :namespace, uniqueness: true diff --git a/app/models/commit.rb b/app/models/commit.rb index 56d4c86774e..8b9f4490ffa 100644 --- a/app/models/commit.rb +++ b/app/models/commit.rb @@ -1,4 +1,6 @@ # coding: utf-8 +# frozen_string_literal: true + class Commit extend ActiveModel::Naming extend Gitlab::Cache::RequestCache @@ -339,21 +341,21 @@ class Commit end def cherry_pick_description(user) - message_body = "(cherry picked from commit #{sha})" + message_body = ["(cherry picked from commit #{sha})"] if merged_merge_request?(user) commits_in_merge_request = merged_merge_request(user).commits if commits_in_merge_request.present? - message_body << "\n" + message_body << "" commits_in_merge_request.reverse.each do |commit_in_merge| - message_body << "\n#{commit_in_merge.short_id} #{commit_in_merge.title}" + message_body << "#{commit_in_merge.short_id} #{commit_in_merge.title}" end end end - message_body + message_body.join("\n") end def cherry_pick_message(user) diff --git a/app/models/commit_range.rb b/app/models/commit_range.rb index b93c111dabc..094747ee48d 100644 --- a/app/models/commit_range.rb +++ b/app/models/commit_range.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # CommitRange makes it easier to work with commit ranges # # Examples: diff --git a/app/models/commit_status.rb b/app/models/commit_status.rb index 8b1093655b7..b65d7672973 100644 --- a/app/models/commit_status.rb +++ b/app/models/commit_status.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class CommitStatus < ActiveRecord::Base include HasStatus include Importable diff --git a/app/models/compare.rb b/app/models/compare.rb index feb4b89c781..b2d46ada831 100644 --- a/app/models/compare.rb +++ b/app/models/compare.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Compare include Gitlab::Utils::StrongMemoize diff --git a/app/models/container_repository.rb b/app/models/container_repository.rb index d0c94d3b694..41413854d5c 100644 --- a/app/models/container_repository.rb +++ b/app/models/container_repository.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ContainerRepository < ActiveRecord::Base belongs_to :project diff --git a/app/models/cycle_analytics.rb b/app/models/cycle_analytics.rb index b34d1382d43..d0f5b6970b1 100644 --- a/app/models/cycle_analytics.rb +++ b/app/models/cycle_analytics.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class CycleAnalytics STAGES = %i[issue plan code test review staging production].freeze diff --git a/app/models/dashboard_milestone.rb b/app/models/dashboard_milestone.rb index 86eb4ec76fc..96bc8090b81 100644 --- a/app/models/dashboard_milestone.rb +++ b/app/models/dashboard_milestone.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class DashboardMilestone < GlobalMilestone def issues_finder_params { authorized_only: true } diff --git a/app/models/deploy_key.rb b/app/models/deploy_key.rb index 89a74b7dcb1..fd5d7726fb6 100644 --- a/app/models/deploy_key.rb +++ b/app/models/deploy_key.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class DeployKey < Key include IgnorableColumn diff --git a/app/models/deploy_keys_project.rb b/app/models/deploy_keys_project.rb index 6eef12c4373..71fd02fac86 100644 --- a/app/models/deploy_keys_project.rb +++ b/app/models/deploy_keys_project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class DeployKeysProject < ActiveRecord::Base belongs_to :project belongs_to :deploy_key, inverse_of: :deploy_keys_projects diff --git a/app/models/deploy_token.rb b/app/models/deploy_token.rb index fdbe95059e5..c466304a827 100644 --- a/app/models/deploy_token.rb +++ b/app/models/deploy_token.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class DeployToken < ActiveRecord::Base include Expirable include TokenAuthenticatable diff --git a/app/models/deployment.rb b/app/models/deployment.rb index 687246b47b2..6962b54441b 100644 --- a/app/models/deployment.rb +++ b/app/models/deployment.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Deployment < ActiveRecord::Base include AtomicInternalId include IidRoutes diff --git a/app/models/diff_discussion.rb b/app/models/diff_discussion.rb index bd6af622bfb..93e3ebf7896 100644 --- a/app/models/diff_discussion.rb +++ b/app/models/diff_discussion.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A discussion on merge request or commit diffs consisting of `DiffNote` notes. # # A discussion of this type can be resolvable. diff --git a/app/models/diff_note.rb b/app/models/diff_note.rb index d752d5bcdee..58d949315e0 100644 --- a/app/models/diff_note.rb +++ b/app/models/diff_note.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A note on merge request or commit diffs # # A note of this type can be resolvable. diff --git a/app/models/directly_addressed_user.rb b/app/models/directly_addressed_user.rb index 0d519c6ac22..06df2d6c012 100644 --- a/app/models/directly_addressed_user.rb +++ b/app/models/directly_addressed_user.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class DirectlyAddressedUser class << self def reference_pattern diff --git a/app/models/discussion.rb b/app/models/discussion.rb index 35a0ef00856..dbc7b6e67be 100644 --- a/app/models/discussion.rb +++ b/app/models/discussion.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A non-diff discussion on an issue, merge request, commit, or snippet, consisting of `DiscussionNote` notes. # # A discussion of this type can be resolvable. diff --git a/app/models/discussion_note.rb b/app/models/discussion_note.rb index e660b024083..89d86aaed66 100644 --- a/app/models/discussion_note.rb +++ b/app/models/discussion_note.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A note in a non-diff discussion on an issue, merge request, commit, or snippet. # # A note of this type can be resolvable. diff --git a/app/models/email.rb b/app/models/email.rb index 15bdedeac33..b6a977dfa22 100644 --- a/app/models/email.rb +++ b/app/models/email.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Email < ActiveRecord::Base include Sortable include Gitlab::SQL::Pattern diff --git a/app/models/environment.rb b/app/models/environment.rb index 4856d313318..c8d1d378ae0 100644 --- a/app/models/environment.rb +++ b/app/models/environment.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Environment < ActiveRecord::Base # Used to generate random suffixes for the slug LETTERS = 'a'..'z' @@ -173,7 +175,7 @@ class Environment < ActiveRecord::Base # * cannot end with `-` def generate_slug # Lowercase letters and numbers only - slugified = name.to_s.downcase.gsub(/[^a-z0-9]/, '-') + slugified = +name.to_s.downcase.gsub(/[^a-z0-9]/, '-') # Must start with a letter slugified = 'env-' + slugified unless LETTERS.cover?(slugified[0]) diff --git a/app/models/epic.rb b/app/models/epic.rb index 286b855de3f..f027993376c 100644 --- a/app/models/epic.rb +++ b/app/models/epic.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # Placeholder class for model that is implemented in EE # It reserves '&' as a reference prefix, but the table does not exists in CE class Epic < ActiveRecord::Base diff --git a/app/models/event.rb b/app/models/event.rb index ac0b1c7b27c..ba28866e8e6 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Event < ActiveRecord::Base include Sortable include IgnorableColumn diff --git a/app/models/event_collection.rb b/app/models/event_collection.rb index 8b8244314af..a4c69b11781 100644 --- a/app/models/event_collection.rb +++ b/app/models/event_collection.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A collection of events to display in an event list. # # An EventCollection is meant to be used for displaying events to a user (e.g. diff --git a/app/models/external_issue.rb b/app/models/external_issue.rb index 282fd7edcb7..4f73beaafc5 100644 --- a/app/models/external_issue.rb +++ b/app/models/external_issue.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ExternalIssue include Referable diff --git a/app/models/fork_network.rb b/app/models/fork_network.rb index 7f1728e8c77..1b9bf93cbbc 100644 --- a/app/models/fork_network.rb +++ b/app/models/fork_network.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ForkNetwork < ActiveRecord::Base belongs_to :root_project, class_name: 'Project' has_many :fork_network_members diff --git a/app/models/fork_network_member.rb b/app/models/fork_network_member.rb index eb9417dc34f..36c66f21b0b 100644 --- a/app/models/fork_network_member.rb +++ b/app/models/fork_network_member.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ForkNetworkMember < ActiveRecord::Base belongs_to :fork_network belongs_to :project diff --git a/app/models/forked_project_link.rb b/app/models/forked_project_link.rb index 8d35864eff6..0f7067238cd 100644 --- a/app/models/forked_project_link.rb +++ b/app/models/forked_project_link.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ForkedProjectLink < ActiveRecord::Base belongs_to :forked_to_project, -> { where.not(pending_delete: true) }, class_name: 'Project' belongs_to :forked_from_project, -> { where.not(pending_delete: true) }, class_name: 'Project' diff --git a/app/models/generic_commit_status.rb b/app/models/generic_commit_status.rb index 5ac8bde44cd..3028bf21301 100644 --- a/app/models/generic_commit_status.rb +++ b/app/models/generic_commit_status.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GenericCommitStatus < CommitStatus before_validation :set_default_values diff --git a/app/models/global_label.rb b/app/models/global_label.rb index 2a1b7564962..c5b2492bbf6 100644 --- a/app/models/global_label.rb +++ b/app/models/global_label.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GlobalLabel attr_accessor :title, :labels alias_attribute :name, :title diff --git a/app/models/global_milestone.rb b/app/models/global_milestone.rb index dc2f6817190..2ddad9b6b0b 100644 --- a/app/models/global_milestone.rb +++ b/app/models/global_milestone.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GlobalMilestone include Milestoneish diff --git a/app/models/gpg_key.rb b/app/models/gpg_key.rb index 44eda741679..077afffd358 100644 --- a/app/models/gpg_key.rb +++ b/app/models/gpg_key.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GpgKey < ActiveRecord::Base KEY_PREFIX = '-----BEGIN PGP PUBLIC KEY BLOCK-----'.freeze KEY_SUFFIX = '-----END PGP PUBLIC KEY BLOCK-----'.freeze diff --git a/app/models/gpg_key_subkey.rb b/app/models/gpg_key_subkey.rb index b57922aba30..440b588bc78 100644 --- a/app/models/gpg_key_subkey.rb +++ b/app/models/gpg_key_subkey.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GpgKeySubkey < ActiveRecord::Base include ShaAttribute diff --git a/app/models/gpg_signature.rb b/app/models/gpg_signature.rb index bf88d75246f..0816778deae 100644 --- a/app/models/gpg_signature.rb +++ b/app/models/gpg_signature.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GpgSignature < ActiveRecord::Base include ShaAttribute diff --git a/app/models/group.rb b/app/models/group.rb index ddebaff50b0..cd548fc0061 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'carrierwave/orm/activerecord' class Group < Namespace diff --git a/app/models/group_custom_attribute.rb b/app/models/group_custom_attribute.rb index 8157d602d67..22f14885657 100644 --- a/app/models/group_custom_attribute.rb +++ b/app/models/group_custom_attribute.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GroupCustomAttribute < ActiveRecord::Base belongs_to :group diff --git a/app/models/group_label.rb b/app/models/group_label.rb index 92c83b54861..ff14529c6e6 100644 --- a/app/models/group_label.rb +++ b/app/models/group_label.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GroupLabel < Label belongs_to :group diff --git a/app/models/group_milestone.rb b/app/models/group_milestone.rb index 98135ee3c8b..d6ab32ea7c8 100644 --- a/app/models/group_milestone.rb +++ b/app/models/group_milestone.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class GroupMilestone < GlobalMilestone attr_accessor :group diff --git a/app/models/guest.rb b/app/models/guest.rb index df287c277a7..9c8097e1ac8 100644 --- a/app/models/guest.rb +++ b/app/models/guest.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Guest class << self def can?(action, subject = :global) diff --git a/app/models/identity.rb b/app/models/identity.rb index 3fd0c5e751d..f5a13dbd6f2 100644 --- a/app/models/identity.rb +++ b/app/models/identity.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Identity < ActiveRecord::Base def self.uniqueness_scope :provider diff --git a/app/models/import_export_upload.rb b/app/models/import_export_upload.rb index 60d53d6c2c8..40795d7c42f 100644 --- a/app/models/import_export_upload.rb +++ b/app/models/import_export_upload.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ImportExportUpload < ActiveRecord::Base include WithUploads include ObjectStorage::BackgroundMove diff --git a/app/models/individual_note_discussion.rb b/app/models/individual_note_discussion.rb index 6be8ca45739..07ee7470ea2 100644 --- a/app/models/individual_note_discussion.rb +++ b/app/models/individual_note_discussion.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A discussion to wrap a single `Note` note on the root of an issue, merge request, # commit, or snippet, that is not displayed as a discussion. # diff --git a/app/models/instance_configuration.rb b/app/models/instance_configuration.rb index b30b707e5fe..7d8ce0bbd05 100644 --- a/app/models/instance_configuration.rb +++ b/app/models/instance_configuration.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'resolv' class InstanceConfiguration diff --git a/app/models/internal_id.rb b/app/models/internal_id.rb index e5d0f94073c..4eb211eff61 100644 --- a/app/models/internal_id.rb +++ b/app/models/internal_id.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # An InternalId is a strictly monotone sequence of integers # generated for a given scope and usage. # diff --git a/app/models/issue.rb b/app/models/issue.rb index e4ed06f9a69..0d135f54038 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'carrierwave/orm/activerecord' class Issue < ActiveRecord::Base diff --git a/app/models/issue_assignee.rb b/app/models/issue_assignee.rb index 326b9eb7ad5..400c0256945 100644 --- a/app/models/issue_assignee.rb +++ b/app/models/issue_assignee.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class IssueAssignee < ActiveRecord::Base belongs_to :issue belongs_to :assignee, class_name: "User", foreign_key: :user_id diff --git a/app/models/issue_collection.rb b/app/models/issue_collection.rb index 49f011c113f..05607fc3a08 100644 --- a/app/models/issue_collection.rb +++ b/app/models/issue_collection.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # IssueCollection can be used to reduce a list of issues down to a subset. # # IssueCollection is not meant to be some sort of Enumerable, instead it's meant diff --git a/app/models/key.rb b/app/models/key.rb index ae5769c0627..3bb0d2f6f9c 100644 --- a/app/models/key.rb +++ b/app/models/key.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'digest/md5' class Key < ActiveRecord::Base diff --git a/app/models/label.rb b/app/models/label.rb index 7b08547fa6e..96c1515b41a 100644 --- a/app/models/label.rb +++ b/app/models/label.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Label < ActiveRecord::Base include CacheMarkdownField include Referable diff --git a/app/models/label_link.rb b/app/models/label_link.rb index d68e1f54317..779657b25d5 100644 --- a/app/models/label_link.rb +++ b/app/models/label_link.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class LabelLink < ActiveRecord::Base include Importable diff --git a/app/models/label_priority.rb b/app/models/label_priority.rb index 5b85e0b6533..8ed8bb7577f 100644 --- a/app/models/label_priority.rb +++ b/app/models/label_priority.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class LabelPriority < ActiveRecord::Base belongs_to :project belongs_to :label diff --git a/app/models/legacy_diff_discussion.rb b/app/models/legacy_diff_discussion.rb index 80fc6304fd4..7d78c580fa2 100644 --- a/app/models/legacy_diff_discussion.rb +++ b/app/models/legacy_diff_discussion.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A discussion on merge request or commit diffs consisting of `LegacyDiffNote` notes. # # All new diff discussions are of the type `DiffDiscussion`, but any diff discussions created diff --git a/app/models/legacy_diff_note.rb b/app/models/legacy_diff_note.rb index d90cafd14b4..20f9b18e4ca 100644 --- a/app/models/legacy_diff_note.rb +++ b/app/models/legacy_diff_note.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A note on merge request or commit diffs, using the legacy implementation. # # All new diff notes are of the type `DiffNote`, but any diff notes created diff --git a/app/models/lfs_file_lock.rb b/app/models/lfs_file_lock.rb index 50bb6ca382d..431d37e12e9 100644 --- a/app/models/lfs_file_lock.rb +++ b/app/models/lfs_file_lock.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class LfsFileLock < ActiveRecord::Base belongs_to :project belongs_to :user diff --git a/app/models/lfs_object.rb b/app/models/lfs_object.rb index 84487031ee5..2a1a4ef48b7 100644 --- a/app/models/lfs_object.rb +++ b/app/models/lfs_object.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class LfsObject < ActiveRecord::Base include AfterCommitQueue include ObjectStorage::BackgroundMove diff --git a/app/models/lfs_objects_project.rb b/app/models/lfs_objects_project.rb index b0625c52b62..353602800d7 100644 --- a/app/models/lfs_objects_project.rb +++ b/app/models/lfs_objects_project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class LfsObjectsProject < ActiveRecord::Base belongs_to :project belongs_to :lfs_object diff --git a/app/models/list.rb b/app/models/list.rb index 4edcfa78835..eabe3ffccbb 100644 --- a/app/models/list.rb +++ b/app/models/list.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class List < ActiveRecord::Base belongs_to :board belongs_to :label diff --git a/app/models/member.rb b/app/models/member.rb index 00a13a279a9..05c0bc8cb97 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Member < ActiveRecord::Base include AfterCommitQueue include Sortable diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 124ff6b3f91..06642c15585 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class MergeRequest < ActiveRecord::Base include AtomicInternalId include IidRoutes diff --git a/app/models/merge_request_diff.rb b/app/models/merge_request_diff.rb index dbc072c19a9..d9393b4e545 100644 --- a/app/models/merge_request_diff.rb +++ b/app/models/merge_request_diff.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class MergeRequestDiff < ActiveRecord::Base include Sortable include Importable diff --git a/app/models/merge_request_diff_commit.rb b/app/models/merge_request_diff_commit.rb index 1c2e57bb01f..4ad3690512d 100644 --- a/app/models/merge_request_diff_commit.rb +++ b/app/models/merge_request_diff_commit.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class MergeRequestDiffCommit < ActiveRecord::Base include ShaAttribute diff --git a/app/models/merge_request_diff_file.rb b/app/models/merge_request_diff_file.rb index cd8ba6b904d..a9f110bec5c 100644 --- a/app/models/merge_request_diff_file.rb +++ b/app/models/merge_request_diff_file.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class MergeRequestDiffFile < ActiveRecord::Base include Gitlab::EncodingHelper include DiffFile diff --git a/app/models/merge_requests_closing_issues.rb b/app/models/merge_requests_closing_issues.rb index 7f7c114803d..242b65bedc0 100644 --- a/app/models/merge_requests_closing_issues.rb +++ b/app/models/merge_requests_closing_issues.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class MergeRequestsClosingIssues < ActiveRecord::Base belongs_to :merge_request belongs_to :issue diff --git a/app/models/milestone.rb b/app/models/milestone.rb index d0f7f9c3593..f2b2d291da9 100644 --- a/app/models/milestone.rb +++ b/app/models/milestone.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Milestone < ActiveRecord::Base # Represents a "No Milestone" state used for filtering Issues and Merge # Requests that have no milestone assigned. diff --git a/app/models/namespace.rb b/app/models/namespace.rb index de06e080a7d..b974309aeb6 100644 --- a/app/models/namespace.rb +++ b/app/models/namespace.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Namespace < ActiveRecord::Base include CacheMarkdownField include Sortable diff --git a/app/models/note.rb b/app/models/note.rb index 87cf7c7b2fa..969d34ae09a 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # A note on the root of an issue, merge request, commit, or snippet. # # A note of this type is never resolvable. diff --git a/app/models/note_diff_file.rb b/app/models/note_diff_file.rb index e688018a6d9..27aef7adc48 100644 --- a/app/models/note_diff_file.rb +++ b/app/models/note_diff_file.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class NoteDiffFile < ActiveRecord::Base include DiffFile diff --git a/app/models/notification_reason.rb b/app/models/notification_reason.rb index c3965565022..0a13487574f 100644 --- a/app/models/notification_reason.rb +++ b/app/models/notification_reason.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # Holds reasons for a notification to have been sent as well as a priority list to select which reason to use # above the rest class NotificationReason diff --git a/app/models/notification_recipient.rb b/app/models/notification_recipient.rb index 1a03dd9df56..9f16eefe074 100644 --- a/app/models/notification_recipient.rb +++ b/app/models/notification_recipient.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class NotificationRecipient include Gitlab::Utils::StrongMemoize diff --git a/app/models/notification_setting.rb b/app/models/notification_setting.rb index 1933c46ee44..1df3a51a7fc 100644 --- a/app/models/notification_setting.rb +++ b/app/models/notification_setting.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class NotificationSetting < ActiveRecord::Base include IgnorableColumn diff --git a/app/models/oauth_access_grant.rb b/app/models/oauth_access_grant.rb index 3a997406565..d5a8a1a25b6 100644 --- a/app/models/oauth_access_grant.rb +++ b/app/models/oauth_access_grant.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class OauthAccessGrant < Doorkeeper::AccessGrant belongs_to :resource_owner, class_name: 'User' belongs_to :application, class_name: 'Doorkeeper::Application' diff --git a/app/models/oauth_access_token.rb b/app/models/oauth_access_token.rb index e8595b13d6d..0aa920fa828 100644 --- a/app/models/oauth_access_token.rb +++ b/app/models/oauth_access_token.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class OauthAccessToken < Doorkeeper::AccessToken belongs_to :resource_owner, class_name: 'User' belongs_to :application, class_name: 'Doorkeeper::Application' diff --git a/app/models/out_of_context_discussion.rb b/app/models/out_of_context_discussion.rb index 4227c40b69a..4de717e2c51 100644 --- a/app/models/out_of_context_discussion.rb +++ b/app/models/out_of_context_discussion.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # When notes on a commit are displayed in the context of a merge request that # contains that commit, they are displayed as if they were a discussion. # diff --git a/app/models/pages_domain.rb b/app/models/pages_domain.rb index bfea64c3759..7739a3894d3 100644 --- a/app/models/pages_domain.rb +++ b/app/models/pages_domain.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class PagesDomain < ActiveRecord::Base VERIFICATION_KEY = 'gitlab-pages-verification-code'.freeze VERIFICATION_THRESHOLD = 3.days.freeze diff --git a/app/models/personal_access_token.rb b/app/models/personal_access_token.rb index 063dc521324..207146479c0 100644 --- a/app/models/personal_access_token.rb +++ b/app/models/personal_access_token.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class PersonalAccessToken < ActiveRecord::Base include Expirable include TokenAuthenticatable diff --git a/app/models/personal_snippet.rb b/app/models/personal_snippet.rb index 355624fd552..1b5be8698b1 100644 --- a/app/models/personal_snippet.rb +++ b/app/models/personal_snippet.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class PersonalSnippet < Snippet include WithUploads end diff --git a/app/models/project.rb b/app/models/project.rb index af32afc08e2..16d63639141 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'carrierwave/orm/activerecord' class Project < ActiveRecord::Base diff --git a/app/models/project_authorization.rb b/app/models/project_authorization.rb index 73302207e6b..746bb4584c9 100644 --- a/app/models/project_authorization.rb +++ b/app/models/project_authorization.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectAuthorization < ActiveRecord::Base belongs_to :user belongs_to :project diff --git a/app/models/project_auto_devops.rb b/app/models/project_auto_devops.rb index faa831b1949..155400d1a43 100644 --- a/app/models/project_auto_devops.rb +++ b/app/models/project_auto_devops.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectAutoDevops < ActiveRecord::Base belongs_to :project diff --git a/app/models/project_ci_cd_setting.rb b/app/models/project_ci_cd_setting.rb index 588cced5781..1dad235cc2b 100644 --- a/app/models/project_ci_cd_setting.rb +++ b/app/models/project_ci_cd_setting.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectCiCdSetting < ActiveRecord::Base belongs_to :project, inverse_of: :ci_cd_settings diff --git a/app/models/project_custom_attribute.rb b/app/models/project_custom_attribute.rb index 3f1a7b86a82..4e767cb3b26 100644 --- a/app/models/project_custom_attribute.rb +++ b/app/models/project_custom_attribute.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectCustomAttribute < ActiveRecord::Base belongs_to :project diff --git a/app/models/project_deploy_token.rb b/app/models/project_deploy_token.rb index ab4482f0c0b..719c492a1ff 100644 --- a/app/models/project_deploy_token.rb +++ b/app/models/project_deploy_token.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectDeployToken < ActiveRecord::Base belongs_to :project belongs_to :deploy_token, inverse_of: :project_deploy_tokens diff --git a/app/models/project_feature.rb b/app/models/project_feature.rb index 9c768b13f78..d74cb2506ba 100644 --- a/app/models/project_feature.rb +++ b/app/models/project_feature.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectFeature < ActiveRecord::Base # == Project features permissions # diff --git a/app/models/project_group_link.rb b/app/models/project_group_link.rb index cf8fc41e870..bc3759142ae 100644 --- a/app/models/project_group_link.rb +++ b/app/models/project_group_link.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectGroupLink < ActiveRecord::Base include Expirable diff --git a/app/models/project_import_data.rb b/app/models/project_import_data.rb index 1d7089ccfc7..2c3080c6d8d 100644 --- a/app/models/project_import_data.rb +++ b/app/models/project_import_data.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'carrierwave/orm/activerecord' class ProjectImportData < ActiveRecord::Base diff --git a/app/models/project_import_state.rb b/app/models/project_import_state.rb index 1605317ae14..89ed09af96a 100644 --- a/app/models/project_import_state.rb +++ b/app/models/project_import_state.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectImportState < ActiveRecord::Base include AfterCommitQueue diff --git a/app/models/project_label.rb b/app/models/project_label.rb index 313815e5869..d0b16cc98b4 100644 --- a/app/models/project_label.rb +++ b/app/models/project_label.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectLabel < Label MAX_NUMBER_OF_PRIORITIES = 1 diff --git a/app/models/project_snippet.rb b/app/models/project_snippet.rb index 25b5d777641..b3585c4cf4c 100644 --- a/app/models/project_snippet.rb +++ b/app/models/project_snippet.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectSnippet < Snippet belongs_to :project belongs_to :author, class_name: "User" diff --git a/app/models/project_statistics.rb b/app/models/project_statistics.rb index ef4a26f0e7f..781a197d56f 100644 --- a/app/models/project_statistics.rb +++ b/app/models/project_statistics.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectStatistics < ActiveRecord::Base belongs_to :project belongs_to :namespace diff --git a/app/models/project_team.rb b/app/models/project_team.rb index c7d0f49d837..33bc6a561f9 100644 --- a/app/models/project_team.rb +++ b/app/models/project_team.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProjectTeam include BulkMemberAccessLoad diff --git a/app/models/protectable_dropdown.rb b/app/models/protectable_dropdown.rb index c96edc5a259..25e70ab406c 100644 --- a/app/models/protectable_dropdown.rb +++ b/app/models/protectable_dropdown.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProtectableDropdown REF_TYPES = %i[branches tags].freeze diff --git a/app/models/protected_branch.rb b/app/models/protected_branch.rb index dff99cfca35..6c1073265a1 100644 --- a/app/models/protected_branch.rb +++ b/app/models/protected_branch.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProtectedBranch < ActiveRecord::Base include Gitlab::ShellAdapter include ProtectedRef diff --git a/app/models/protected_ref_matcher.rb b/app/models/protected_ref_matcher.rb index d970f2b01fc..bfa9180ac93 100644 --- a/app/models/protected_ref_matcher.rb +++ b/app/models/protected_ref_matcher.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProtectedRefMatcher def initialize(protected_ref) @protected_ref = protected_ref diff --git a/app/models/protected_tag.rb b/app/models/protected_tag.rb index 42a9bcf7723..a36f0d36262 100644 --- a/app/models/protected_tag.rb +++ b/app/models/protected_tag.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ProtectedTag < ActiveRecord::Base include Gitlab::ShellAdapter include ProtectedRef diff --git a/app/models/push_event.rb b/app/models/push_event.rb index 90c085c888e..9c0267c3140 100644 --- a/app/models/push_event.rb +++ b/app/models/push_event.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class PushEvent < Event # This validation exists so we can't accidentally use PushEvent with a # different "action" value. diff --git a/app/models/push_event_payload.rb b/app/models/push_event_payload.rb index 6cdb1cd4fe9..c7769edf055 100644 --- a/app/models/push_event_payload.rb +++ b/app/models/push_event_payload.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class PushEventPayload < ActiveRecord::Base include ShaAttribute diff --git a/app/models/readme_blob.rb b/app/models/readme_blob.rb index 1863a08f1de..7b49fa632f6 100644 --- a/app/models/readme_blob.rb +++ b/app/models/readme_blob.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class ReadmeBlob < SimpleDelegator attr_reader :repository diff --git a/app/models/redirect_route.rb b/app/models/redirect_route.rb index 31de204d824..c6bd4bb6dfa 100644 --- a/app/models/redirect_route.rb +++ b/app/models/redirect_route.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class RedirectRoute < ActiveRecord::Base belongs_to :source, polymorphic: true # rubocop:disable Cop/PolymorphicAssociations diff --git a/app/models/release.rb b/app/models/release.rb index c936899799e..cba80ad30ca 100644 --- a/app/models/release.rb +++ b/app/models/release.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Release < ActiveRecord::Base include CacheMarkdownField diff --git a/app/models/remote_mirror.rb b/app/models/remote_mirror.rb index 6172bb38881..833faf3bc82 100644 --- a/app/models/remote_mirror.rb +++ b/app/models/remote_mirror.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class RemoteMirror < ActiveRecord::Base include AfterCommitQueue diff --git a/app/models/repository.rb b/app/models/repository.rb index 9a6281bc1f7..69f375dc6f3 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'securerandom' class Repository diff --git a/app/models/route.rb b/app/models/route.rb index 2d609920051..4b23dfa5778 100644 --- a/app/models/route.rb +++ b/app/models/route.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Route < ActiveRecord::Base include CaseSensitivity diff --git a/app/models/security_event.rb b/app/models/security_event.rb index d131c11cb6c..3fe4cc99c9b 100644 --- a/app/models/security_event.rb +++ b/app/models/security_event.rb @@ -1,2 +1,4 @@ +# frozen_string_literal: true + class SecurityEvent < AuditEvent end diff --git a/app/models/sent_notification.rb b/app/models/sent_notification.rb index 3da7c301d28..e65b3df0fb6 100644 --- a/app/models/sent_notification.rb +++ b/app/models/sent_notification.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class SentNotification < ActiveRecord::Base serialize :position, Gitlab::Diff::Position # rubocop:disable Cop/ActiveRecordSerialize diff --git a/app/models/service.rb b/app/models/service.rb index cbfe0c6eedd..140058771ee 100644 --- a/app/models/service.rb +++ b/app/models/service.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # To add new service you should build a class inherited from Service # and implement a set of methods class Service < ActiveRecord::Base diff --git a/app/models/snippet.rb b/app/models/snippet.rb index 390bdbf838a..5b394e3fa79 100644 --- a/app/models/snippet.rb +++ b/app/models/snippet.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Snippet < ActiveRecord::Base include Gitlab::VisibilityLevel include CacheMarkdownField diff --git a/app/models/snippet_blob.rb b/app/models/snippet_blob.rb index fa5fa151607..cf1ab089829 100644 --- a/app/models/snippet_blob.rb +++ b/app/models/snippet_blob.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class SnippetBlob include BlobLike diff --git a/app/models/spam_log.rb b/app/models/spam_log.rb index 56a115d1db4..ef3f974b959 100644 --- a/app/models/spam_log.rb +++ b/app/models/spam_log.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class SpamLog < ActiveRecord::Base belongs_to :user diff --git a/app/models/subscription.rb b/app/models/subscription.rb index 2f0c9640744..0f6ee0ddf7e 100644 --- a/app/models/subscription.rb +++ b/app/models/subscription.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Subscription < ActiveRecord::Base belongs_to :user belongs_to :project diff --git a/app/models/system_note_metadata.rb b/app/models/system_note_metadata.rb index 1c2161accc4..c5c77bc8333 100644 --- a/app/models/system_note_metadata.rb +++ b/app/models/system_note_metadata.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class SystemNoteMetadata < ActiveRecord::Base # These notes's action text might contain a reference that is external. # We should always force a deep validation upon references that are found diff --git a/app/models/term_agreement.rb b/app/models/term_agreement.rb index c317bd0c90b..9b3c8ac68bd 100644 --- a/app/models/term_agreement.rb +++ b/app/models/term_agreement.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class TermAgreement < ActiveRecord::Base belongs_to :term, class_name: 'ApplicationSetting::Term' belongs_to :user diff --git a/app/models/timelog.rb b/app/models/timelog.rb index 659146f43e4..e04c644a53a 100644 --- a/app/models/timelog.rb +++ b/app/models/timelog.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Timelog < ActiveRecord::Base validates :time_spent, :user, presence: true validate :issuable_id_is_present diff --git a/app/models/todo.rb b/app/models/todo.rb index a2ab405fdbe..5f5c2f9073d 100644 --- a/app/models/todo.rb +++ b/app/models/todo.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Todo < ActiveRecord::Base include Sortable diff --git a/app/models/tree.rb b/app/models/tree.rb index 4c1856b67a8..3641c33254c 100644 --- a/app/models/tree.rb +++ b/app/models/tree.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Tree include Gitlab::MarkupHelper diff --git a/app/models/trending_project.rb b/app/models/trending_project.rb index 27e3732da17..7b22e8cb760 100644 --- a/app/models/trending_project.rb +++ b/app/models/trending_project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class TrendingProject < ActiveRecord::Base belongs_to :project diff --git a/app/models/u2f_registration.rb b/app/models/u2f_registration.rb index 808acec098f..37598173fd1 100644 --- a/app/models/u2f_registration.rb +++ b/app/models/u2f_registration.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # Registration information for U2F (universal 2nd factor) devices, like Yubikeys class U2fRegistration < ActiveRecord::Base diff --git a/app/models/upload.rb b/app/models/upload.rb index cf71a7b76fc..23bc9ca42fc 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class Upload < ActiveRecord::Base # Upper limit for foreground checksum processing CHECKSUM_THRESHOLD = 100.megabytes diff --git a/app/models/user.rb b/app/models/user.rb index 31b49b9bf2a..fdf3618b4dc 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'carrierwave/orm/activerecord' class User < ActiveRecord::Base diff --git a/app/models/user_agent_detail.rb b/app/models/user_agent_detail.rb index 2d05fdd3e54..e2b2e7f1df9 100644 --- a/app/models/user_agent_detail.rb +++ b/app/models/user_agent_detail.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UserAgentDetail < ActiveRecord::Base belongs_to :subject, polymorphic: true # rubocop:disable Cop/PolymorphicAssociations diff --git a/app/models/user_callout.rb b/app/models/user_callout.rb index 9d461c6750a..97e955ace36 100644 --- a/app/models/user_callout.rb +++ b/app/models/user_callout.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UserCallout < ActiveRecord::Base belongs_to :user diff --git a/app/models/user_custom_attribute.rb b/app/models/user_custom_attribute.rb index eff25b31f9b..e0ffe8ebbfd 100644 --- a/app/models/user_custom_attribute.rb +++ b/app/models/user_custom_attribute.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UserCustomAttribute < ActiveRecord::Base belongs_to :user diff --git a/app/models/user_interacted_project.rb b/app/models/user_interacted_project.rb index dd55a6acb79..ae6778e49be 100644 --- a/app/models/user_interacted_project.rb +++ b/app/models/user_interacted_project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UserInteractedProject < ActiveRecord::Base belongs_to :user belongs_to :project diff --git a/app/models/user_synced_attributes_metadata.rb b/app/models/user_synced_attributes_metadata.rb index 688432a9d67..7115262942d 100644 --- a/app/models/user_synced_attributes_metadata.rb +++ b/app/models/user_synced_attributes_metadata.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UserSyncedAttributesMetadata < ActiveRecord::Base belongs_to :user diff --git a/app/models/users_star_project.rb b/app/models/users_star_project.rb index 0dfe597317e..bdaf58ae1c1 100644 --- a/app/models/users_star_project.rb +++ b/app/models/users_star_project.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class UsersStarProject < ActiveRecord::Base belongs_to :project, counter_cache: :star_count, touch: true belongs_to :user diff --git a/app/models/wiki_directory.rb b/app/models/wiki_directory.rb index 9340fc2dbbe..712ba79bbd2 100644 --- a/app/models/wiki_directory.rb +++ b/app/models/wiki_directory.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + class WikiDirectory include ActiveModel::Validations diff --git a/app/models/wiki_page.rb b/app/models/wiki_page.rb index 55243136140..33790afc35e 100644 --- a/app/models/wiki_page.rb +++ b/app/models/wiki_page.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # rubocop:disable Rails/ActiveRecordAliases class WikiPage PageChangedError = Class.new(StandardError) diff --git a/changelogs/unreleased/frozen-string-enable-app-models.yml b/changelogs/unreleased/frozen-string-enable-app-models.yml new file mode 100644 index 00000000000..4c149ea55ef --- /dev/null +++ b/changelogs/unreleased/frozen-string-enable-app-models.yml @@ -0,0 +1,5 @@ +--- +title: Enable frozen string in app/models/*.rb +merge_request: 20851 +author: gfyoung +type: performance diff --git a/spec/controllers/admin/services_controller_spec.rb b/spec/controllers/admin/services_controller_spec.rb index 701211c2586..4439ea4a533 100644 --- a/spec/controllers/admin/services_controller_spec.rb +++ b/spec/controllers/admin/services_controller_spec.rb @@ -13,7 +13,7 @@ describe Admin::ServicesController do Service.available_services_names.each do |service_name| context "#{service_name}" do let!(:service) do - service_template = service_name.concat("_service").camelize.constantize + service_template = "#{service_name}_service".camelize.constantize service_template.where(template: true).first_or_create end |