turbo_tests2 3.1.4 → 3.1.5

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: 625c5608d1ad3efd6e246de858b37368f126d0e9235684b7f39bf09e53773038
4
- data.tar.gz: 85d87719d2f6e86a2bb0a44c5c7eeee66dcc859374b10653ae4991b99fff1c00
3
+ metadata.gz: f90eeafc8b6c05ef14d7fba06572f211235589af1259267fad2f68827c4a28ee
4
+ data.tar.gz: '078ceb0bfa26b5f4bd62f0f80349ff58b7723f0479cd6060ee326c0035448980'
5
5
  SHA512:
6
- metadata.gz: 706929b3f66fa575187f9a8b087ced4ef15bb1772caf4506e0c263de558637f382e32943690ef5eae15bcba363ea4c7ab5c60013074e4b5390c130a5b24532bf
7
- data.tar.gz: a5a332a48caf1e97183b45a6b3c48aa44a17c8dcf5a6a85f855a8757e46ba9d210fcd936e03f6c29bfe3787a37218d0ec77267ae4706e47f25c409e357a1baf5
6
+ metadata.gz: 0bfed2e3bd0d156bb3663d0b5b4790e6a24b3c0c3d4319dc3ba1a136e1cfcf1bffddcafdc9405de84a508427576b401269b46c7c15040a8fbe2337807f9b9fac
7
+ data.tar.gz: 5fe807746ee1ee044feb9b5efeda224601e2f1076bccc895adb1723605c8c56debe37676a9c5266d76dd5077ad52205c7946a020ec5ce7918cbb9e5d4356a180
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,37 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [3.1.5] - 2026-06-23
34
+
35
+ - TAG: [v3.1.5][3.1.5t]
36
+ - COVERAGE: 97.09% -- 634/653 lines in 10 files
37
+ - BRANCH COVERAGE: 88.82% -- 135/152 branches in 10 files
38
+ - 37.08% documented
39
+
40
+ ### Added
41
+
42
+ - Added support for JRuby 10.1 and TruffleRuby 34.0.
43
+
44
+ ### Changed
45
+
46
+ - Retemplated project metadata and CI/development automation with `kettle-jem` v7.0.0.
47
+
48
+ ### Fixed
49
+
50
+ - Fixed subprocess coverage setup for SimpleCov v1 by starting coverage
51
+ explicitly in the spawn shim and detecting active coverage via Ruby's
52
+ `Coverage.running?` API.
53
+ - Fixed SimpleCov boot order so kettle-soup-cover formatter configuration loads
54
+ after SimpleCov finishes requiring its defaults.
55
+
56
+ - Added `PARALLEL_PID_FILE` to `turbo_tests2 fan` worker environments so
57
+ SimpleCov parallel result collation does not fail when workers inherit
58
+ `PARALLEL_TEST_GROUPS`.
59
+ - Made CLI integration specs assert combined stdout/stderr output so older
60
+ Ruby engines that emit warnings or RSpec load errors on stderr are covered.
61
+ - Relaxed CLI load-error detail expectations only on TruffleRuby, where some
62
+ supported versions exit nonzero but omit the RSpec load-error summary.
63
+
33
64
  ## [3.1.4] - 2026-06-17
34
65
 
35
66
  - TAG: [v3.1.4][3.1.4t]
@@ -154,7 +185,9 @@ Please file a bug if you notice a violation of semantic versioning.
154
185
 
155
186
  - Initial release
156
187
 
157
- [Unreleased]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.1.4...HEAD
188
+ [Unreleased]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.1.5...HEAD
189
+ [3.1.5]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.1.4...v3.1.5
190
+ [3.1.5t]: https://github.com/galtzo-floss/turbo_tests2/releases/tag/v3.1.5
158
191
  [3.1.4]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.1.3...v3.1.4
159
192
  [3.1.4t]: https://github.com/galtzo-floss/turbo_tests2/releases/tag/v3.1.4
160
193
  [3.1.3]: https://github.com/galtzo-floss/turbo_tests2/compare/v3.1.2...v3.1.3
data/FUNDING.md CHANGED
@@ -6,7 +6,7 @@ Many paths lead to being a sponsor or a backer of this project. Are you on such
6
6
 
7
7
  [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal]
8
8
 
9
- [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS efforts using Patreon][🖇patreon-img]][🖇patreon]
9
+ [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
10
10
 
11
11
  [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
12
12
  [⛳liberapay]: https://liberapay.com/pboling/donate
@@ -16,12 +16,8 @@ Many paths lead to being a sponsor or a backer of this project. Are you on such
16
16
  [🖇osc-sponsors-i]: https://opencollective.com/galtzo-floss/sponsors/badge.svg?style=flat
17
17
  [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
18
18
  [🖇sponsor]: https://github.com/sponsors/pboling
19
- [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
20
- [🖇polar]: https://polar.sh/pboling
21
19
  [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
22
20
  [🖇kofi]: https://ko-fi.com/pboling
23
- [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
24
- [🖇patreon]: https://patreon.com/galtzo
25
21
  [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
26
22
  [🖇buyme]: https://www.buymeacoffee.com/pboling
27
23
  [🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
data/README.md CHANGED
@@ -10,9 +10,9 @@
10
10
 
11
11
  `if ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS maintenance is now my full-time job.
12
12
 
13
- [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
13
+ [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
14
14
 
15
- <details>
15
+ <details markdown="1">
16
16
  <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
17
17
 
18
18
  I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
@@ -66,9 +66,9 @@ Finished in 2 minute 25.15 seconds (files took 0 seconds to load)
66
66
 
67
67
  | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
68
68
  |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
69
- | Works with JRuby | [![JRuby 9.2 Compat][💎jruby-9.2i]][🚎jruby-9.2-wf] [![JRuby 9.3 Compat][💎jruby-9.3i]][🚎jruby-9.3-wf] <br/> [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎jruby-9.4-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
70
- | Works with Truffle Ruby | [![Truffle Ruby 22.3 Compat][💎truby-22.3i]][🚎truby-22.3-wf] [![Truffle Ruby 23.0 Compat][💎truby-23.0i]][🚎truby-23.0-wf] [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎truby-23.1-wf] <br/> [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf]|
71
- | Works with MRI Ruby 4 | [![Ruby 4.0 Compat][💎ruby-4.0i]][🚎11-c-wf] [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
69
+ | Works with JRuby | [![JRuby 9.2 Compat][💎jruby-9.2i]][🚎jruby-9.2-wf] [![JRuby 9.3 Compat][💎jruby-9.3i]][🚎jruby-9.3-wf] <br/> [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎jruby-9.4-wf] [![JRuby 10.0 Compat][💎jruby-10.0i]][🚎jruby-10.0-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
70
+ | Works with Truffle Ruby | [![Truffle Ruby 22.3 Compat][💎truby-22.3i]][🚎truby-22.3-wf] [![Truffle Ruby 23.0 Compat][💎truby-23.0i]][🚎truby-23.0-wf] [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎truby-23.1-wf] <br/> [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby 33.0 Compat][💎truby-33.0i]][🚎truby-33.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf] [![Truffle Ruby HEAD Compat][💎truby-headi]][🚎3-hd-wf]|
71
+ | Works with MRI Ruby 4 | [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
72
72
  | Works with MRI Ruby 3 | [![Ruby 3.0 Compat][💎ruby-3.0i]][🚎ruby-3.0-wf] [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎ruby-3.1-wf] [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎ruby-3.2-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎ruby-3.3-wf] [![Ruby 3.4 Compat][💎ruby-3.4i]][🚎ruby-3.4-wf]|
73
73
  | Works with MRI Ruby 2 | [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎ruby-2.4-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎ruby-2.5-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎ruby-2.6-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎ruby-2.7-wf]|
74
74
  | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
@@ -87,9 +87,24 @@ This test floor is configured by `ruby.test_minimum` in `.kettle-jem.yml` and
87
87
  may be higher than the gem's runtime compatibility floor when legacy Rubies are
88
88
  not practical for the current toolchain.
89
89
 
90
- | 🚚 _Amazing_ test matrix was brought to you by | 🔎 appraisal2 🔎 and the color 💚 green 💚 |
91
- |------------------------------------------------|--------------------------------------------------------|
92
- | 👟 Check it out! | [github.com/appraisal-rb/appraisal2][💎appraisal2] ✨ |
90
+ <a href="https://github.com/kettle-dev"><img alt="kettle-dev Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/kettle-dev/avatar-128px.svg" width="14%" align="right"/></a>
91
+
92
+ The _amazing_ test matrix is powered by the kettle-dev stack.
93
+
94
+ <details markdown="1">
95
+ <summary>How kettle-dev manages complexity in tests</summary>
96
+
97
+ | Gem | Source | Role | Daily download rank |
98
+ |-----|--------|------|---------------------|
99
+ | [appraisal2](https://bestgems.org/gems/appraisal2) | [GitHub](https://github.com/appraisal-rb/appraisal2) | multi-dependency Appraisal matrix generation | [![Daily download rank for appraisal2](https://img.shields.io/gem/rd/appraisal2.svg?style=flat-square)](https://bestgems.org/gems/appraisal2) |
100
+ | [appraisal2-rubocop](https://bestgems.org/gems/appraisal2-rubocop) | [GitHub](https://github.com/appraisal-rb/appraisal2-rubocop) | RuboCop Appraisal generator integration | [![Daily download rank for appraisal2-rubocop](https://img.shields.io/gem/rd/appraisal2-rubocop.svg?style=flat-square)](https://bestgems.org/gems/appraisal2-rubocop) |
101
+ | [kettle-dev](https://bestgems.org/gems/kettle-dev) | [GitHub](https://github.com/kettle-dev/kettle-dev) | development, release, and CI workflow tooling | [![Daily download rank for kettle-dev](https://img.shields.io/gem/rd/kettle-dev.svg?style=flat-square)](https://bestgems.org/gems/kettle-dev) |
102
+ | [kettle-jem](https://bestgems.org/gems/kettle-jem) | [GitHub](https://github.com/kettle-dev/kettle-jem) | Appraisals & CI workflow templates | [![Daily download rank for kettle-jem](https://img.shields.io/gem/rd/kettle-jem.svg?style=flat-square)](https://bestgems.org/gems/kettle-jem) |
103
+ | [kettle-soup-cover](https://bestgems.org/gems/kettle-soup-cover) | [GitHub](https://github.com/kettle-dev/kettle-soup-cover) | SimpleCov coverage policy and reporting | [![Daily download rank for kettle-soup-cover](https://img.shields.io/gem/rd/kettle-soup-cover.svg?style=flat-square)](https://bestgems.org/gems/kettle-soup-cover) |
104
+ | [kettle-test](https://bestgems.org/gems/kettle-test) | [GitHub](https://github.com/kettle-dev/kettle-test) | standard test runner and coverage harness | [![Daily download rank for kettle-test](https://img.shields.io/gem/rd/kettle-test.svg?style=flat-square)](https://bestgems.org/gems/kettle-test) |
105
+ | [rubocop-lts](https://bestgems.org/gems/rubocop-lts) | [GitHub](https://github.com/rubocop-lts/rubocop-lts) | Ruby-version-aware linting | [![Daily download rank for rubocop-lts](https://img.shields.io/gem/rd/rubocop-lts.svg?style=flat-square)](https://bestgems.org/gems/rubocop-lts) |
106
+
107
+ </details>
93
108
 
94
109
  ### Federated DVCS
95
110
 
@@ -318,7 +333,7 @@ NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day
318
333
  No sponsors yet. Be the first!
319
334
  <!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
320
335
 
321
- [kettle-readme-backers]: https://github.com/galtzo-floss/turbo_tests2/blob/main/exe/kettle-readme-backers
336
+ [kettle-readme-backers]: https://github.com/galtzo-floss/turbo_tests2/blob/main/bin/kettle-readme-backers
322
337
 
323
338
  ### Another way to support open-source
324
339
 
@@ -330,7 +345,7 @@ I’m developing a new library, [floss_funding][🖇floss-funding-gem], designed
330
345
 
331
346
  **[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
332
347
 
333
- [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS efforts using Patreon][🖇patreon-img]][🖇patreon]
348
+ [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
334
349
 
335
350
  ## 🔐 Security
336
351
 
@@ -376,7 +391,7 @@ Made with [contributors-img][🖐contrib-rocks].
376
391
 
377
392
  Also see GitLab Contributors: [https://gitlab.com/galtzo-floss/turbo_tests2/-/graphs/main][🚎contributors-gl]
378
393
 
379
- <details>
394
+ <details markdown="1">
380
395
  <summary>⭐️ Star History</summary>
381
396
 
382
397
  <a href="https://star-history.com/galtzo-floss/turbo_tests2&Date">
@@ -482,12 +497,8 @@ Thanks for RTFM. ☺️
482
497
  [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
483
498
  [🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
484
499
  [🖇sponsor]: https://github.com/sponsors/pboling
485
- [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
486
- [🖇polar]: https://polar.sh/pboling
487
500
  [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
488
501
  [🖇kofi]: https://ko-fi.com/pboling
489
- [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
490
- [🖇patreon]: https://patreon.com/galtzo
491
502
  [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
492
503
  [🖇buyme-img]: https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20latte&emoji=&slug=pboling&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff
493
504
  [🖇buyme]: https://www.buymeacoffee.com/pboling
@@ -577,11 +588,13 @@ Thanks for RTFM. ☺️
577
588
  [🚎jruby-9.2-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/jruby-9.2.yml
578
589
  [🚎jruby-9.3-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/jruby-9.3.yml
579
590
  [🚎jruby-9.4-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/jruby-9.4.yml
591
+ [🚎jruby-10.0-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/jruby-10.0.yml
580
592
  [🚎truby-22.3-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-22.3.yml
581
593
  [🚎truby-23.0-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-23.0.yml
582
594
  [🚎truby-23.1-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-23.1.yml
583
595
  [🚎truby-24.2-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-24.2.yml
584
596
  [🚎truby-25.0-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-25.0.yml
597
+ [🚎truby-33.0-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/truffleruby-33.0.yml
585
598
  [🚎2-cov-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/coverage.yml
586
599
  [🚎2-cov-wfi]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/coverage.yml/badge.svg
587
600
  [🚎3-hd-wf]: https://github.com/galtzo-floss/turbo_tests2/actions/workflows/heads.yml
@@ -611,7 +624,6 @@ Thanks for RTFM. ☺️
611
624
  [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
612
625
  [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
613
626
  [💎ruby-3.4i]: https://img.shields.io/badge/Ruby-3.4-CC342D?style=for-the-badge&logo=ruby&logoColor=white
614
- [💎ruby-4.0i]: https://img.shields.io/badge/Ruby-4.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
615
627
  [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
616
628
  [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
617
629
  [💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.3-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
@@ -619,10 +631,13 @@ Thanks for RTFM. ☺️
619
631
  [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
620
632
  [💎truby-24.2i]: https://img.shields.io/badge/Truffle_Ruby-24.2-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
621
633
  [💎truby-25.0i]: https://img.shields.io/badge/Truffle_Ruby-25.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
634
+ [💎truby-33.0i]: https://img.shields.io/badge/Truffle_Ruby-33.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
622
635
  [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
636
+ [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
623
637
  [💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2-FBE742?style=for-the-badge&logo=ruby&logoColor=red
624
638
  [💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3-FBE742?style=for-the-badge&logo=ruby&logoColor=red
625
639
  [💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
640
+ [💎jruby-10.0i]: https://img.shields.io/badge/JRuby-10.0-FBE742?style=for-the-badge&logo=ruby&logoColor=red
626
641
  [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
627
642
  [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
628
643
  [🤝gh-issues]: https://github.com/galtzo-floss/turbo_tests2/issues
@@ -651,7 +666,7 @@ Thanks for RTFM. ☺️
651
666
  [📌gitmoji]: https://gitmoji.dev
652
667
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
653
668
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
654
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.700-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
669
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.653-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
655
670
  [🔐security]: https://github.com/galtzo-floss/turbo_tests2/blob/main/SECURITY.md
656
671
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
657
672
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -681,5 +696,5 @@ Thanks for RTFM. ☺️
681
696
  | Homepage | https://github.com/galtzo-floss/turbo_tests2 |
682
697
  | Source | https://github.com/galtzo-floss/turbo_tests2 |
683
698
  | License | `MIT` |
684
- | Funding | https://github.com/sponsors/pboling, https://issuehunt.io/u/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/galtzo-floss, https://patreon.com/galtzo, https://polar.sh/pboling, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/turbo_tests2, https://www.buymeacoffee.com/pboling |
699
+ | Funding | https://github.com/sponsors/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/galtzo-floss, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/turbo_tests2, https://www.buymeacoffee.com/pboling |
685
700
  <!-- kettle-jem:metadata:end -->
@@ -194,12 +194,15 @@ module TurboTests
194
194
  end
195
195
 
196
196
  processes = ParallelTests.determine_number_of_processes(count)
197
- pids = (1..processes).map do |process_id|
198
- env = {
199
- "TEST_ENV_NUMBER" => process_id.to_s,
200
- "PARALLEL_TEST_GROUPS" => processes.to_s
201
- }
202
- Process.spawn(env, *args)
197
+ pids = ParallelTests.with_pid_file do
198
+ (1..processes).map do |process_id|
199
+ env = {
200
+ "TEST_ENV_NUMBER" => process_id.to_s,
201
+ "PARALLEL_TEST_GROUPS" => processes.to_s,
202
+ "PARALLEL_PID_FILE" => ParallelTests.pid_file_path
203
+ }
204
+ Process.spawn(env, *args)
205
+ end
203
206
  end
204
207
  statuses = pids.map { |pid| Process.wait2(pid).last }
205
208
 
@@ -263,9 +266,9 @@ module TurboTests
263
266
  begin
264
267
  require "rake"
265
268
  rescue LoadError
266
- # :nocov:
269
+ # simplecov:disable
267
270
  return # rake is optional
268
- # :nocov:
271
+ # simplecov:enable
269
272
  end
270
273
 
271
274
  # Pass an empty argv so Rake doesn't parse the current process's ARGV,
@@ -2,7 +2,7 @@
2
2
 
3
3
  module TurboTests
4
4
  module Version
5
- VERSION = "3.1.4"
5
+ VERSION = "3.1.5"
6
6
  end
7
7
  VERSION = Version::VERSION # Traditional Constant Location
8
8
  end
@@ -13,7 +13,7 @@ RSpec.shared_context("with simplecov spawn coverage") do
13
13
  original_rubyopt = ENV.fetch("RUBYOPT", nil)
14
14
  original_cov_min_hard = ENV.fetch("K_SOUP_COV_MIN_HARD", nil)
15
15
  begin
16
- if defined?(SimpleCov) && SimpleCov.running
16
+ if defined?(SimpleCov) && defined?(Coverage) && Coverage.respond_to?(:running?) && Coverage.running?
17
17
  spawn_path = simplecov_spawn_path
18
18
  raise ArgumentError, "Expected SimpleCov spawn shim at #{spawn_path}" unless File.file?(spawn_path)
19
19
 
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.1.4
4
+ version: 3.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Illia
@@ -90,7 +90,7 @@ dependencies:
90
90
  version: '1.1'
91
91
  - - ">="
92
92
  - !ruby/object:Gem::Version
93
- version: 1.1.12
93
+ version: 1.1.13
94
94
  type: :runtime
95
95
  prerelease: false
96
96
  version_requirements: !ruby/object:Gem::Requirement
@@ -100,7 +100,7 @@ dependencies:
100
100
  version: '1.1'
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: 1.1.12
103
+ version: 1.1.13
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: kettle-dev
106
106
  requirement: !ruby/object:Gem::Requirement
@@ -110,7 +110,7 @@ dependencies:
110
110
  version: '2.2'
111
111
  - - ">="
112
112
  - !ruby/object:Gem::Version
113
- version: 2.2.10
113
+ version: 2.2.15
114
114
  type: :development
115
115
  prerelease: false
116
116
  version_requirements: !ruby/object:Gem::Requirement
@@ -120,7 +120,7 @@ dependencies:
120
120
  version: '2.2'
121
121
  - - ">="
122
122
  - !ruby/object:Gem::Version
123
- version: 2.2.10
123
+ version: 2.2.15
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: bundler-audit
126
126
  requirement: !ruby/object:Gem::Requirement
@@ -178,7 +178,7 @@ dependencies:
178
178
  version: '3.1'
179
179
  - - ">="
180
180
  - !ruby/object:Gem::Version
181
- version: 3.1.2
181
+ version: 3.1.3
182
182
  type: :development
183
183
  prerelease: false
184
184
  version_requirements: !ruby/object:Gem::Requirement
@@ -188,7 +188,7 @@ dependencies:
188
188
  version: '3.1'
189
189
  - - ">="
190
190
  - !ruby/object:Gem::Version
191
- version: 3.1.2
191
+ version: 3.1.3
192
192
  - !ruby/object:Gem::Dependency
193
193
  name: kettle-test
194
194
  requirement: !ruby/object:Gem::Requirement
@@ -198,7 +198,7 @@ dependencies:
198
198
  version: '2.0'
199
199
  - - ">="
200
200
  - !ruby/object:Gem::Version
201
- version: 2.0.5
201
+ version: 2.0.6
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
@@ -208,7 +208,7 @@ dependencies:
208
208
  version: '2.0'
209
209
  - - ">="
210
210
  - !ruby/object:Gem::Version
211
- version: 2.0.5
211
+ version: 2.0.6
212
212
  - !ruby/object:Gem::Dependency
213
213
  name: ruby-progressbar
214
214
  requirement: !ruby/object:Gem::Requirement
@@ -252,7 +252,7 @@ dependencies:
252
252
  version: '2.0'
253
253
  - - ">="
254
254
  - !ruby/object:Gem::Version
255
- version: 2.0.2
255
+ version: 2.0.3
256
256
  type: :development
257
257
  prerelease: false
258
258
  version_requirements: !ruby/object:Gem::Requirement
@@ -262,7 +262,7 @@ dependencies:
262
262
  version: '2.0'
263
263
  - - ">="
264
264
  - !ruby/object:Gem::Version
265
- version: 2.0.2
265
+ version: 2.0.3
266
266
  description: "\U0001F680 turbo_tests2` is a drop-in replacement for `serpapi/turbo_tests`
267
267
  and `grosser/parallel_tests` with incremental summarized output. Source code of
268
268
  `turbo_test2` gem is based on Discourse and Rubygems work in this area (see README.md)."
@@ -309,10 +309,10 @@ licenses:
309
309
  - MIT
310
310
  metadata:
311
311
  homepage_uri: https://turbo-tests2.galtzo.com
312
- source_code_uri: https://github.com/galtzo-floss/turbo_tests2/tree/v3.1.4
313
- changelog_uri: https://github.com/galtzo-floss/turbo_tests2/blob/v3.1.4/CHANGELOG.md
312
+ source_code_uri: https://github.com/galtzo-floss/turbo_tests2/tree/v3.1.5
313
+ changelog_uri: https://github.com/galtzo-floss/turbo_tests2/blob/v3.1.5/CHANGELOG.md
314
314
  bug_tracker_uri: https://github.com/galtzo-floss/turbo_tests2/issues
315
- documentation_uri: https://www.rubydoc.info/gems/turbo_tests2/3.1.4
315
+ documentation_uri: https://www.rubydoc.info/gems/turbo_tests2/3.1.5
316
316
  funding_uri: https://github.com/sponsors/pboling
317
317
  wiki_uri: https://github.com/galtzo-floss/turbo_tests2/wiki
318
318
  news_uri: https://www.railsbling.com/tags/turbo_tests2
metadata.gz.sig CHANGED
Binary file