[#28015] RCR: RUBY_VERSION_INT — Roger Pack <rogerdpack2@...>

Situation:

14 messages 2010/02/02

[#28113] [Bug #2723] $: length affects re-require time of already loaded files — Greg Hazel <redmine@...>

Bug #2723: $: length affects re-require time of already loaded files

16 messages 2010/02/08

[#28151] [Bug #2739] ruby 1.8.7 built with pthreads hangs under some circumstances — Joel Ebel <redmine@...>

Bug #2739: ruby 1.8.7 built with pthreads hangs under some circumstances

31 messages 2010/02/11

[#28188] [Bug #2750] build fails on win32/MinGW: "executable host ruby is required." even when --with-baseruby is used — Christian Bodt <redmine@...>

Bug #2750: build fails on win32/MinGW: "executable host ruby is required." even when --with-baseruby is used

9 messages 2010/02/16

[#28206] Is Math module a wrapper of libm? — Yusuke ENDOH <mame@...>

Hi matz --

23 messages 2010/02/18
[#28212] Re: Is Math module a wrapper of libm? — Yukihiro Matsumoto <matz@...> 2010/02/18

Hi,

[#28219] Re: Is Math module a wrapper of libm? — Yusuke ENDOH <mame@...> 2010/02/18

Hi,

[#28225] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/18

Hi,

[#28233] Re: Is Math module a wrapper of libm? — Kenta Murata <muraken@...> 2010/02/18

Hi,

[#28265] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/20

Hi,

[#28286] Re: Is Math module a wrapper of libm? — Kenta Murata <muraken@...> 2010/02/21

Hi

[#28291] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/22

Hi!

[#28235] [Feature #2759] Regexp /g and /G options — Michael Fellinger <redmine@...>

Feature #2759: Regexp /g and /G options

35 messages 2010/02/18

[#28329] [ANN] Ruby 1.9.2dev has passed RubySpec! — Yusuke ENDOH <mame@...>

Hi,

12 messages 2010/02/24

[#28355] [ANN] Toward rich diversity of Ruby development. — Urabe Shyouhei <shyouhei@...>

A short announcement: thanks to some helps of GitHub people, I now have

12 messages 2010/02/27

[#28365] Indentifying key MRI-on-Windows issues — Jon <jon.forums@...>

In an effort to begin summarizing key MRI-on-Windows open issues I'm starting this thread in hopes that those interested will respond with details on the key MRI issues they feel need resolution for Windows users.

11 messages 2010/02/27
[#28690] Re: Indentifying key MRI-on-Windows issues — Roger Pack <rogerdpack2@...> 2010/03/16

> My key concern is http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-=

[ruby-core:28052] [Bug:trunk] invalid yaml emitted for Struct

From: Yusuke ENDOH <mame@...>
Date: 2010-02-04 12:01:12 UTC
List: ruby-core #28052
Hi, Aaron Patterson --

lib/yaml seems to emit invalid yaml document for Struct:


  $ ./ruby -ryaml -e '
  Person = Struct.new(:name, :gender)
  puts Person.new("Jane", "female").to_yaml
  '
  --- !ruby/struct:Person
  :name: Jane
  :gender: female


The colon immediately before key names should not be emitted, I think.
This causes rubyspec failure.


1)
Object#to_yaml returns the YAML representation of a Struct object FAILED
Expected "--- !ruby/struct:Person \n:name: Jane\n:gender: female\n"
 to match "--- !ruby/struct:Person\nname: Jane\ngender: female\n"
/home/mame/work/ruby/spec/rubyspec/library/yaml/to_yaml_spec.rb:58:in
`block (2 levels) in <top (required)>'
/home/mame/work/ruby/spec/rubyspec/library/yaml/to_yaml_spec.rb:5:in
`<top (required)>'


This seems because the type of each element of Struct#members are changed
from String to Symbol on 1.9.  In fact, the following patch works.


diff --git a/lib/yaml/rubytypes.rb b/lib/yaml/rubytypes.rb
index e8c0c89..71f911a 100644
--- a/lib/yaml/rubytypes.rb
+++ b/lib/yaml/rubytypes.rb
@@ -72,7 +72,7 @@ class Struct
             #
             st = YAML::object_maker( struct_type, {} )
             st.members.each do |m|
-                st.send( "#{m}=", val[m] )
+                st.send( "#{m}=", val[m.to_s] )
             end
             props.each do |k,v|
                 st.instance_variable_set(k, v)
@@ -89,7 +89,7 @@ class Struct
                        #
             out.map( taguri, to_yaml_style ) do |map|
                                self.members.each do |m|
-                    map.add( m, self[m] )
+                    map.add( m.to_s, self[m.to_s] )
                 end
                                self.to_yaml_properties.each do |m|
                     map.add( m, instance_variable_get( m ) )


Could you commit this?
Thanks,

-- 
Yusuke ENDOH <mame@tsg.ne.jp>

In This Thread

Prev Next