kettle-jem 7.1.29 → 7.1.31
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 +63 -1
- data/README.md +1 -129
- data/lib/kettle/jem/templates/.devcontainer/devcontainer.json.example +1 -1
- data/lib/kettle/jem/templates/.github/workflows/coverage.yml.example +23 -1
- data/lib/kettle/jem/templates/.github/workflows/current.yml.example +5 -1
- data/lib/kettle/jem/templates/.github/workflows/dep-heads.yml.example +3 -0
- data/lib/kettle/jem/templates/.github/workflows/framework-ci.yml.example +3 -0
- data/lib/kettle/jem/templates/.github/workflows/heads.yml.example +13 -3
- data/lib/kettle/jem/templates/.github/workflows/jruby-10.0.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/jruby-9.1.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/jruby-9.2.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/jruby-9.3.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/jruby-9.4.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/jruby.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/locked_deps.yml.example +1 -0
- data/lib/kettle/jem/templates/.github/workflows/ruby-2.3.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-2.4.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-2.5.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-2.6.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-2.7.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-3.0.yml.example +8 -2
- data/lib/kettle/jem/templates/.github/workflows/ruby-3.1.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-3.2.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-3.3.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/ruby-3.4.yml.example +7 -1
- data/lib/kettle/jem/templates/.github/workflows/style.yml.example +4 -1
- data/lib/kettle/jem/templates/.github/workflows/templating.yml.example +4 -1
- data/lib/kettle/jem/templates/.github/workflows/truffle.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/truffleruby-22.3.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/truffleruby-23.1.yml.example +10 -0
- data/lib/kettle/jem/templates/.github/workflows/truffleruby-24.2.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/truffleruby-25.0.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/truffleruby-33.0.yml.example +14 -1
- data/lib/kettle/jem/templates/.github/workflows/unlocked_deps.yml.example +5 -1
- data/lib/kettle/jem/templates/gem.gemspec.example +3 -3
- data/lib/kettle/jem/templates/gemfiles/modular/coverage.gemfile.example +1 -1
- data/lib/kettle/jem/templates/gemfiles/modular/templating.gemfile.example +1 -1
- data/lib/kettle/jem/templates/shim/Gemfile.example +1 -1
- data/lib/kettle/jem/templates/shim/gem.gemspec.example +2 -2
- data/lib/kettle/jem/version.rb +1 -1
- data/lib/kettle/jem.rb +88 -62
- data.tar.gz.sig +0 -0
- metadata +28 -8
- metadata.gz.sig +0 -0
|
@@ -4,6 +4,15 @@ permissions:
|
|
|
4
4
|
contents: read
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
8
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
9
|
+
# Each turbo_tests2 worker is a full JVM subprocess; without a heap cap
|
|
10
|
+
# JRuby defaults to 1/4 of runner RAM per worker, and concurrent workers
|
|
11
|
+
# get OOM-killed silently mid-run (watchdog then reports total silence).
|
|
12
|
+
JRUBY_OPTS: "-J-Xmx1280m"
|
|
13
|
+
# Fewer, smaller JVM workers: bound workers x per-worker heap under the
|
|
14
|
+
# runner RAM so the kernel OOM killer never silences workers mid-run.
|
|
15
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
7
16
|
K_SOUP_COV_DO: false
|
|
8
17
|
|
|
9
18
|
on:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'jruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-latest
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -74,7 +84,10 @@ jobs:
|
|
|
74
84
|
id: bundleAppraisalAttempt2
|
|
75
85
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
76
86
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
77
|
-
run:
|
|
87
|
+
run: |
|
|
88
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
89
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
90
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
78
91
|
|
|
79
92
|
- name: Restore RSpec status log
|
|
80
93
|
if: "${{!env.ACT}}"
|
|
@@ -57,6 +57,7 @@ jobs:
|
|
|
57
57
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
58
58
|
name: Default rake task w/ main Gemfile.lock ${{ matrix.name_extra || '' }}
|
|
59
59
|
runs-on: ubuntu-latest
|
|
60
|
+
timeout-minutes: 30
|
|
60
61
|
continue-on-error: ${{ matrix.experimental }}
|
|
61
62
|
strategy:
|
|
62
63
|
fail-fast: false
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-22.04
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -64,7 +67,10 @@ jobs:
|
|
|
64
67
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
65
68
|
id: bundleAppraisalAttempt2
|
|
66
69
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
67
|
-
run:
|
|
70
|
+
run: |
|
|
71
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
72
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
73
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
68
74
|
|
|
69
75
|
- name: Restore RSpec status log
|
|
70
76
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-22.04
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -68,7 +71,10 @@ jobs:
|
|
|
68
71
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
69
72
|
id: bundleAppraisalAttempt2
|
|
70
73
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
71
|
-
run:
|
|
74
|
+
run: |
|
|
75
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
76
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
77
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
72
78
|
|
|
73
79
|
- name: Restore RSpec status log
|
|
74
80
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-22.04
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -68,7 +71,10 @@ jobs:
|
|
|
68
71
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
69
72
|
id: bundleAppraisalAttempt2
|
|
70
73
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
71
|
-
run:
|
|
74
|
+
run: |
|
|
75
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
76
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
77
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
72
78
|
|
|
73
79
|
- name: Restore RSpec status log
|
|
74
80
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-22.04
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -68,7 +71,10 @@ jobs:
|
|
|
68
71
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
69
72
|
id: bundleAppraisalAttempt2
|
|
70
73
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
71
|
-
run:
|
|
74
|
+
run: |
|
|
75
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
76
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
77
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
72
78
|
|
|
73
79
|
- name: Restore RSpec status log
|
|
74
80
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-22.04
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -68,7 +71,10 @@ jobs:
|
|
|
68
71
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
69
72
|
id: bundleAppraisalAttempt2
|
|
70
73
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
71
|
-
run:
|
|
74
|
+
run: |
|
|
75
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
76
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
77
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
72
78
|
|
|
73
79
|
- name: Restore RSpec status log
|
|
74
80
|
if: "${{!env.ACT}}"
|
|
@@ -4,6 +4,8 @@ permissions:
|
|
|
4
4
|
contents: read
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
8
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
7
9
|
K_SOUP_COV_DO: false
|
|
8
10
|
|
|
9
11
|
on:
|
|
@@ -30,6 +32,7 @@ jobs:
|
|
|
30
32
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
31
33
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
34
|
runs-on: ubuntu-22.04
|
|
35
|
+
timeout-minutes: 30
|
|
33
36
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
37
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
38
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -67,8 +70,11 @@ jobs:
|
|
|
67
70
|
|
|
68
71
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
69
72
|
id: bundleAppraisalAttempt2
|
|
70
|
-
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure'
|
|
71
|
-
run:
|
|
73
|
+
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
74
|
+
run: |
|
|
75
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
76
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
77
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
72
78
|
|
|
73
79
|
- name: Restore RSpec status log
|
|
74
80
|
if: "${{!env.ACT}}"
|
|
@@ -4,6 +4,8 @@ permissions:
|
|
|
4
4
|
contents: read
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
8
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
7
9
|
K_SOUP_COV_DO: false
|
|
8
10
|
|
|
9
11
|
on:
|
|
@@ -30,6 +32,7 @@ jobs:
|
|
|
30
32
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
31
33
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
34
|
runs-on: ubuntu-22.04
|
|
35
|
+
timeout-minutes: 30
|
|
33
36
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
37
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
38
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -67,7 +70,10 @@ jobs:
|
|
|
67
70
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
68
71
|
id: bundleAppraisalAttempt2
|
|
69
72
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
70
|
-
run:
|
|
73
|
+
run: |
|
|
74
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
75
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
76
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
71
77
|
|
|
72
78
|
- name: Restore RSpec status log
|
|
73
79
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-latest
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -64,7 +67,10 @@ jobs:
|
|
|
64
67
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
65
68
|
id: bundleAppraisalAttempt2
|
|
66
69
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
67
|
-
run:
|
|
70
|
+
run: |
|
|
71
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
72
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
73
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
68
74
|
|
|
69
75
|
- name: Restore RSpec status log
|
|
70
76
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-latest
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -64,7 +67,10 @@ jobs:
|
|
|
64
67
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
65
68
|
id: bundleAppraisalAttempt2
|
|
66
69
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
67
|
-
run:
|
|
70
|
+
run: |
|
|
71
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
72
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
73
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
68
74
|
|
|
69
75
|
- name: Restore RSpec status log
|
|
70
76
|
if: "${{!env.ACT}}"
|
|
@@ -27,9 +27,12 @@ jobs:
|
|
|
27
27
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
28
28
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
29
29
|
runs-on: ubuntu-latest
|
|
30
|
+
timeout-minutes: 30
|
|
30
31
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
31
32
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
32
33
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
34
|
+
# Kill stalled test workers instead of hanging until the CI job timeout.
|
|
35
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 900
|
|
33
36
|
strategy:
|
|
34
37
|
matrix:
|
|
35
38
|
include:
|
|
@@ -64,7 +67,10 @@ jobs:
|
|
|
64
67
|
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
65
68
|
id: bundleAppraisalAttempt2
|
|
66
69
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
67
|
-
run:
|
|
70
|
+
run: |
|
|
71
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
72
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
73
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
68
74
|
|
|
69
75
|
- name: Restore RSpec status log
|
|
70
76
|
if: "${{!env.ACT}}"
|
|
@@ -67,7 +67,10 @@ jobs:
|
|
|
67
67
|
id: bundleAppraisalAttempt2
|
|
68
68
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
69
69
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
70
|
-
run:
|
|
70
|
+
run: |
|
|
71
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
72
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
73
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
71
74
|
|
|
72
75
|
- name: Run ${{ matrix.appraisal }} checks via ${{ matrix.exec_cmd }}
|
|
73
76
|
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
|
@@ -80,7 +80,10 @@ jobs:
|
|
|
80
80
|
id: bundleAppraisalAttempt2
|
|
81
81
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
82
82
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
83
|
-
run:
|
|
83
|
+
run: |
|
|
84
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
85
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
86
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
84
87
|
|
|
85
88
|
- name: Cache tree-sitter-language-pack grammars
|
|
86
89
|
if: "${{!env.ACT}}"
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-latest
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -74,7 +84,10 @@ jobs:
|
|
|
74
84
|
id: bundleAppraisalAttempt2
|
|
75
85
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
76
86
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
77
|
-
run:
|
|
87
|
+
run: |
|
|
88
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
89
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
90
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
78
91
|
|
|
79
92
|
- name: Restore RSpec status log
|
|
80
93
|
if: "${{!env.ACT}}"
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-22.04
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -75,7 +85,10 @@ jobs:
|
|
|
75
85
|
id: bundleAppraisalAttempt2
|
|
76
86
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
77
87
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
78
|
-
run:
|
|
88
|
+
run: |
|
|
89
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
90
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
91
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
79
92
|
|
|
80
93
|
- name: Restore RSpec status log
|
|
81
94
|
if: "${{!env.ACT}}"
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-22.04
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/ruby_3_2.gemfile
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-22.04
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -74,7 +84,10 @@ jobs:
|
|
|
74
84
|
id: bundleAppraisalAttempt2
|
|
75
85
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
76
86
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
77
|
-
run:
|
|
87
|
+
run: |
|
|
88
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
89
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
90
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
78
91
|
|
|
79
92
|
- name: Restore RSpec status log
|
|
80
93
|
if: "${{!env.ACT}}"
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-22.04
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -79,7 +89,10 @@ jobs:
|
|
|
79
89
|
id: bundleAppraisalAttempt2
|
|
80
90
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
81
91
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
82
|
-
run:
|
|
92
|
+
run: |
|
|
93
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
94
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
95
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
83
96
|
|
|
84
97
|
- name: Restore RSpec status log
|
|
85
98
|
if: "${{!env.ACT}}"
|
|
@@ -5,6 +5,15 @@ permissions:
|
|
|
5
5
|
|
|
6
6
|
env:
|
|
7
7
|
K_SOUP_COV_DO: false
|
|
8
|
+
# TruffleRuby intermittently stalls the parallel test worker pool; keep
|
|
9
|
+
# this lane serial while maintained runtimes exercise the parallel runner.
|
|
10
|
+
# Two workers: TruffleRuby parallelism is spawn-based like every other
|
|
11
|
+
# engine; serial-only lanes waste CI time and trip the stall watchdog on
|
|
12
|
+
# legitimately long tests.
|
|
13
|
+
TURBO_TESTS2_MAX_PROCESSES: 2
|
|
14
|
+
# Serial lanes can legitimately run one long, silent test; give the stall
|
|
15
|
+
# watchdog a wider berth than the 4.0 default of 900s.
|
|
16
|
+
TURBO_TESTS2_WATCHDOG_SECONDS: 1500
|
|
8
17
|
|
|
9
18
|
on:
|
|
10
19
|
push:
|
|
@@ -30,6 +39,7 @@ jobs:
|
|
|
30
39
|
if: "(github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))) && (github.event_name != 'pull_request' || startsWith(github.head_ref, 'engines/') || startsWith(github.head_ref, 'truffleruby/') || startsWith(github.head_ref, 'feature/release') || startsWith(github.event.pull_request.title, 'Release '))"
|
|
31
40
|
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
32
41
|
runs-on: ubuntu-22.04
|
|
42
|
+
timeout-minutes: 30
|
|
33
43
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
44
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
45
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -74,7 +84,10 @@ jobs:
|
|
|
74
84
|
id: bundleAppraisalAttempt2
|
|
75
85
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
76
86
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && !env.ACT }}
|
|
77
|
-
run:
|
|
87
|
+
run: |
|
|
88
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
89
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
90
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
78
91
|
|
|
79
92
|
- name: Restore RSpec status log
|
|
80
93
|
if: "${{!env.ACT}}"
|
|
@@ -47,6 +47,7 @@ jobs:
|
|
|
47
47
|
if: "github.event_name != 'push' || (!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]'))"
|
|
48
48
|
name: Default rake task w/ unlocked deps ${{ matrix.name_extra || '' }}
|
|
49
49
|
runs-on: ubuntu-latest
|
|
50
|
+
timeout-minutes: 30
|
|
50
51
|
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
51
52
|
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
52
53
|
BUNDLE_GEMFILE: ${{ github.workspace }}/Appraisal.root.gemfile
|
|
@@ -87,7 +88,10 @@ jobs:
|
|
|
87
88
|
id: bundleAppraisalAttempt2
|
|
88
89
|
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
89
90
|
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' }}
|
|
90
|
-
run:
|
|
91
|
+
run: |
|
|
92
|
+
rm -f gemfiles/${{ matrix.appraisal }}.gemfile.lock
|
|
93
|
+
rm -rf vendor/bundle "$HOME/.bundle/cache"
|
|
94
|
+
bundle exec appraisal ${{ matrix.appraisal }} install
|
|
91
95
|
|
|
92
96
|
- name: Run ${{ matrix.exec_cmd }} on ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
93
97
|
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
|
@@ -118,7 +118,7 @@ Gem::Specification.new do |spec|
|
|
|
118
118
|
# and preferably a modular one (see gemfiles/modular/*.gemfile).
|
|
119
119
|
|
|
120
120
|
# Dev, Test, & Release Tasks
|
|
121
|
-
spec.add_development_dependency("kettle-dev", "~> 3.1", ">= 3.1.
|
|
121
|
+
spec.add_development_dependency("kettle-dev", "~> 3.1", ">= 3.1.15") # ruby >= {KJ|MIN_TEST_RUBY}
|
|
122
122
|
|
|
123
123
|
# Security
|
|
124
124
|
spec.add_development_dependency("bundler-audit", "~> 0.9.3") # ruby >= 2.0.0
|
|
@@ -133,8 +133,8 @@ Gem::Specification.new do |spec|
|
|
|
133
133
|
# Loads version files in anonymous namespaces for coverage without constant redefinition warnings.
|
|
134
134
|
spec.add_development_dependency("anonymous_loader", "~> 0.1", ">= 0.1.3") # ruby >= 2.2.0
|
|
135
135
|
spec.add_development_dependency("appraisal2", "~> 3.2", ">= 3.2.5") # ruby >= 1.8.7, for testing against multiple versions of dependencies
|
|
136
|
-
spec.add_development_dependency("kettle-test", "~> 2.0", ">= 2.0.
|
|
137
|
-
spec.add_development_dependency("turbo_tests2", "~>
|
|
136
|
+
spec.add_development_dependency("kettle-test", "~> 2.0", ">= 2.0.27") # ruby >= {KJ|MIN_TEST_RUBY}
|
|
137
|
+
spec.add_development_dependency("turbo_tests2", "~> 4.0", ">= 4.0.0") # ruby >= 2.4.0, default kettle-test runner
|
|
138
138
|
|
|
139
139
|
# Releasing
|
|
140
140
|
spec.add_development_dependency("ruby-progressbar", "~> 1.13") # ruby >= 0
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
if ENV.fetch("KETTLE_DEV_DEV", "false").casecmp("false").zero?
|
|
8
8
|
# Coverage (remote/released)
|
|
9
9
|
platform :mri do
|
|
10
|
-
gem "kettle-soup-cover", "~> 3.0", ">= 3.0.
|
|
10
|
+
gem "kettle-soup-cover", "~> 3.0", ">= 3.0.13", require: false
|
|
11
11
|
end
|
|
12
12
|
else
|
|
13
13
|
eval_gemfile "coverage_local.gemfile"
|
|
@@ -24,7 +24,7 @@ end
|
|
|
24
24
|
|
|
25
25
|
if kettle_remote
|
|
26
26
|
# Template/plugin checks for released installs.
|
|
27
|
-
gem "kettle-drift", "~> 1.0", ">= 1.0.
|
|
27
|
+
gem "kettle-drift", "~> 1.0", ">= 1.0.17", require: false
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
# Set STRUCTUREDMERGE_DEV=/path/to/structuredmerge/ruby/gems for local development with path-based dependencies.
|
|
@@ -6,7 +6,7 @@ shimmed_gem_path = ENV["KETTLE_JEM_SHIMMED_GEM_PATH"].to_s
|
|
|
6
6
|
gem "{KJ|SHIMMED_GEM_NAME}", path: shimmed_gem_path unless shimmed_gem_path.empty?
|
|
7
7
|
|
|
8
8
|
# Local workspace dependency wiring for templating_local.gemfile overrides.
|
|
9
|
-
gem "nomono", "~> 1.1", ">= 1.1.
|
|
9
|
+
gem "nomono", "~> 1.1", ">= 1.1.8", require: false # ruby >= 3.2.0
|
|
10
10
|
|
|
11
11
|
# Templating and the StructuredMerge family share this modular Gemfile.
|
|
12
12
|
# kettle-jem needs StructuredMerge to template, and kettle-changelog needs it at
|
|
@@ -30,13 +30,13 @@ Gem::Specification.new do |spec|
|
|
|
30
30
|
spec.add_dependency "{KJ|SHIMMED_GEM_NAME}"
|
|
31
31
|
|
|
32
32
|
# Dev, Test, & Release Tasks
|
|
33
|
-
spec.add_development_dependency("kettle-dev", "~> 3.1", ">= 3.1.
|
|
33
|
+
spec.add_development_dependency("kettle-dev", "~> 3.1", ">= 3.1.15") # ruby >= {KJ|MIN_TEST_RUBY}
|
|
34
34
|
|
|
35
35
|
# Tasks
|
|
36
36
|
spec.add_development_dependency "rake", "~> 13.0"
|
|
37
37
|
|
|
38
38
|
# Testing
|
|
39
|
-
spec.add_development_dependency("kettle-test", "~> 2.0", ">= 2.0.
|
|
39
|
+
spec.add_development_dependency("kettle-test", "~> 2.0", ">= 2.0.27") # ruby >= {KJ|MIN_TEST_RUBY}
|
|
40
40
|
spec.add_development_dependency "rspec", "~> 3.12"
|
|
41
41
|
|
|
42
42
|
# Releasing
|