diff options
author | Bundlerbot <bot@bundler.io> | 2018-11-26 23:09:40 +0000 |
---|---|---|
committer | Colby Swandale <me@colby.fyi> | 2018-12-11 20:29:46 +1100 |
commit | bfd68368a5ba23798da79f98b1c99f1b35e97caa (patch) | |
tree | a2b1c7004cd2764fb0a12eb052e221e907714699 | |
parent | 194c69a5ae213103dcd9d285c5650bdeeac7165c (diff) | |
download | bundler-bfd68368a5ba23798da79f98b1c99f1b35e97caa.tar.gz |
Merge #6798
6798: Use https in the Github shortcut by default in Bundler 2 r=colby-swandale a=colby-swandale
This PR is setting Git gems to be fetched over https by default.
Note: This PR is successing #6791
Closes #6785
Co-authored-by: Colby Swandale <me@colby.fyi>
(cherry picked from commit cf45792213fadf97f7aa6464de8ebd79f09725d2)
-rw-r--r-- | lib/bundler/dsl.rb | 2 | ||||
-rw-r--r-- | lib/bundler/feature_flag.rb | 2 | ||||
-rw-r--r-- | spec/bundler/dsl_spec.rb | 16 |
3 files changed, 19 insertions, 1 deletions
diff --git a/lib/bundler/dsl.rb b/lib/bundler/dsl.rb index ab59477145..1a2114ed93 100644 --- a/lib/bundler/dsl.rb +++ b/lib/bundler/dsl.rb @@ -305,7 +305,7 @@ module Bundler # end repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") # TODO: 2.0 upgrade this setting to the default - if Bundler.settings["github.https"] + if Bundler.feature_flag.github_https? Bundler::SharedHelpers.major_deprecation 2, "The `github.https` setting will be removed" "https://github.com/#{repo_name}.git" else diff --git a/lib/bundler/feature_flag.rb b/lib/bundler/feature_flag.rb index 83e7ff0389..249170c4b2 100644 --- a/lib/bundler/feature_flag.rb +++ b/lib/bundler/feature_flag.rb @@ -60,6 +60,8 @@ module Bundler settings_option(:default_cli_command) { bundler_2_mode? ? :cli_help : :install } + settings_method(:github_https?, "github.https") { bundler_2_mode? } + def initialize(bundler_version) @bundler_version = Gem::Version.create(bundler_version) end diff --git a/spec/bundler/dsl_spec.rb b/spec/bundler/dsl_spec.rb index bffe4f1608..89528eb745 100644 --- a/spec/bundler/dsl_spec.rb +++ b/spec/bundler/dsl_spec.rb @@ -25,7 +25,23 @@ RSpec.describe Bundler::Dsl do expect { subject.git_source(:example) }.to raise_error(Bundler::InvalidOption) end + context "github_https feature flag" do + it "is true when github.https is true" do + bundle "config github.https true" + expect(Bundler.feature_flag.github_https?).to eq "true" + end + end + context "default hosts (git, gist)", :bundler => "< 2" do + context "when github.https config is true" do + before { bundle "config github.https true" } + it "converts :github to :git using https" do + subject.gem("sparks", :github => "indirect/sparks") + github_uri = "https://github.com/indirect/sparks.git" + expect(subject.dependencies.first.source.uri).to eq(github_uri) + end + end + it "converts :github to :git" do subject.gem("sparks", :github => "indirect/sparks") github_uri = "git://github.com/indirect/sparks.git" |