yard-lint 0.2.0 → 1.0.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 +36 -1
- data/README.md +256 -1
- data/Rakefile +4 -0
- data/bin/yard-lint +24 -0
- data/lib/yard/lint/config.rb +35 -1
- data/lib/yard/lint/config_loader.rb +1 -1
- data/lib/yard/lint/result_builder.rb +10 -1
- data/lib/yard/lint/validators/base.rb +41 -12
- data/lib/yard/lint/validators/documentation/undocumented_boolean_methods/validator.rb +7 -6
- data/lib/yard/lint/validators/documentation/undocumented_method_arguments/validator.rb +4 -5
- data/lib/yard/lint/validators/documentation/undocumented_objects/config.rb +2 -1
- data/lib/yard/lint/validators/documentation/undocumented_objects/parser.rb +95 -5
- data/lib/yard/lint/validators/documentation/undocumented_objects/validator.rb +15 -11
- data/lib/yard/lint/validators/semantic/abstract_methods/validator.rb +4 -5
- data/lib/yard/lint/validators/tags/api_tags/validator.rb +4 -5
- data/lib/yard/lint/validators/tags/collection_type/config.rb +21 -0
- data/lib/yard/lint/validators/tags/collection_type/messages_builder.rb +44 -0
- data/lib/yard/lint/validators/tags/collection_type/parser.rb +49 -0
- data/lib/yard/lint/validators/tags/collection_type/result.rb +25 -0
- data/lib/yard/lint/validators/tags/collection_type/validator.rb +73 -0
- data/lib/yard/lint/validators/tags/collection_type.rb +14 -0
- data/lib/yard/lint/validators/tags/invalid_types/validator.rb +6 -6
- data/lib/yard/lint/validators/tags/meaningless_tag/config.rb +22 -0
- data/lib/yard/lint/validators/tags/meaningless_tag/messages_builder.rb +28 -0
- data/lib/yard/lint/validators/tags/meaningless_tag/parser.rb +53 -0
- data/lib/yard/lint/validators/tags/meaningless_tag/result.rb +26 -0
- data/lib/yard/lint/validators/tags/meaningless_tag/validator.rb +84 -0
- data/lib/yard/lint/validators/tags/meaningless_tag.rb +15 -0
- data/lib/yard/lint/validators/tags/option_tags/validator.rb +4 -5
- data/lib/yard/lint/validators/tags/order/validator.rb +4 -5
- data/lib/yard/lint/validators/tags/tag_type_position/config.rb +22 -0
- data/lib/yard/lint/validators/tags/tag_type_position/messages_builder.rb +38 -0
- data/lib/yard/lint/validators/tags/tag_type_position/parser.rb +51 -0
- data/lib/yard/lint/validators/tags/tag_type_position/result.rb +25 -0
- data/lib/yard/lint/validators/tags/tag_type_position/validator.rb +113 -0
- data/lib/yard/lint/validators/tags/tag_type_position.rb +14 -0
- data/lib/yard/lint/validators/tags/type_syntax/config.rb +21 -0
- data/lib/yard/lint/validators/tags/type_syntax/messages_builder.rb +27 -0
- data/lib/yard/lint/validators/tags/type_syntax/parser.rb +54 -0
- data/lib/yard/lint/validators/tags/type_syntax/result.rb +25 -0
- data/lib/yard/lint/validators/tags/type_syntax/validator.rb +76 -0
- data/lib/yard/lint/validators/tags/type_syntax.rb +14 -0
- data/lib/yard/lint/validators/warnings/duplicated_parameter_name/validator.rb +4 -5
- data/lib/yard/lint/validators/warnings/invalid_directive_format/validator.rb +4 -5
- data/lib/yard/lint/validators/warnings/invalid_tag_format/validator.rb +4 -5
- data/lib/yard/lint/validators/warnings/unknown_directive/validator.rb +4 -5
- data/lib/yard/lint/validators/warnings/unknown_parameter_name/parser.rb +4 -1
- data/lib/yard/lint/validators/warnings/unknown_parameter_name/validator.rb +4 -5
- data/lib/yard/lint/validators/warnings/unknown_tag/validator.rb +4 -5
- data/lib/yard/lint/version.rb +1 -1
- data/lib/yard/lint.rb +1 -0
- data/misc/logo.png +0 -0
- metadata +27 -1
|
@@ -11,15 +11,14 @@ module Yard
|
|
|
11
11
|
|
|
12
12
|
# Runs YARD stats command with proper settings on a given dir and files
|
|
13
13
|
# @param dir [String] dir where we should generate the temp docs
|
|
14
|
-
# @param
|
|
14
|
+
# @param file_list_path [String] path to temp file containing file paths (one per line)
|
|
15
15
|
# @return [Hash] shell command execution hash results
|
|
16
|
-
def yard_cmd(dir,
|
|
16
|
+
def yard_cmd(dir, file_list_path)
|
|
17
17
|
cmd = <<~CMD
|
|
18
|
-
yard stats \
|
|
18
|
+
cat #{Shellwords.escape(file_list_path)} | xargs yard stats \
|
|
19
19
|
#{shell_arguments} \
|
|
20
20
|
--compact \
|
|
21
|
-
-b #{Shellwords.escape(dir)}
|
|
22
|
-
#{escaped_file_names}
|
|
21
|
+
-b #{Shellwords.escape(dir)}
|
|
23
22
|
CMD
|
|
24
23
|
cmd = cmd.tr("\n", ' ')
|
|
25
24
|
|
|
@@ -11,15 +11,14 @@ module Yard
|
|
|
11
11
|
|
|
12
12
|
# Runs YARD stats command with proper settings on a given dir and files
|
|
13
13
|
# @param dir [String] dir where we should generate the temp docs
|
|
14
|
-
# @param
|
|
14
|
+
# @param file_list_path [String] path to temp file containing file paths (one per line)
|
|
15
15
|
# @return [Hash] shell command execution hash results
|
|
16
|
-
def yard_cmd(dir,
|
|
16
|
+
def yard_cmd(dir, file_list_path)
|
|
17
17
|
cmd = <<~CMD
|
|
18
|
-
yard stats \
|
|
18
|
+
cat #{Shellwords.escape(file_list_path)} | xargs yard stats \
|
|
19
19
|
#{shell_arguments} \
|
|
20
20
|
--compact \
|
|
21
|
-
-b #{Shellwords.escape(dir)}
|
|
22
|
-
#{escaped_file_names}
|
|
21
|
+
-b #{Shellwords.escape(dir)}
|
|
23
22
|
CMD
|
|
24
23
|
cmd = cmd.tr("\n", ' ')
|
|
25
24
|
|
|
@@ -11,15 +11,14 @@ module Yard
|
|
|
11
11
|
|
|
12
12
|
# Runs YARD stats command with proper settings on a given dir and files
|
|
13
13
|
# @param dir [String] dir where we should generate the temp docs
|
|
14
|
-
# @param
|
|
14
|
+
# @param file_list_path [String] path to temp file containing file paths (one per line)
|
|
15
15
|
# @return [Hash] shell command execution hash results
|
|
16
|
-
def yard_cmd(dir,
|
|
16
|
+
def yard_cmd(dir, file_list_path)
|
|
17
17
|
cmd = <<~CMD
|
|
18
|
-
yard stats \
|
|
18
|
+
cat #{Shellwords.escape(file_list_path)} | xargs yard stats \
|
|
19
19
|
#{shell_arguments} \
|
|
20
20
|
--compact \
|
|
21
|
-
-b #{Shellwords.escape(dir)}
|
|
22
|
-
#{escaped_file_names}
|
|
21
|
+
-b #{Shellwords.escape(dir)}
|
|
23
22
|
CMD
|
|
24
23
|
cmd = cmd.tr("\n", ' ')
|
|
25
24
|
|
|
@@ -8,10 +8,13 @@ module Yard
|
|
|
8
8
|
# Parser for UnknownParameterName warnings
|
|
9
9
|
class Parser < ::Yard::Lint::Parsers::TwoLineBase
|
|
10
10
|
# Set of regexps for detecting warnings reported by YARD stats
|
|
11
|
+
# YARD output format:
|
|
12
|
+
# [warn]: @param tag has unknown parameter name: ...
|
|
13
|
+
# in file `filename.rb' near line 8
|
|
11
14
|
self.regexps = {
|
|
12
15
|
general: /^\[warn\]: @param tag has unknown parameter name/,
|
|
13
16
|
message: /\[warn\]: (.*)$/,
|
|
14
|
-
location: /in file `(.*?)'
|
|
17
|
+
location: /in file `(.*?)'\s*near/,
|
|
15
18
|
line: /near line (\d+)/
|
|
16
19
|
}.freeze
|
|
17
20
|
end
|
|
@@ -11,15 +11,14 @@ module Yard
|
|
|
11
11
|
|
|
12
12
|
# Runs YARD stats command with proper settings on a given dir and files
|
|
13
13
|
# @param dir [String] dir where we should generate the temp docs
|
|
14
|
-
# @param
|
|
14
|
+
# @param file_list_path [String] path to temp file containing file paths (one per line)
|
|
15
15
|
# @return [Hash] shell command execution hash results
|
|
16
|
-
def yard_cmd(dir,
|
|
16
|
+
def yard_cmd(dir, file_list_path)
|
|
17
17
|
cmd = <<~CMD
|
|
18
|
-
yard stats \
|
|
18
|
+
cat #{Shellwords.escape(file_list_path)} | xargs yard stats \
|
|
19
19
|
#{shell_arguments} \
|
|
20
20
|
--compact \
|
|
21
|
-
-b #{Shellwords.escape(dir)}
|
|
22
|
-
#{escaped_file_names}
|
|
21
|
+
-b #{Shellwords.escape(dir)}
|
|
23
22
|
CMD
|
|
24
23
|
cmd = cmd.tr("\n", ' ')
|
|
25
24
|
|
|
@@ -11,15 +11,14 @@ module Yard
|
|
|
11
11
|
|
|
12
12
|
# Runs YARD stats command with proper settings on a given dir and files
|
|
13
13
|
# @param dir [String] dir where we should generate the temp docs
|
|
14
|
-
# @param
|
|
14
|
+
# @param file_list_path [String] path to temp file containing file paths (one per line)
|
|
15
15
|
# @return [Hash] shell command execution hash results
|
|
16
|
-
def yard_cmd(dir,
|
|
16
|
+
def yard_cmd(dir, file_list_path)
|
|
17
17
|
cmd = <<~CMD
|
|
18
|
-
yard stats \
|
|
18
|
+
cat #{Shellwords.escape(file_list_path)} | xargs yard stats \
|
|
19
19
|
#{shell_arguments} \
|
|
20
20
|
--compact \
|
|
21
|
-
-b #{Shellwords.escape(dir)}
|
|
22
|
-
#{escaped_file_names}
|
|
21
|
+
-b #{Shellwords.escape(dir)}
|
|
23
22
|
CMD
|
|
24
23
|
cmd = cmd.tr("\n", ' ')
|
|
25
24
|
|
data/lib/yard/lint/version.rb
CHANGED
data/lib/yard/lint.rb
CHANGED
data/misc/logo.png
ADDED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: yard-lint
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Maciej Mensfeld
|
|
@@ -52,6 +52,7 @@ files:
|
|
|
52
52
|
- CHANGELOG.md
|
|
53
53
|
- LICENSE.txt
|
|
54
54
|
- README.md
|
|
55
|
+
- Rakefile
|
|
55
56
|
- bin/console
|
|
56
57
|
- bin/setup
|
|
57
58
|
- bin/yard-lint
|
|
@@ -100,12 +101,24 @@ files:
|
|
|
100
101
|
- lib/yard/lint/validators/tags/api_tags/parser.rb
|
|
101
102
|
- lib/yard/lint/validators/tags/api_tags/result.rb
|
|
102
103
|
- lib/yard/lint/validators/tags/api_tags/validator.rb
|
|
104
|
+
- lib/yard/lint/validators/tags/collection_type.rb
|
|
105
|
+
- lib/yard/lint/validators/tags/collection_type/config.rb
|
|
106
|
+
- lib/yard/lint/validators/tags/collection_type/messages_builder.rb
|
|
107
|
+
- lib/yard/lint/validators/tags/collection_type/parser.rb
|
|
108
|
+
- lib/yard/lint/validators/tags/collection_type/result.rb
|
|
109
|
+
- lib/yard/lint/validators/tags/collection_type/validator.rb
|
|
103
110
|
- lib/yard/lint/validators/tags/invalid_types.rb
|
|
104
111
|
- lib/yard/lint/validators/tags/invalid_types/config.rb
|
|
105
112
|
- lib/yard/lint/validators/tags/invalid_types/messages_builder.rb
|
|
106
113
|
- lib/yard/lint/validators/tags/invalid_types/parser.rb
|
|
107
114
|
- lib/yard/lint/validators/tags/invalid_types/result.rb
|
|
108
115
|
- lib/yard/lint/validators/tags/invalid_types/validator.rb
|
|
116
|
+
- lib/yard/lint/validators/tags/meaningless_tag.rb
|
|
117
|
+
- lib/yard/lint/validators/tags/meaningless_tag/config.rb
|
|
118
|
+
- lib/yard/lint/validators/tags/meaningless_tag/messages_builder.rb
|
|
119
|
+
- lib/yard/lint/validators/tags/meaningless_tag/parser.rb
|
|
120
|
+
- lib/yard/lint/validators/tags/meaningless_tag/result.rb
|
|
121
|
+
- lib/yard/lint/validators/tags/meaningless_tag/validator.rb
|
|
109
122
|
- lib/yard/lint/validators/tags/option_tags.rb
|
|
110
123
|
- lib/yard/lint/validators/tags/option_tags/config.rb
|
|
111
124
|
- lib/yard/lint/validators/tags/option_tags/messages_builder.rb
|
|
@@ -118,6 +131,18 @@ files:
|
|
|
118
131
|
- lib/yard/lint/validators/tags/order/parser.rb
|
|
119
132
|
- lib/yard/lint/validators/tags/order/result.rb
|
|
120
133
|
- lib/yard/lint/validators/tags/order/validator.rb
|
|
134
|
+
- lib/yard/lint/validators/tags/tag_type_position.rb
|
|
135
|
+
- lib/yard/lint/validators/tags/tag_type_position/config.rb
|
|
136
|
+
- lib/yard/lint/validators/tags/tag_type_position/messages_builder.rb
|
|
137
|
+
- lib/yard/lint/validators/tags/tag_type_position/parser.rb
|
|
138
|
+
- lib/yard/lint/validators/tags/tag_type_position/result.rb
|
|
139
|
+
- lib/yard/lint/validators/tags/tag_type_position/validator.rb
|
|
140
|
+
- lib/yard/lint/validators/tags/type_syntax.rb
|
|
141
|
+
- lib/yard/lint/validators/tags/type_syntax/config.rb
|
|
142
|
+
- lib/yard/lint/validators/tags/type_syntax/messages_builder.rb
|
|
143
|
+
- lib/yard/lint/validators/tags/type_syntax/parser.rb
|
|
144
|
+
- lib/yard/lint/validators/tags/type_syntax/result.rb
|
|
145
|
+
- lib/yard/lint/validators/tags/type_syntax/validator.rb
|
|
121
146
|
- lib/yard/lint/validators/warnings/duplicated_parameter_name.rb
|
|
122
147
|
- lib/yard/lint/validators/warnings/duplicated_parameter_name/config.rb
|
|
123
148
|
- lib/yard/lint/validators/warnings/duplicated_parameter_name/parser.rb
|
|
@@ -149,6 +174,7 @@ files:
|
|
|
149
174
|
- lib/yard/lint/validators/warnings/unknown_tag/result.rb
|
|
150
175
|
- lib/yard/lint/validators/warnings/unknown_tag/validator.rb
|
|
151
176
|
- lib/yard/lint/version.rb
|
|
177
|
+
- misc/logo.png
|
|
152
178
|
- renovate.json
|
|
153
179
|
homepage: https://github.com/mensfeld/yard-lint
|
|
154
180
|
licenses:
|