pronto-undercover 0.3.0 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a4d7b86fcbc6f4b8d22d47d2debefe5cccae727c693ecee5d71a575c0f7254d
4
- data.tar.gz: c97cb77a9f27c19d85701c25e27443738b4ecdf1528a6516da00f78309211865
3
+ metadata.gz: 106ca0f66d48253f7f4a3fc13996c652c1e1fa5047eae367dff4b29c1ddd7146
4
+ data.tar.gz: 39bb9eeece218c6cf88b5583a6a87063dc437d8b4c05921bda364991cfa32e08
5
5
  SHA512:
6
- metadata.gz: 5c274a208ece7f380445c01ba044ffd128d9d267a8ae0e02fd85b2a5225830696e2876128eb92432289204815a03ee0c40d1786f5d29363dc07801e9b81271a0
7
- data.tar.gz: 5a1bdd6f0339bab627ad440b91bfeabf83a822dd6388c9d394feb469e9d1cb57cf7f55228220f0b88a0e63a2931987923b23964ad83151dc5fc13f186e113459
6
+ metadata.gz: 15d2def61ba5f92fb2fcd0e901933f809c6f088b2789e2e235375e23dcba8a079f4850f024c330c60e2fcf0cb1e36ed65975920c40d13c59ef59c6a5bf571a58
7
+ data.tar.gz: ee5412b17eef77b424e93dc8a75c49bfc7c8b4eb3c73968b59e4d613614e8f88802d79290ba86953177aff92476d3436e1ba75bac037cfd2c788c700853fead1
data/CHANGELOG.md CHANGED
@@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.4.0] - 2025-11-15
10
+ ### Added
11
+ - Update `undercover` to `0.8.2`
12
+
9
13
  ## [0.3.0] - 2025-07-13
10
14
  ### Added
11
15
  - Update `undercover` to `0.7.3`, support new options and JSON formatter
@@ -29,7 +33,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
29
33
  ### Changed
30
34
  - support `pronto >= 0.9`
31
35
 
32
- [Unreleased]: https://github.com/grodowski/pronto-undercover/compare/v0.3.0...HEAD
36
+ [Unreleased]: https://github.com/grodowski/pronto-undercover/compare/v0.4.0...HEAD
37
+ [0.4.0]: https://github.com/grodowski/pronto-undercover/compare/v0.3.0...v0.4.0
33
38
  [0.3.0]: https://github.com/grodowski/pronto-undercover/compare/v0.2.0...v0.3.0
34
39
  [0.2.0]: https://github.com/grodowski/pronto-undercover/compare/v0.1.6...v0.2.0
35
40
  [0.1.6]: https://github.com/grodowski/pronto-undercover/compare/v0.1.5...v0.1.6
@@ -29,6 +29,9 @@ module Pronto
29
29
 
30
30
  def each_changed_line
31
31
  @patches.each do |patch|
32
+ filepath = patch.delta.new_file[:path]
33
+ next if @filter_set && !@filter_set.include?(filepath)
34
+
32
35
  patch.added_lines.each do |line|
33
36
  yield patch.delta.new_file[:path].to_s, line.new_lineno
34
37
  end
@@ -40,5 +43,9 @@ module Pronto
40
43
 
41
44
  :stale_coverage if last_modified > File.mtime(lcov_report_path)
42
45
  end
46
+
47
+ def filter_with(filter_set)
48
+ @filter_set = filter_set
49
+ end
43
50
  end
44
51
  end
@@ -54,10 +54,20 @@ module Pronto
54
54
 
55
55
  def undercover_warnings
56
56
  @undercover_warnings ||= ::Undercover::Report.new(
57
- @patch_changeset, undercover_options
57
+ @patch_changeset, undercover_options, coverage_adapter
58
58
  ).build.flagged_results
59
59
  end
60
60
 
61
+ def coverage_adapter
62
+ if undercover_options.simplecov_resultset
63
+ ::Undercover::SimplecovResultAdapter.parse(File.open(undercover_options.simplecov_resultset),
64
+ undercover_options)
65
+ else
66
+ # TODO: lcov will be deprecated end of 2025 and we'll be able to refactor harder
67
+ ::Undercover::LcovParser.parse(File.open(undercover_options.lcov), undercover_options)
68
+ end
69
+ end
70
+
61
71
  def offending_line_numbers(patch)
62
72
  patch_lines = patch.added_lines.map(&:new_lineno)
63
73
  path = patch.new_file_full_path.to_s
@@ -91,7 +101,7 @@ module Pronto
91
101
 
92
102
  opts = []
93
103
  OPTS_MAPPING.each { |key, flag| opts << "#{flag}#{config[key]}" if config[key] }
94
- ::Undercover::Options.new.parse(opts)
104
+ @undercover_options ||= ::Undercover::Options.new.parse(opts)
95
105
  end
96
106
  end
97
107
  end
data/lib/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Pronto
4
4
  module UndercoverVersion
5
- VERSION = '0.3.0'
5
+ VERSION = '0.4.0'
6
6
  end
7
7
  end
@@ -20,8 +20,8 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ['lib']
21
21
  spec.required_ruby_version = '>= 2.5'
22
22
 
23
- spec.add_dependency 'pronto', '>= 0.9', '< 0.12'
24
- spec.add_dependency 'undercover', '~> 0.7'
23
+ spec.add_dependency 'pronto', '>= 0.11', '< 0.12'
24
+ spec.add_dependency 'undercover', '~> 0.8'
25
25
 
26
26
  spec.add_dependency 'base64'
27
27
  spec.add_dependency 'bigdecimal'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pronto-undercover
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Grodowski
@@ -15,7 +15,7 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '0.9'
18
+ version: '0.11'
19
19
  - - "<"
20
20
  - !ruby/object:Gem::Version
21
21
  version: '0.12'
@@ -25,7 +25,7 @@ dependencies:
25
25
  requirements:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
- version: '0.9'
28
+ version: '0.11'
29
29
  - - "<"
30
30
  - !ruby/object:Gem::Version
31
31
  version: '0.12'
@@ -35,14 +35,14 @@ dependencies:
35
35
  requirements:
36
36
  - - "~>"
37
37
  - !ruby/object:Gem::Version
38
- version: '0.7'
38
+ version: '0.8'
39
39
  type: :runtime
40
40
  prerelease: false
41
41
  version_requirements: !ruby/object:Gem::Requirement
42
42
  requirements:
43
43
  - - "~>"
44
44
  - !ruby/object:Gem::Version
45
- version: '0.7'
45
+ version: '0.8'
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: base64
48
48
  requirement: !ruby/object:Gem::Requirement