rubocop-gradual 0.3.3 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -1
- data/lib/rubocop/gradual/cli.rb +9 -1
- data/lib/rubocop/gradual/commands/autocorrect.rb +2 -2
- data/lib/rubocop/gradual/commands/base.rb +4 -6
- data/lib/rubocop/gradual/git.rb +1 -1
- data/lib/rubocop/gradual/patch.rb +11 -12
- data/lib/rubocop/gradual/process/printer.rb +7 -4
- data/lib/rubocop/gradual/process.rb +3 -1
- data/lib/rubocop/gradual/results/issue.rb +1 -1
- data/lib/rubocop/gradual/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 750548fbcac00bd48721d0c3f1b0b7a43b5cf77aaafe7a81d6f58bfbe6edc2e6
|
4
|
+
data.tar.gz: dfba66113c744a92a51b6c72e6bec157c12dd721cee9d8a1d033a0845b4bf0ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d713758f60a7b2ee780aeafda2fb01c6eb2f68f5a97aa521da5b1ef57a5a33bf3d3fa05b9dfb0f9d231ac3f0d107b72b7af1260eb9e76f6ae259bc3a619d1190
|
7
|
+
data.tar.gz: 1e4286b97788902cfc101698cb31ae756a70c2419d824ae3b547db1eb060a2cc36e6fc6eb334007658ef3c0ffec8ba484b257770d0e025768c1bf70aef58e419
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning].
|
|
7
7
|
|
8
8
|
## [Unreleased]
|
9
9
|
|
10
|
+
## [0.3.5] - 2024-06-24
|
11
|
+
|
12
|
+
### Added
|
13
|
+
|
14
|
+
- Add support for the RuboCop `--list` option. ([@skryukov])
|
15
|
+
|
16
|
+
### Fixed
|
17
|
+
|
18
|
+
- Respect files passed to RuboCop in required mode. ([@skryukov])
|
19
|
+
- Exclude deleted files when running `--staged`. ([@dmorgan-fa])
|
20
|
+
- Don't show "EVEN BETTER" instruction when all issues are fixed. ([@skryukov])
|
21
|
+
|
22
|
+
## [0.3.4] - 2023-10-26
|
23
|
+
|
24
|
+
### Fixed
|
25
|
+
|
26
|
+
- Use JSON.dump instead of to_json for stable results encoding. ([@skryukov])
|
27
|
+
|
10
28
|
## [0.3.3] - 2023-10-18
|
11
29
|
|
12
30
|
### Fixed
|
@@ -97,9 +115,12 @@ RuboCop::Gradual::RakeTask.new
|
|
97
115
|
|
98
116
|
- Initial implementation. ([@skryukov])
|
99
117
|
|
118
|
+
[@dmorgan-fa]: https://github.com/dmorgan-fa
|
100
119
|
[@skryukov]: https://github.com/skryukov
|
101
120
|
|
102
|
-
[Unreleased]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.
|
121
|
+
[Unreleased]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.5...HEAD
|
122
|
+
[0.3.5]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.4...v0.3.5
|
123
|
+
[0.3.4]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.3...v0.3.4
|
103
124
|
[0.3.3]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.2...v0.3.3
|
104
125
|
[0.3.2]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.1...v0.3.2
|
105
126
|
[0.3.1]: https://github.com/skryukov/rubocop-gradual/compare/v0.3.0...v0.3.1
|
data/lib/rubocop/gradual/cli.rb
CHANGED
@@ -10,11 +10,19 @@ module RuboCop
|
|
10
10
|
def run(argv = ARGV)
|
11
11
|
Configuration.apply(*Options.new.parse(argv))
|
12
12
|
puts "Gradual mode: #{Configuration.mode}" if Configuration.debug?
|
13
|
-
load_command(Configuration.command)
|
13
|
+
cmd = load_command(Configuration.command)
|
14
|
+
return list_target_files(cmd) if Configuration.rubocop_options[:list_target_files]
|
15
|
+
|
16
|
+
cmd.call.to_i
|
14
17
|
end
|
15
18
|
|
16
19
|
private
|
17
20
|
|
21
|
+
def list_target_files(cmd)
|
22
|
+
cmd.lint_paths.each { |path| puts PathUtil.relative_path(path) }
|
23
|
+
1
|
24
|
+
end
|
25
|
+
|
18
26
|
def load_command(command)
|
19
27
|
require_relative "commands/#{command}"
|
20
28
|
::RuboCop::Gradual::Commands.const_get(command.to_s.capitalize).new
|
@@ -20,14 +20,14 @@ module RuboCop
|
|
20
20
|
Base.new.call
|
21
21
|
end
|
22
22
|
|
23
|
-
private
|
24
|
-
|
25
23
|
def lint_paths
|
26
24
|
return Configuration.target_file_paths if Configuration.lint_paths.any?
|
27
25
|
|
28
26
|
changed_or_untracked_files.map(&:path)
|
29
27
|
end
|
30
28
|
|
29
|
+
private
|
30
|
+
|
31
31
|
def changed_or_untracked_files
|
32
32
|
tracked_files = LockFile.new(Configuration.path).read_results&.files || []
|
33
33
|
|
@@ -23,6 +23,10 @@ module RuboCop
|
|
23
23
|
1
|
24
24
|
end
|
25
25
|
|
26
|
+
def lint_paths
|
27
|
+
Configuration.target_file_paths
|
28
|
+
end
|
29
|
+
|
26
30
|
private
|
27
31
|
|
28
32
|
def run_rubocop
|
@@ -36,12 +40,6 @@ module RuboCop
|
|
36
40
|
rubocop_runner.run
|
37
41
|
end
|
38
42
|
|
39
|
-
def lint_paths
|
40
|
-
return [] if Configuration.lint_paths.empty?
|
41
|
-
|
42
|
-
Configuration.target_file_paths
|
43
|
-
end
|
44
|
-
|
45
43
|
def rubocop_options
|
46
44
|
Configuration.rubocop_options
|
47
45
|
.slice(:config, :debug, :display_time)
|
data/lib/rubocop/gradual/git.rb
CHANGED
@@ -14,7 +14,7 @@ module RuboCop
|
|
14
14
|
when :unstaged
|
15
15
|
`git ls-files --others --exclude-standard -m`.split("\n")
|
16
16
|
when :staged
|
17
|
-
`git diff --cached --name-only`.split("\n")
|
17
|
+
`git diff --cached --name-only --diff-filter=d`.split("\n") # excludes deleted files
|
18
18
|
else
|
19
19
|
`git diff --name-only #{commit}`.split("\n")
|
20
20
|
end
|
@@ -9,23 +9,22 @@ module RuboCop
|
|
9
9
|
def run_command(name)
|
10
10
|
return super if name != :execute_runner || (ARGV & %w[--stdin -s]).any?
|
11
11
|
|
12
|
-
|
13
|
-
puts "Gradual mode: #{Configuration.mode}" if Configuration.debug?
|
14
|
-
load_command(Configuration.command).call.to_i
|
12
|
+
RuboCop::Gradual::CLI.new.run(patched_argv)
|
15
13
|
end
|
16
14
|
|
17
15
|
private
|
18
16
|
|
19
|
-
def
|
20
|
-
|
21
|
-
::RuboCop::Gradual::Commands.const_get(command.to_s.capitalize).new
|
22
|
-
end
|
17
|
+
def patched_argv
|
18
|
+
return ARGV if ARGV[0] != "gradual"
|
23
19
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
20
|
+
case ARGV[1]
|
21
|
+
when "force_update"
|
22
|
+
ARGV[2..] + ["--force-update"]
|
23
|
+
when "check"
|
24
|
+
ARGV[2..] + ["--check"]
|
25
|
+
else
|
26
|
+
raise ArgumentError, "Unknown gradual command #{ARGV[1]}"
|
27
|
+
end
|
29
28
|
end
|
30
29
|
end
|
31
30
|
end
|
@@ -12,16 +12,19 @@ module RuboCop
|
|
12
12
|
def print_results
|
13
13
|
puts diff.statistics if Configuration.debug?
|
14
14
|
|
15
|
-
send "print_#{diff.state}"
|
15
|
+
send :"print_#{diff.state}"
|
16
16
|
end
|
17
17
|
|
18
|
-
def print_ci_warning(diff)
|
18
|
+
def print_ci_warning(diff, statistics:)
|
19
19
|
puts <<~MSG
|
20
20
|
\n#{bold("Unexpected Changes!")}
|
21
21
|
|
22
22
|
RuboCop Gradual lock file is outdated, to fix this message:
|
23
|
-
- Run `rubocop-gradual` locally and commit the results
|
24
|
-
|
23
|
+
- Run `rubocop-gradual` locally and commit the results#{
|
24
|
+
if statistics[:unchanged] != statistics[:left]
|
25
|
+
", or\n- EVEN BETTER: before doing the above, try to fix the remaining issues in those files!"
|
26
|
+
end
|
27
|
+
}
|
25
28
|
|
26
29
|
#{bold("`#{Configuration.path}` diff:")}
|
27
30
|
|
@@ -23,7 +23,9 @@ module RuboCop
|
|
23
23
|
printer = Printer.new(diff)
|
24
24
|
|
25
25
|
printer.print_results
|
26
|
-
|
26
|
+
if fail_with_outdated_lock?(diff)
|
27
|
+
printer.print_ci_warning(lock_file.diff(new_results), statistics: diff.statistics)
|
28
|
+
end
|
27
29
|
|
28
30
|
exit_code = error_code(diff)
|
29
31
|
sync_lock_file(diff) if exit_code.zero?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubocop-gradual
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Svyatoslav Kryukov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: diff-lcs
|
@@ -152,7 +152,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
152
152
|
- !ruby/object:Gem::Version
|
153
153
|
version: '0'
|
154
154
|
requirements: []
|
155
|
-
rubygems_version: 3.
|
155
|
+
rubygems_version: 3.5.7
|
156
156
|
signing_key:
|
157
157
|
specification_version: 4
|
158
158
|
summary: Gradual RuboCop plugin
|