Actions
Bug #11037
closedTime Parse Documentation Incorrect - Undefined method getlocal
ruby -v:
ruby 2.2.1p85 (2015-02-26 revision 49769) [x64-mingw32]
Description
According to:
http://ruby-doc.org/stdlib-2.2.1/libdoc/time/rdoc/Time.html
Time#parse
can take a 2nd parameter:
We can change the date used to infer our missing elements by passing a second object that responds to mon, day and year, such as
Date
,Time
orDateTime
. We can also use our own object.
However, that is not correct:
irb(main):010:0> Time.parse('12:30 AM', Date.today)
NoMethodError: undefined method `getlocal' for #<Date: 2015-04-07 ((2457120j,0s,0n),+0s,2299161j)>
from C:/mingw64/mingw64/local/ruby/lib/ruby/2.2.0/time.rb:262:in `make_time'
from C:/mingw64/mingw64/local/ruby/lib/ruby/2.2.0/time.rb:364:in `parse'
from (irb):10
from C:/mingw64/mingw64/local/ruby/bin/irb:11:in `<main>'
The problem is in Time#make_time
, lines 259 through 263:
if off
now = now.getlocal(off) if now.utc_offset != off
else
now = now.getlocal
end
The behavior the documentation does seem desirable, so the code above should check if the now parameter responds to getlocal
or not (only Time
does, Date
and DateTime
do not). Or of course the documentation should be updated to specify that a time object must be passed as the now parameter.
Files
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0