kettle-jem 7.1.23 → 7.1.24
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 +23 -1
- data/README.md +1 -1
- data/lib/kettle/jem/maintenance_changelog.rb +2 -1
- data/lib/kettle/jem/tasks/install_task.rb +3 -1
- data/lib/kettle/jem/templates/CONTRIBUTING.md.example +2 -0
- data/lib/kettle/jem/templates/RUBOCOP.md.example +2 -0
- data/lib/kettle/jem/version.rb +1 -1
- data/lib/kettle/jem.rb +5 -12
- data.tar.gz.sig +0 -0
- metadata +24 -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: 5e183814ce90643b2d4e1ba747c57730aec7a1fe2c4a07721495a3fc22cdb0b5
|
|
4
|
+
data.tar.gz: 9d0f017241c7ba8bb6061eb9408dd2f61145349219f518a04a6023a98900d75f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1dc4f69e46b0819d491b897ee6fa078fbe44f6eee3ae8b131121c2a3f997610a76c86acbdc9d65a1645ea67540663e2daab17a2d0ba7dee2ba769878364f8ddc
|
|
7
|
+
data.tar.gz: bd375240be6f8bebfe334e3138a74dfc7d5f32d4c77747f90745feb2527f086e4b4a49e324f78088b48e400e243c387e43d3fb241cbdfe4b594792874061ff47
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -30,6 +30,26 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
30
30
|
|
|
31
31
|
### Security
|
|
32
32
|
|
|
33
|
+
## [7.1.24] - 2026-09-08
|
|
34
|
+
|
|
35
|
+
- TAG: [v7.1.24][7.1.24t]
|
|
36
|
+
- COVERAGE: 93.66% -- 11248/12010 lines in 16 files
|
|
37
|
+
- BRANCH COVERAGE: 77.04% -- 4786/6212 branches in 16 files
|
|
38
|
+
- 18.14% documented
|
|
39
|
+
|
|
40
|
+
### Changed
|
|
41
|
+
|
|
42
|
+
- [kc] kettle-jem-deps-floor: Update kettle-jem template dependency floors:
|
|
43
|
+
- kettle-family (>= 1.2.95 -> >= 1.2.96)
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
|
|
47
|
+
- Preserve destination README Advanced Usage sections and their reference definitions during template merges.
|
|
48
|
+
|
|
49
|
+
- [kc] kettle-jem/template-destination-preservation: Preserve destination Markdown, retain the required version_gem runtime dependency for dedicated entrypoints, and rebuild RuboCop Gradual work lists after template dependency and style-rule updates.
|
|
50
|
+
|
|
51
|
+
- Rebuild the RuboCop Gradual work list after templating so generated-code, dependency, and rubocop-lts updates cannot retain stale cop names or locations.
|
|
52
|
+
|
|
33
53
|
## [7.1.23] - 2026-09-07
|
|
34
54
|
|
|
35
55
|
- TAG: [v7.1.23][7.1.23t]
|
|
@@ -1950,7 +1970,9 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
1950
1970
|
- Released kettle-jem as part of the initial StructuredMerge Ruby 7.0.0 gem set.
|
|
1951
1971
|
- Included packaged templates and parser-backed merge support for Ruby gem templating.
|
|
1952
1972
|
|
|
1953
|
-
[Unreleased]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.
|
|
1973
|
+
[Unreleased]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.24...HEAD
|
|
1974
|
+
[7.1.24]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.23...v7.1.24
|
|
1975
|
+
[7.1.24t]: https://github.com/structuredmerge/structuredmerge-ruby/releases/tag/v7.1.24
|
|
1954
1976
|
[7.1.23]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.22...v7.1.23
|
|
1955
1977
|
[7.1.23t]: https://github.com/structuredmerge/structuredmerge-ruby/releases/tag/v7.1.23
|
|
1956
1978
|
[7.1.22]: https://github.com/structuredmerge/structuredmerge-ruby/compare/v7.1.21...v7.1.22
|
data/README.md
CHANGED
|
@@ -899,7 +899,7 @@ Thanks for RTFM. ☺️
|
|
|
899
899
|
[📌gitmoji]: https://gitmoji.dev
|
|
900
900
|
[📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
|
901
901
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
|
902
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-12.
|
|
902
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-12.010-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
|
903
903
|
[🔐security]: https://github.com/structuredmerge/structuredmerge-ruby/blob/main/SECURITY.md
|
|
904
904
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
|
905
905
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
|
@@ -90,7 +90,8 @@ module Kettle
|
|
|
90
90
|
def record_template_run(project_root:, report:, run_options: {}, label: "Apply kettle-jem templates")
|
|
91
91
|
report = report.to_h
|
|
92
92
|
if template_changelog_disabled?(run_options) || bootstrap_only_report?(report)
|
|
93
|
-
|
|
93
|
+
reason = template_changelog_disabled?(run_options) ? "disabled" : "bootstrap_only"
|
|
94
|
+
return report.merge(changelog: {status: "skipped", reason: reason})
|
|
94
95
|
end
|
|
95
96
|
|
|
96
97
|
changed_files = template_changed_files(report.fetch(:changed_files, []))
|
|
@@ -889,7 +889,6 @@ module Kettle
|
|
|
889
889
|
reason: "missing_rubocop_gradual_task"
|
|
890
890
|
}
|
|
891
891
|
end
|
|
892
|
-
|
|
893
892
|
{
|
|
894
893
|
name: "rubocop_gradual_autocorrect",
|
|
895
894
|
command: rubocop_gradual_autocorrect_command,
|
|
@@ -899,6 +898,9 @@ module Kettle
|
|
|
899
898
|
end
|
|
900
899
|
|
|
901
900
|
def rubocop_gradual_autocorrect_command
|
|
901
|
+
# Templating can change generated code, dependency floors, and the
|
|
902
|
+
# RuboCop/RuboCop-LTS rule set. Rebuild Gradual's work list from the
|
|
903
|
+
# resulting project instead of carrying stale cop names or locations.
|
|
902
904
|
["sh", "-c", "rm -f .rubocop_gradual.lock && bin/rake rubocop_gradual:autocorrect"]
|
|
903
905
|
end
|
|
904
906
|
|
|
@@ -196,6 +196,8 @@ bundle exec rake rubocop_gradual:autocorrect
|
|
|
196
196
|
|
|
197
197
|
For more detailed information about using RuboCop in this project, please see the [RUBOCOP.md](RUBOCOP.md) guide. This project uses `rubocop_gradual` instead of vanilla RuboCop, which requires specific commands for checking violations.
|
|
198
198
|
|
|
199
|
+
Kettle Jem resets `.rubocop_gradual.lock` before its post-template autocorrect step. Template and dependency updates, including updates to the `rubocop-lts` suite, can change the applicable cops; the regenerated lock is the current work list, not a preserved baseline.
|
|
200
|
+
|
|
199
201
|
### Important: Do not add inline RuboCop disables
|
|
200
202
|
|
|
201
203
|
Never add `# rubocop:disable ...` / `# rubocop:enable ...` comments to code or specs (except when following the few existing `rubocop:disable` patterns for a rule already being disabled elsewhere in the code). Instead:
|
|
@@ -29,6 +29,8 @@ bundle exec rake rubocop_gradual:check
|
|
|
29
29
|
|
|
30
30
|
The `.rubocop_gradual.lock` file is a work list, not a permanent baseline. Every entry represents a style issue that should be resolved by either fixing the code or making an intentional exception explicit.
|
|
31
31
|
|
|
32
|
+
Kettle Jem deletes this work list before its post-template `rubocop_gradual:autocorrect` step. Templating can update generated code and dependencies, including the `rubocop-lts` suite, which can add, remove, or rename cops. Rebuilding the work list against the resulting project prevents stale cop names and locations from masking the current style state.
|
|
33
|
+
|
|
32
34
|
This allows the team to:
|
|
33
35
|
|
|
34
36
|
1. Prevent new violations while existing issues are handled deliberately
|
data/lib/kettle/jem/version.rb
CHANGED
|
@@ -5,7 +5,7 @@ module Kettle
|
|
|
5
5
|
# Version namespace for this gem.
|
|
6
6
|
module Version
|
|
7
7
|
# Current gem version.
|
|
8
|
-
VERSION = "7.1.
|
|
8
|
+
VERSION = "7.1.24"
|
|
9
9
|
end
|
|
10
10
|
# Current gem version exposed at the traditional constant location.
|
|
11
11
|
VERSION = Version::VERSION # Traditional Constant Location
|
data/lib/kettle/jem.rb
CHANGED
|
@@ -17,6 +17,7 @@ require "token/resolver"
|
|
|
17
17
|
require "yaml"
|
|
18
18
|
require "ast/merge"
|
|
19
19
|
require "ast/crispr/markdown/markly"
|
|
20
|
+
require "markdown/merge"
|
|
20
21
|
require "kettle/ndjson"
|
|
21
22
|
require "rbs"
|
|
22
23
|
require "kettle/dev"
|
|
@@ -1422,7 +1423,7 @@ module Kettle
|
|
|
1422
1423
|
end
|
|
1423
1424
|
end
|
|
1424
1425
|
end
|
|
1425
|
-
README_DEFAULT_PRESERVE_SECTIONS = ["synopsis", "configuration", "basic usage"].freeze
|
|
1426
|
+
README_DEFAULT_PRESERVE_SECTIONS = ["synopsis", "configuration", "basic usage", "advanced usage"].freeze
|
|
1426
1427
|
README_DEFAULT_PRESERVE_PATTERNS = ["note:*"].freeze
|
|
1427
1428
|
README_CODETRIAGE_BADGE = "[![Open Source Helpers][👽oss-helpi]][👽oss-help]"
|
|
1428
1429
|
README_CODETRIAGE_LINK_LABELS = ["👽oss-help", "👽oss-helpi"].freeze
|
|
@@ -5466,7 +5467,7 @@ module Kettle
|
|
|
5466
5467
|
{name: "bundler-audit", source: %(gem "bundler-audit", "~> 0.9.3"\n)},
|
|
5467
5468
|
{name: "kettle-dev", source: %(gem "kettle-dev", "~> 3.0", ">= 3.0.33"\n)},
|
|
5468
5469
|
{name: "kettle-drift", source: %(gem "kettle-drift", "~> 1.0", ">= 1.0.13"\n)},
|
|
5469
|
-
{name: "kettle-family", source: %(gem "kettle-family", "~> 1.2", ">= 1.2.
|
|
5470
|
+
{name: "kettle-family", source: %(gem "kettle-family", "~> 1.2", ">= 1.2.96"\n)},
|
|
5470
5471
|
{name: PACKAGE_NAME, source: kettle_jem_dependency_source},
|
|
5471
5472
|
{name: "kettle-test", source: %(gem "kettle-test", "~> 2.0", ">= 2.0.21"\n)},
|
|
5472
5473
|
{name: "rake", source: %(gem "rake", "~> 13.0"\n)},
|
|
@@ -7977,7 +7978,7 @@ module Kettle
|
|
|
7977
7978
|
when :markdown
|
|
7978
7979
|
return merge_changelog_template_source(template_content, destination_content, facts: facts) if recipe.fetch(:target_path) == "CHANGELOG.md"
|
|
7979
7980
|
|
|
7980
|
-
|
|
7981
|
+
merge_result = Markdown::Merge.merge_markdown(template_content, destination_content, "markdown")
|
|
7981
7982
|
when :dotenv
|
|
7982
7983
|
merge_result = merge_dotenv_template_source(template_content, destination_content, recipe)
|
|
7983
7984
|
when :rbs
|
|
@@ -10692,7 +10693,6 @@ module Kettle
|
|
|
10692
10693
|
receiver: template_receiver,
|
|
10693
10694
|
template_declares_version_gem: gemspec_dependency_names(template_content).include?("version_gem")
|
|
10694
10695
|
)
|
|
10695
|
-
merged = remove_gemspec_version_gem_dependency_when_non_default_entrypoint(merged, facts, receiver: template_receiver)
|
|
10696
10696
|
merged = remove_gemspec_dependency_lines(
|
|
10697
10697
|
merged,
|
|
10698
10698
|
receiver: template_receiver,
|
|
@@ -11086,13 +11086,6 @@ module Kettle
|
|
|
11086
11086
|
facts.to_h.dig(:version_gem, :enabled) == false
|
|
11087
11087
|
end
|
|
11088
11088
|
|
|
11089
|
-
def remove_gemspec_version_gem_dependency_when_non_default_entrypoint(content, facts, receiver:)
|
|
11090
|
-
return content unless facts.to_h.dig(:version_gem, :non_default_entrypoint)
|
|
11091
|
-
|
|
11092
|
-
cleaned = remove_gemspec_dependency_lines(content, receiver: receiver, names: ["version_gem"], runtime_only: true)
|
|
11093
|
-
remove_ruby_comment_lines_containing(cleaned, "version_gem")
|
|
11094
|
-
end
|
|
11095
|
-
|
|
11096
11089
|
def remove_gemspec_assignment(content, receiver:, field:)
|
|
11097
11090
|
records_by_line = gemspec_assignment_records(content, receiver: receiver)
|
|
11098
11091
|
.select { |record| record.fetch(:field) == field.to_s }
|
|
@@ -15502,7 +15495,7 @@ module Kettle
|
|
|
15502
15495
|
def main_gemfile_kettle_family_gem(package_name)
|
|
15503
15496
|
return "" if package_name.to_s == "kettle-family"
|
|
15504
15497
|
|
|
15505
|
-
%(gem "kettle-family", "~> 1.2", ">= 1.2.
|
|
15498
|
+
%(gem "kettle-family", "~> 1.2", ">= 1.2.96"\n)
|
|
15506
15499
|
end
|
|
15507
15500
|
|
|
15508
15501
|
def main_gemfile_nomono_bootstrap(package_name)
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kettle-jem
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 7.1.
|
|
4
|
+
version: 7.1.24
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Peter H. Boling
|
|
@@ -559,6 +559,26 @@ dependencies:
|
|
|
559
559
|
- - ">="
|
|
560
560
|
- !ruby/object:Gem::Version
|
|
561
561
|
version: 7.1.8
|
|
562
|
+
- !ruby/object:Gem::Dependency
|
|
563
|
+
name: version_gem
|
|
564
|
+
requirement: !ruby/object:Gem::Requirement
|
|
565
|
+
requirements:
|
|
566
|
+
- - "~>"
|
|
567
|
+
- !ruby/object:Gem::Version
|
|
568
|
+
version: '1.1'
|
|
569
|
+
- - ">="
|
|
570
|
+
- !ruby/object:Gem::Version
|
|
571
|
+
version: 1.1.15
|
|
572
|
+
type: :runtime
|
|
573
|
+
prerelease: false
|
|
574
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
575
|
+
requirements:
|
|
576
|
+
- - "~>"
|
|
577
|
+
- !ruby/object:Gem::Version
|
|
578
|
+
version: '1.1'
|
|
579
|
+
- - ">="
|
|
580
|
+
- !ruby/object:Gem::Version
|
|
581
|
+
version: 1.1.15
|
|
562
582
|
- !ruby/object:Gem::Dependency
|
|
563
583
|
name: yaml-merge
|
|
564
584
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -996,10 +1016,10 @@ licenses:
|
|
|
996
1016
|
- PolyForm-Small-Business-1.0.0
|
|
997
1017
|
metadata:
|
|
998
1018
|
homepage_uri: https://structuredmerge.org
|
|
999
|
-
source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.
|
|
1000
|
-
changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.
|
|
1019
|
+
source_code_uri: https://github.com/structuredmerge/structuredmerge-ruby/tree/v7.1.24
|
|
1020
|
+
changelog_uri: https://github.com/structuredmerge/structuredmerge-ruby/blob/v7.1.24/CHANGELOG.md
|
|
1001
1021
|
bug_tracker_uri: https://github.com/structuredmerge/structuredmerge-ruby/issues
|
|
1002
|
-
documentation_uri: https://www.rubydoc.info/gems/kettle-jem/7.1.
|
|
1022
|
+
documentation_uri: https://www.rubydoc.info/gems/kettle-jem/7.1.24
|
|
1003
1023
|
funding_uri: https://github.com/sponsors/pboling
|
|
1004
1024
|
wiki_uri: https://github.com/structuredmerge/structuredmerge-ruby/wiki
|
|
1005
1025
|
news_uri: https://www.railsbling.com/tags/kettle-jem
|
metadata.gz.sig
CHANGED
|
Binary file
|