turbo_tests2 3.2.11 → 3.2.13
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +52 -4
- data/README.md +41 -5
- data/lib/turbo_tests/runner.rb +5 -3
- data/lib/turbo_tests/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +10 -10
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 966cd2f7569701b0c3930e26c6f1e447d8c6a61ecab97bcdf93a533633f4fd89
|
|
4
|
+
data.tar.gz: caa5ff5ead62c3efe9cf9eb994700dd1b7a06c54e3c54b5359e292ec3c9ab7ee
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1608b69b29afc0a8af439b49615eea17e57aa8cab8a06e7724295376d6de0f194d2d9e0bf3f18b0d452193ab29cb652f21dc353de14c054afb0c0942fb016cee
|
|
7
|
+
data.tar.gz: fbc19b6c03e71b4274fd159f610e05a5c47f21327439af54bee05ce5f4a8d89d8dfb5728f246377ce2e4ac45ca4314013287f621233ebd7b74e20c578319cf4e
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -30,6 +30,50 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
30
30
|
|
|
31
31
|
### Security
|
|
32
32
|
|
|
33
|
+
## [3.2.13] - 2026-10-01
|
|
34
|
+
|
|
35
|
+
- TAG: [v3.2.13][3.2.13t]
|
|
36
|
+
- COVERAGE: 96.83% -- 917/947 lines in 10 files
|
|
37
|
+
- BRANCH COVERAGE: 84.59% -- 247/292 branches in 10 files
|
|
38
|
+
- 36.36% documented
|
|
39
|
+
|
|
40
|
+
### Changed
|
|
41
|
+
|
|
42
|
+
- [kc] kettle-jem/prepare: updated 15 project files:
|
|
43
|
+
- dependencies (15)
|
|
44
|
+
- [kc] kettle-jem/template: updated 35 project files:
|
|
45
|
+
- code and tests (2)
|
|
46
|
+
- dependencies (1)
|
|
47
|
+
- other (3)
|
|
48
|
+
- workflows (29)
|
|
49
|
+
|
|
50
|
+
- Documented runtime and platform support tiers, including the TruffleRuby single-worker CI exception and skipped process-spec groups.
|
|
51
|
+
|
|
52
|
+
### Fixed
|
|
53
|
+
|
|
54
|
+
- Cap the TruffleRuby 23.0 compatibility workflow at one test worker after an intermittent parallel-run hang; maintained runtimes retain parallel test coverage.
|
|
55
|
+
|
|
56
|
+
## [3.2.12] - 2026-09-26
|
|
57
|
+
|
|
58
|
+
- TAG: [v3.2.12][3.2.12t]
|
|
59
|
+
- COVERAGE: 96.83% -- 917/947 lines in 10 files
|
|
60
|
+
- BRANCH COVERAGE: 84.59% -- 247/292 branches in 10 files
|
|
61
|
+
- 36.36% documented
|
|
62
|
+
|
|
63
|
+
### Changed
|
|
64
|
+
|
|
65
|
+
- [kc] kettle-jem/prepare: updated 7 project files:
|
|
66
|
+
- dependencies (7)
|
|
67
|
+
|
|
68
|
+
- [kc] kettle-jem/template: updated 33 project files:
|
|
69
|
+
- code and tests (2)
|
|
70
|
+
- other (1)
|
|
71
|
+
- workflows (30)
|
|
72
|
+
|
|
73
|
+
### Fixed
|
|
74
|
+
|
|
75
|
+
- Windows runs use size-based worker grouping and skip the runtime logger that requires file locking.
|
|
76
|
+
|
|
33
77
|
## [3.2.11] - 2026-09-23
|
|
34
78
|
|
|
35
79
|
- TAG: [v3.2.11][3.2.11t]
|
|
@@ -63,9 +107,9 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
63
107
|
|
|
64
108
|
- The multi-process integration summary assertion now supports RSpec's Ruby 3.0-compatible pending-example totals.
|
|
65
109
|
|
|
66
|
-
- Windows turbo_tests2 workers now invoke Bundler through
|
|
67
|
-
|
|
68
|
-
|
|
110
|
+
- Windows turbo_tests2 workers now invoke Bundler through RubyGems using the
|
|
111
|
+
Ruby executable and Bundler's resolved executable path, avoiding direct
|
|
112
|
+
execution of the Windows command shim from `BUNDLE_BIN_PATH`.
|
|
69
113
|
|
|
70
114
|
## [3.2.10] - 2026-09-15
|
|
71
115
|
|
|
@@ -646,7 +690,11 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
646
690
|
|
|
647
691
|
- Initial release
|
|
648
692
|
|
|
649
|
-
[Unreleased]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.
|
|
693
|
+
[Unreleased]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.13...HEAD
|
|
694
|
+
[3.2.13]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.12...v3.2.13
|
|
695
|
+
[3.2.13t]: https://github.com/galtzo-floss/turbo_tests2/releases/tag/v3.2.13
|
|
696
|
+
[3.2.12]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.11...v3.2.12
|
|
697
|
+
[3.2.12t]: https://github.com/galtzo-floss/turbo_tests2/releases/tag/v3.2.12
|
|
650
698
|
[3.2.11]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.10...v3.2.11
|
|
651
699
|
[3.2.11t]: https://github.com/galtzo-floss/turbo_tests2/releases/tag/v3.2.11
|
|
652
700
|
[3.2.10]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.2.9...v3.2.10
|
data/README.md
CHANGED
|
@@ -30,6 +30,37 @@ The project namespace remains `TurboTests`; the published gem and executable are
|
|
|
30
30
|
|
|
31
31
|
Incremental summarized output doesn't [fit the vision](https://github.com/grosser/parallel_tests/issues/708) of the `parallel_tests` author, and [RSpec doesn't support built-in parallel testing yet](https://github.com/rspec/rspec-rails/issues/2104#issuecomment-658474900). This gem targets RSpec, not every framework supported by `parallel_tests`, and may not be useful once one of the issues above is implemented.
|
|
32
32
|
|
|
33
|
+
### Runtime and Platform Support
|
|
34
|
+
|
|
35
|
+
Support tiers describe what this project's CI actually exercises, not what may
|
|
36
|
+
work in an untested environment:
|
|
37
|
+
|
|
38
|
+
- **Parallel support**: CI runs the test suite with multiple workers available.
|
|
39
|
+
- **Single-worker support**: CI runs the suite with one worker; parallel runner
|
|
40
|
+
behavior is not validated for that combination.
|
|
41
|
+
- **Unsupported**: the engine/platform combination is not covered by CI and is
|
|
42
|
+
not a project compatibility claim.
|
|
43
|
+
|
|
44
|
+
| Ruby engine/version | Linux | macOS | Windows | Notes |
|
|
45
|
+
|---------------------|-------|-------|---------|-------|
|
|
46
|
+
| MRI 2.4-3.4 | Parallel support | Unsupported | Unsupported | Versioned Ruby workflows run on Linux. |
|
|
47
|
+
| MRI current | Parallel support | Parallel support | Parallel support | Current Ruby workflow covers all three platforms. |
|
|
48
|
+
| MRI head | Parallel support | Unsupported | Unsupported | CI is allowed to fail while Ruby is in development. |
|
|
49
|
+
| JRuby 9.2-9.4 | Parallel support | Unsupported | Unsupported | Versioned JRuby workflows run on Linux. |
|
|
50
|
+
| JRuby 10.0/current/head | Parallel support | Unsupported | Unsupported | Experimental/current and head jobs are non-blocking in CI. |
|
|
51
|
+
| TruffleRuby 22.3 | Parallel support | Unsupported | Unsupported | Experimental. The CLI and multi-process spec groups are skipped because this release reports Ruby compatibility version 3.0. |
|
|
52
|
+
| TruffleRuby 23.0 | Single-worker support | Unsupported | Unsupported | Experimental and end-of-life; CI caps workers at one. The CLI and multi-process spec groups are also skipped. |
|
|
53
|
+
| TruffleRuby 23.1 | Parallel support | Unsupported | Unsupported | Experimental. |
|
|
54
|
+
| TruffleRuby 24.2/25.0/33.0/current | Parallel support | Unsupported | Unsupported | Linux workflows run the suite with parallel workers. |
|
|
55
|
+
| TruffleRuby head | Parallel support | Unsupported | Unsupported | CI is allowed to fail while TruffleRuby is in development. |
|
|
56
|
+
|
|
57
|
+
The TruffleRuby 22.3/23.0 spec exclusions use `rspec-pending_for`'s Ruby
|
|
58
|
+
compatibility-version matching (`3.0`), not TruffleRuby's release number. They
|
|
59
|
+
exclude the complete CLI spec group and multi-process integration group; the
|
|
60
|
+
remaining suite still runs in parallel on 22.3 and serially on 23.0. The
|
|
61
|
+
Windows current-Ruby job also runs in parallel, but runtime-log recording is
|
|
62
|
+
disabled there because Windows file locking is unreliable (see below).
|
|
63
|
+
|
|
33
64
|
### Why incremental output?
|
|
34
65
|
|
|
35
66
|
`parallel_tests` is great, but parallel RSpec output is hard to read:
|
|
@@ -263,10 +294,15 @@ bundle exec turbo_tests2 -n 4 --group-by found
|
|
|
263
294
|
bundle exec turbo_tests2 -n 4 -- --group-by runtime
|
|
264
295
|
```
|
|
265
296
|
|
|
266
|
-
`runtime` grouping uses the configured runtime log
|
|
267
|
-
|
|
268
|
-
history for the initial split, but worker runtime recording
|
|
269
|
-
future runtime-based runs can use the updated log.
|
|
297
|
+
`runtime` grouping uses the configured runtime log. On platforms other than
|
|
298
|
+
Windows, `turbo_tests2` records runtimes by default. `filesize` and `found` do
|
|
299
|
+
not use runtime history for the initial split, but worker runtime recording
|
|
300
|
+
still runs so future runtime-based runs can use the updated log.
|
|
301
|
+
|
|
302
|
+
On Windows, default file discovery uses filesize grouping and runtime recording
|
|
303
|
+
is disabled because the runtime logger requires file locking that is not
|
|
304
|
+
supported reliably there. An existing runtime log can still be selected
|
|
305
|
+
explicitly with `--group-by runtime`, but Windows runs will not update it.
|
|
270
306
|
|
|
271
307
|
Runtime grouping also supports the explicit `parallel_tests` tuning flags
|
|
272
308
|
`--allowed-missing PERCENT` and `--unknown-runtime SECONDS`:
|
|
@@ -775,7 +811,7 @@ Thanks for RTFM. ☺️
|
|
|
775
811
|
[📌gitmoji]: https://gitmoji.dev
|
|
776
812
|
[📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
|
777
813
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
|
778
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.
|
|
814
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.947-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
|
779
815
|
[🔐security]: https://github.com/galtzo-floss/turbo_tests2/blob/main/SECURITY.md
|
|
780
816
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
|
781
817
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
data/lib/turbo_tests/runner.rb
CHANGED
|
@@ -52,7 +52,8 @@ module TurboTests
|
|
|
52
52
|
opts[:worker_output] || ENV["TURBO_TESTS2_WORKER_OUTPUT"]
|
|
53
53
|
)
|
|
54
54
|
|
|
55
|
-
use_runtime_info = default_file_discovery
|
|
55
|
+
use_runtime_info = default_file_discovery && !Gem.win_platform?
|
|
56
|
+
record_runtime = !Gem.win_platform?
|
|
56
57
|
parallel_options[:runtime_log] ||= runtime_log
|
|
57
58
|
|
|
58
59
|
if example_status_log
|
|
@@ -88,7 +89,8 @@ module TurboTests
|
|
|
88
89
|
use_runtime_info: use_runtime_info,
|
|
89
90
|
parallel_options: parallel_options,
|
|
90
91
|
nice: nice,
|
|
91
|
-
worker_output: worker_output
|
|
92
|
+
worker_output: worker_output,
|
|
93
|
+
record_runtime: record_runtime
|
|
92
94
|
).run
|
|
93
95
|
end
|
|
94
96
|
|
|
@@ -238,7 +240,7 @@ module TurboTests
|
|
|
238
240
|
@runtime_log = opts[:runtime_log] || DEFAULT_RUNTIME_LOG
|
|
239
241
|
@parallel_options = opts.fetch(:parallel_options, {})
|
|
240
242
|
@parallel_options[:runtime_log] ||= @runtime_log
|
|
241
|
-
@record_runtime = true
|
|
243
|
+
@record_runtime = opts.key?(:record_runtime) ? opts[:record_runtime] : true
|
|
242
244
|
|
|
243
245
|
@messages = Thread::Queue.new
|
|
244
246
|
@threads = []
|
data/lib/turbo_tests/version.rb
CHANGED
|
@@ -4,7 +4,7 @@ module TurboTests
|
|
|
4
4
|
# Version namespace for this gem.
|
|
5
5
|
module Version
|
|
6
6
|
# Current gem version.
|
|
7
|
-
VERSION = "3.2.
|
|
7
|
+
VERSION = "3.2.13"
|
|
8
8
|
end
|
|
9
9
|
# Current gem version exposed at the traditional constant location.
|
|
10
10
|
VERSION = Version::VERSION # Traditional Constant Location
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: turbo_tests2
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.2.
|
|
4
|
+
version: 3.2.13
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Illia
|
|
@@ -111,7 +111,7 @@ dependencies:
|
|
|
111
111
|
version: '3.1'
|
|
112
112
|
- - ">="
|
|
113
113
|
- !ruby/object:Gem::Version
|
|
114
|
-
version: 3.1.
|
|
114
|
+
version: 3.1.5
|
|
115
115
|
type: :development
|
|
116
116
|
prerelease: false
|
|
117
117
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -121,7 +121,7 @@ dependencies:
|
|
|
121
121
|
version: '3.1'
|
|
122
122
|
- - ">="
|
|
123
123
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: 3.1.
|
|
124
|
+
version: 3.1.5
|
|
125
125
|
- !ruby/object:Gem::Dependency
|
|
126
126
|
name: bundler-audit
|
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -199,7 +199,7 @@ dependencies:
|
|
|
199
199
|
version: '3.2'
|
|
200
200
|
- - ">="
|
|
201
201
|
- !ruby/object:Gem::Version
|
|
202
|
-
version: 3.2.
|
|
202
|
+
version: 3.2.5
|
|
203
203
|
type: :development
|
|
204
204
|
prerelease: false
|
|
205
205
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -209,7 +209,7 @@ dependencies:
|
|
|
209
209
|
version: '3.2'
|
|
210
210
|
- - ">="
|
|
211
211
|
- !ruby/object:Gem::Version
|
|
212
|
-
version: 3.2.
|
|
212
|
+
version: 3.2.5
|
|
213
213
|
- !ruby/object:Gem::Dependency
|
|
214
214
|
name: kettle-test
|
|
215
215
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -219,7 +219,7 @@ dependencies:
|
|
|
219
219
|
version: '2.0'
|
|
220
220
|
- - ">="
|
|
221
221
|
- !ruby/object:Gem::Version
|
|
222
|
-
version: 2.0.
|
|
222
|
+
version: 2.0.23
|
|
223
223
|
type: :development
|
|
224
224
|
prerelease: false
|
|
225
225
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -229,7 +229,7 @@ dependencies:
|
|
|
229
229
|
version: '2.0'
|
|
230
230
|
- - ">="
|
|
231
231
|
- !ruby/object:Gem::Version
|
|
232
|
-
version: 2.0.
|
|
232
|
+
version: 2.0.23
|
|
233
233
|
- !ruby/object:Gem::Dependency
|
|
234
234
|
name: ruby-progressbar
|
|
235
235
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -315,10 +315,10 @@ licenses:
|
|
|
315
315
|
- MIT
|
|
316
316
|
metadata:
|
|
317
317
|
homepage_uri: https://turbo-tests2.galtzo.com
|
|
318
|
-
source_code_uri: https://github.com/galtzo-floss/turbo_tests2/tree/v3.2.
|
|
319
|
-
changelog_uri: https://github.com/galtzo-floss/turbo_tests2/blob/v3.2.
|
|
318
|
+
source_code_uri: https://github.com/galtzo-floss/turbo_tests2/tree/v3.2.13
|
|
319
|
+
changelog_uri: https://github.com/galtzo-floss/turbo_tests2/blob/v3.2.13/CHANGELOG.md
|
|
320
320
|
bug_tracker_uri: https://github.com/galtzo-floss/turbo_tests2/issues
|
|
321
|
-
documentation_uri: https://www.rubydoc.info/gems/turbo_tests2/3.2.
|
|
321
|
+
documentation_uri: https://www.rubydoc.info/gems/turbo_tests2/3.2.13
|
|
322
322
|
funding_uri: https://github.com/sponsors/pboling
|
|
323
323
|
wiki_uri: https://github.com/galtzo-floss/turbo_tests2/wiki
|
|
324
324
|
news_uri: https://www.railsbling.com/tags/turbo_tests2
|
metadata.gz.sig
CHANGED
|
Binary file
|