diff --git a/gems/kettle-jem/CHANGELOG.md b/gems/kettle-jem/CHANGELOG.md index 23b4ad53e..df94b0716 100644 --- a/gems/kettle-jem/CHANGELOG.md +++ b/gems/kettle-jem/CHANGELOG.md @@ -39,6 +39,10 @@ Please file a bug if you notice a violation of semantic versioning. ### Fixed +- The packaged `Gemfile` no longer overrides `git_source(:github)` with an SSH + URL. The override was recorded in `Gemfile.lock` as `git@github.com` remotes, + which CI runners cannot clone; Bundler's built-in HTTPS source is used again. + - Generated Ruby 4 extracted-stdlib Gemfiles now include `ostruct` so suites that require it can run on Rubies where it is no longer bundled by default. - Regenerate `sig/*.rbs` signature stubs from the template instead of merging them, preventing a duplicate top-level declaration when the detected namespace kind (module vs. class) changes between runs. diff --git a/gems/kettle-jem/lib/kettle/jem/templates/Gemfile.example b/gems/kettle-jem/lib/kettle/jem/templates/Gemfile.example index e819b2cfc..e466e0b8b 100644 --- a/gems/kettle-jem/lib/kettle/jem/templates/Gemfile.example +++ b/gems/kettle-jem/lib/kettle/jem/templates/Gemfile.example @@ -8,7 +8,6 @@ source "https://gem.coop" -git_source(:github) { |repo_name| "git@github.com:#{repo_name}.git" } git_source(:codeberg) { |repo_name| "https://codeberg.org/#{repo_name}" } git_source(:gitlab) { |repo_name| "https://gitlab.com/#{repo_name}" } diff --git a/gems/kettle-jem/spec/integration/structural_merge_template_spec.rb b/gems/kettle-jem/spec/integration/structural_merge_template_spec.rb index b60f24020..30eaa3648 100644 --- a/gems/kettle-jem/spec/integration/structural_merge_template_spec.rb +++ b/gems/kettle-jem/spec/integration/structural_merge_template_spec.rb @@ -2332,9 +2332,10 @@ def gamma end end - it "uses SSH for GitHub shorthand dependencies in the packaged Gemfile" do + it "uses Bundler's built-in HTTPS source for GitHub shorthand dependencies in the packaged Gemfile" do packaged_gemfile = File.read(File.join(described_class::PACKAGED_TEMPLATE_ROOT, "Gemfile.example")) - expect(packaged_gemfile).to include("git_source(:github) { |repo_name| \"git@github.com:\#{repo_name}.git\" }") + # An SSH override is recorded in Gemfile.lock, and CI runners cannot clone SSH remotes. + expect(packaged_gemfile).not_to match(/^\s*git_source\(:github\)/) end end