Fix RuboCop offenses

This commit is contained in:
Alex Kotov 2024-10-18 23:06:14 +04:00
parent e68be90066
commit 3af946467a
Signed by: kotovalexarian
GPG key ID: 553C0EBBEB5D5F08
14 changed files with 37 additions and 94 deletions

View file

@ -21,6 +21,9 @@ Lint/AmbiguousOperatorPrecedence:
Lint/ReturnInVoidContext:
Enabled: false
Metrics/ClassLength:
Max: 200
Style/AndOr:
EnforcedStyle: conditionals
@ -33,6 +36,9 @@ Style/HashAsLastArrayItem:
Style/PerlBackrefs:
Enabled: false
Style/SuperWithArgsParentheses:
Enabled: false
Style/TrailingCommaInArguments:
EnforcedStyleForMultiline: comma

View file

@ -1,6 +1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2024-10-18 14:41:13 UTC using RuboCop version 1.67.0.
# on 2024-10-18 19:44:25 UTC using RuboCop version 1.67.0.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
@ -22,23 +22,10 @@ Layout/LineLength:
Exclude:
- 'lib/repubmark/elems/footnote.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowedMethods.
# AllowedMethods: present?, blank?, presence, try, try!, in?
Lint/SafeNavigationChain:
Exclude:
- 'lib/repubmark/elems/article.rb'
# Offense count: 1
# Offense count: 2
# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
Metrics/AbcSize:
Max: 35
# Offense count: 1
# Configuration parameters: CountComments, CountAsOne.
Metrics/ClassLength:
Max: 104
Max: 36
# Offense count: 1
# Configuration parameters: AllowedMethods, AllowedPatterns.
@ -48,32 +35,14 @@ Metrics/CyclomaticComplexity:
# Offense count: 5
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
Metrics/MethodLength:
Max: 33
Max: 31
# Offense count: 1
# Configuration parameters: AllowedMethods, AllowedPatterns.
Metrics/PerceivedComplexity:
Max: 11
# Offense count: 2
Performance/MapMethodChain:
Exclude:
- 'lib/repubmark/elems/footnotes_category.rb'
# Offense count: 14
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowOnlyRestArgument, UseAnonymousForwarding, RedundantRestArgumentNames, RedundantKeywordRestArgumentNames, RedundantBlockArgumentNames.
# RedundantRestArgumentNames: args, arguments
# RedundantKeywordRestArgumentNames: kwargs, options, opts
# RedundantBlockArgumentNames: blk, block, proc
Style/ArgumentsForwarding:
Exclude:
- 'lib/repubmark/elems/canvas.rb'
- 'lib/repubmark/elems/footnotes_category.rb'
- 'lib/repubmark/elems/joint.rb'
- 'lib/repubmark/elems/link.rb'
# Offense count: 34
# Offense count: 36
# Configuration parameters: AllowedConstants.
Style/Documentation:
Enabled: false
@ -97,33 +66,3 @@ Style/RedundantFreeze:
Exclude:
- 'lib/repubmark/elems/fraction.rb'
- 'lib/repubmark/elems/power.rb'
# Offense count: 2
# This cop supports safe autocorrection (--autocorrect).
Style/RedundantStringEscape:
Exclude:
- 'lib/repubmark/elems/footnote.rb'
# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowModifier.
Style/SoleNestedConditional:
Exclude:
- 'lib/repubmark/elems/footnote.rb'
# Offense count: 7
# This cop supports safe autocorrection (--autocorrect).
Style/SuperArguments:
Exclude:
- 'lib/repubmark/elems/annotation.rb'
- 'lib/repubmark/elems/blockquote.rb'
- 'lib/repubmark/elems/canvas.rb'
- 'lib/repubmark/elems/caption.rb'
- 'lib/repubmark/elems/figures.rb'
- 'lib/repubmark/elems/joint.rb'
- 'lib/repubmark/elems/paragraph.rb'
# Offense count: 24
# This cop supports safe autocorrection (--autocorrect).
Style/SuperWithArgsParentheses:
Enabled: false

View file

@ -27,8 +27,8 @@ task test: :tests
desc 'Run code analysis tools'
task lint: %i[rubocop yard:cov]
desc 'Fix code style (rubocop --auto-correct)'
task fix: 'rubocop:auto_correct'
desc 'Fix code style (rubocop --autocorrect)'
task fix: 'rubocop:autocorrect'
Rake::Task['release'].prereqs.unshift 'default'
Rake::Task['release:rubygem_push'].clear

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Article
def initialize(parent)
super parent
super
@canvas = Canvas.new self
end

View file

@ -45,7 +45,7 @@ module Repubmark
].compact.join("\n\n\n").freeze
end
def chapters = @chapter&.chapters[:chapters] || [].freeze
def chapters = (@chapter&.chapters || {})[:chapters] || [].freeze
###################
# Builder methods #

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Canvas
def initialize(parent)
super parent
super
@canvas = Canvas.new self
@caption = nil

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Annotation, :Blockquote, :Chapter
def initialize(parent)
super parent
super
@items = []
end
@ -41,14 +41,14 @@ module Repubmark
nil
end
def code_block(*args, **kwargs)
code_block = CodeBlock.new self, *args, **kwargs
def code_block(*, **)
code_block = CodeBlock.new(self, *, **)
@items << code_block
nil
end
def iframe(*args, **kwargs)
iframe = Iframe.new self, *args, **kwargs
def iframe(*, **)
iframe = Iframe.new(self, *, **)
@items << iframe
nil
end

View file

@ -8,7 +8,7 @@ module Repubmark
parents :Blockquote, :Figure, :Footnote, :ListItem, :Paragraph
def initialize(parent)
super parent
super
@items = []
end

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Canvas
def initialize(parent)
super parent
super
@figures = []
end

View file

@ -30,13 +30,11 @@ module Repubmark
end
if url
scheme = Addressable::URI.parse(url).scheme&.downcase
if scheme
unless %w[http https].include? scheme
if scheme && !%w[http https].include?(scheme)
result += %(<span class="badge text-bg-secondary">\n)
result += %(#{scheme}://\n)
result += "</span>\n"
end
end
result += %(<a href="#{url}">#{link_text}</a>\n)
else
result += "#{link_text}\n" if link_text
@ -45,7 +43,7 @@ module Repubmark
if alt_urls&.any?
result += %[(#{
alt_urls.map do |alt_url|
%(<a href=\"#{alt_url[:url]}\">#{alt_url[:name]}</a>)
%(<a href="#{alt_url[:url]}">#{alt_url[:name]}</a>)
end.join ', '
})\n]
end

View file

@ -20,7 +20,7 @@ module Repubmark
<h2>#@title</h2>
<ol>
#{@footnotes.map(&:to_html).map(&:strip).join("\n")}
#{@footnotes.map { |footnote| footnote.to_html.strip }.join("\n")}
</ol>
HTML
end
@ -29,7 +29,7 @@ module Repubmark
<<~GEMTEXT
## #@title
#{@footnotes.map(&:to_gemtext).map(&:strip).join("\n")}
#{@footnotes.map { |footnote| footnote.to_gemtext.strip }.join("\n")}
GEMTEXT
end
@ -37,8 +37,8 @@ module Repubmark
# Builder methods #
###################
def footnote(**kwargs)
footnote = Footnote.new(self, **kwargs)
def footnote(**)
footnote = Footnote.new(self, **)
@footnotes << footnote
yield footnote if block_given?
nil

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Caption, :Quote
def initialize(parent)
super parent
super
@raw1 = nil
@base = nil
@ -92,7 +92,7 @@ module Repubmark
base quote
end
def section(*args) = base Section.new self, *args
def section(*) = base Section.new(self, *)
def text(str) = base Text.new self, str

View file

@ -7,8 +7,8 @@ module Repubmark
SCHEMES = %w[http https].freeze
def initialize(parent, str, uri, **kwargs)
super parent, str, **kwargs
def initialize(parent, str, uri, **)
super(parent, str, **)
self.uri = uri
validate_uri!

View file

@ -6,7 +6,7 @@ module Repubmark
parents :Canvas
def initialize(parent)
super parent
super
@caption = Caption.new self
end