summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel E. Giddins <segiddins@segiddins.me>2015-05-02 11:11:14 -0700
committerSamuel E. Giddins <segiddins@segiddins.me>2015-05-03 22:27:41 -0700
commit6db8d799b05b6dc6dec378c78efc1b15cbf20ba9 (patch)
tree7fc51749e4f01244c270744fbceafe948d2f34e4
parentd979b8bbb00281e62c0c089c65d4f9de98537652 (diff)
downloadbundler-6db8d799b05b6dc6dec378c78efc1b15cbf20ba9.tar.gz
[Definition] Only compare major versions when we have a locked version
-rw-r--r--lib/bundler/definition.rb12
-rw-r--r--lib/bundler/lockfile_parser.rb7
2 files changed, 10 insertions, 9 deletions
diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb
index edaf54a6bf..eb97b81a5d 100644
--- a/lib/bundler/definition.rb
+++ b/lib/bundler/definition.rb
@@ -249,12 +249,14 @@ module Bundler
return
end
- locked_major = @locked_bundler_version.segments.first
- current_major = Gem::Version.create(Bundler::VERSION).segments.first
+ if @locked_bundler_version
+ locked_major = @locked_bundler_version.segments.first
+ current_major = Gem::Version.create(Bundler::VERSION).segments.first
- if locked_major < current_major
- Bundler.ui.warn "Warning: the lockfile is being updated to Bundler #{Bundler::VERSION.split('.').first}, " \
- "after which you will be unable to return to Bundler #{@locked_bundler_version.segments.first}."
+ if locked_major < current_major
+ Bundler.ui.warn "Warning: the lockfile is being updated to Bundler #{Bundler::VERSION.split('.').first}, " \
+ "after which you will be unable to return to Bundler #{@locked_bundler_version.segments.first}."
+ end
end
File.open(file, 'wb'){|f| f.puts(contents) }
diff --git a/lib/bundler/lockfile_parser.rb b/lib/bundler/lockfile_parser.rb
index 1c241b7a5a..21367fe70c 100644
--- a/lib/bundler/lockfile_parser.rb
+++ b/lib/bundler/lockfile_parser.rb
@@ -60,13 +60,12 @@ module Bundler
def warn_for_outdated_bundler_version
return unless bundler_version
prerelease_text = bundler_version.prerelease? ? " --pre" : ""
- locked_version = Gem::Version.create(bundler_version)
current_version = Gem::Version.create(Bundler::VERSION)
- case current_version.segments.first <=> locked_version.segments.first
+ case current_version.segments.first <=> bundler_version.segments.first
when -1
- raise LockfileError, "You must use Bundler #{locked_version.segments.first} or greater with this lockfile."
+ raise LockfileError, "You must use Bundler #{bundler_version.segments.first} or greater with this lockfile."
when 0
- if current_version < locked_version
+ if current_version < bundler_version
Bundler.ui.warn "Warning: the running version of Bundler is older " \
"than the version that created the lockfile. We suggest you " \
"upgrade to the latest version of Bundler by running `gem " \