Bug #6652

broken Marshal compatibilities on Date and DateTime

Added by Nobuyoshi Nakada almost 3 years ago. Updated over 2 years ago.

[ruby-core:<unknown>]
Status:Closed
Priority:Normal
Assignee:tadayoshi funaba
ruby -v:2.0.0 Backport:

Description

=begin
(({Date})) and (({DateTime})) dumped by 1.8 or earlier cannot be loaded by trunk.

$ /usr/bin/ruby -v
ruby 1.8.7 (2011-12-28 patchlevel 357) [universal-darwin11.0]

$ ruby -v
ruby 2.0.0dev (2012-06-26 trunk 36225) [universal.x86_64-darwin11]

$ /usr/bin/ruby -rdate -e 'Marshal.dump(Date.today, STDOUT)' | ruby -rdate -e 'p Marshal.load(STDIN)'
-e:1:in load': class Date needs to have method_load' (TypeError)
from -e:1:in `'
bash: exit 1

$ /usr/bin/ruby -rdate -e 'Marshal.dump(DateTime.now, STDOUT)' | ruby -rdate -e 'p Marshal.load(STDIN)'
-e:1:in load': class DateTime needs to have method_load' (TypeError)
from -e:1:in `'
bash: exit 1

Patch attached.
=end

0001-compatible-marshal-loader.patch Magnifier (2.3 KB) Nobuyoshi Nakada, 06/27/2012 02:23 AM

History

#1 Updated by Nobuyoshi Nakada almost 3 years ago

  • Description updated (diff)

#2 Updated by tadayoshi funaba over 2 years ago

  • Status changed from Assigned to Closed

already accepts if rational also accept

Also available in: Atom PDF