kettle-dev 1.0.20 → 1.0.22

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: 27364558d14319ac0482a0d2f97a1946aaa6ca70ad3273e64422493aca9e703e
4
- data.tar.gz: b86afd89d439255f0a225355769eb8fc38ebf9b027d7bd119e54375d9519a9ff
3
+ metadata.gz: 4a2319467e7b37ae135d36dd2d9750de33b700cad93bfbcad890c51002489941
4
+ data.tar.gz: 30eb41fdaa0a113665d1050d3f24e46ce715b5a019d4987d4391acea8fd62de6
5
5
  SHA512:
6
- metadata.gz: e621a371e84f22c1823b04223ead659ad8349589181b03ea479ec20f32c167f6f0cfeaa6e6f7370ee0a64924e4ea8310eb1ed654305b984dab4a5daed8788840
7
- data.tar.gz: f661ff83118812ceba44e04fc5292dae3150e36afc50ddef2b937d67a5fb2c8cb13d47883a3061c9be06065148c293459f1238c4b5bf9c9c9dfa9869118aa7f3
6
+ metadata.gz: aefe32f787237bc2c1e3a07491eee3a126b4ecff7f76cff3b1a38d14c46e1dd06c0ba37bb88855430b305aa5c9cfd067f6c1bd37d7dd72ff29f62faf55dfe0c1
7
+ data.tar.gz: 0f9e5277c86c888aba4bb32286646f86a269380f0a1d526810ba2ddc6723d89bbeb405e00a29c8b29b6dbbb7d77248e0e76250f04143f8cf836aef0f9ce6a0ed
checksums.yaml.gz.sig CHANGED
Binary file
data/.envrc CHANGED
@@ -34,6 +34,9 @@ export DEBUG=false # do not allow byebug statements (override in .env.local)
34
34
  export FLOSS_CFG_FUND_DEBUG=false # extra logging to help diagnose issues (override in .env.local)
35
35
  export FLOSS_CFG_FUND_LOGFILE=tmp/log/debug.log
36
36
 
37
+ # Concurrently developing the rubocop-lts suite?
38
+ export RUBOCOP_LTS_LOCAL=false
39
+
37
40
  # .env would override anything in this file, if `dotenv` is uncommented below.
38
41
  # .env is a DOCKER standard, and if we use it, it would be in deployed, or DOCKER, environments,
39
42
  # and that is why we generally want to leave it commented out.
@@ -5,6 +5,8 @@ updates:
5
5
  schedule:
6
6
  interval: "weekly"
7
7
  open-pull-requests-limit: 5
8
+ ignore:
9
+ - dependency-name: "rubocop-lts"
8
10
  - package-ecosystem: "github-actions"
9
11
  directory: "/"
10
12
  schedule:
@@ -1,5 +1,8 @@
1
1
  name: MRI 2.3, 2.4, 2.5 (EOL)
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  on:
4
7
  push:
5
8
  branches:
@@ -71,7 +74,7 @@ jobs:
71
74
 
72
75
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
73
76
  # We need to do this first to get appraisal installed.
74
- # NOTE: This does not use the main Gemfile at all.
77
+ # NOTE: This does not use the primary Gemfile at all.
75
78
  - name: Install Root Appraisal
76
79
  run: bundle
77
80
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -1,5 +1,8 @@
1
1
  name: MRI 2.3, 2.4, 2.5 (EOL)
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  on:
4
7
  push:
5
8
  branches:
@@ -69,7 +72,7 @@ jobs:
69
72
 
70
73
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
71
74
  # We need to do this first to get appraisal installed.
72
- # NOTE: This does not use the main Gemfile at all.
75
+ # NOTE: This does not use the primary Gemfile at all.
73
76
  - name: Install Root Appraisal
74
77
  run: bundle
75
78
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -68,7 +68,7 @@ jobs:
68
68
 
69
69
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
70
70
  # We need to do this first to get appraisal installed.
71
- # NOTE: This does not use the main Gemfile at all.
71
+ # NOTE: This does not use the primary Gemfile at all.
72
72
  - name: Install Root Appraisal
73
73
  run: bundle
74
74
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -67,7 +67,7 @@ jobs:
67
67
 
68
68
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
69
69
  # We need to do this first to get appraisal installed.
70
- # NOTE: This does not use the main Gemfile at all.
70
+ # NOTE: This does not use the primary Gemfile at all.
71
71
  - name: Install Root Appraisal
72
72
  run: bundle
73
73
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -1,6 +1,9 @@
1
1
  # Targets the evergreen latest release of ruby, truffleruby, and jruby
2
2
  name: Current
3
3
 
4
+ permissions:
5
+ contents: read
6
+
4
7
  env:
5
8
  K_SOUP_COV_DO: false
6
9
 
@@ -17,9 +20,6 @@ on:
17
20
  # Allow manually triggering the workflow.
18
21
  workflow_dispatch:
19
22
 
20
- permissions:
21
- contents: read
22
-
23
23
  # Cancels all previous workflow runs for the same branch that have not yet completed.
24
24
  concurrency:
25
25
  # The concurrency group contains the workflow name and the branch name.
@@ -77,7 +77,7 @@ jobs:
77
77
 
78
78
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
79
79
  # We need to do this first to get appraisal installed.
80
- # NOTE: This does not use the main Gemfile at all.
80
+ # NOTE: This does not use the primary Gemfile at all.
81
81
  - name: Install Root Appraisal
82
82
  run: bundle
83
83
  - name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}
@@ -1,5 +1,8 @@
1
1
  name: Heads
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  env:
4
7
  K_SOUP_COV_DO: false
5
8
 
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -76,10 +76,22 @@ jobs:
76
76
 
77
77
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
78
78
  # We need to do this first to get appraisal installed.
79
- # NOTE: This does not use the main Gemfile at all.
80
- - name: Install Root Appraisal
79
+ # NOTE: This does not use the primary Gemfile at all.
80
+ - name: "Install Root Appraisal"
81
81
  run: bundle
82
- - name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}
82
+
83
+ - name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
84
+ id: bundleAttempt1
83
85
  run: bundle exec appraisal ${{ matrix.appraisal }} bundle
86
+ # Continue to the next step on failure
87
+ continue-on-error: true
88
+
89
+ # Effectively an automatic retry of the previous step.
90
+ - name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
91
+ id: bundleAttempt2
92
+ # If bundleAttempt1 failed, try again here; Otherwise skip.
93
+ if: steps.bundleAttempt1.outcome == 'failure'
94
+ run: bundle exec appraisal ${{ matrix.appraisal }} bundle
95
+
84
96
  - name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
85
97
  run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
@@ -0,0 +1,97 @@
1
+ name: Heads
2
+
3
+ permissions:
4
+ contents: read
5
+
6
+ env:
7
+ K_SOUP_COV_DO: false
8
+
9
+ on:
10
+ push:
11
+ branches:
12
+ - 'main'
13
+ - '*-stable'
14
+ tags:
15
+ - '!*' # Do not execute on tags
16
+ pull_request:
17
+ branches:
18
+ - '*'
19
+ # Allow manually triggering the workflow.
20
+ workflow_dispatch:
21
+
22
+ # Cancels all previous workflow runs for the same branch that have not yet completed.
23
+ concurrency:
24
+ # The concurrency group contains the workflow name and the branch name.
25
+ group: "${{ github.workflow }}-${{ github.ref }}"
26
+ cancel-in-progress: true
27
+
28
+ jobs:
29
+ test:
30
+ if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
31
+ name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
32
+ runs-on: ubuntu-latest
33
+ continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
34
+ env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
35
+ BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
36
+ strategy:
37
+ fail-fast: true
38
+ matrix:
39
+ include:
40
+ # NOTE: Heads use default rubygems / bundler; their defaults are custom, unreleased, and from the future!
41
+ # ruby-head
42
+ - ruby: "ruby-head"
43
+ appraisal: "head"
44
+ exec_cmd: "rake test"
45
+ gemfile: "Appraisal.root"
46
+ rubygems: default
47
+ bundler: default
48
+
49
+ # truffleruby-head
50
+ - ruby: "truffleruby-head"
51
+ appraisal: "head"
52
+ exec_cmd: "rake test"
53
+ gemfile: "Appraisal.root"
54
+ rubygems: default
55
+ bundler: default
56
+
57
+ # jruby-head
58
+ - ruby: "jruby-head"
59
+ appraisal: "head"
60
+ exec_cmd: "rake test"
61
+ gemfile: "Appraisal.root"
62
+ rubygems: default
63
+ bundler: default
64
+
65
+ steps:
66
+ - name: Checkout
67
+ uses: actions/checkout@v5
68
+
69
+ - name: Setup Ruby & RubyGems
70
+ uses: ruby/setup-ruby@v1
71
+ with:
72
+ ruby-version: ${{ matrix.ruby }}
73
+ rubygems: ${{ matrix.rubygems }}
74
+ bundler: ${{ matrix.bundler }}
75
+ bundler-cache: false
76
+
77
+ # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
78
+ # We need to do this first to get appraisal installed.
79
+ # NOTE: This does not use the primary Gemfile at all.
80
+ - name: "Install Root Appraisal"
81
+ run: bundle
82
+
83
+ - name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
84
+ id: bundleAttempt1
85
+ run: bundle exec appraisal ${{ matrix.appraisal }} bundle
86
+ # Continue to the next step on failure
87
+ continue-on-error: true
88
+
89
+ # Effectively an automatic retry of the previous step.
90
+ - name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
91
+ id: bundleAttempt2
92
+ # If bundleAttempt1 failed, try again here; Otherwise skip.
93
+ if: steps.bundleAttempt1.outcome == 'failure'
94
+ run: bundle exec appraisal ${{ matrix.appraisal }} bundle
95
+
96
+ - name: Tests for ${{ matrix.ruby }}@${{ matrix.appraisal }} via ${{ matrix.exec_cmd }}
97
+ run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
@@ -1,5 +1,8 @@
1
1
  name: JRuby
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  env:
4
7
  K_SOUP_COV_DO: false
5
8
 
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -68,7 +68,7 @@ jobs:
68
68
 
69
69
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
70
70
  # We need to do this first to get appraisal installed.
71
- # NOTE: This does not use the main Gemfile at all.
71
+ # NOTE: This does not use the primary Gemfile at all.
72
72
  - name: Install Root Appraisal
73
73
  run: bundle
74
74
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -1,5 +1,8 @@
1
1
  name: JRuby
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  env:
4
7
  K_SOUP_COV_DO: false
5
8
 
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -58,7 +58,7 @@ jobs:
58
58
 
59
59
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
60
60
  # We need to do this first to get appraisal installed.
61
- # NOTE: This does not use the main Gemfile at all.
61
+ # NOTE: This does not use the primary Gemfile at all.
62
62
  - name: Install Root Appraisal
63
63
  run: bundle
64
64
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -1,4 +1,7 @@
1
- name: MRI 3.0 (EOL)
1
+ name: MRI 3.0, 3.1 (EOL)
2
+
3
+ permissions:
4
+ contents: read
2
5
 
3
6
  env:
4
7
  K_SOUP_COV_DO: false
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -45,6 +45,14 @@ jobs:
45
45
  rubygems: '3.5.23'
46
46
  bundler: '2.5.23'
47
47
 
48
+ # Ruby 3.1
49
+ - ruby: "ruby-3.1"
50
+ appraisal: "ruby-3-1"
51
+ exec_cmd: "rake test"
52
+ gemfile: "Appraisal.root"
53
+ rubygems: latest
54
+ bundler: latest
55
+
48
56
  steps:
49
57
  - name: Checkout
50
58
  uses: actions/checkout@v5
@@ -59,7 +67,7 @@ jobs:
59
67
 
60
68
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
61
69
  # We need to do this first to get appraisal installed.
62
- # NOTE: This does not use the main Gemfile at all.
70
+ # NOTE: This does not use the primary Gemfile at all.
63
71
  - name: Install Root Appraisal
64
72
  run: bundle
65
73
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -56,7 +56,7 @@ jobs:
56
56
 
57
57
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
58
58
  # We need to do this first to get appraisal installed.
59
- # NOTE: This does not use the main Gemfile at all.
59
+ # NOTE: This does not use the primary Gemfile at all.
60
60
  - name: Install Root Appraisal
61
61
  run: bundle
62
62
  - name: Appraisal for ${{ matrix.appraisal }}
@@ -1,5 +1,8 @@
1
1
  name: MRI Non-EOL
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  env:
4
7
  K_SOUP_COV_DO: false
5
8
 
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -36,14 +36,6 @@ jobs:
36
36
  strategy:
37
37
  matrix:
38
38
  include:
39
- # Ruby 3.1
40
- - ruby: "ruby-3.1"
41
- appraisal: "ruby-3-1"
42
- exec_cmd: "rake test"
43
- gemfile: "Appraisal.root"
44
- rubygems: latest
45
- bundler: latest
46
-
47
39
  # Ruby 3.2
48
40
  - ruby: "ruby-3.2"
49
41
  appraisal: "ruby-3-2"
@@ -74,7 +66,7 @@ jobs:
74
66
 
75
67
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
76
68
  # We need to do this first to get appraisal installed.
77
- # NOTE: This does not use the main Gemfile at all.
69
+ # NOTE: This does not use the primary Gemfile at all.
78
70
  - name: Install Root Appraisal
79
71
  run: bundle
80
72
  - name: Appraisal for ${{ matrix.ruby }} ${{ matrix.appraisal }}
@@ -59,10 +59,35 @@ jobs:
59
59
 
60
60
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
61
61
  # We need to do this first to get appraisal installed.
62
- # NOTE: This does not use the main Gemfile at all.
62
+ # NOTE: This does not use the primary Gemfile at all.
63
63
  - name: Install Root Appraisal
64
64
  run: bundle
65
- - name: Appraisal for ${{ matrix.appraisal }}
65
+
66
+ - name: "[Attempt 1] Install Root Appraisal"
67
+ id: bundleAttempt1
68
+ run: bundle
69
+ # Continue to the next step on failure
70
+ continue-on-error: true
71
+
72
+ # Effectively an automatic retry of the previous step.
73
+ - name: "[Attempt 2] Install Root Appraisal"
74
+ id: bundleAttempt2
75
+ # If bundleAttempt1 failed, try again here; Otherwise skip.
76
+ if: steps.bundleAttempt1.outcome == 'failure'
77
+ run: bundle
78
+
79
+ - name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
80
+ id: bundleAppraisalAttempt1
81
+ run: bundle exec appraisal ${{ matrix.appraisal }} bundle
82
+ # Continue to the next step on failure
83
+ continue-on-error: true
84
+
85
+ # Effectively an automatic retry of the previous step.
86
+ - name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
87
+ id: bundleAppraisalAttempt2
88
+ # If bundleAttempt1 failed, try again here; Otherwise skip.
89
+ if: steps.bundleAppraisalAttempt1.outcome == 'failure'
66
90
  run: bundle exec appraisal ${{ matrix.appraisal }} bundle
91
+
67
92
  - name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
68
93
  run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
@@ -75,7 +75,7 @@ jobs:
75
75
 
76
76
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
77
77
  # We need to do this first to get appraisal installed.
78
- # NOTE: This does not use the main Gemfile at all.
78
+ # NOTE: This does not use the primary Gemfile at all.
79
79
  - name: Install Root Appraisal
80
80
  run: bundle
81
81
  - name: Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal_name }}
@@ -1,5 +1,8 @@
1
1
  name: MRI 2.6 & 2.7 (EOL)
2
2
 
3
+ permissions:
4
+ contents: read
5
+
3
6
  env:
4
7
  K_SOUP_COV_DO: false
5
8
 
@@ -16,9 +19,6 @@ on:
16
19
  # Allow manually triggering the workflow.
17
20
  workflow_dispatch:
18
21
 
19
- permissions:
20
- contents: read
21
-
22
22
  # Cancels all previous workflow runs for the same branch that have not yet completed.
23
23
  concurrency:
24
24
  # The concurrency group contains the workflow name and the branch name.
@@ -67,7 +67,7 @@ jobs:
67
67
 
68
68
  # Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
69
69
  # We need to do this first to get appraisal installed.
70
- # NOTE: This does not use the main Gemfile at all.
70
+ # NOTE: This does not use the primary Gemfile at all.
71
71
  - name: Install Root Appraisal
72
72
  run: bundle
73
73
  - name: Appraisal for ${{ matrix.appraisal }}
data/.rspec CHANGED
@@ -1,8 +1,9 @@
1
1
  --format progress
2
2
  --color
3
+ --order random
3
4
  --require spec_helper
4
5
  --warnings
5
6
  --format html
6
7
  --out results/test_results.html
7
8
  --format RspecJunitFormatter
8
- --out results/test_results.xml
9
+ --out results/test_results.xml
data/Appraisals CHANGED
@@ -1,9 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # HOW TO UPDATE APPRAISALS:
4
- # BUNDLE_GEMFILE=Appraisal.root.gemfile bundle
5
- # BUNDLE_GEMFILE=Appraisal.root.gemfile bundle exec appraisal update
6
- # bundle exec rake rubocop_gradual:autocorrect
3
+ # HOW TO UPDATE APPRAISALS (will run rubocop_gradual's autocorrect afterward):
4
+ # bin/rake appraisals:update
7
5
 
8
6
  # Lock/Unlock Deps Pattern
9
7
  #
@@ -34,6 +32,8 @@ end
34
32
  # Split into discrete appraisals if one of them needs a dependency locked discretely.
35
33
  appraise "head" do
36
34
  gem "erb"
35
+ # See: https://github.com/vcr/vcr/issues/1057
36
+ gem "cgi", ">= 0.5"
37
37
  gem "mutex_m", ">= 0.2"
38
38
  gem "stringio", ">= 3.0"
39
39
  gem "benchmark", "~> 0.4", ">= 0.4.1"
@@ -113,14 +113,14 @@ appraise "ruby-3-3" do
113
113
  gem "stringio", "~> 3.0"
114
114
  end
115
115
 
116
- # Only run security audit on latest Ruby version
116
+ # Only run security audit on the latest version of Ruby
117
117
  appraise "audit" do
118
118
  gem "erb"
119
119
  gem "mutex_m", "~> 0.2"
120
120
  gem "stringio", "~> 3.0"
121
121
  end
122
122
 
123
- # Only run coverage on latest Ruby version
123
+ # Only run coverage on the latest version of Ruby
124
124
  appraise "coverage" do
125
125
  gem "erb"
126
126
  gem "mutex_m", "~> 0.2"
@@ -130,7 +130,7 @@ appraise "coverage" do
130
130
  eval_gemfile "modular/recording/r3/recording.gemfile"
131
131
  end
132
132
 
133
- # Only run linter on latest Ruby version (but, in support of oldest supported Ruby version)
133
+ # Only run linter on the latest version of Ruby (but, in support of oldest supported Ruby version)
134
134
  appraise "style" do
135
135
  gem "erb"
136
136
  gem "mutex_m", "~> 0.2"
data/Appraisals.example CHANGED
@@ -82,13 +82,13 @@ appraise "ruby-3-3" do
82
82
  gem "stringio", "~> 3.0"
83
83
  end
84
84
 
85
- # Only run security audit on latest Ruby version
85
+ # Only run security audit on the latest version of Ruby
86
86
  appraise "audit" do
87
87
  gem "mutex_m", "~> 0.2"
88
88
  gem "stringio", "~> 3.0"
89
89
  end
90
90
 
91
- # Only run coverage on latest Ruby version
91
+ # Only run coverage on the latest version of Ruby
92
92
  appraise "coverage" do
93
93
  gem "mutex_m", "~> 0.2"
94
94
  gem "stringio", "~> 3.0"
@@ -96,7 +96,7 @@ appraise "coverage" do
96
96
  eval_gemfile "modular/optional.gemfile"
97
97
  end
98
98
 
99
- # Only run linter on latest Ruby version (but, in support of oldest supported Ruby version)
99
+ # Only run linter on the latest version of Ruby (but, in support of oldest supported Ruby version)
100
100
  appraise "style" do
101
101
  gem "mutex_m", "~> 0.2"
102
102
  gem "stringio", "~> 3.0"
data/CHANGELOG.md CHANGED
@@ -24,6 +24,37 @@ Please file a bug if you notice a violation of semantic versioning.
24
24
  ### Fixed
25
25
  ### Security
26
26
 
27
+ ## [1.0.22] - 2025-08-30
28
+ - TAG: [v1.0.22][1.0.22t]
29
+ - COVERAGE: 97.82% -- 2375/2428 lines in 20 files
30
+ - BRANCH COVERAGE: 81.34% -- 972/1195 branches in 20 files
31
+ - 76.23% documented
32
+ ### Added
33
+ - improved documentation
34
+ - example version of heads workflow
35
+ - give heads two attempts to succeed
36
+
37
+ ## [1.0.21] - 2025-08-30
38
+ - TAG: [v1.0.21][1.0.21t]
39
+ - COVERAGE: 97.82% -- 2375/2428 lines in 20 files
40
+ - BRANCH COVERAGE: 81.34% -- 972/1195 branches in 20 files
41
+ - 76.23% documented
42
+ ### Added
43
+ - FUNDING.md in support of a funding footer on release notes
44
+ - <!-- RELEASE-NOTES-FOOTER-START -->
45
+ - <!-- RELEASE-NOTES-FOOTER-END -->
46
+ - truffle workflow: Repeat attempts for bundle install and appraisal bundle before failure
47
+ - global token replacement during kettle:dev:install
48
+ - {KETTLE|DEV|GEM} => kettle-dev
49
+ - {RUBOCOP|LTS|CONSTRAINT} => dynamic
50
+ - {RUBOCOP|RUBY|GEM} => dynamic
51
+ - default to rubocop-ruby1_8 if no minimum ruby specified
52
+ - template supports local development of RuboCop-LTS suite of gems
53
+ - improved documentation
54
+ ### Changed
55
+ - dependabot: ignore rubocop-lts for updates
56
+ - template configures RSpec to run tests in random order
57
+
27
58
  ## [1.0.20] - 2025-08-29
28
59
  - TAG: [v1.0.20][1.0.20t]
29
60
  - COVERAGE: 14.01% -- 96/685 lines in 8 files
@@ -307,7 +338,7 @@ Please file a bug if you notice a violation of semantic versioning.
307
338
  - Selecting will run the selected workflow via `act`
308
339
  - This may move to its own gem in the future.
309
340
 
310
- [Unreleased]: https://github.com/kettle-rb/kettle-dev/compare/v1.0.20...HEAD
341
+ [Unreleased]: https://github.com/kettle-rb/kettle-dev/compare/v1.0.22...HEAD
311
342
  [1.0.0]: https://github.com/kettle-rb/kettle-dev/compare/a427c302df09cfe4253a7c8d400333f9a4c1a208...v1.0.0
312
343
  [1.0.0t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.0.0
313
344
  [1.0.1]: https://gitlab.com/kettle-rb/kettle-dev/-/compare/v1.0.0...v1.0.1
@@ -350,3 +381,7 @@ Please file a bug if you notice a violation of semantic versioning.
350
381
  [1.0.19t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.0.19
351
382
  [1.0.20]: https://github.com/kettle-rb/kettle-dev/compare/v1.0.19...v1.0.20
352
383
  [1.0.20t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.0.20
384
+ [1.0.21]: https://github.com/kettle-rb/kettle-dev/compare/v1.0.20...v1.0.21
385
+ [1.0.21t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.0.21
386
+ [1.0.22]: https://github.com/kettle-rb/kettle-dev/compare/v1.0.21...v1.0.22
387
+ [1.0.22t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.0.22
data/CITATION.cff CHANGED
@@ -12,9 +12,9 @@ authors:
12
12
  orcid: 'https://orcid.org/0009-0008-8519-441X'
13
13
  identifiers:
14
14
  - type: url
15
- value: 'https://github.com/kettle-rb/kettle-dev/'
15
+ value: 'https://github.com/kettle-rb/kettle-dev'
16
16
  description: kettle-dev
17
- repository-code: 'https://github.com/kettle-rb/kettle-dev/'
17
+ repository-code: 'https://github.com/kettle-rb/kettle-dev'
18
18
  abstract: >-
19
19
  kettle-dev
20
20
  license: See license file