Run rubocop -a on CE files
This commit is contained in:
parent
a5620a0d23
commit
f93b2e02a5
|
|
@ -7,7 +7,7 @@ class HelpController < ApplicationController
|
|||
|
||||
# Taken from Jekyll
|
||||
# https://github.com/jekyll/jekyll/blob/3.5-stable/lib/jekyll/document.rb#L13
|
||||
YAML_FRONT_MATTER_REGEXP = /\A(---\s*\n.*?\n?)^((---|\.\.\.)\s*$\n?)/m
|
||||
YAML_FRONT_MATTER_REGEXP = /\A(---\s*\n.*?\n?)^((---|\.\.\.)\s*$\n?)/m.freeze
|
||||
|
||||
def index
|
||||
# Remove YAML frontmatter so that it doesn't look weird
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@ class Import::BitbucketServerController < Import::BaseController
|
|||
# (https://community.atlassian.com/t5/Answers-Developer-Questions/stash-repository-names/qaq-p/499054)
|
||||
#
|
||||
# Bitbucket Server starts personal project names with a tilde.
|
||||
VALID_BITBUCKET_PROJECT_CHARS = /\A~?[\w\-\.\s]+\z/
|
||||
VALID_BITBUCKET_CHARS = /\A[\w\-\.\s]+\z/
|
||||
VALID_BITBUCKET_PROJECT_CHARS = /\A~?[\w\-\.\s]+\z/.freeze
|
||||
VALID_BITBUCKET_CHARS = /\A[\w\-\.\s]+\z/.freeze
|
||||
|
||||
def new
|
||||
end
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
module AuthHelper
|
||||
PROVIDERS_WITH_ICONS = %w(twitter github gitlab bitbucket google_oauth2 facebook azure_oauth2 authentiq).freeze
|
||||
LDAP_PROVIDER = /\Aldap/
|
||||
LDAP_PROVIDER = /\Aldap/.freeze
|
||||
|
||||
def ldap_enabled?
|
||||
Gitlab::Auth::LDAP::Config.enabled?
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ module SidekiqHelper
|
|||
(?<state>[DIEKNRSTVWXZNLpsl\+<>/\d]+)\s+
|
||||
(?<start>.+?)\s+
|
||||
(?<command>(?:ruby\d+:\s+)?sidekiq.*\].*)
|
||||
\z}x
|
||||
\z}x.freeze
|
||||
|
||||
def parse_sidekiq_ps(line)
|
||||
match = line.strip.match(SIDEKIQ_PS_REGEXP)
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ module ApplicationSettingImplementation
|
|||
\s # any whitespace character
|
||||
| # or
|
||||
[\r\n] # any number of newline characters
|
||||
}x
|
||||
}x.freeze
|
||||
|
||||
# Setting a key restriction to `-1` means that all keys of this type are
|
||||
# forbidden.
|
||||
|
|
|
|||
|
|
@ -28,12 +28,12 @@ class CommitRange
|
|||
|
||||
# The beginning and ending refs can be named or SHAs, and
|
||||
# the range notation can be double- or triple-dot.
|
||||
REF_PATTERN = /[0-9a-zA-Z][0-9a-zA-Z_.-]*[0-9a-zA-Z\^]/
|
||||
PATTERN = /#{REF_PATTERN}\.{2,3}#{REF_PATTERN}/
|
||||
REF_PATTERN = /[0-9a-zA-Z][0-9a-zA-Z_.-]*[0-9a-zA-Z\^]/.freeze
|
||||
PATTERN = /#{REF_PATTERN}\.{2,3}#{REF_PATTERN}/.freeze
|
||||
|
||||
# In text references, the beginning and ending refs can only be SHAs
|
||||
# between 7 and 40 hex characters.
|
||||
STRICT_PATTERN = /\h{7,40}\.{2,3}\h{7,40}/
|
||||
STRICT_PATTERN = /\h{7,40}\.{2,3}\h{7,40}/.freeze
|
||||
|
||||
def self.reference_prefix
|
||||
'@'
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ module Maskable
|
|||
# * No spaces
|
||||
# * Minimal length of 8 characters
|
||||
# * Absolutely no fun is allowed
|
||||
REGEX = /\A\w{8,}\z/
|
||||
REGEX = /\A\w{8,}\z/.freeze
|
||||
|
||||
included do
|
||||
validates :masked, inclusion: { in: [true, false] }
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
module Redactable
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
UNSUBSCRIBE_PATTERN = %r{/sent_notifications/\h{32}/unsubscribe}
|
||||
UNSUBSCRIBE_PATTERN = %r{/sent_notifications/\h{32}/unsubscribe}.freeze
|
||||
|
||||
class_methods do
|
||||
def redact_field(field)
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ module Taskable
|
|||
\s+ # whitespace prefix has to be always presented for a list item
|
||||
(\[\s\]|\[[xX]\]) # checkbox
|
||||
(\s.+) # followed by whitespace and some text.
|
||||
}x
|
||||
}x.freeze
|
||||
|
||||
def self.get_tasks(content)
|
||||
content.to_s.scan(ITEM_PATTERN).map do |checkbox, label|
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@
|
|||
class Environment < ApplicationRecord
|
||||
include Gitlab::Utils::StrongMemoize
|
||||
# Used to generate random suffixes for the slug
|
||||
LETTERS = 'a'..'z'
|
||||
NUMBERS = '0'..'9'
|
||||
LETTERS = ('a'..'z').freeze
|
||||
NUMBERS = ('0'..'9').freeze
|
||||
SUFFIX_CHARS = LETTERS.to_a + NUMBERS.to_a
|
||||
|
||||
belongs_to :project, required: true
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ module ErrorTracking
|
|||
(?<project>[^/]+)/*
|
||||
)?
|
||||
\z
|
||||
}x
|
||||
}x.freeze
|
||||
|
||||
self.reactive_cache_key = ->(setting) { [setting.class.model_name.singular, setting.project_id] }
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ module Projects
|
|||
# Used by project imports, it removes any potential paths
|
||||
# included in an error message that could be stored in the DB
|
||||
class ImportErrorFilter
|
||||
ERROR_MESSAGE_FILTER = /[^\s]*#{File::SEPARATOR}[^\s]*(?=(\s|\z))/
|
||||
ERROR_MESSAGE_FILTER = /[^\s]*#{File::SEPARATOR}[^\s]*(?=(\s|\z))/.freeze
|
||||
FILTER_MESSAGE = '[FILTERED]'
|
||||
|
||||
def self.filter_message(message)
|
||||
|
|
|
|||
|
|
@ -14,8 +14,8 @@ class FileUploader < GitlabUploader
|
|||
include ObjectStorage::Concern
|
||||
prepend ObjectStorage::Extension::RecordsUploads
|
||||
|
||||
MARKDOWN_PATTERN = %r{\!?\[.*?\]\(/uploads/(?<secret>[0-9a-f]{32})/(?<file>.*?)\)}
|
||||
DYNAMIC_PATH_PATTERN = %r{.*(?<secret>\h{32})/(?<identifier>.*)}
|
||||
MARKDOWN_PATTERN = %r{\!?\[.*?\]\(/uploads/(?<secret>[0-9a-f]{32})/(?<file>.*?)\)}.freeze
|
||||
DYNAMIC_PATH_PATTERN = %r{.*(?<secret>\h{32})/(?<identifier>.*)}.freeze
|
||||
|
||||
after :remove, :prune_store_dir
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ require 'gettext_i18n_rails/haml_parser'
|
|||
require 'gettext_i18n_rails_js/parser/javascript'
|
||||
require 'json'
|
||||
|
||||
VUE_TRANSLATE_REGEX = /((%[\w.-]+)(?:\s))?{{ (N|n|s)?__\((.*)\) }}/
|
||||
VUE_TRANSLATE_REGEX = /((%[\w.-]+)(?:\s))?{{ (N|n|s)?__\((.*)\) }}/.freeze
|
||||
|
||||
module GettextI18nRails
|
||||
class HamlParser
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ class EmojiChecker
|
|||
# alone is not enough, as we'd match `:foo:bar:baz`. Instead, we use this
|
||||
# regex to save us from having to check for all possible emoji names when we
|
||||
# know one definitely is not included.
|
||||
LIKELY_EMOJI = /:[\+a-z0-9_\-]+:/
|
||||
LIKELY_EMOJI = /:[\+a-z0-9_\-]+:/.freeze
|
||||
|
||||
def initialize
|
||||
names = JSON.parse(File.read(DIGESTS)).keys +
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable all
|
||||
class ChangeStateToAllowEmptyMergeRequestDiffs < ActiveRecord::Migration[4.2]
|
||||
def up
|
||||
change_column :merge_request_diffs, :state, :string, null: true,
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ module API
|
|||
|
||||
LOG_FILENAME = Rails.root.join("log", "api_json.log")
|
||||
|
||||
NO_SLASH_URL_PART_REGEX = %r{[^/]+}
|
||||
NO_SLASH_URL_PART_REGEX = %r{[^/]+}.freeze
|
||||
NAMESPACE_OR_PROJECT_REQUIREMENTS = { id: NO_SLASH_URL_PART_REGEX }.freeze
|
||||
COMMIT_ENDPOINT_REQUIREMENTS = NAMESPACE_OR_PROJECT_REQUIREMENTS.merge(sha: NO_SLASH_URL_PART_REGEX).freeze
|
||||
USER_REQUIREMENTS = { user_id: NO_SLASH_URL_PART_REGEX }.freeze
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
module Banzai
|
||||
module ColorParser
|
||||
ALPHA = /0(?:\.\d+)?|\.\d+|1(?:\.0+)?/ # 0.0..1.0
|
||||
PERCENTS = /(?:\d{1,2}|100)%/ # 00%..100%
|
||||
ALPHA_CHANNEL = /(?:,\s*(?:#{ALPHA}|#{PERCENTS}))?/
|
||||
BITS = /\d{1,2}|1\d\d|2(?:[0-4]\d|5[0-5])/ # 00..255
|
||||
DEGS = /-?\d+(?:deg)?/i # [-]digits[deg]
|
||||
RADS = /-?(?:\d+(?:\.\d+)?|\.\d+)rad/i # [-](digits[.digits] OR .digits)rad
|
||||
HEX_FORMAT = /\#(?:\h{3}|\h{4}|\h{6}|\h{8})/
|
||||
ALPHA = /0(?:\.\d+)?|\.\d+|1(?:\.0+)?/.freeze # 0.0..1.0
|
||||
PERCENTS = /(?:\d{1,2}|100)%/.freeze # 00%..100%
|
||||
ALPHA_CHANNEL = /(?:,\s*(?:#{ALPHA}|#{PERCENTS}))?/.freeze
|
||||
BITS = /\d{1,2}|1\d\d|2(?:[0-4]\d|5[0-5])/.freeze # 00..255
|
||||
DEGS = /-?\d+(?:deg)?/i.freeze # [-]digits[deg]
|
||||
RADS = /-?(?:\d+(?:\.\d+)?|\.\d+)rad/i.freeze # [-](digits[.digits] OR .digits)rad
|
||||
HEX_FORMAT = /\#(?:\h{3}|\h{4}|\h{6}|\h{8})/.freeze
|
||||
RGB_FORMAT = %r{
|
||||
(?:rgba?
|
||||
\(
|
||||
|
|
@ -20,7 +20,7 @@ module Banzai
|
|||
#{ALPHA_CHANNEL}
|
||||
\)
|
||||
)
|
||||
}xi
|
||||
}xi.freeze
|
||||
HSL_FORMAT = %r{
|
||||
(?:hsla?
|
||||
\(
|
||||
|
|
@ -28,11 +28,11 @@ module Banzai
|
|||
#{ALPHA_CHANNEL}
|
||||
\)
|
||||
)
|
||||
}xi
|
||||
}xi.freeze
|
||||
|
||||
FORMATS = [HEX_FORMAT, RGB_FORMAT, HSL_FORMAT].freeze
|
||||
|
||||
COLOR_FORMAT = /\A(#{Regexp.union(FORMATS)})\z/ix
|
||||
COLOR_FORMAT = /\A(#{Regexp.union(FORMATS)})\z/ix.freeze
|
||||
|
||||
# Public: Analyzes whether the String is a color code.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ module Banzai
|
|||
# https://github.com/vmg/rinku/blob/v2.0.1/ext/rinku/autolink.c#L65
|
||||
#
|
||||
# Rubular: http://rubular.com/r/nrL3r9yUiq
|
||||
LINK_PATTERN = %r{([a-z][a-z0-9\+\.-]+://[^\s>]+)(?<!\?|!|\.|,|:)}
|
||||
LINK_PATTERN = %r{([a-z][a-z0-9\+\.-]+://[^\s>]+)(?<!\?|!|\.|,|:)}.freeze
|
||||
|
||||
# Text matching LINK_PATTERN inside these elements will not be linked
|
||||
IGNORE_PARENTS = %w(a code kbd pre script style).to_set
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ module Banzai
|
|||
\s*
|
||||
^\k<delim> # closing front matter marker
|
||||
\s*
|
||||
}mx
|
||||
}mx.freeze
|
||||
|
||||
def call
|
||||
html.sub(PATTERN) do |_match|
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ module Banzai
|
|||
(?<new_link>.+?)
|
||||
(?<title>\ ".+?")?
|
||||
\)
|
||||
}x
|
||||
}x.freeze
|
||||
|
||||
# Text matching LINK_OR_IMAGE_PATTERN inside these elements will not be linked
|
||||
IGNORE_PARENTS = %w(a code kbd pre script style).to_set
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ module Banzai
|
|||
# :toc - String containing Table of Contents data as a `ul` element with
|
||||
# `li` child elements.
|
||||
class TableOfContentsFilter < HTML::Pipeline::Filter
|
||||
PUNCTUATION_REGEXP = /[^\p{Word}\- ]/u
|
||||
PUNCTUATION_REGEXP = /[^\p{Word}\- ]/u.freeze
|
||||
|
||||
def call
|
||||
return doc if context[:no_header_anchors]
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module DeclarativePolicy
|
||||
|
|
|
|||
|
|
@ -36,8 +36,8 @@ module Gitlab
|
|||
end
|
||||
|
||||
COM_URL = 'https://gitlab.com'.freeze
|
||||
APP_DIRS_PATTERN = %r{^/?(app|config|ee|lib|spec|\(\w*\))}
|
||||
SUBDOMAIN_REGEX = %r{\Ahttps://[a-z0-9]+\.gitlab\.com\z}
|
||||
APP_DIRS_PATTERN = %r{^/?(app|config|ee|lib|spec|\(\w*\))}.freeze
|
||||
SUBDOMAIN_REGEX = %r{\Ahttps://[a-z0-9]+\.gitlab\.com\z}.freeze
|
||||
VERSION = File.read(root.join("VERSION")).strip.freeze
|
||||
INSTALLATION_TYPE = File.read(root.join("INSTALLATION_TYPE")).strip.freeze
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ module Gitlab
|
|||
self.table_name = 'untracked_files_for_uploads'
|
||||
|
||||
# Ends with /:random_hex/:filename
|
||||
FILE_UPLOADER_PATH = %r{/\h+/[^/]+\z}
|
||||
FULL_PATH_CAPTURE = /\A(.+)#{FILE_UPLOADER_PATH}/
|
||||
FILE_UPLOADER_PATH = %r{/\h+/[^/]+\z}.freeze
|
||||
FULL_PATH_CAPTURE = /\A(.+)#{FILE_UPLOADER_PATH}/.freeze
|
||||
|
||||
# These regex patterns are tested against a relative path, relative to
|
||||
# the upload directory.
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ module Gitlab
|
|||
RELATIVE_UPLOAD_DIR
|
||||
)
|
||||
FOLLOW_UP_MIGRATION = 'PopulateUntrackedUploads'.freeze
|
||||
START_WITH_ROOT_REGEX = %r{\A#{Gitlab.config.uploads.storage_path}/}
|
||||
START_WITH_ROOT_REGEX = %r{\A#{Gitlab.config.uploads.storage_path}/}.freeze
|
||||
EXCLUDED_HASHED_UPLOADS_PATH = "#{ABSOLUTE_UPLOAD_DIR}/@hashed/*".freeze
|
||||
EXCLUDED_TMP_UPLOADS_PATH = "#{ABSOLUTE_UPLOAD_DIR}/tmp/*".freeze
|
||||
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ module Gitlab
|
|||
ParserError = Class.new(StandardError)
|
||||
InvalidStreamError = Class.new(StandardError)
|
||||
|
||||
VERSION_PATTERN = /^[\w\s]+(\d+\.\d+\.\d+)/
|
||||
INVALID_PATH_PATTERN = %r{(^\.?\.?/)|(/\.?\.?/)}
|
||||
VERSION_PATTERN = /^[\w\s]+(\d+\.\d+\.\d+)/.freeze
|
||||
INVALID_PATH_PATTERN = %r{(^\.?\.?/)|(/\.?\.?/)}.freeze
|
||||
|
||||
attr_reader :stream, :path, :full_version
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ module Gitlab
|
|||
class Skip < Chain::Base
|
||||
include ::Gitlab::Utils::StrongMemoize
|
||||
|
||||
SKIP_PATTERN = /\[(ci[ _-]skip|skip[ _-]ci)\]/i
|
||||
SKIP_PATTERN = /\[(ci[ _-]skip|skip[ _-]ci)\]/i.freeze
|
||||
|
||||
def perform!
|
||||
if skipped?
|
||||
|
|
|
|||
|
|
@ -22,13 +22,13 @@ module Gitlab
|
|||
end
|
||||
|
||||
# rubocop:disable Style/VariableInterpolation
|
||||
TRADITIONAL_ESCAPED_CHAR = /[^ A-Za-z0-9!#$+.^_`|~-]/
|
||||
TRADITIONAL_ESCAPED_CHAR = /[^ A-Za-z0-9!#$+.^_`|~-]/.freeze
|
||||
|
||||
def ascii_filename
|
||||
'filename="' + percent_escape(::I18n.transliterate(filename), TRADITIONAL_ESCAPED_CHAR) + '"'
|
||||
end
|
||||
|
||||
RFC_5987_ESCAPED_CHAR = /[^A-Za-z0-9!#$&+.^_`|~-]/
|
||||
RFC_5987_ESCAPED_CHAR = /[^A-Za-z0-9!#$&+.^_`|~-]/.freeze
|
||||
# rubocop:enable Style/VariableInterpolation
|
||||
|
||||
def utf8_filename
|
||||
|
|
|
|||
|
|
@ -103,8 +103,6 @@ module Gitlab
|
|||
none: "",
|
||||
qa: "~QA"
|
||||
}.freeze
|
||||
|
||||
# rubocop:disable Style/RegexpLiteral
|
||||
CATEGORIES = {
|
||||
%r{\Adoc/} => :none, # To reinstate roulette for documentation, set to `:docs`.
|
||||
%r{\A(CONTRIBUTING|LICENSE|MAINTENANCE|PHILOSOPHY|PROCESS|README)(\.md)?\z} => :none, # To reinstate roulette for documentation, set to `:docs`.
|
||||
|
|
@ -151,7 +149,6 @@ module Gitlab
|
|||
%r{\.(md|txt)\z} => :none, # To reinstate roulette for documentation, set to `:docs`.
|
||||
%r{\.js\z} => :frontend
|
||||
}.freeze
|
||||
# rubocop:enable Style/RegexpLiteral
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ module Gitlab
|
|||
'GL-HOOK-ERR:' # Messages marked as safe by user
|
||||
].freeze
|
||||
|
||||
SAFE_MESSAGE_REGEX = /^(#{SAFE_MESSAGE_PREFIXES.join('|')})\s*(?<safe_message>.+)/
|
||||
SAFE_MESSAGE_REGEX = /^(#{SAFE_MESSAGE_PREFIXES.join('|')})\s*(?<safe_message>.+)/.freeze
|
||||
|
||||
def initialize(message = '')
|
||||
super(sanitize(message))
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ module Gitlab
|
|||
end
|
||||
end
|
||||
|
||||
PEM_REGEX = /\-+BEGIN CERTIFICATE\-+.+?\-+END CERTIFICATE\-+/m
|
||||
PEM_REGEX = /\-+BEGIN CERTIFICATE\-+.+?\-+END CERTIFICATE\-+/m.freeze
|
||||
SERVER_VERSION_FILE = 'GITALY_SERVER_VERSION'
|
||||
MAXIMUM_GITALY_CALLS = 30
|
||||
CLIENT_NAME = (Sidekiq.server? ? 'gitlab-sidekiq' : 'gitlab-web').freeze
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ module Gitlab
|
|||
:diff_hunk, :author, :note, :created_at, :updated_at,
|
||||
:github_id
|
||||
|
||||
NOTEABLE_ID_REGEX = %r{/pull/(?<iid>\d+)}i
|
||||
NOTEABLE_ID_REGEX = %r{/pull/(?<iid>\d+)}i.freeze
|
||||
|
||||
# Builds a diff note from a GitHub API response.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ module Gitlab
|
|||
expose_attribute :noteable_id, :noteable_type, :author, :note,
|
||||
:created_at, :updated_at, :github_id
|
||||
|
||||
NOTEABLE_TYPE_REGEX = %r{/(?<type>(pull|issues))/(?<iid>\d+)}i
|
||||
NOTEABLE_TYPE_REGEX = %r{/(?<type>(pull|issues))/(?<iid>\d+)}i.freeze
|
||||
|
||||
# Builds a note from a GitHub API response.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab::HealthChecks
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab::HealthChecks
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ module Gitlab
|
|||
module Metrics
|
||||
# Class for storing details of a single metric (label, value, etc).
|
||||
class Metric
|
||||
JITTER_RANGE = 0.000001..0.001
|
||||
JITTER_RANGE = (0.000001..0.001).freeze
|
||||
|
||||
attr_reader :series, :values, :tags, :type
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
module Gitlab
|
||||
module Middleware
|
||||
class ReadOnly
|
||||
API_VERSIONS = (3..4)
|
||||
API_VERSIONS = (3..4).freeze
|
||||
|
||||
def self.internal_routes
|
||||
@internal_routes ||=
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ module Gitlab
|
|||
mr: :merge_request
|
||||
}).freeze
|
||||
|
||||
OPTION_MATCHER = /(?<namespace>[^\.]+)\.(?<key>[^=]+)=?(?<value>.*)/
|
||||
OPTION_MATCHER = /(?<namespace>[^\.]+)\.(?<key>[^=]+)=?(?<value>.*)/.freeze
|
||||
|
||||
attr_reader :options
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ module Gitlab
|
|||
# if date doesn't present return time with current date
|
||||
# in other cases return nil
|
||||
class SpendTimeAndDateSeparator
|
||||
DATE_REGEX = %r{(\d{2,4}[/\-.]\d{1,2}[/\-.]\d{1,2})}
|
||||
DATE_REGEX = %r{(\d{2,4}[/\-.]\d{1,2}[/\-.]\d{1,2})}.freeze
|
||||
|
||||
def initialize(spend_command_arg)
|
||||
@spend_arg = spend_command_arg
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ module Gitlab
|
|||
|
||||
class Scrubber < Loofah::Scrubber
|
||||
# http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#embedding-custom-non-visible-data-with-the-data-*-attributes
|
||||
DATA_ATTR_PATTERN = /\Adata-(?!xml)[a-z_][\w.\u00E0-\u00F6\u00F8-\u017F\u01DD-\u02AF-]*\z/u
|
||||
DATA_ATTR_PATTERN = /\Adata-(?!xml)[a-z_][\w.\u00E0-\u00F6\u00F8-\u017F\u01DD-\u02AF-]*\z/u.freeze
|
||||
|
||||
def scrub(node)
|
||||
unless Whitelist::ALLOWED_ELEMENTS.include?(node.name)
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ module Gitlab
|
|||
module Sherlock
|
||||
# Rack middleware used for tracking request metrics.
|
||||
class Middleware
|
||||
CONTENT_TYPES = %r{text/html|application/json}i
|
||||
CONTENT_TYPES = %r{text/html|application/json}i.freeze
|
||||
|
||||
IGNORE_PATHS = %r{^/sherlock}
|
||||
IGNORE_PATHS = %r{^/sherlock}.freeze
|
||||
|
||||
def initialize(app)
|
||||
@app = app
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ module Gitlab
|
|||
|GROUP\s+BY
|
||||
|ORDER\s+BY
|
||||
|LIMIT
|
||||
|OFFSET)\s+}ix # Vim indent breaks when this is on a newline :<
|
||||
|OFFSET)\s+}ix.freeze # Vim indent breaks when this is on a newline :<
|
||||
|
||||
# Creates a new Query using a String and a separate Array of bindings.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Gitlab
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ module Gitlab
|
|||
extend ActiveSupport::Concern
|
||||
|
||||
MIN_CHARS_FOR_PARTIAL_MATCHING = 3
|
||||
REGEX_QUOTED_WORD = /(?<=\A| )"[^"]+"(?= |\z)/
|
||||
REGEX_QUOTED_WORD = /(?<=\A| )"[^"]+"(?= |\z)/.freeze
|
||||
|
||||
class_methods do
|
||||
def fuzzy_search(query, columns)
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ module Gitlab
|
|||
class UserExtractor
|
||||
# Not using `Devise.email_regexp` to filter out any chars that an email
|
||||
# does not end with and not pinning the email to a start of end of a string.
|
||||
EMAIL_REGEXP = /(?<email>([^@\s]+@[^@\s]+(?<!\W)))/
|
||||
EMAIL_REGEXP = /(?<email>([^@\s]+@[^@\s]+(?<!\W)))/.freeze
|
||||
USERNAME_REGEXP = User.reference_pattern
|
||||
|
||||
def initialize(text)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
unless Rails.env.production?
|
||||
|
|
|
|||
|
|
@ -209,7 +209,7 @@ namespace :gemojione do
|
|||
image.destroy!
|
||||
end
|
||||
|
||||
EMOJI_IMAGE_PATH_RE = /(.*?)(([0-9a-f]-?)+)\.png$/i
|
||||
EMOJI_IMAGE_PATH_RE = /(.*?)(([0-9a-f]-?)+)\.png$/i.freeze
|
||||
def rename_to_named_emoji_image!(emoji_unicode_string_to_name_map, image_path)
|
||||
# Rename file from unicode to emoji name
|
||||
matches = EMOJI_IMAGE_PATH_RE.match(image_path)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module QA
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module QA
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
# frozen_string_literal: true
|
||||
|
||||
module QA
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# rubocop:disable Naming/FileName
|
||||
require_relative 'cop/gitlab/module_with_instance_variables'
|
||||
require_relative 'cop/gitlab/predicate_memoization'
|
||||
require_relative 'cop/gitlab/httparty'
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ describe 'create_tokens' do
|
|||
|
||||
let(:secrets) { ActiveSupport::OrderedOptions.new }
|
||||
|
||||
HEX_KEY = /\h{128}/
|
||||
RSA_KEY = /\A-----BEGIN RSA PRIVATE KEY-----\n.+\n-----END RSA PRIVATE KEY-----\n\Z/m
|
||||
HEX_KEY = /\h{128}/.freeze
|
||||
RSA_KEY = /\A-----BEGIN RSA PRIVATE KEY-----\n.+\n-----END RSA PRIVATE KEY-----\n\Z/m.freeze
|
||||
|
||||
before do
|
||||
allow(File).to receive(:write)
|
||||
|
|
|
|||
|
|
@ -120,10 +120,10 @@ describe Gitlab::PathRegex do
|
|||
# - Followed by one or more path-parts not starting with `:` or `*`
|
||||
# - Followed by a path-part that includes a wildcard parameter `*`
|
||||
# At the time of writing these routes match: http://rubular.com/r/Rv2pDE5Dvw
|
||||
STARTING_WITH_NAMESPACE = %r{^/\*namespace_id/:(project_)?id}
|
||||
NON_PARAM_PARTS = %r{[^:*][a-z\-_/]*}
|
||||
ANY_OTHER_PATH_PART = %r{[a-z\-_/:]*}
|
||||
WILDCARD_SEGMENT = /\*/
|
||||
STARTING_WITH_NAMESPACE = %r{^/\*namespace_id/:(project_)?id}.freeze
|
||||
NON_PARAM_PARTS = %r{[^:*][a-z\-_/]*}.freeze
|
||||
ANY_OTHER_PATH_PART = %r{[a-z\-_/:]*}.freeze
|
||||
WILDCARD_SEGMENT = /\*/.freeze
|
||||
let(:namespaced_wildcard_routes) do
|
||||
routes_without_format.select do |p|
|
||||
p =~ %r{#{STARTING_WITH_NAMESPACE}/#{NON_PARAM_PARTS}/#{ANY_OTHER_PATH_PART}#{WILDCARD_SEGMENT}}
|
||||
|
|
@ -144,7 +144,7 @@ describe Gitlab::PathRegex do
|
|||
end.uniq
|
||||
end
|
||||
|
||||
STARTING_WITH_GROUP = %r{^/groups/\*(group_)?id/}
|
||||
STARTING_WITH_GROUP = %r{^/groups/\*(group_)?id/}.freeze
|
||||
let(:group_routes) do
|
||||
routes_without_format.select do |path|
|
||||
path =~ STARTING_WITH_GROUP
|
||||
|
|
|
|||
Loading…
Reference in New Issue