Skip to content

Update kettle-dev requirement from ~> 1.2 to ~> 2.0#2

Merged
pboling merged 1 commit intomainfrom
dependabot/bundler/kettle-dev-2.0.0
Mar 1, 2026
Merged

Update kettle-dev requirement from ~> 1.2 to ~> 2.0#2
pboling merged 1 commit intomainfrom
dependabot/bundler/kettle-dev-2.0.0

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 28, 2026

Updates the requirements on kettle-dev to permit the latest version.

Release notes

Sourced from kettle-dev's releases.

v2.0.0

[2.0.0] - 2026-02-25

  • TAG: [v2.0.0][2.0.0t]
  • COVERAGE: 96.06% -- 2683/2793 lines in 20 files
  • BRANCH COVERAGE: 79.16% -- 1113/1406 branches in 20 files
  • 80.25% documented

Added

  • New kettle-gh-release executable for standalone GitHub release creation
    • Extracted from kettle-release step 18
    • Useful when RubyGems release succeeded but GitHub release failed
    • Supports explicit version via version=<VERSION> argument
    • Auto-detects version from lib/**/version.rb if not specified
    • Requires GITHUB_TOKEN with repo:public_repo (classic) or contents:write scope
  • Added .kettle-dev.yml configuration file for per-file merge options
    • Hybrid format: defaults for shared merge options, patterns for glob fallbacks, files for per-file config
    • Nested directory structure under files allows individual file configuration
    • Supports all Prism::Merge::SmartMerger options: preference, add_template_only_nodes, freeze_token, max_recursion_depth
    • Added TemplateHelpers.kettle_config, .config_for, .find_file_config methods
    • Added spec coverage in template_helpers_config_spec.rb

Changed

  • Updated documentation on hostile takeover of RubyGems
  • BREAKING: Replaced template_manifest.yml with .kettle-dev.yml
    • New hybrid format supports both glob patterns and per-file configuration
    • TemplateHelpers.load_manifest now reads from .kettle-dev.yml patterns section
    • TemplateHelpers.strategy_for checks explicit file configs before falling back to patterns
  • BREAKING: Simplified SourceMerger to fully rely on prism-merge for AST merging
    • Reduced from ~610 lines to ~175 lines (71% reduction)
    • Removed custom newline normalization - prism-merge preserves original formatting
    • Removed custom comment deduplication logic - prism-merge handles this natively
    • All strategies (:skip, :replace, :append, :merge) now use prism-merge consistently
    • Freeze blocks (kettle-dev:freeze / kettle-dev:unfreeze) handled by prism-merge's freeze_token option

Removed

  • Removed all .example template files from the kettle-dev root and subdirectories (27 files). Template files now live exclusively in kettle-jem's template/ directory. Only .env.local.example is retained as a dev resource for all destination gems.
  • Removed unused methods from SourceMerger:
    • normalize_source - replaced by prism-merge
    • normalize_newlines - prism-merge preserves original formatting
    • shebang?, magic_comment?, ruby_magic_comment_key? - no longer needed
    • Comment extraction/deduplication: extract_magic_comments, extract_file_leading_comments, create_comment_tuples, deduplicate_comment_sequences, deduplicate_sequences_pass1, deduplicate_singles_pass2, extract_nodes_with_comments, count_blank_lines_before,

... (truncated)

Changelog

Sourced from kettle-dev's changelog.

[2.0.0] - 2026-02-25

  • TAG: [v2.0.0][2.0.0t]
  • COVERAGE: 96.06% -- 2683/2793 lines in 20 files
  • BRANCH COVERAGE: 79.16% -- 1113/1406 branches in 20 files
  • 80.25% documented

Added

  • New kettle-gh-release executable for standalone GitHub release creation
    • Extracted from kettle-release step 18
    • Useful when RubyGems release succeeded but GitHub release failed
    • Supports explicit version via version=<VERSION> argument
    • Auto-detects version from lib/**/version.rb if not specified
    • Requires GITHUB_TOKEN with repo:public_repo (classic) or contents:write scope
  • Added .kettle-dev.yml configuration file for per-file merge options
    • Hybrid format: defaults for shared merge options, patterns for glob fallbacks, files for per-file config
    • Nested directory structure under files allows individual file configuration
    • Supports all Prism::Merge::SmartMerger options: preference, add_template_only_nodes, freeze_token, max_recursion_depth
    • Added TemplateHelpers.kettle_config, .config_for, .find_file_config methods
    • Added spec coverage in template_helpers_config_spec.rb

Changed

  • Updated documentation on hostile takeover of RubyGems
  • BREAKING: Replaced template_manifest.yml with .kettle-dev.yml
    • New hybrid format supports both glob patterns and per-file configuration
    • TemplateHelpers.load_manifest now reads from .kettle-dev.yml patterns section
    • TemplateHelpers.strategy_for checks explicit file configs before falling back to patterns
  • BREAKING: Simplified SourceMerger to fully rely on prism-merge for AST merging
    • Reduced from ~610 lines to ~175 lines (71% reduction)
    • Removed custom newline normalization - prism-merge preserves original formatting
    • Removed custom comment deduplication logic - prism-merge handles this natively
    • All strategies (:skip, :replace, :append, :merge) now use prism-merge consistently
    • Freeze blocks (kettle-dev:freeze / kettle-dev:unfreeze) handled by prism-merge's freeze_token option

Removed

  • Removed all .example template files from the kettle-dev root and subdirectories (27 files). Template files now live exclusively in kettle-jem's template/ directory. Only .env.local.example is retained as a dev resource for all destination gems.
  • Removed unused methods from SourceMerger:
    • normalize_source - replaced by prism-merge
    • normalize_newlines - prism-merge preserves original formatting
    • shebang?, magic_comment?, ruby_magic_comment_key? - no longer needed
    • Comment extraction/deduplication: extract_magic_comments, extract_file_leading_comments, create_comment_tuples, deduplicate_comment_sequences, deduplicate_sequences_pass1, deduplicate_singles_pass2, extract_nodes_with_comments, count_blank_lines_before, build_source_from_nodes

... (truncated)

Commits
  • fef9731 🔖 Prepare release v2.0.0
  • 3fee481 🚚 Finish migration of templating kettle-dev => kettle-jem
  • 8de09c3 ♻️More idiosyncratic ruby
  • 03137c2 ✅ Add tests for Kettle::Dev::OpenCollectiveConfig.disabled?
  • 1fc02ab ⬆️ prism-merge v2.0.4
  • 9615c93 🔥 Move gem template logic to kettle-jem
  • d59111e 🔥 kettle-jem has been extracted
  • 8548bb3 🎨 Phase 3 of templating migration kettle-dev => kettle-jem
  • 70fb3c7 🎨 Markdown formatting
  • 3c5e4b1 🚧 WIP local deps
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [kettle-dev](https://github.com/kettle-rb/kettle-dev) to permit the latest version.
- [Release notes](https://github.com/kettle-rb/kettle-dev/releases)
- [Changelog](https://github.com/kettle-rb/kettle-dev/blob/main/CHANGELOG.md)
- [Commits](kettle-rb/kettle-dev@v1.2.4...v2.0.0)

---
updated-dependencies:
- dependency-name: kettle-dev
  dependency-version: 2.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code labels Feb 28, 2026
@github-actions github-actions bot requested a review from pboling February 28, 2026 14:03
@github-actions
Copy link

Code Coverage

Package Line Rate Branch Rate Health
token-resolver 98% 91%
Summary 98% (263 / 268) 91% (62 / 68)

Minimum allowed line rate is 97%

@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@pboling pboling merged commit 22ff0db into main Mar 1, 2026
23 checks passed
@dependabot dependabot bot deleted the dependabot/bundler/kettle-dev-2.0.0 branch March 1, 2026 09:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants