diff options
author | Brian Christian <brchristian@gmail.com> | 2017-03-08 12:54:03 -0800 |
---|---|---|
committer | Brian Christian <brchristian@gmail.com> | 2017-03-08 12:54:03 -0800 |
commit | d3390af2f56cdd9a9300fe7bcf8ddd900ec3f279 (patch) | |
tree | f8bbe96a8e7e6a034a4ddc18234a0e3cd00fa9d3 | |
parent | 6f354ad6118fea59f30828a969043209ec12c008 (diff) | |
download | bundler-d3390af2f56cdd9a9300fe7bcf8ddd900ec3f279.tar.gz |
use yellow color when version is moving backwards
-rw-r--r-- | lib/bundler/source.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/bundler/source.rb b/lib/bundler/source.rb index 917e9106e0..4c27fd3f0a 100644 --- a/lib/bundler/source.rb +++ b/lib/bundler/source.rb @@ -20,13 +20,21 @@ module Bundler locked_spec = Bundler.locked_gems.specs.find {|s| s.name == spec.name } locked_spec_version = locked_spec.version if locked_spec if locked_spec_version && spec.version != locked_spec_version - message += Bundler.ui.add_color(" (was #{locked_spec_version})", :green) + message += Bundler.ui.add_color(" (was #{locked_spec_version})", earlier_version?(spec.version, locked_spec_version) ? :yellow : :green) end end message end + def earlier_version?(spec_version, locked_spec_version) + begin + Gem::Version.new(spec_version) < Gem::Version.new(locked_spec_version) + rescue + false + end + end + def can_lock?(spec) spec.source == self end |