Это не совсем ответ, но если кому-то захочется копать больше, я нашел здесь спецификацию gemspec: http://rubygems.rubyforge.org/rubygems-update/Gem/Specification.html (прокрутите вниз до date = date () и нажмите, чтобы показать источник):
@date = case date
when String then
if %r\A(\d{4})-(\d{2})-(\d{2})\Z/ =~ date then
Time.utc($1.to_i, $2.to_i, $3.to_i)
else
raise(Gem::InvalidSpecificationException,
"invalid date format in specification: #{date.inspect}")
end
when Time, Date then
Time.utc(date.year, date.month, date.day)
else
TODAY
end
Итак, я думаю, что это код, который анализирует этот gemspec, и он выглядит так, как будто формат даты в файлах с ошибками не соответствует этому.
Я просто вручную исправил те оскорбительные гемспецификации, как предложено выше (изменив даты на «гггг-мм-дд», это работает для меня.
Все спецификации rubygem, у которых была эта проблема, также имеют строку
s.rubygems_version =% q {1.3.5}
Итак, я предполагаю, что это просто старые драгоценные камни? И что с этими% q {...}?