rubocop_todo_corrector 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/Gemfile.lock +3 -1
- data/README.md +3 -1
- data/lib/rubocop_todo_corrector/cop_document_parser.rb +38 -7
- data/lib/rubocop_todo_corrector/cop_source_detector.rb +1 -1
- data/lib/rubocop_todo_corrector/version.rb +1 -1
- data/rubocop_todo_corrector.gemspec +1 -0
- data/templates/description.md.erb +6 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3e370ea5e7275cba3675a1e5ebae1aababaddb87917bb7ac5507efb6b3e5fb79
|
4
|
+
data.tar.gz: 5a235861dbdf945bf4fd1a3c271cedb2f08e76397706d2f48e16adec0e94e8a4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55cd6960281b726f3cd5ab258d112c2fbbe8d589fd57045ce1186b06af17502883a591709fcc40f7ac773b785f05a01784a35f6a641d21de01f6334d0cef829a
|
7
|
+
data.tar.gz: a05b1ca686adb83f7eae952c0357109b0f18973f0e85965468518264b89b1a531a071d387a7209226837f66abef89680c2b43fac90daa1aa181f2cd63fae6da1
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,18 @@
|
|
2
2
|
|
3
3
|
## Unreleased
|
4
4
|
|
5
|
+
## 0.12.0 - 2022-08-08
|
6
|
+
|
7
|
+
### Added
|
8
|
+
|
9
|
+
- Add Safety section if `@safety` YARD tag is written in Cop class.
|
10
|
+
|
11
|
+
## 0.11.1 - 2022-08-03
|
12
|
+
|
13
|
+
### Fixed
|
14
|
+
|
15
|
+
- Fix `describe` command on more than three nested cop class.
|
16
|
+
|
5
17
|
## 0.11.0 - 2022-07-29
|
6
18
|
|
7
19
|
### Changed
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rubocop_todo_corrector (0.
|
4
|
+
rubocop_todo_corrector (0.13.0)
|
5
|
+
asciidoctor
|
5
6
|
bundler
|
6
7
|
thor
|
7
8
|
yard
|
@@ -9,6 +10,7 @@ PATH
|
|
9
10
|
GEM
|
10
11
|
remote: https://rubygems.org/
|
11
12
|
specs:
|
13
|
+
asciidoctor (2.0.17)
|
12
14
|
ast (2.4.2)
|
13
15
|
diff-lcs (1.5.0)
|
14
16
|
parallel (1.22.1)
|
data/README.md
CHANGED
@@ -3,7 +3,9 @@
|
|
3
3
|
[](https://github.com/r7kamura/rubocop_todo_corrector/actions/workflows/test.yml)
|
4
4
|
[](https://rubygems.org/gems/rubocop_todo_corrector)
|
5
5
|
|
6
|
-
Auto-correct offenses defined in
|
6
|
+
Auto-correct offenses defined in `.rubocop_todo.yml`.
|
7
|
+
|
8
|
+
This is an internal implementation of [rubocop-todo-corrector](https://github.com/r7kamura/rubocop-todo-corrector) action. See its README for more information about this action.
|
7
9
|
|
8
10
|
## Installation
|
9
11
|
|
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'asciidoctor'
|
3
4
|
require 'yard'
|
4
5
|
|
5
6
|
module RubocopTodoCorrector
|
@@ -27,18 +28,48 @@ module RubocopTodoCorrector
|
|
27
28
|
return unless yard_class_object
|
28
29
|
|
29
30
|
{
|
30
|
-
description
|
31
|
-
examples
|
32
|
-
|
33
|
-
name: tag.name,
|
34
|
-
text: tag.text
|
35
|
-
}
|
36
|
-
end
|
31
|
+
description:,
|
32
|
+
examples:,
|
33
|
+
safety:
|
37
34
|
}
|
38
35
|
end
|
39
36
|
|
40
37
|
private
|
41
38
|
|
39
|
+
# @return [String]
|
40
|
+
def description
|
41
|
+
::Asciidoctor.convert(
|
42
|
+
docstring,
|
43
|
+
safe: :safe
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
# @return [String]
|
48
|
+
def docstring
|
49
|
+
yard_class_object.docstring
|
50
|
+
end
|
51
|
+
|
52
|
+
# @return [Array<Hash>]
|
53
|
+
def examples
|
54
|
+
yard_class_object.tags('example').map do |tag|
|
55
|
+
{
|
56
|
+
name: tag.name,
|
57
|
+
text: tag.text
|
58
|
+
}
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
# @return [Hash, nil]
|
63
|
+
def safety
|
64
|
+
tag = yard_class_object.tag('safety')
|
65
|
+
return unless tag
|
66
|
+
|
67
|
+
{
|
68
|
+
name: tag.name,
|
69
|
+
text: tag.text
|
70
|
+
}
|
71
|
+
end
|
72
|
+
|
42
73
|
# @return [YARD::CodeObjects::ClassObject]
|
43
74
|
def yard_class_object
|
44
75
|
@yard_class_object ||= begin
|
@@ -29,6 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
30
30
|
spec.require_paths = ['lib']
|
31
31
|
|
32
|
+
spec.add_dependency 'asciidoctor'
|
32
33
|
spec.add_dependency 'bundler'
|
33
34
|
spec.add_dependency 'thor'
|
34
35
|
spec.add_dependency 'yard'
|
@@ -11,6 +11,12 @@ Auto-corrected [<%= @cop_name %>](<%= cop_url %>).
|
|
11
11
|
<% @cop_document[:description].each_line do |line| -%>
|
12
12
|
<%= "> #{line}".strip %>
|
13
13
|
<% end -%>
|
14
|
+
<% if @cop_document[:safety] -%>
|
15
|
+
>
|
16
|
+
> #### Safety
|
17
|
+
>
|
18
|
+
> <%= @cop_document[:safety][:text].gsub("\n", " ").strip %>
|
19
|
+
<% end -%>
|
14
20
|
<% unless @cop_document[:examples].empty? -%>
|
15
21
|
>
|
16
22
|
> #### Examples
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubocop_todo_corrector
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryo Nakamura
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: asciidoctor
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: bundler
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|