Time.parse and rubygems-1.3.3 issue

I was starting rails app and got error

NoMethodError (undefined method `today' for Time:Class)

Wtf? Just recently everything was fine…

To investigate I downgraded my rubygems-1.3.3 to rubygems-1.3.1 As that was the only thing updated over the weekend

Then run

$ grep -B 1 -A 5 'def Time.today' -nR /usr/lib/ruby/site_ruby/

if RUBY_VERSION < '1.9' then
  def Time.today
    t = Time.now
    t - ((t.to_f + t.gmt_offset) % 86400)
  end unless defined? Time.today
end

from

/usr/lib/ruby/site_ruby/1.8/rubygems/specification.rb:

So rubygems define this method and Time.today has been for removal since 2007

And it’s removed in rubygems-1.3.3!

Comments