kettle-soup-cover 1.0.10 → 1.1.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: 9d261f9bfba53179b6efb788d225d8856a9c84cf59d100006b725849fbcd2642
4
- data.tar.gz: a45573d36a905304612b14a4d7115904d9350c86210a4da9010e70bcfba00689
3
+ metadata.gz: 1458b8373718791d8c3b2651a424c4b9a69666f5b6296e4146ca544c87455ebf
4
+ data.tar.gz: dab53e107af0400b12ad09804ab923d75ec12b5dc708d927b56ac5fdd6bd5c47
5
5
  SHA512:
6
- metadata.gz: 49c8f710a0615ca7a445f2a270ec312a9b6eb7974094706a60d33e07bac4368903cc8803cad0195dd42ccb90b4bfc42d13f15eb2f80818d248be0493ffbcb03c
7
- data.tar.gz: 6f1c2f65f153210551d7cab85baec9ca6faa732030df0c51bb9485c94a246b5ee7b91636ef2e25f3c5b50194d870812e26d5471ed5c6a81f15fb81350293ec19
6
+ metadata.gz: 1366dcf03c85cc1c801eeb3bd91ab49e67b7275c807a8cee4a7be6b3fcb23e3a5e6320b20426e7a9913d73ad0df3dbf2f5e45ae6acdaf9bbd2ceba19724fdedc
7
+ data.tar.gz: 8c684b8e832428784b8246bc5bedf0b3d031667e218c2ebc97a44f0f48bae0fc800fb6b9ae30c18cfd2fedfd2476342cb05a4029be08e309ade70a53307e93fa
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -1,29 +1,78 @@
1
1
  # Changelog
2
2
 
3
- This file documents all notable changes to this project.
3
+ [![SemVer 2.0.0][📌semver-img]][📌semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog]
4
4
 
5
- Format: [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5
+ All notable changes to this project will be documented in this file.
6
+
7
+ The format is based on [Keep a Changelog][📗keep-changelog],
8
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
9
+ and [yes][📌major-versions-not-sacred], platform and engine support are part of the [public API][📌semver-breaking].
10
+ Please file a bug if you notice a violation of semantic versioning.
11
+
12
+ [📌semver]: https://semver.org/spec/v2.0.0.html
13
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat
14
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
15
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
16
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
17
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
7
18
 
8
19
  ## [Unreleased]
20
+
9
21
  ### Added
22
+
23
+ - When `ENV["MAX_ROWS"] == "0"`, explicitly, skip simplecov-console TTY output.
24
+ - Script `exe/kettle-soup-cover` generates coverage report
25
+ - defaults to reading `$K_SOUP_COV_DIR/coverage.json`
26
+ - prints a summarized report
27
+ - accepts `-p/--path` or a positional path to coverage.json
28
+ - requires the `json` formatter be configured in `$K_SOUP_COV_FORMATTERS` (or an explicit JSON path as above).
29
+
10
30
  ### Changed
31
+
32
+ - **Coverage merging is now enabled by default** - `USE_MERGING` defaults to `true`
33
+ - Essential for projects that split tests into multiple rake tasks
34
+ - Set `K_SOUP_COV_USE_MERGING=false` to disable
35
+ - Aggregate coverage from multiple test runs (e.g., FFI specs, integration specs, unit specs) when uniquely named:
36
+ - ```rake
37
+ # Matrix checks will run in between FFI and MRI
38
+ desc("Run Backend Matrix Specs")
39
+ RSpec::Core::RakeTask.new(:backend_matrix_specs) do |t|
40
+ t.pattern = "./spec_matrix/**/*_spec.rb"
41
+ end
42
+ desc("Set SimpleCov command name for backend matrix specs")
43
+ task(:set_matrix_command_name) do
44
+ ENV["K_SOUP_COV_COMMAND_NAME"] = "Backend Matrix Specs"
45
+ end
46
+ Rake::Task[:backend_matrix_specs].enhance([:set_matrix_command_name])
47
+ ```
48
+ - **Merge timeout** - `MERGE_TIMEOUT` defaults to 3600 seconds (1 hour)
49
+ - Sufficient for most test suites to complete all split tasks
50
+ - Set `K_SOUP_COV_MERGE_TIMEOUT` to override
51
+
11
52
  ### Deprecated
53
+
12
54
  ### Removed
55
+
13
56
  ### Fixed
57
+
14
58
  ### Security
15
59
 
16
60
  ## [1.0.10] - 2025-07-15
61
+
17
62
  - COVERAGE: 93.43% -- 128/137 lines in 10 files
18
63
  - BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
19
64
  - 11.11% documented
65
+
20
66
  ### Added
67
+
21
68
  - Add GitHub Pages site to badge info table
22
69
  - YARD config, GFM compatible with relative file links
23
70
  - Documentation site on GitHub Pages
24
71
  - [kettle-soup-cover.galtzo.com](https://kettle-soup-cover.galtzo.com)
25
72
  - Auto-assign issues in the GitHub issue tracker
73
+
26
74
  ### Changed
75
+
27
76
  - Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site
28
77
  - Updated contact email in gemspec to `floss@galtzo.com`
29
78
  - Upgraded runtime dependency minimums:
@@ -34,46 +83,64 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
34
83
  - version_gem v1.1.8
35
84
 
36
85
  ## [1.0.9] - 2025-05-20
86
+
37
87
  - COVERAGE: 93.43% -- 128/137 lines in 10 files
38
88
  - BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
39
89
  - 11.11% documented
90
+
40
91
  ### Added
92
+
41
93
  - YARD config, GFM compatible with relative file links
42
94
  - Documentation site on GitHub Pages
43
95
  - [kettle-soup-cover.galtzo.com](https://kettle-soup-cover.galtzo.com)
96
+
44
97
  ### Changed
98
+
45
99
  - Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site
46
100
 
47
101
  ## [1.0.8] - 2025-05-20
102
+
48
103
  - COVERAGE: 93.43% -- 128/137 lines in 10 files
49
104
  - BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
50
105
  - 11.11% documented
106
+
51
107
  ### Added
108
+
52
109
  - Link to discussions on GitHub
110
+
53
111
  ### Changed
112
+
54
113
  - Fixed `spec.homepage` and `spec.source_code_uri` in gemspec
55
114
 
56
115
  ## [1.0.7] - 2025-05-20
116
+
57
117
  - COVERAGE: 93.43% -- 128/137 lines in 10 files
58
118
  - BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
59
119
  - 11.11% documented
120
+
60
121
  ### Added
122
+
61
123
  - Document usage with minitest
62
124
  - Document usage with https://github.com/irongut/CodeCoverageSummary
63
125
  - Document usage with https://github.com/marocchino/sticky-pull-request-comment
64
126
  - More documentation improvements
65
127
  - Link to Discord
128
+
66
129
  ### Changed
130
+
67
131
  - Gem build: Don't check for cert if SKIP_GEM_SIGNING is set
68
132
  - Allows linux packaging systems to build gem without signing via rubygems
69
133
  - Update homepage in gemspec
70
134
  - Improved loading of version.rb in gemspec
71
135
 
72
136
  ## [1.0.6] - 2025-05-04
137
+
73
138
  - COVERAGE: 93.43% -- 128/137 lines in 10 files
74
139
  - BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
75
140
  - 11.11% documented
141
+
76
142
  ### Added
143
+
77
144
  - Support for linux, and other OSes, in `coverage` rake task
78
145
  - previously was macOS only (would raise error on other OSes)
79
146
  - ✨ `Kettle::Soup::Cover::OPEN_BIN`
@@ -82,12 +149,16 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
82
149
  - Set `export K_SOUP_COV_OPEN_BIN=` to just print the path to the HTML coverage report in `coverage` task
83
150
  - Test coverage increased from 55 => 93 for lines
84
151
  - Test coverage increased from 25 => 50 for branches
152
+
85
153
  ### Changed
154
+
86
155
  - Refactored internals in ways that should not affect public APIs
87
156
  - allows much greater test coverage
88
157
  - report a bug if anything breaks!
89
158
  - Going forward all releases will be signed by my key that expires 2045-04-29
159
+
90
160
  ### Fixed
161
+
91
162
  - require hooks such that both work equally well:
92
163
  - `require "kettle/soup/cover"`
93
164
  - `require "kettle-soup-cover"`
@@ -95,46 +166,66 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
95
166
  - In the ENV set `SKIP_GEM_SIGNING` to any value
96
167
 
97
168
  ## [1.0.5] - 2025-04-03
169
+
98
170
  ### Added
171
+
99
172
  - Documentation
100
173
  - Support for malformed `K_SOUP_COV_FORMATTERS` (extra spaces)
101
174
  - Code coverage tools QLTY, and CodeCov.io
102
175
  - Added Ruby 3.3, 3.4 to CI
176
+
103
177
  ### Changed
178
+
104
179
  - Update to Contributor Covenant 2.1
105
180
  - Allow unsigned gem builds (for linux distros)
106
181
  - Checksums are now created by `stone_checksums` gem
182
+
107
183
  ### Fixed
184
+
108
185
  - Incorrect documentation of ENV variables that control gem behavior
109
186
  - Prefer `Kernel.load` > `load` in gemspec
110
187
  - https://github.com/simplecov-ruby/simplecov/issues/557#issuecomment-2630782358
111
188
 
112
189
  ## [1.0.4] - 2024-06-11
190
+
113
191
  ### Added
192
+
114
193
  - Documentation
194
+
115
195
  ### Changed
196
+
116
197
  - `version_gem` requirement to 1.0.4
117
198
 
118
199
  ## [1.0.3] - 2024-05-23
200
+
119
201
  ### Added
202
+
120
203
  - Documentation
121
204
  - Mirror repo on GitHub: https://github.com/kettle-rb/kettle-soup-cover
122
205
  - More tests
206
+
123
207
  ### Fixed
208
+
124
209
  - Incorrect URLs for homepage, etc
125
210
 
126
211
  ## [1.0.2] - 2023-10-19
212
+
127
213
  ### Fixed
214
+
128
215
  - Include new `coverage` rake task in the built gem
129
216
  - Goddamnit
130
217
  - Try to get checksum for SHA-256 to match what is published on Rubygems.org
131
218
 
132
219
  ## [1.0.1] - 2023-10-19
220
+
133
221
  ### Fixed
222
+
134
223
  - Include new `coverage` rake task in the built gem
135
224
 
136
225
  ## [1.0.0] - 2023-10-19
226
+
137
227
  ### Added
228
+
138
229
  - ✨ `Regexp.escape` the `FILTER_DIRS` to allow for paths to be excluded from coverage
139
230
  - paths must always start at the root of the project, but no leading or trailing slash
140
231
  - ✨ Rake task `coverage` will run spec suite, and open results in a browser.
@@ -153,10 +244,14 @@ Versioning: [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
153
244
  - `Kettle::Soup::Cover::Filters::GtLineFilter`
154
245
  - `Kettle::Soup::Cover::Filters::LtLineFilter`
155
246
  - More and better documentation
247
+
156
248
  ### Changed
249
+
157
250
  - This gem no longer does `require "simplecov"`
158
251
  - Instead you can `require "simplecov" if Kettle::Soup::Cover::DO_COV` wherever you deem fit
252
+
159
253
  ### Fixed
254
+
160
255
  - All ENV vars now begin with a uniform prefix for this gem:
161
256
  - `K_SOUP_COV_*`
162
257
 
data/CITATION.cff ADDED
@@ -0,0 +1,20 @@
1
+ cff-version: 1.2.0
2
+ title: Kettle::Soup::Cover
3
+ message: >-
4
+ If you use this work and you want to cite it,
5
+ then you can use the metadata from this file.
6
+ type: software
7
+ authors:
8
+ - given-names: Peter Hurn
9
+ family-names: Boling
10
+ email: peter@railsbling.com
11
+ affiliation: railsbling.com
12
+ orcid: 'https://orcid.org/0009-0008-8519-441X'
13
+ identifiers:
14
+ - type: url
15
+ value: 'https://github.com/kettle-rb/kettle-soup-cover/'
16
+ description: Kettle::Soup::Cover
17
+ repository-code: 'https://github.com/kettle-rb/kettle-soup-cover/'
18
+ abstract: >-
19
+ Kettle::Soup::Cover
20
+ license: See license file
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2023 - 2025 Peter H. Boling (railsbling.com)
3
+ Copyright (c) 2023-2025 Peter H. Boling (Galtzo.com)
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal