diff options
author | André Arko <mail@arko.net> | 2015-06-22 16:18:21 -0700 |
---|---|---|
committer | André Arko <mail@arko.net> | 2015-06-22 16:18:21 -0700 |
commit | c2ceceb08b0f53967d994219e57408efdecc04b0 (patch) | |
tree | 939a9d18ef13c855bbf434a9d8837a979ea6f7cb | |
parent | be432f5bceacf37e08d4dc8e3a727717260f18f7 (diff) | |
parent | 60caeafdd7cbffa1700d12d82f90287b508fe0e6 (diff) | |
download | bundler-c2ceceb08b0f53967d994219e57408efdecc04b0.tar.gz |
Merge pull request #3776 from bundler/seg-preserve-bundled-with
[Definition] Preserve BUNDLED WITH section in #to_lock
-rw-r--r-- | lib/bundler/definition.rb | 4 | ||||
-rw-r--r-- | spec/lock/lockfile_spec.rb | 40 |
2 files changed, 44 insertions, 0 deletions
diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb index 70e2efda55..6cd715234c 100644 --- a/lib/bundler/definition.rb +++ b/lib/bundler/definition.rb @@ -293,6 +293,10 @@ module Bundler handled << dep.name end + if @lockfile_contents =~ /^BUNDLED WITH[\r]?\n(\s{2,}#{Gem::Version::VERSION_PATTERN})[\r]?\n\Z/ + out << "\nBUNDLED WITH\n" << $1 << "\n" + end + out end diff --git a/spec/lock/lockfile_spec.rb b/spec/lock/lockfile_spec.rb index 364b97181a..1b6e9ffded 100644 --- a/spec/lock/lockfile_spec.rb +++ b/spec/lock/lockfile_spec.rb @@ -923,4 +923,44 @@ describe "the lockfile format" do expect(error).to match(/your Gemfile.lock contains merge conflicts/i) expect(error).to match(/git checkout HEAD -- Gemfile.lock/i) end + + it "preserves a post-1.10 BUNDLED WITH section" do + lockfile <<-L + GEM + remote: file:#{gem_repo1}/ + specs: + rack (1.0.0) + + PLATFORMS + #{generic(Gem::Platform.local)} + + DEPENDENCIES + rack + + BUNDLED WITH + 1.10.4 + L + + install_gemfile <<-G + source "file://#{gem_repo1}" + + gem "rack" + G + + lockfile_should_be <<-L + GEM + remote: file:#{gem_repo1}/ + specs: + rack (1.0.0) + + PLATFORMS + #{generic(Gem::Platform.local)} + + DEPENDENCIES + rack + + BUNDLED WITH + 1.10.4 + L + end end |