rubocop-gradual 0.1.0 → 0.1.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 966ef7dacbe7b713f93a8ad8cc48af2fd39b2d76b521e4e09a5895084f4afc9d
4
- data.tar.gz: 550a64eda37a57229e718e13c74d92d72b2e1a346f6140026ef3c13de629ee86
3
+ metadata.gz: 0faebca65c344ef609bb905fb2db0e3f1fd30e5ef0eca7557421c36a01607978
4
+ data.tar.gz: 9ccf0c6f68b185c4ac5859abf12ab79ced66fb1c82987655d714a7d365811788
5
5
  SHA512:
6
- metadata.gz: 43ec3b161eb08c624f7d6014ae769dbf269c13b84d212ab50cee04b92c49eeaf66bf53d86ddec1b64cdae6d887a0284d948c56b95535a752e74414acfc32bd16
7
- data.tar.gz: 4fdd4987b2404314f82c24c4962cc280f76815ac82bb3372c0edffe9cf18ac0ca391422efd95fcd831ffe8f48ceda2110cb9ec62f07e883032aa7bf4df01c7c3
6
+ metadata.gz: 9641cdb414d6c980fec5d0b066b7093022fd68dfb40995f55c41460a2c2bb3cd4793b6bcbabf774cfea2b5eab95ea925569b0aeff0bc1e774375d98749dcb114
7
+ data.tar.gz: 72a1abe1d70e2f45e0bebbf4ab96e0254297f37839a11fe2d371e90574ba4a075512f92939a36898d0d150308bdd4b102003c767f04852ef6b4bdadbb9a5fe4b
data/CHANGELOG.md CHANGED
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning].
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.1.1] - 2022-07-05
11
+
12
+ ### Changed
13
+
14
+ - `parallel` gem is used to speed up results parsing. ([@skryukov])
15
+
16
+ ### Fixed
17
+
18
+ - Fixed multiline issues hash calculation. ([@skryukov])
19
+
10
20
  ## [0.1.0] - 2022-07-03
11
21
 
12
22
  ### Added
@@ -15,7 +25,8 @@ and this project adheres to [Semantic Versioning].
15
25
 
16
26
  [@skryukov]: https://github.com/skryukov
17
27
 
18
- [Unreleased]: https://github.com/skryukov/rubocop-gradual/compare/v0.1.0...HEAD
28
+ [Unreleased]: https://github.com/skryukov/rubocop-gradual/compare/v0.1.1...HEAD
29
+ [0.1.1]: https://github.com/skryukov/rubocop-gradual/compare/v0.1.0...v0.1.1
19
30
  [0.1.0]: https://github.com/skryukov/rubocop-gradual/commits/v0.1.0
20
31
 
21
32
  [Keep a Changelog]: https://keepachangelog.com/en/1.0.0/
@@ -35,8 +35,18 @@ module RuboCop
35
35
  def issue_hash(issue)
36
36
  return issue[:hash] if issue[:hash]
37
37
 
38
- code = data.lines[issue[:line] - 1..].join("\n")[issue[:column] - 1, issue[:length]]
39
- djb2a(code)
38
+ djb2a(fetch_code(issue[:line] - 1, issue[:column] - 1, issue[:length]))
39
+ end
40
+
41
+ def fetch_code(line, column, length)
42
+ code = ""
43
+ data.each_line.lazy.drop(line).each_with_index do |str, index|
44
+ from = index.zero? ? column : 0
45
+ length = index.zero? ? length : length - code.length
46
+ code += str[from, length]
47
+
48
+ return code if code.length >= length
49
+ end
40
50
  end
41
51
 
42
52
  def data
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "parallel"
4
+
3
5
  require_relative "results/file"
4
6
 
5
7
  module RuboCop
@@ -9,7 +11,7 @@ module RuboCop
9
11
  attr_reader :files
10
12
 
11
13
  def initialize(files:)
12
- @files = files.map { |file| File.new(**file) }.sort
14
+ @files = Parallel.map(files) { |file| File.new(**file) }.sort
13
15
  end
14
16
  end
15
17
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RuboCop
4
4
  module Gradual
5
- VERSION = "0.1.0"
5
+ VERSION = "0.1.1"
6
6
  end
7
7
  end
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.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Svyatoslav Kryukov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-03 00:00:00.000000000 Z
11
+ date: 2022-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diff-lcs
@@ -44,6 +44,20 @@ dependencies:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '3.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: parallel
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.10'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.10'
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: rainbow
49
63
  requirement: !ruby/object:Gem::Requirement
@@ -106,15 +120,15 @@ files:
106
120
  - lib/rubocop/gradual/results/issue.rb
107
121
  - lib/rubocop/gradual/serializer.rb
108
122
  - lib/rubocop/gradual/version.rb
109
- homepage: https://github.com/skryukov/paco
123
+ homepage: https://github.com/skryukov/rubocop-gradual
110
124
  licenses:
111
125
  - MIT
112
126
  metadata:
113
- bug_tracker_uri: https://github.com/skryukov/paco/issues
114
- changelog_uri: https://github.com/skryukov/paco/blob/main/CHANGELOG.md
115
- documentation_uri: https://github.com/skryukov/paco/blob/main/README.md
116
- homepage_uri: https://github.com/skryukov/paco
117
- source_code_uri: https://github.com/skryukov/paco
127
+ bug_tracker_uri: https://github.com/skryukov/rubocop-gradual/issues
128
+ changelog_uri: https://github.com/skryukov/rubocop-gradual/blob/main/CHANGELOG.md
129
+ documentation_uri: https://github.com/skryukov/rubocop-gradual/blob/main/README.md
130
+ homepage_uri: https://github.com/skryukov/rubocop-gradual
131
+ source_code_uri: https://github.com/skryukov/rubocop-gradual
118
132
  rubygems_mfa_required: 'true'
119
133
  post_install_message:
120
134
  rdoc_options: []