kettle-dev 1.1.8 → 1.1.9
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 +15 -1
- data/README.md +1 -1
- data/README.md.example +4 -2
- data/Rakefile.example +1 -1
- data/gemfiles/modular/runtime_heads.gemfile.example +8 -0
- data/lib/kettle/dev/tasks/template_task.rb +74 -61
- data/lib/kettle/dev/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +5 -4
- 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: 390782fc59b3ecdb4da6eba290dfb4bcb4859b903837f97040e9d5a4877dc3d6
|
4
|
+
data.tar.gz: 18a699e55e20416b03c34b060d79ec07c61f3278dda3d906b276687a7f8b6794
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4c405e9036b50bb07e9ba968842beab12120a759f2692f074f938d22f24cb35fd8850ea045f739ed7f765b79ee1a54ab7417380813b93c802801f383d6a2cfad
|
7
|
+
data.tar.gz: 5334de8b782bf4abbc236261912b6b757ae4bac4c4969ed8a420b5965e8aa395f3f076cb72f5de60c83c18e602037af523d89cddc82a00ecd90b615817af8d64
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/CHANGELOG.md
CHANGED
@@ -24,6 +24,18 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
24
24
|
### Fixed
|
25
25
|
### Security
|
26
26
|
|
27
|
+
## [1.1.9] - 2025-09-07
|
28
|
+
- TAG: [v1.1.9][1.1.9t]
|
29
|
+
- COVERAGE: 97.11% -- 3255/3352 lines in 23 files
|
30
|
+
- BRANCH COVERAGE: 81.91% -- 1345/1642 branches in 23 files
|
31
|
+
- 76.65% documented
|
32
|
+
### Added
|
33
|
+
- badge for current runtime heads in example readme
|
34
|
+
### Fixed
|
35
|
+
- Add gemfiles/modular/x_std_libs.gemfile & injected.gemfile to template
|
36
|
+
- example version of gemfiles/modular/runtime_heads.gemfile
|
37
|
+
- necessary to avoid deps on recording gems in the template
|
38
|
+
|
27
39
|
## [1.1.8] - 2025-09-07
|
28
40
|
- TAG: [v1.1.8][1.1.8t]
|
29
41
|
- COVERAGE: 97.16% -- 3246/3341 lines in 23 files
|
@@ -543,7 +555,9 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
543
555
|
- Selecting will run the selected workflow via `act`
|
544
556
|
- This may move to its own gem in the future.
|
545
557
|
|
546
|
-
[Unreleased]: https://github.com/kettle-rb/kettle-dev/compare/v1.1.
|
558
|
+
[Unreleased]: https://github.com/kettle-rb/kettle-dev/compare/v1.1.9...HEAD
|
559
|
+
[1.1.9]: https://github.com/kettle-rb/kettle-dev/compare/v1.1.8...v1.1.9
|
560
|
+
[1.1.9t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.1.9
|
547
561
|
[1.1.8]: https://github.com/kettle-rb/kettle-dev/compare/v1.1.7...v1.1.8
|
548
562
|
[1.1.8t]: https://github.com/kettle-rb/kettle-dev/releases/tag/v1.1.8
|
549
563
|
[1.1.7]: https://github.com/kettle-rb/kettle-dev/compare/v1.1.6...v1.1.7
|
data/README.md
CHANGED
@@ -907,7 +907,7 @@ Thanks for RTFM. ☺️
|
|
907
907
|
[📌gitmoji]:https://gitmoji.dev
|
908
908
|
[📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
909
909
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
910
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-3.
|
910
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-3.352-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
911
911
|
[🔐security]: SECURITY.md
|
912
912
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
913
913
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
data/README.md.example
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
# 🍲 Kettle::Dev
|
11
11
|
|
12
|
-
[![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![CodeCov Test Coverage][🔑codecovi]][🔑codecov] [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls] [![QLTY Test Coverage][🔑qlty-covi]][🔑qlty-cov] [![QLTY Maintainability][🔑qlty-mnti]][🔑qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Supported][🚎6-s-wfi]][🚎6-s-wf] [![CI Legacy][🚎4-lg-wfi]][🚎4-lg-wf] [![CI Unsupported][🚎7-us-wfi]][🚎7-us-wf] [![CI Ancient][🚎1-an-wfi]][🚎1-an-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![CodeQL][🖐codeQL-img]][🖐codeQL]
|
12
|
+
[![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![CodeCov Test Coverage][🔑codecovi]][🔑codecov] [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls] [![QLTY Test Coverage][🔑qlty-covi]][🔑qlty-cov] [![QLTY Maintainability][🔑qlty-mnti]][🔑qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Supported][🚎6-s-wfi]][🚎6-s-wf] [![CI Legacy][🚎4-lg-wfi]][🚎4-lg-wf] [![CI Unsupported][🚎7-us-wfi]][🚎7-us-wf] [![CI Ancient][🚎1-an-wfi]][🚎1-an-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf] [![CodeQL][🖐codeQL-img]][🖐codeQL]
|
13
13
|
|
14
14
|
If ☝️ `ci_badges.map(&:color).detect { it != "green"}` [let me know][🖼️galtzo-discord], as I may have missed the [discord notification][🖼️galtzo-discord].
|
15
15
|
|
@@ -448,6 +448,8 @@ Thanks for RTFM. ☺️
|
|
448
448
|
[🚎10-j-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/jruby.yml/badge.svg
|
449
449
|
[🚎11-c-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/current.yml
|
450
450
|
[🚎11-c-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/current.yml/badge.svg
|
451
|
+
[🚎12-crh-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/dep-heads.yml
|
452
|
+
[🚎12-crh-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/dep-heads.yml/badge.svg
|
451
453
|
[🚎13-🔒️-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/locked_deps.yml
|
452
454
|
[🚎13-🔒️-wfi]: https://github.com/kettle-rb/kettle-dev/actions/workflows/locked_deps.yml/badge.svg
|
453
455
|
[🚎14-🔓️-wf]: https://github.com/kettle-rb/kettle-dev/actions/workflows/unlocked_deps.yml
|
@@ -505,7 +507,7 @@ Thanks for RTFM. ☺️
|
|
505
507
|
[📌gitmoji]:https://gitmoji.dev
|
506
508
|
[📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
507
509
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
508
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-3.
|
510
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-3.352-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
509
511
|
[🔐security]: SECURITY.md
|
510
512
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
511
513
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
data/Rakefile.example
CHANGED
@@ -6,6 +6,8 @@ module Kettle
|
|
6
6
|
# Thin wrapper to expose the kettle:dev:template task logic as a callable API
|
7
7
|
# for testability. The rake task should only call this method.
|
8
8
|
module TemplateTask
|
9
|
+
MODULAR_GEMFILE_DIR = "gemfiles/modular"
|
10
|
+
|
9
11
|
module_function
|
10
12
|
|
11
13
|
# Abort wrapper that avoids terminating the entire process during specs
|
@@ -102,78 +104,89 @@ module Kettle
|
|
102
104
|
allow_replace: true,
|
103
105
|
)
|
104
106
|
|
105
|
-
#
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
107
|
+
# 4a) gemfiles/modular/*.gemfile
|
108
|
+
# from gem's gemfiles/modular,
|
109
|
+
# except `style.gemfile` which has special handling below
|
110
|
+
modular_gemfiles = %w[
|
111
|
+
coverage
|
112
|
+
debug
|
113
|
+
documentation
|
114
|
+
injected
|
115
|
+
optional
|
116
|
+
runtime_heads
|
117
|
+
x_std_libs
|
118
|
+
]
|
119
|
+
modular_gemfiles.each do |base|
|
120
|
+
modular_gemfile = "#{base}.gemfile"
|
121
|
+
src = helpers.prefer_example(File.join(gem_checkout_root, MODULAR_GEMFILE_DIR, modular_gemfile))
|
122
|
+
dest = File.join(project_root, MODULAR_GEMFILE_DIR, modular_gemfile)
|
123
|
+
helpers.copy_file_with_prompt(src, dest, allow_create: true, allow_replace: true)
|
124
|
+
end
|
125
|
+
|
126
|
+
# 4b) gemfiles/modular/style.gemfile
|
127
|
+
modular_gemfile = "style.gemfile"
|
128
|
+
src = helpers.prefer_example(File.join(gem_checkout_root, MODULAR_GEMFILE_DIR, modular_gemfile))
|
129
|
+
dest = File.join(project_root, MODULAR_GEMFILE_DIR, modular_gemfile)
|
130
|
+
if File.basename(src).sub(/\.example\z/, "") == "style.gemfile"
|
131
|
+
helpers.copy_file_with_prompt(src, dest, allow_create: true, allow_replace: true) do |content|
|
132
|
+
# Adjust rubocop-lts constraint based on min_ruby
|
133
|
+
version_map = [
|
134
|
+
[Gem::Version.new("1.8"), "~> 0.1"],
|
135
|
+
[Gem::Version.new("1.9"), "~> 2.0"],
|
136
|
+
[Gem::Version.new("2.0"), "~> 4.0"],
|
137
|
+
[Gem::Version.new("2.1"), "~> 6.0"],
|
138
|
+
[Gem::Version.new("2.2"), "~> 8.0"],
|
139
|
+
[Gem::Version.new("2.3"), "~> 10.0"],
|
140
|
+
[Gem::Version.new("2.4"), "~> 12.0"],
|
141
|
+
[Gem::Version.new("2.5"), "~> 14.0"],
|
142
|
+
[Gem::Version.new("2.6"), "~> 16.0"],
|
143
|
+
[Gem::Version.new("2.7"), "~> 18.0"],
|
144
|
+
[Gem::Version.new("3.0"), "~> 20.0"],
|
145
|
+
[Gem::Version.new("3.1"), "~> 22.0"],
|
146
|
+
[Gem::Version.new("3.2"), "~> 24.0"],
|
147
|
+
[Gem::Version.new("3.3"), "~> 26.0"],
|
148
|
+
[Gem::Version.new("3.4"), "~> 28.0"],
|
149
|
+
]
|
150
|
+
new_constraint = nil
|
151
|
+
rubocop_ruby_gem_version = nil
|
152
|
+
ruby1_8 = version_map.first
|
153
|
+
begin
|
154
|
+
if min_ruby
|
155
|
+
version_map.reverse_each do |min, req|
|
156
|
+
if min_ruby >= min
|
157
|
+
new_constraint = req
|
158
|
+
rubocop_ruby_gem_version = min.segments.join("_")
|
159
|
+
break
|
140
160
|
end
|
141
161
|
end
|
142
|
-
if !new_constraint || !rubocop_ruby_gem_version
|
143
|
-
# A gem with no declared minimum ruby is effectively >= 1.8.7
|
144
|
-
new_constraint = ruby1_8[1]
|
145
|
-
rubocop_ruby_gem_version = ruby1_8[0].segments.join("_")
|
146
|
-
end
|
147
|
-
rescue StandardError => e
|
148
|
-
Kettle::Dev.debug_error(e, __method__)
|
149
|
-
# ignore, use default
|
150
|
-
ensure
|
151
|
-
new_constraint ||= ruby1_8[1]
|
152
|
-
rubocop_ruby_gem_version ||= ruby1_8[0].segments.join("_")
|
153
162
|
end
|
154
|
-
if new_constraint
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
content.gsub!(token, "rubocop-ruby#{rubocop_ruby_gem_version}") if content.include?(token)
|
163
|
+
if !new_constraint || !rubocop_ruby_gem_version
|
164
|
+
# A gem with no declared minimum ruby is effectively >= 1.8.7
|
165
|
+
new_constraint = ruby1_8[1]
|
166
|
+
rubocop_ruby_gem_version = ruby1_8[0].segments.join("_")
|
159
167
|
end
|
168
|
+
rescue StandardError => e
|
169
|
+
Kettle::Dev.debug_error(e, __method__)
|
170
|
+
# ignore, use default
|
171
|
+
ensure
|
172
|
+
new_constraint ||= ruby1_8[1]
|
173
|
+
rubocop_ruby_gem_version ||= ruby1_8[0].segments.join("_")
|
174
|
+
end
|
175
|
+
if new_constraint && rubocop_ruby_gem_version
|
176
|
+
token = "{RUBOCOP|LTS|CONSTRAINT}"
|
177
|
+
content.gsub!(token, new_constraint) if content.include?(token)
|
178
|
+
token = "{RUBOCOP|RUBY|GEM}"
|
179
|
+
content.gsub!(token, "rubocop-ruby#{rubocop_ruby_gem_version}") if content.include?(token)
|
160
180
|
end
|
161
|
-
else
|
162
|
-
helpers.copy_file_with_prompt(src, dest, allow_create: true, allow_replace: true)
|
163
181
|
end
|
164
|
-
|
165
|
-
|
166
|
-
# 4b) Additional modular gemfiles to include
|
167
|
-
["debug.gemfile", "runtime_heads.gemfile"].each do |fname|
|
168
|
-
src = helpers.prefer_example(File.join(gem_checkout_root, "gemfiles/modular", fname))
|
169
|
-
dest = File.join(project_root, "gemfiles/modular", fname)
|
182
|
+
else
|
170
183
|
helpers.copy_file_with_prompt(src, dest, allow_create: true, allow_replace: true)
|
171
184
|
end
|
172
185
|
|
173
186
|
# 4c) Copy modular directories with nested/versioned files
|
174
187
|
%w[erb mutex_m stringio x_std_libs].each do |dir|
|
175
|
-
src_dir = File.join(gem_checkout_root,
|
176
|
-
dest_dir = File.join(project_root,
|
188
|
+
src_dir = File.join(gem_checkout_root, MODULAR_GEMFILE_DIR, dir)
|
189
|
+
dest_dir = File.join(project_root, MODULAR_GEMFILE_DIR, dir)
|
177
190
|
helpers.copy_dir_with_prompt(src_dir, dest_dir)
|
178
191
|
end
|
179
192
|
|
data/lib/kettle/dev/version.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kettle-dev
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter H. Boling
|
@@ -305,6 +305,7 @@ files:
|
|
305
305
|
- gemfiles/modular/optional.gemfile
|
306
306
|
- gemfiles/modular/optional.gemfile.example
|
307
307
|
- gemfiles/modular/runtime_heads.gemfile
|
308
|
+
- gemfiles/modular/runtime_heads.gemfile.example
|
308
309
|
- gemfiles/modular/stringio/r2.4/v0.0.2.gemfile
|
309
310
|
- gemfiles/modular/stringio/r2/v3.0.gemfile
|
310
311
|
- gemfiles/modular/stringio/r3/v3.0.gemfile
|
@@ -380,10 +381,10 @@ licenses:
|
|
380
381
|
- MIT
|
381
382
|
metadata:
|
382
383
|
homepage_uri: https://kettle-dev.galtzo.com/
|
383
|
-
source_code_uri: https://github.com/kettle-rb/kettle-dev/tree/v1.1.
|
384
|
-
changelog_uri: https://github.com/kettle-rb/kettle-dev/blob/v1.1.
|
384
|
+
source_code_uri: https://github.com/kettle-rb/kettle-dev/tree/v1.1.9
|
385
|
+
changelog_uri: https://github.com/kettle-rb/kettle-dev/blob/v1.1.9/CHANGELOG.md
|
385
386
|
bug_tracker_uri: https://github.com/kettle-rb/kettle-dev/issues
|
386
|
-
documentation_uri: https://www.rubydoc.info/gems/kettle-dev/1.1.
|
387
|
+
documentation_uri: https://www.rubydoc.info/gems/kettle-dev/1.1.9
|
387
388
|
funding_uri: https://github.com/sponsors/pboling
|
388
389
|
wiki_uri: https://github.com/kettle-rb/kettle-dev/wiki
|
389
390
|
news_uri: https://www.railsbling.com/tags/kettle-dev
|
metadata.gz.sig
CHANGED
Binary file
|