Releases: kettle-dev/kettle-soup-cover
v2.0.2
2.0.2 - 2026-06-09
- TAG: v2.0.2
- COVERAGE: 100.00% -- 247/247 lines in 11 files
- BRANCH COVERAGE: 100.00% -- 68/68 branches in 11 files
- 16.44% documented
Changed
- Retemplated development tooling for
kettle-dev2.2.3.
Fixed
- Updated generated project metadata links to use the migrated
kettle-dev
GitHub organization. - Restored
docs/CNAMEso the generated documentation site keeps its custom domain.
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v2.0.1
2.0.1 - 2026-06-02
- TAG: v2.0.1
- COVERAGE: 100.00% -- 247/247 lines in 11 files
- BRANCH COVERAGE: 100.00% -- 68/68 branches in 11 files
- 16.44% documented
Fixed
- Added
turbo_tests2:setupandturbo_tests2:cleanuprake hook aliases so
coverage setup and collation work when runners use either the legacy
turbo_testsnamespace or the currentturbo_tests2namespace. - Suppressed SimpleCov report formatter output inside
turbo_tests2worker
processes so only the parent collation process publishes coverage reports.
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v2.0.0
2.0.0 - 2026-06-02
- TAG: v2.0.0
- COVERAGE: 100.00% -- 244/244 lines in 11 files
- BRANCH COVERAGE: 100.00% -- 70/70 branches in 11 files
- 16.67% documented
Changed
- Raised direct runtime, development, style, and documentation dependency floors
to their latest released compatible versions. - Raised the minimum supported Ruby version from 2.7 to 3.2.
Fixed
- Restored full CI coverage for the self-tested
coveragerake task opener
branches after re-templating.
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v1.1.3
1.1.3 - 2026-05-24
- TAG: v1.1.3
- COVERAGE: 96.72% -- 236/244 lines in 11 files
- BRANCH COVERAGE: 85.71% -- 60/70 branches in 11 files
- 16.67% documented
Fixed
-
Removed duplicate-load warnings in the spec bootstrap while preserving coverage
tracking for the library under test. -
Covered Ruby 4.0.5 / SimpleCov branch paths that were causing
bin/raketo
fail the configured coverage gate. -
Stabilized self-test coverage for rake task files so randomized spec order no
longer changes the final branch coverage result. -
Removed the duplicate RuboCop Gradual run from the style workflow and fixed
the generated style appraisal Gemfile for Ruby 4 extracted stdlibs. -
Removed the duplicate current workflow job caused by stale matrix axes.
-
Marked generated workflow files as template-owned to prevent stale YAML keys
from surviving future template runs. -
Isolated the spec-helper rake-task coverage exerciser under
tmp/so
turbo_tests2 workers cannot delete each other's real coverage artifacts before
parent-process collation. -
turbo_tests:cleanupnow publishes merged worker JSON coverage back to the
canonicalcoverage/coverage.jsonpath after collating worker resultsets, so
CI uploaders and release tooling can continue to read standard coverage paths. -
Parsed
K_SOUP_COV_OPEN_BINwith shellwords before opening the HTML report so
opener commands with arguments report unavailable executables consistently
across Ruby engines.
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v1.1.2
1.1.2 - 2026-05-23
- TAG: v1.1.2
- COVERAGE: 96.06% -- 195/203 lines in 11 files
- BRANCH COVERAGE: 80.00% -- 40/50 branches in 11 files
- 18.46% documented
Added
CLEAN_RESULTSET/K_SOUP_COV_CLEAN_RESULTSET: deletescoverage/.resultset.json
before SimpleCov starts to prevent stale entries from prior runs (e.g. after a refactor
that shifts line/branch IDs) from producing phantom uncovered branches. Defaults to
falseon CI (each job already starts clean) andtruelocally (where developers
re-run tests frequently). Override viaK_SOUP_COV_CLEAN_RESULTSET=true/falseor by
setting the constant directly in Ruby.Kettle::Soup::Cover.clean_resultset!is also
exposed as a public method for callers who want to trigger cleanup explicitly.
Note: setK_SOUP_COV_CLEAN_RESULTSET=falseinside.simplecov_spawn.rbso
spawned subprocesses do not wipe the resultset being accumulated by the main process.- Added
turbo_tests:setupandturbo_tests:cleanuprake hooks for
turbo_tests2coverage collection. - Added
K_SOUP_COV_TURBO_TESTSandK_SOUP_COV_TURBO_TESTS_DIRsupport so
parallel workers write coverage under per-worker directories and the cleanup
hook can collate the resultsets.
Changed
- Updated documentation on hostile takeover of RubyGems
Fixed
- Deferred hard coverage minimum enforcement for
turbo_tests2workers to the
final collated coverage report, so individual workers with partial coverage do
not fail before merged coverage is available.
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v1.1.1
1.1.1 - 2025-12-28
- TAG: v1.1.1
- COVERAGE: 93.62% -- 132/141 lines in 10 files
- BRANCH COVERAGE: 50.00% -- 15/30 branches in 10 files
- 15.56% documented
Added
- Added regression tests for
MIN_COVERAGE_HARDbehavior
Fixed
- BUGFIX:
K_SOUP_COV_MIN_HARD=falsenow correctly disables minimum coverage enforcement in CI- Previously, the condition
IS_CI || MIN_COVERAGE_HARDmeant minimum coverage was always enforced in CI - Now
MIN_COVERAGE_HARDtakes precedence: if explicitly set tofalse, minimum coverage is not enforced - The default behavior is unchanged: in CI without explicit setting, minimum coverage is still enforced
- Previously, the condition
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v1.1.0
1.1.0 - 2025-12-28
- TAG: v1.1.0
- COVERAGE: 93.62% -- 132/141 lines in 10 files
- BRANCH COVERAGE: 53.33% -- 16/30 branches in 10 files
- 15.56% documented
Added
- When
ENV["MAX_ROWS"] == "0", explicitly, skip simplecov-console TTY output. - Script
exe/kettle-soup-covergenerates coverage report- defaults to reading
$K_SOUP_COV_DIR/coverage.json - prints a summarized report
- accepts
-p/--pathor a positional path to coverage.json - requires the
jsonformatter be configured in$K_SOUP_COV_FORMATTERS(or an explicit JSON path as above).
- defaults to reading
Changed
- Coverage merging is now enabled by default -
USE_MERGINGdefaults totrue- Essential for projects that split tests into multiple rake tasks
- Set
K_SOUP_COV_USE_MERGING=falseto disable - Aggregate coverage from multiple test runs (e.g., FFI specs, integration specs, unit specs) when uniquely named:
-
# Matrix checks will run in between FFI and MRI desc("Run Backend Matrix Specs") RSpec::Core::RakeTask.new(:backend_matrix_specs) do |t| t.pattern = "./spec_matrix/**/*_spec.rb" end desc("Set SimpleCov command name for backend matrix specs") task(:set_matrix_command_name) do ENV["K_SOUP_COV_COMMAND_NAME"] = "Backend Matrix Specs" end Rake::Task[:backend_matrix_specs].enhance([:set_matrix_command_name])
- Merge timeout -
MERGE_TIMEOUTdefaults to 3600 seconds (1 hour)- Sufficient for most test suites to complete all split tasks
- Set
K_SOUP_COV_MERGE_TIMEOUTto override
Many paths lead to being a sponsor or a backer of this project. Are you on such a path?
v1.0.10
Full Changelog: v1.0.9...v1.0.10
1.0.10 - 2025-07-15
- COVERAGE: 93.43% -- 128/137 lines in 10 files
- BRANCH COVERAGE: 50.00% -- 16/32 branches in 10 files
- 11.11% documented
Added
- Add GitHub Pages site to badge info table
- YARD config, GFM compatible with relative file links
- Documentation site on GitHub Pages
- Auto-assign issues in the GitHub issue tracker
Changed
- Updated
spec.homepage_uriin gemspec to GitHub Pages YARD documentation site - Updated contact email in gemspec to
floss@galtzo.com - Upgraded runtime dependency minimums:
- simplecov-cobertura v3.0.0
- simplecov-html v0.13.1
- simplecov-rcov v0.3.7
- simplecov-console v0.9.3
- version_gem v1.1.8
v1.0.9
Full Changelog: v1.0.8...v1.0.9
v1.0.8
Full Changelog: v1.0.7...v1.0.8