类 Gem::Commands::StaleCommand

公共类方法

new() 点击切换源代码
调用父类方法 Gem::Command::new
# File rubygems/commands/stale_command.rb, line 6
def initialize
  super("stale", "List gems along with access times")
end

公共实例方法

execute() 点击切换源代码
# File rubygems/commands/stale_command.rb, line 24
def execute
  gem_to_atime = {}
  Gem::Specification.each do |spec|
    name = spec.full_name
    Dir["#{spec.full_gem_path}/**/*.*"].each do |file|
      next if File.directory?(file)
      stat = File.stat(file)
      gem_to_atime[name] ||= stat.atime
      gem_to_atime[name] = stat.atime if gem_to_atime[name] < stat.atime
    end
  end

  gem_to_atime.sort_by {|_, atime| atime }.each do |name, atime|
    say "#{name} at #{atime.strftime "%c"}"
  end
end