diff options
author | Brian Christian <brchristian@gmail.com> | 2017-03-23 11:07:28 -0700 |
---|---|---|
committer | Brian Christian <brchristian@gmail.com> | 2017-03-23 11:07:28 -0700 |
commit | 2429edee450aeb2822579ff926d7ce4013bc59ef (patch) | |
tree | 80f7fc047101e57ff7c088a60576b2a0217a84ed | |
parent | 68f835a688c42c62a4941df5c710c2ef6449e122 (diff) | |
download | bundler-2429edee450aeb2822579ff926d7ce4013bc59ef.tar.gz |
use Gem::Version.correct? instead of catching exceptions
-rw-r--r-- | lib/bundler/source.rb | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/bundler/source.rb b/lib/bundler/source.rb index bba27ad385..cf56ed1cc1 100644 --- a/lib/bundler/source.rb +++ b/lib/bundler/source.rb @@ -42,13 +42,17 @@ module Bundler private def version_color(spec_version, locked_spec_version) - earlier_version?(spec_version, locked_spec_version) ? :yellow : :green + if Gem::Version.correct?(spec_version) && Gem::Version.correct?(locked_spec_version) + # display yellow if there appears to be a regression + earlier_version?(spec_version, locked_spec_version) ? :yellow : :green + else + # default to green if the versions cannot be directly compared + :green + end end def earlier_version?(spec_version, locked_spec_version) Gem::Version.new(spec_version) < Gem::Version.new(locked_spec_version) - rescue ArgumentError - false end end end |