Sha256: 0bee0a20c06baaf4ac36e1db8659d254e13eb1efc7d195ffa45958eaa0a70031
Contents?: true
Size: 1.16 KB
Versions: 1
Compression:
Stored size: 1.16 KB
Contents
require "capistrano/doctor/output_helpers" module Capistrano module Doctor # Prints table of all Capistrano-related gems and their version numbers. If # there is a newer version of a gem available, call attention to it. class GemsDoctor include Capistrano::Doctor::OutputHelpers def call title("Gems") table(all_gem_names) do |gem, row| row.yellow if update_available?(gem) row << gem row << installed_gem_version(gem) row << "(update available)" if update_available?(gem) end end private def installed_gem_version(gem_name) Gem.loaded_specs[gem_name].version end def update_available?(gem_name) latest = Gem.latest_version_for(gem_name) return false if latest.nil? latest > installed_gem_version(gem_name) end def all_gem_names core_gem_names + plugin_gem_names end def core_gem_names %w(capistrano airbrussh rake sshkit) & Gem.loaded_specs.keys end def plugin_gem_names (Gem.loaded_specs.keys - ["capistrano"]).grep(/capistrano/).sort end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
capistrano-3.5.0 | lib/capistrano/doctor/gems_doctor.rb |