Browse Source

Improve RuboCop rules (compatibility to Code Climate) (#3636)

08f8de84eb/Gemfile.lock (L38)
Code Climate is using RuboCop v0.46.0.

Change several rules to maintain compatibility.
pull/4/head
Yamagishi Kazutoshi 5 years ago
committed by Eugen Rochko
parent
commit
0a0b9a271a
12 changed files with 33 additions and 14 deletions
  1. +18
    -0
      .rubocop.yml
  2. +1
    -1
      app/controllers/api/v1/notifications_controller.rb
  3. +2
    -2
      app/helpers/stream_entries_helper.rb
  4. +2
    -2
      app/lib/feed_manager.rb
  5. +2
    -2
      app/models/concerns/paginable.rb
  6. +1
    -1
      app/models/setting.rb
  7. +1
    -1
      app/services/fetch_atom_service.rb
  8. +1
    -1
      app/services/suspend_account_service.rb
  9. +1
    -1
      app/services/update_remote_profile_service.rb
  10. +1
    -0
      lib/tasks/auto_annotate_models.rake
  11. +1
    -1
      spec/models/user_spec.rb
  12. +2
    -2
      spec/requests/link_headers_spec.rb

+ 18
- 0
.rubocop.yml View File

@ -17,12 +17,19 @@ Bundler/OrderedGems:
Layout/AccessModifierIndentation:
EnforcedStyle: indent
Layout/EmptyLineAfterMagicComment:
Enabled: false
Layout/SpaceInsideHashLiteralBraces:
EnforcedStyle: space
Metrics/AbcSize:
Max: 100
Metrics/BlockLength:
Exclude:
- 'lib/tasks/**/*'
Metrics/BlockNesting:
Max: 3
@ -58,6 +65,9 @@ Rails:
Rails/HasAndBelongsToMany:
Enabled: false
Rails/SkipsModelValidations:
Enabled: false
Style/ClassAndModuleChildren:
Enabled: false
@ -81,11 +91,19 @@ Style/GuardClause:
Style/Lambda:
Enabled: false
Style/PercentLiteralDelimiters:
PreferredDelimiters:
'%i': '()'
'%w': '()'
Style/PerlBackrefs:
AutoCorrect: false
Style/RegexpLiteral:
Enabled: false
Style/SymbolArray:
Enabled: false
Style/TrailingCommaInLiteral:
EnforcedStyleForMultiline: 'comma'

+ 1
- 1
app/controllers/api/v1/notifications_controller.rb View File

@ -51,7 +51,7 @@ class Api::V1::NotificationsController < Api::BaseController
end
def target_statuses_from_notifications
@notifications.select { |notification| !notification.target_status.nil? }.map(&:target_status)
@notifications.reject { |notification| notification.target_status.nil? }.map(&:target_status)
end
def insert_pagination_headers

+ 2
- 2
app/helpers/stream_entries_helper.rb View File

@ -1,8 +1,8 @@
# frozen_string_literal: true
module StreamEntriesHelper
EMBEDDED_CONTROLLER = 'stream_entries'.freeze
EMBEDDED_ACTION = 'embed'.freeze
EMBEDDED_CONTROLLER = 'stream_entries'
EMBEDDED_ACTION = 'embed'
def display_name(account)
account.display_name.presence || account.username

+ 2
- 2
app/lib/feed_manager.rb View File

@ -109,8 +109,8 @@ class FeedManager
if status.reply? && !status.in_reply_to_account_id.nil? # Filter out if it's a reply
should_filter = !Follow.where(account_id: receiver_id, target_account_id: status.in_reply_to_account_id).exists? # and I'm not following the person it's a reply to
should_filter &&= !(receiver_id == status.in_reply_to_account_id) # and it's not a reply to me
should_filter &&= !(status.account_id == status.in_reply_to_account_id) # and it's not a self-reply
should_filter &&= receiver_id != status.in_reply_to_account_id # and it's not a reply to me
should_filter &&= status.account_id != status.in_reply_to_account_id # and it's not a self-reply
return should_filter
elsif status.reblog? # Filter out a reblog
should_filter = Block.where(account_id: status.reblog.account_id, target_account_id: receiver_id).exists? # or if the author of the reblogged status is blocking me

+ 2
- 2
app/models/concerns/paginable.rb View File

@ -6,8 +6,8 @@ module Paginable
included do
scope :paginate_by_max_id, ->(limit, max_id = nil, since_id = nil) {
query = order(arel_table[:id].desc).limit(limit)
query = query.where(arel_table[:id].lt(max_id)) unless max_id.blank?
query = query.where(arel_table[:id].gt(since_id)) unless since_id.blank?
query = query.where(arel_table[:id].lt(max_id)) if max_id.present?
query = query.where(arel_table[:id].gt(since_id)) if since_id.present?
query
}
end

+ 1
- 1
app/models/setting.rb View File

@ -13,7 +13,7 @@
#
class Setting < RailsSettings::Base
source Rails.root.join('config/settings.yml')
source Rails.root.join('config'</span>, 'settings.yml')
def to_param
var

+ 1
- 1
app/services/fetch_atom_service.rb View File

@ -16,7 +16,7 @@ class FetchAtomService < BaseService
return nil if response.code != 200
return [url, fetch(url)] if response.mime_type == 'application/atom+xml'
return process_headers(url, response) unless response['Link'].blank?
return process_headers(url, response) if response['Link'].present?
process_html(fetch(url))
rescue OpenSSL::SSL::SSLError => e
Rails.logger.debug "SSL error: #{e}"

+ 1
- 1
app/services/suspend_account_service.rb View File

@ -23,7 +23,7 @@ class SuspendAccountService < BaseService
@account.notifications,
@account.favourites,
@account.active_relationships,
@account.passive_relationships
@account.passive_relationships,
].each do |association|
destroy_all(association)
end

+ 1
- 1
app/services/update_remote_profile_service.rb View File

@ -24,7 +24,7 @@ class UpdateRemoteProfileService < BaseService
end
old_hub_url = account.hub_url
account.hub_url = hub_link['href'] if !hub_link.nil? && !hub_link['href'].blank? && (hub_link['href'] != old_hub_url)
account.hub_url = hub_link['href'] if !hub_link.nil? && hub_link['href'].present? && (hub_link['href'] != old_hub_url)
account.save_with_optional_media!

+ 1
- 0
lib/tasks/auto_annotate_models.rake View File

@ -1,4 +1,5 @@
# frozen_string_literal: true
if Rails.env.development?
task :set_annotation_options do
Annotate.set_defaults(

+ 1
- 1
spec/models/user_spec.rb View File

@ -150,7 +150,7 @@ RSpec.describe User, type: :model do
end
it 'saves cleared otp_backup_codes' do
user = Fabricate.build(:user, otp_backup_codes: %w[dummy dummy])
user = Fabricate.build(:user, otp_backup_codes: %w(dummy dummy))
user.disable_two_factor!
expect(user.reload.otp_backup_codes.empty?).to be true
end

+ 2
- 2
spec/requests/link_headers_spec.rb View File

@ -14,14 +14,14 @@ describe 'Link headers' do
link_header = link_header_with_type('application/xrd+xml')
expect(link_header.href).to match 'http://www.example.com/.well-known/webfinger?resource=acct%3Atest%40cb6e6126.ngrok.io'
expect(link_header.attr_pairs.first).to eq %w[rel lrdd]
expect(link_header.attr_pairs.first).to eq %w(rel lrdd)
end
it 'contains atom url in link header' do
link_header = link_header_with_type('application/atom+xml')
expect(link_header.href).to eq 'http://www.example.com/users/test.atom'
expect(link_header.attr_pairs.first).to eq %w[rel alternate]
expect(link_header.attr_pairs.first).to eq %w(rel alternate)
end
def link_header_with_type(type)

Loading…
Cancel
Save