Orion Edwards
2011-Oct-26 01:21 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
Backstory: I''m trying to use DRb for some in-house utility code. DRb itself seems to work fine, but I found that when I misspelled a method name, instead of reporting back a NoMethodError, the IronRuby process crashed immediately to the console. This is using a relatively recent build of IronRuby from Github Steps to repro: e = RuntimeError.new ''xyz'' dumped = Marshal.dump e e2 = Marshal.load dumped I would expect e2 to be equivalent to e, but instead the process crashes with this exception mscorlib:0:in `_InvokeConstructor'': Exception has been thrown by the target of an invocation. (System::Reflection::TargetInvocationException) from mscorlib:0:in `InvokeConstructor'' from mscorlib:0:in `Invoke'' from (ir):1:in `load'' from (ir):1 Note: This also happens with any CLR type eg System::DateTime. I looked through IronRuby''s marshalling code, and it appears that the behaviour of Marshal.dump and Marshal.load don''t align properly. Marshal.dump is it''s own self-contained set of code which essentially writes data to a BinaryStream. For ruby types, it ends up writing a series of values in a format that looks a lot like what I remember CRuby''s marshal writing. For CLR types, this just writes the Type name and no instance data (clr objects don''t have ruby instance variables after all) Marshal.load does 2 things: 1. Reads any ruby instance variables out into an Attributes dictionary 2. Uses reflection to find any non-public Constructor(SerializationInfo, StreamingContext) and invoke it. For ruby types, this finds the protected RubyClass(SerializationInfo, StreamingContext) ctor, which calls RubyOps.DeserializeObject, which in turn reads the attributes dictionary and it''s all fine. For CLR types, this finds whatever constructor might exist for the CLR object, which does whatever it does for that type. Unfortunately because the data that is getting passed into the CLR deserialization constructor came from Marshal.dump which has no knowledge whatsoever of CLR serialization, the whole thing crashes. I''m no expert on CLR serialization, so I''d really appreciate some comments on this, as I''m not sure what to do here. As far as I can guess however, I can see two solutions: 1. Implement Marshal.dump on top of the CLR serialization code so it matches Marshal.load and should therefore be able to handle CLR types too. 2. Don''t allow marshalling of CLR types, and put some special-case code into any Ruby types that are backed by CLR types (such as Exception) so these at least can be serialized? I''m going to have a crack at #1, but I''m not sure how successful this is. Again, any feedback would be greatly appreciated. Thanks, Orion -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20111026/c516d14f/attachment.html>
Tomas Matousek
2011-Oct-26 02:13 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
I think we should NOT serialize non-Ruby types for now. The implementation isn''t quite working so I''d prefer we delete all code that deals with ISerializable, clean up the marshaller and if .NET serialization is needed in future implement it fully and correctly. Marshal.dump has to output exactly the same data as CRuby implementation (for Ruby objects). Otherwise you won''t be able to read data serialized by CRuby in IronRuby and vice versa. Tomas From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Orion Edwards Sent: Tuesday, October 25, 2011 6:22 PM To: ironruby-core at rubyforge.org Subject: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Backstory: I''m trying to use DRb for some in-house utility code. DRb itself seems to work fine, but I found that when I misspelled a method name, instead of reporting back a NoMethodError, the IronRuby process crashed immediately to the console. This is using a relatively recent build of IronRuby from Github Steps to repro: e = RuntimeError.new ''xyz'' dumped = Marshal.dump e e2 = Marshal.load dumped I would expect e2 to be equivalent to e, but instead the process crashes with this exception mscorlib:0:in `_InvokeConstructor'': Exception has been thrown by the target of an invocation. (System::Reflection::TargetInvocationException) from mscorlib:0:in `InvokeConstructor'' from mscorlib:0:in `Invoke'' from (ir):1:in `load'' from (ir):1 Note: This also happens with any CLR type eg System::DateTime. I looked through IronRuby''s marshalling code, and it appears that the behaviour of Marshal.dump and Marshal.load don''t align properly. Marshal.dump is it''s own self-contained set of code which essentially writes data to a BinaryStream. For ruby types, it ends up writing a series of values in a format that looks a lot like what I remember CRuby''s marshal writing. For CLR types, this just writes the Type name and no instance data (clr objects don''t have ruby instance variables after all) Marshal.load does 2 things: 1. Reads any ruby instance variables out into an Attributes dictionary 2. Uses reflection to find any non-public Constructor(SerializationInfo, StreamingContext) and invoke it. For ruby types, this finds the protected RubyClass(SerializationInfo, StreamingContext) ctor, which calls RubyOps.DeserializeObject, which in turn reads the attributes dictionary and it''s all fine. For CLR types, this finds whatever constructor might exist for the CLR object, which does whatever it does for that type. Unfortunately because the data that is getting passed into the CLR deserialization constructor came from Marshal.dump which has no knowledge whatsoever of CLR serialization, the whole thing crashes. I''m no expert on CLR serialization, so I''d really appreciate some comments on this, as I''m not sure what to do here. As far as I can guess however, I can see two solutions: 1. Implement Marshal.dump on top of the CLR serialization code so it matches Marshal.load and should therefore be able to handle CLR types too. 2. Don''t allow marshalling of CLR types, and put some special-case code into any Ruby types that are backed by CLR types (such as Exception) so these at least can be serialized? I''m going to have a crack at #1, but I''m not sure how successful this is. Again, any feedback would be greatly appreciated. Thanks, Orion -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20111026/f252b080/attachment-0001.html>
Orion Edwards
2011-Oct-26 02:58 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
For dealing with Clr-backed objects such as Exception should we just create special cases in the Marshal to dump and load them? Is there any way I can find out what other ruby objects are actually CLR objects other than Exception types and the basic int, double, float types? My experiments with extending the marshal to dump CLR types were interesting. I can dump and load pure CLR types such as System::DateTime, and in theory it should also work seamlessly for CLR classes that have been "extended" by ruby. The code is quite simple, it just extends the marshaller and add a few extra nonstandard type codes for CLR primitive types such as System::Int64 that can''t be dealt with by the ruby marshaller. You wouldn''t be able to unmarshal a Pure or extended CLR object from CRuby as it wouldn''t understand these extra type codes but that doesn''t make any sense anyway. Because the marshal extensions preserve all the CLR information for exceptions, an IronRuby Exception won''t be able to be loaded by CRuby, so to keep compatibility there would have to be special cases for Exceptions (and any other builtin CLR objects that masquerade as ruby objects) whether the ISerializable code stays or goes. Are there any unit tests or specs for the marshalling? There doesn''t seem to be any mention of it in IronRuby.Tests.csproj, but I haven''t looked through all the rubyspec stuff yet. From: Tomas Matousek <Tomas.Matousek at microsoft.com> To: "ironruby-core at rubyforge.org" <ironruby-core at rubyforge.org> Date: 26/10/2011 03:42 p.m. Subject: Re: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Sent by: ironruby-core-bounces at rubyforge.org I think we should NOT serialize non-Ruby types for now. The implementation isn?t quite working so I?d prefer we delete all code that deals with ISerializable, clean up the marshaller and if .NET serialization is needed in future implement it fully and correctly. Marshal.dump has to output exactly the same data as CRuby implementation (for Ruby objects). Otherwise you won?t be able to read data serialized by CRuby in IronRuby and vice versa. Tomas From: ironruby-core-bounces at rubyforge.org [ mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Orion Edwards Sent: Tuesday, October 25, 2011 6:22 PM To: ironruby-core at rubyforge.org Subject: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Backstory: I''m trying to use DRb for some in-house utility code. DRb itself seems to work fine, but I found that when I misspelled a method name, instead of reporting back a NoMethodError, the IronRuby process crashed immediately to the console. This is using a relatively recent build of IronRuby from Github Steps to repro: e = RuntimeError.new ''xyz'' dumped = Marshal.dump e e2 = Marshal.load dumped I would expect e2 to be equivalent to e, but instead the process crashes with this exception mscorlib:0:in `_InvokeConstructor'': Exception has been thrown by the target of an invocation. (System::Reflection::TargetInvocationException) from mscorlib:0:in `InvokeConstructor'' from mscorlib:0:in `Invoke'' from (ir):1:in `load'' from (ir):1 Note: This also happens with any CLR type eg System::DateTime. I looked through IronRuby''s marshalling code, and it appears that the behaviour of Marshal.dump and Marshal.load don''t align properly. Marshal.dump is it''s own self-contained set of code which essentially writes data to a BinaryStream. For ruby types, it ends up writing a series of values in a format that looks a lot like what I remember CRuby''s marshal writing. For CLR types, this just writes the Type name and no instance data (clr objects don''t have ruby instance variables after all) Marshal.load does 2 things: 1. Reads any ruby instance variables out into an Attributes dictionary 2. Uses reflection to find any non-public Constructor(SerializationInfo, StreamingContext) and invoke it. For ruby types, this finds the protected RubyClass(SerializationInfo, StreamingContext) ctor, which calls RubyOps.DeserializeObject, which in turn reads the attributes dictionary and it''s all fine. For CLR types, this finds whatever constructor might exist for the CLR object, which does whatever it does for that type. Unfortunately because the data that is getting passed into the CLR deserialization constructor came from Marshal.dump which has no knowledge whatsoever of CLR serialization, the whole thing crashes. I''m no expert on CLR serialization, so I''d really appreciate some comments on this, as I''m not sure what to do here. As far as I can guess however, I can see two solutions: 1. Implement Marshal.dump on top of the CLR serialization code so it matches Marshal.load and should therefore be able to handle CLR types too. 2. Don''t allow marshalling of CLR types, and put some special-case code into any Ruby types that are backed by CLR types (such as Exception) so these at least can be serialized? I''m going to have a crack at #1, but I''m not sure how successful this is. Again, any feedback would be greatly appreciated. Thanks, Orion_______________________________________________ Ironruby-core mailing list Ironruby-core at rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20111026/ad885a36/attachment.html>
Orion Edwards
2011-Oct-28 02:46 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
I''ve made some changes and have a pull request on Github: https://github.com/IronLanguages/main/pull/47 The changeset is https://github.com/gglresearchanddevelopment/ironlanguages-main/commit/630995eca293b5b0531e821b76bab7e15c4506f6 What I did: 1. Ran load_spec and dump_spec under Languages\Ruby\Tests\mspec\rubyspec\core\marshal - Lots and lots of things failed 2. Fixed all the failures (except for one, which I can''t quite figure out). - The majority of this work was around writing string encodings when marshalling. IronRuby now writes string encodings as per MRI 1.9.2 - I didn''t make Marshal.Read understand string encodings yet though. The dump-with-encoding loads the string with no error, it just won''t pick up the encoding - IronRuby didn''t handle loading of self-referential arrays, hashes and objects. I added some specs for these and fixed the Marshal.Load code - It appears the behaviour of calling Marshal.load passing a proc changed between ruby 1.8 and 1.9. It now does what MRI 1.9.2 does 3. Removed the code path from Marshal.load that was using .NET serialization. - Most things worked fine, except the ruby Range CLR class which was using the .NET serialization interface. - As the Ruby range class is immutable we can''t rely on instance variable setting, and unfortunately range just gets dumped as Object (no special token) so it doesn''t really fit into the Marshal.load structure :-( - I added a new interface: IRubySpecialMarshalling. the range CLR class implements this, and Marshal.load checks for it as an alternative way of setting instance data. - This has the bonus of letting us dump subclasses of Range. Previously this did not work. 4. Added code and specs for basic marshalling of Exception types. Currently only Exception.message and Exception.backtrace are supported, but this covers the majority of use cases for me. - Added a special case in Marshal.Write to write the exception data - As Exception is like Range (can''t set instance variables, can''t use .NET serialization) It uses IRubySpecialMarshalling through a proxy object. The proxy object is required because I can''t change the CLR exception class to include my interface -:-( Some notes: - I''m not particularly happy with the way IRubySpecialMarshalling is working, but I''m not sure of a better way to do it. - Using reflection to set Exception.message sucks, but the requirement to unmarshal self-referential objects basically means you cannot Marshal.load an object''s attributes an object before you create the object itself. This is probably no big deal in CRuby :-( - The single failing marshal test is "loads an Array with proc". I can''t figure out what the logic behind calling the proc is as it gets really complicated with lots of nested types. If anyone could shed some light on it that would be great. - Where encodings have aliases, IronRuby selects a string''s encoding by asking windows what to use based on a Codepage number. Because MRI uses a different bit of logic, MRI and IronRuby can abitrarily select different aliases. EG: s = "foo" s.force_encoding "cp850" s.force_encoding "ibm850" # alternative which has the same effect puts s.encoding => "CP850" in MRI, "ibm850" in IronRuby I don''t suppose this matters much, but it did make the specs harder to write :-( Anyway, any feedback would be much appreciated. Thanks, Orion From: Tomas Matousek <Tomas.Matousek at microsoft.com> To: "ironruby-core at rubyforge.org" <ironruby-core at rubyforge.org> Date: 26/10/2011 03:42 p.m. Subject: Re: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Sent by: ironruby-core-bounces at rubyforge.org I think we should NOT serialize non-Ruby types for now. The implementation isn?t quite working so I?d prefer we delete all code that deals with ISerializable, clean up the marshaller and if .NET serialization is needed in future implement it fully and correctly. Marshal.dump has to output exactly the same data as CRuby implementation (for Ruby objects). Otherwise you won?t be able to read data serialized by CRuby in IronRuby and vice versa. Tomas From: ironruby-core-bounces at rubyforge.org [ mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Orion Edwards Sent: Tuesday, October 25, 2011 6:22 PM To: ironruby-core at rubyforge.org Subject: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Backstory: I''m trying to use DRb for some in-house utility code. DRb itself seems to work fine, but I found that when I misspelled a method name, instead of reporting back a NoMethodError, the IronRuby process crashed immediately to the console. This is using a relatively recent build of IronRuby from Github Steps to repro: e = RuntimeError.new ''xyz'' dumped = Marshal.dump e e2 = Marshal.load dumped I would expect e2 to be equivalent to e, but instead the process crashes with this exception mscorlib:0:in `_InvokeConstructor'': Exception has been thrown by the target of an invocation. (System::Reflection::TargetInvocationException) from mscorlib:0:in `InvokeConstructor'' from mscorlib:0:in `Invoke'' from (ir):1:in `load'' from (ir):1 Note: This also happens with any CLR type eg System::DateTime. I looked through IronRuby''s marshalling code, and it appears that the behaviour of Marshal.dump and Marshal.load don''t align properly. Marshal.dump is it''s own self-contained set of code which essentially writes data to a BinaryStream. For ruby types, it ends up writing a series of values in a format that looks a lot like what I remember CRuby''s marshal writing. For CLR types, this just writes the Type name and no instance data (clr objects don''t have ruby instance variables after all) Marshal.load does 2 things: 1. Reads any ruby instance variables out into an Attributes dictionary 2. Uses reflection to find any non-public Constructor(SerializationInfo, StreamingContext) and invoke it. For ruby types, this finds the protected RubyClass(SerializationInfo, StreamingContext) ctor, which calls RubyOps.DeserializeObject, which in turn reads the attributes dictionary and it''s all fine. For CLR types, this finds whatever constructor might exist for the CLR object, which does whatever it does for that type. Unfortunately because the data that is getting passed into the CLR deserialization constructor came from Marshal.dump which has no knowledge whatsoever of CLR serialization, the whole thing crashes. I''m no expert on CLR serialization, so I''d really appreciate some comments on this, as I''m not sure what to do here. As far as I can guess however, I can see two solutions: 1. Implement Marshal.dump on top of the CLR serialization code so it matches Marshal.load and should therefore be able to handle CLR types too. 2. Don''t allow marshalling of CLR types, and put some special-case code into any Ruby types that are backed by CLR types (such as Exception) so these at least can be serialized? I''m going to have a crack at #1, but I''m not sure how successful this is. Again, any feedback would be greatly appreciated. Thanks, Orion_______________________________________________ Ironruby-core mailing list Ironruby-core at rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20111028/b7ff542b/attachment-0001.html>
Orion Edwards
2011-Nov-01 02:04 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
I''ve updated the pull request as per Tomas'' code review comments. - Removed ISpecialRubyMarshalling interface in favour of keeping the code all in the Marshal - Only implement Exception#==, not === and eql? - Implement proper Exception comparison logic to match MRI - Change the Marshal#ReadObject code to special-case Exceptions and Ranges so we don''t need to use reflection to set Exception.message and range values (yay!) - Minor tweaks to some exception classes to pass a couple more Rubyspecs while I was at it https://github.com/IronLanguages/main/pull/47/files Thanks, Orion From: Tomas Matousek <Tomas.Matousek at microsoft.com> To: "ironruby-core at rubyforge.org" <ironruby-core at rubyforge.org> Date: 26/10/2011 03:42 p.m. Subject: Re: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Sent by: ironruby-core-bounces at rubyforge.org I think we should NOT serialize non-Ruby types for now. The implementation isn?t quite working so I?d prefer we delete all code that deals with ISerializable, clean up the marshaller and if .NET serialization is needed in future implement it fully and correctly. Marshal.dump has to output exactly the same data as CRuby implementation (for Ruby objects). Otherwise you won?t be able to read data serialized by CRuby in IronRuby and vice versa. Tomas From: ironruby-core-bounces at rubyforge.org [ mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Orion Edwards Sent: Tuesday, October 25, 2011 6:22 PM To: ironruby-core at rubyforge.org Subject: [Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type Backstory: I''m trying to use DRb for some in-house utility code. DRb itself seems to work fine, but I found that when I misspelled a method name, instead of reporting back a NoMethodError, the IronRuby process crashed immediately to the console. This is using a relatively recent build of IronRuby from Github Steps to repro: e = RuntimeError.new ''xyz'' dumped = Marshal.dump e e2 = Marshal.load dumped I would expect e2 to be equivalent to e, but instead the process crashes with this exception mscorlib:0:in `_InvokeConstructor'': Exception has been thrown by the target of an invocation. (System::Reflection::TargetInvocationException) from mscorlib:0:in `InvokeConstructor'' from mscorlib:0:in `Invoke'' from (ir):1:in `load'' from (ir):1 Note: This also happens with any CLR type eg System::DateTime. I looked through IronRuby''s marshalling code, and it appears that the behaviour of Marshal.dump and Marshal.load don''t align properly. Marshal.dump is it''s own self-contained set of code which essentially writes data to a BinaryStream. For ruby types, it ends up writing a series of values in a format that looks a lot like what I remember CRuby''s marshal writing. For CLR types, this just writes the Type name and no instance data (clr objects don''t have ruby instance variables after all) Marshal.load does 2 things: 1. Reads any ruby instance variables out into an Attributes dictionary 2. Uses reflection to find any non-public Constructor(SerializationInfo, StreamingContext) and invoke it. For ruby types, this finds the protected RubyClass(SerializationInfo, StreamingContext) ctor, which calls RubyOps.DeserializeObject, which in turn reads the attributes dictionary and it''s all fine. For CLR types, this finds whatever constructor might exist for the CLR object, which does whatever it does for that type. Unfortunately because the data that is getting passed into the CLR deserialization constructor came from Marshal.dump which has no knowledge whatsoever of CLR serialization, the whole thing crashes. I''m no expert on CLR serialization, so I''d really appreciate some comments on this, as I''m not sure what to do here. As far as I can guess however, I can see two solutions: 1. Implement Marshal.dump on top of the CLR serialization code so it matches Marshal.load and should therefore be able to handle CLR types too. 2. Don''t allow marshalling of CLR types, and put some special-case code into any Ruby types that are backed by CLR types (such as Exception) so these at least can be serialized? I''m going to have a crack at #1, but I''m not sure how successful this is. Again, any feedback would be greatly appreciated. Thanks, Orion_______________________________________________ Ironruby-core mailing list Ironruby-core at rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20111101/7ec0cdf5/attachment-0001.html>
James W.
2012-Jul-06 18:46 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
Orion et al., I am curious if there has been any forward momentum on addressing CLR object serialization in IronRuby. I''m currently porting some JRuby test framework code that utilizes DRb as an interface to serialize Java objects for test automation. We''d like to be able to accomplish the same in Ironruby with CLR objects. Unfortunately, I am running into the above issue when DRb uses Marshal.load and Marshal.dump to serialize CLR (and CLR-backed) objects. Although there are many potential work-arounds, it seems that the ideal scenario would be for Ironruby to competently handle .NET family object serializations. Although I will be implementing a work-around in the short-term, I''d be interested in continuing this discussion. Any references you can provide would be exceptionally useful. Best regards, James -- Posted via http://www.ruby-forum.com/.
Orion Edwards
2012-Jul-09 10:28 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
I personally haven''t done any work on it since those last emails. I''m away from work for the next week or so, so I can''t go and look it up easily.>From my vague memories of the code, it shouldn''t be much work to getit marshalling .NET objects that use the .NET Serialization API''s. I had it working, I just needed to write extra code for .NET fundamental types like Int64 which aren''t handled. Nonserializable .NET objects are much harder however (maybe impossible?). I too was trying to get DRB to work, but the big issue with that is that DRB uses ruby object id''s to keep track of different objects on both sides of the connection. CRuby has a special format for object id''s, and critically, you should never get duplicate object id''s. IronRuby''s implementation of Object ID''s on the other hand is very basic, and it''s quite easy to get duplicate object id''s, (completely ruining DRb). I''d start with that :-) Certainly, if you get DRb working, I''d be a grateful user of it :-) On Sat, Jul 7, 2012 at 4:16 AM, James W. <lists at ruby-forum.com> wrote:> Orion et al., > > I am curious if there has been any forward momentum on addressing CLR > object serialization in IronRuby. I''m currently porting some JRuby test > framework code that utilizes DRb as an interface to serialize Java > objects for test automation. We''d like to be able to accomplish the same > in Ironruby with CLR objects. Unfortunately, I am running into the above > issue when DRb uses Marshal.load and Marshal.dump to serialize CLR (and > CLR-backed) objects. Although there are many potential work-arounds, it > seems that the ideal scenario would be for Ironruby to competently > handle .NET family object serializations. > > Although I will be implementing a work-around in the short-term, I''d be > interested in continuing this discussion. Any references you can provide > would be exceptionally useful. > > Best regards, > > James > > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > Ironruby-core mailing list > Ironruby-core at rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core
James W.
2012-Jul-09 22:37 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
Hi Orion, Thanks for the useful feedback. In the interim, I am maintaining the object on the DRb server-side and keeping interaction with the object basic enough to maintain fairly easily. A rudimentary proxy, if you will. Long term, though, I will follow-up on your starting points and endeavor to get both marshaling and serializing working. I haven''t run-across the object id issue that you mentioned with DRb, however I believe this is by nature of the work around. I''ll keep you in the loop as it progresses, it''s something that will probably get put on the shelf for a week or two as I deal with more straight-forward tasks first. Cheers, James Orion Edwards wrote in post #1067985:> I personally haven''t done any work on it since those last emails. I''m > away from work for the next week or so, so I can''t go and look it up > easily. >>From my vague memories of the code, it shouldn''t be much work to get > it marshalling .NET objects that use the .NET Serialization API''s. I > had it working, I just needed to write extra code for .NET fundamental > types like Int64 which aren''t handled. > Nonserializable .NET objects are much harder however (maybe > impossible?). > > I too was trying to get DRB to work, but the big issue with that is > that DRB uses ruby object id''s to keep track of different objects on > both sides of the connection. CRuby has a special format for object > id''s, and critically, you should never get duplicate object id''s. > IronRuby''s implementation of Object ID''s on the other hand is very > basic, and it''s quite easy to get duplicate object id''s, (completely > ruining DRb). I''d start with that :-) > > Certainly, if you get DRb working, I''d be a grateful user of it :-)-- Posted via http://www.ruby-forum.com/.
Badr A.
2012-Oct-03 07:19 UTC
[Ironruby-core] IronRuby''s Marshal.dump doesn''t work with CLR types, or ruby types backed by a CLR type
[http://www.anisaty.com/vb/ ????? ?????] [http://www.anisaty.com/vb/t71806.html ????? ????? ???????] [http://www.anisaty.com/vb/t71783.html ????? ?????] [http://www.anisaty.com/vb/t71821 ????? ????? ????? ???????] [http://www.anisaty.com/vb/f8/ ??????? ???? ????] [http://www.anisaty.com/vb/f9/ ????? 2013] [http://www.anisaty.com/vb/f10/ ????????? 2013] [http://www.anisaty.com/vb/f11/ ????? 2013] [http://www.anisaty.com/vb/f12/ ??????? ??? 2013] [http://www.anisaty.com/vb/f16/ ?????? ??????????] [http://www.anisaty.com/vb/f14/ ?????? ?????] [http://www.anisaty.com/vb/f111/ ??????? 2013] [http://www.anisaty.com/vb/f19/ ??????? ?????? ??????] [http://www.anisaty.com/vb/f20/ ??? ??????] [http://www.anisaty.com/vb/f112/ ??? ??????] [http://www.anisaty.com/vb/f22/ ??? ?????] [http://www.anisaty.com/vb/f113/ ??????? ?????? ???????] [http://www.anisaty.com/vb/f114/ ???? ?????? ???????] [http://www.anisaty.com/vb/f115/ ??? ??????] [http://www.anisaty.com/vb/f118/ ???? ???? 2013] [http://www.anisaty.com/vb/t71267.html ???? ???????] [http://www.anisaty.com/vb/t71229.html ??? ???????? ????? ??????] [http://www.anisaty.com/vb/t71158.html ?????? ????? ??????] [http://www.anisaty.com/vb/t71076.html ??????? ?????] [http://www.anisaty.com/vb/t71075.html ?????? ???? ??] [http://www.anisaty.com/vb/t71074.html ?????? ???? ???? ????] [http://www.anisaty.com/vb/t71070.html ??? ??????? ??????] [http://www.anisaty.com/vb/t71069.html ??? ??????? ??????] [http://www.anisaty.com/vb/t71068.html ??????? ??????] [http://www.anisaty.com/vb/t71067.html ?????? ????? ???? ???] [http://www.anisaty.com/vb/t71066.html ????? ?????] [http://www.anisaty.com/vb/t71064.html ?????? ???? ?????] [http://www.anisaty.com/vb/t71062.html ????? ???????? ????????] [http://www.anisaty.com/vb/t71060.html ?????? ???????? ????????] [http://www.anisaty.com/vb/t71058.html ?????? ????????] [http://www.anisaty.com/vb/t71056.html ?????? ?????] [http://www.anisaty.com/vb/t71054.html ???????? ?????] [http://www.anisaty.com/vb/t71053.html ?????? ????] [http://www.anisaty.com/vb/t71052.html ?????? ???????] [http://www.anisaty.com/vb/t71049.html ?????? ??????] [http://www.anisaty.com/vb/t71047.html ?????? ?????? ???????] [http://www.anisaty.com/vb/t70694.html ?????? ????? ?? ?????? ??????] [http://www.anisaty.com/vb/t70692.html ???????? ????? ?????] [http://www.anisaty.com/vb/t70688.html ??????? ??? ????] [http://www.anisaty.com/vb/t70686.html ??????? ???????? ???] [http://www.anisaty.com/vb/t71871.html ????? ????? ????] [http://www.anisaty.com/vb/t71867.html ????? ?????? ?????] [http://www.anisaty.com/vb/t71864.html ??? ???? ??????] [http://www.anisaty.com/vb/t71859.html ???? ???] [http://www.anisaty.com/vb/t71855.html ?????????? ???????] [http://www.anisaty.com/vb/t71852.html ?????? ????? ?????] [http://www.anisaty.com/vb/t71849.html ??????? ??? ???? ????] [http://www.anisaty.com/vb/t71844.html ???? ?????? ?????] [http://www.anisaty.com/vb/t71843.html ???? ????????? ????] [http://www.anisaty.com/vb/t71842.html ???? ?????? ?????] [http://www.anisaty.com/vb/t71841.html ????? ??????] [http://www.anisaty.com/vb/t71840.html ????????? ?????] [http://www.anisaty.com/vb/t71838.html ???? ????????? ?????] [http://www.anisaty.com/vb/t71836.html ??????? ???? ????????] [http://www.anisaty.com/vb/t71835.html ?????? ????? ??????] [http://www.anisaty.com/vb/t71833.html ????? ?????? ?????] [http://www.anisaty.com/vb/t71831.html ???? ????????? ??????] [http://www.anisaty.com/vb/t71830.html ???? ?????? ??????? ??????] [http://www.anisaty.com/vb/t71828.html ???? ?????? ????????? ?????] [http://www.anisaty.com/vb/t71826.html ???? ????????? ????] [http://www.anisaty.com/vb/t71824.html ???? ???????] [http://www.anisaty.com/vb/t71823.html ?????? ?? ????] [http://www.anisaty.com/vb/t71820.html ????? ???????] [http://www.anisaty.com/vb/t71819.html ????? ????? ??????] [http://www.anisaty.com/vb/t71815.html ????? ????? ??????] [http://www.anisaty.com/vb/t71208.html ?????? ???? ??? ?? ??????] [http://www.anisaty.com/vb/t71016.html ??????? ???????] [http://www.anisaty.com/vb/t71013.html ????? ??????? ????? ?????] [http://www.anisaty.com/vb/t71011.html ????? ???????] [http://www.anisaty.com/vb/t71008.html ???? ??????] [http://www.anisaty.com/vb/t71006.html ???? ???????] [http://www.anisaty.com/vb/t70923.html ?????? ???? ????] [http://www.anisaty.com/vb/t70916.html ????? ??????] [http://www.anisaty.com/vb/t70912.html ???? ??????? ?? ?????] [http://www.anisaty.com/vb/t70911.html ????? ???? ??? ??????] [http://www.anisaty.com/vb/t70861.html ???? ??????? ?? ????? ????? ??????] [http://www.anisaty.com/vb/t70712.html ?????? ?????? ? 250 ???? ?? ??????? ???????] [http://www.anisaty.com/vb/t69718.html ???? ?????? ????] [http://www.anisaty.com/vb/t69598.html ?????? ?????? ????????] [http://www.anisaty.com/vb/t69595.html ??????? ??? ??????] [http://www.anisaty.com/vb/t69592.html ?????? ??? ?????] [http://www.anisaty.com/vb/t69587.html ????? ???? ??????] [http://www.anisaty.com/vb/t69584.html ???? ??????? ??????] [http://www.anisaty.com/vb/t69581.html ???? ?????? ????] [http://www.anisaty.com/vb/t69579.html ???? ?????? ???????] [http://www.anisaty.com/vb/t69577.html ??????? ????? ??????] [http://www.anisaty.com/vb/t69575.html ???? ?????? ??????? ??????] [http://www.anisaty.com/vb/t69574.html ???? ??????? ?????] [http://www.anisaty.com/vb/t69573.html ?????? ???? ??????] [http://www.anisaty.com/vb/t69572.html ??? ??????? ??????? ??????] [http://www.anisaty.com/vb/t71161.html ??????? ??? ??????] [http://www.anisaty.com/vb/t69692.html ??????? ????] [http://www.anisaty.com/vb/t69689.html ??? ???? ??????? ?????] [http://www.anisaty.com/vb/t69684.html ??????? ?????] [http://www.anisaty.com/vb/t69677.html ??????? ?????] [http://www.anisaty.com/vb/t69674.html ????? ??????] [http://www.anisaty.com/vb/t69672.html ??????? ???] [http://www.anisaty.com/vb/t69670.html ?????? ???? ???????] [http://www.anisaty.com/vb/t69664.html ????? ???? ????? ??????] [http://www.anisaty.com/vb/t69662.html ???? ?????? ????? ??????] [http://www.anisaty.com/vb/t69659.html ??? ??????? ?????? ????] [http://www.anisaty.com/vb/t69658.html ????? ????? ?????] [http://www.anisaty.com/vb/t68971.html ??????? ??? ???? ?????] [http://www.anisaty.com/vb/t68969.html ??? ??????? ??? ????? ??? ?????] [http://www.anisaty.com/vb/t68866.html ??????? ????? ???????] [http://www.anisaty.com/vb/t68865.html ???? ?? ????? lalique] [http://www.anisaty.com/vb/t68864.html ??????? ??? ?????] [http://www.anisaty.com/vb/t68863.html ??????? ??? ????? ?????] [http://www.anisaty.com/vb/t68860.html ????? ????? ???? ????] [http://www.anisaty.com/vb/t68858.html ??? ???? ?????] [http://www.anisaty.com/vb/t68856.html ??????? ???? ???? ???] [http://www.anisaty.com/vb/t68855.html ????? ?????? ??? ?????] [http://www.anisaty.com/vb/t68854.html ????? ?????? ?????] [http://www.anisaty.com/vb/t68851.html ??? ????] [http://www.anisaty.com/vb/t68849.html ????? ???? ????? ?????] [http://www.anisaty.com/vb/t71822.html ????? ????? ???? ??????] [http://www.anisaty.com/vb/t71817.html ????? ???? ???? ???????] [http://www.anisaty.com/vb/t71235.html ??? ??? ????? ???????? ????????] [http://www.anisaty.com/vb/t71210.html ???? ?????] [http://www.anisaty.com/vb/t71165.html ????? ????] [http://www.anisaty.com/vb/t70921.html ????? ????? ??????] [http://www.anisaty.com/vb/t70918.html ??? ??? ????? ?????] [http://www.anisaty.com/vb/t70917.html ????? ???? ?????] [http://www.anisaty.com/vb/t70853.html ??????? ??? ??? ?????] [http://www.anisaty.com/vb/t70519.html ????? ?? ????????? ????] [http://www.anisaty.com/vb/t70517.html ??????? ???? ????? ?????] [http://www.anisaty.com/vb/t70515.html ??????? ??? ?????] [http://www.anisaty.com/vb/t70512.html ??????? ??? ??? ?????] [http://www.anisaty.com/vb/t70510.html ??????? ????? ?????] [http://www.anisaty.com/vb/t70508.html ????? ????? ??????] [http://www.anisaty.com/vb/t70506.html ????? ????? ?????? ????? ?????] [http://www.anisaty.com/vb/t70502.html ?????? ??? ???? ???????] [http://www.anisaty.com/vb/t70499.html ??????? ????? ????] [http://www.anisaty.com/vb/t70496.html ??????? ?????? ????] [http://www.anisaty.com/vb/t70481.html ??????? ?????? ?????] [http://www.anisaty.com/vb/t70477.html ??????? ????? ????] [http://www.anisaty.com/vb/t70470.html ??????? ???? ???????] [http://www.anisaty.com/vb/t70465.html ?????? ???????] [http://www.anisaty.com/vb/t70459.html ???? ??????? ?? ????? ??????] [http://www.anisaty.com/vb/t70451.html ???? ????????] [http://www.anisaty.com/vb/t71383.html ???? ?????] [http://www.anisaty.com/vb/t70881.html ???? ???????? ????????] [http://www.anisaty.com/vb/t70656.html ?????? ???? ?????? ?????] [http://www.anisaty.com/vb/t69795.html ???? ?????] [http://www.anisaty.com/vb/t68993.html ????? ?????? ???? ?????? ????] [http://www.anisaty.com/vb/t68622.html ?????? ????? ??????] [http://www.anisaty.com/vb/t67543.html ???? ?????] [http://www.anisaty.com/vb/t66567.html ????? ?????? ???? ?? ??????] [http://www.anisaty.com/vb/t56736.html ?????? ?????? ?????? ?????] [http://www.anisaty.com/vb/t64791.html ??????? ???????? ??????] [http://www.anisaty.com/vb/t64785.html ?????? ?????? ] [http://www.anisaty.com/vb/t64275.html ???? ????? ?????? ???? ??????] [http://www.anisaty.com/vb/t63931.html ??????? ???? ?????] [http://www.anisaty.com/vb/t62300.html ???? ????? ???? ????] [http://www.anisaty.com/vb/t62144.html ?????? ?????? ????? ??????] [http://www.anisaty.com/vb/t61881.html ???? ?????] [http://www.anisaty.com/vb/t61091.html ???? ????? ???] [http://www.anisaty.com/vb/t61046.html ???? ????? ????????] [http://www.anisaty.com/vb/t59725.html ???? ????????] [http://www.anisaty.com/vb/t59651.html ???? ????? ??? ??? ?????] [http://www.anisaty.com/vb/t59558.html ???? ????? ???????] [http://www.anisaty.com/vb/t58556.html ??? ????? ???? ??????] [http://www.anisaty.com/vb/t58195.html ???? ??? ?????? ?? ??? ???] [http://www.anisaty.com/vb/t58194.html ???? ??? ???? ?????? ??????] [http://www.anisaty.com/vb/t58193.html ???? ????? ?? ??? ???] [http://www.anisaty.com/vb/t71275.html ????? ???? ??????] [http://www.anisaty.com/vb/t71270.html ????? ???? ????] [http://www.anisaty.com/vb/t71266.html ????? ???? ????] [http://www.anisaty.com/vb/t69233.html ????? ?????????? ?? ?????] [http://www.anisaty.com/vb/t69170.html ????? ?????? ????????????] [http://www.anisaty.com/vb/t68966.html ???? ????? ??? ???????] [http://www.anisaty.com/vb/t68964.html ????? ?????? ?????? ??????] [http://www.anisaty.com/vb/t68962.html ???? ???????] [http://www.anisaty.com/vb/t68959.html ????? ????? ??????] [http://www.anisaty.com/vb/t68958.html ???? ???] [http://www.anisaty.com/vb/t68955.html ???? ????? ????] [http://www.anisaty.com/vb/t68953.html ????? ?????? ?????] [http://www.anisaty.com/vb/t68951.html ???? ????? ?????? ???????] [http://www.anisaty.com/vb/t68948.html ??????? ????? ??????] [http://www.anisaty.com/vb/t68945.html ?????? ????] [http://www.anisaty.com/vb/t68941.html ????? ??????] [http://www.anisaty.com/vb/t68940.html ????? ?????] [http://www.anisaty.com/vb/t68939.html ????? ????? ?????] [http://www.anisaty.com/vb/t68938.html ????? ????] [http://www.anisaty.com/vb/t68936.html ???? ?????] [http://www.anisaty.com/vb/t68927.html ??????? ????? ????????] [http://www.anisaty.com/vb/t68925.html ??? ?? ???? ????] [http://www.anisaty.com/vb/t68635.html ????? ???? ?????] [http://www.anisaty.com/vb/t67930.html ????? ??????] [http://www.anisaty.com/vb/t67929.html ????? ????] [http://www.anisaty.com/vb/t71904.html ??????? ????? ??????] [http://www.anisaty.com/vb/t71902.html ????? ????? ??????] [http://www.anisaty.com/vb/t71901.html ???? ?????? ?????] [http://www.anisaty.com/vb/t71900.html ??????? ??????? ??????] [http://www.anisaty.com/vb/t71898.html ??????? ???????] [http://www.anisaty.com/vb/t71897.html ???? ????? ?????? ??????] [http://www.anisaty.com/vb/t71896.html ???? ???? ?? ?????] [http://www.anisaty.com/vb/t71895.html ????? ??????? ???????] [http://www.anisaty.com/vb/t71894.html ??????? ??????] [http://www.anisaty.com/vb/t71893.html ??????? ??????? ????? ?????] [http://www.anisaty.com/vb/t71892.html ???? ????? ??????] [http://www.anisaty.com/vb/t71888.html ?? ???? ????????] [http://www.anisaty.com/vb/t71885.html ????? ?????? ???????] [http://www.anisaty.com/vb/t71883.html ????? ??????? ?????] [http://www.anisaty.com/vb/t71880.html ???? ??????? ????? ???? ????? ??????] [http://www.anisaty.com/vb/t71878.html ????? ??????? ????????] [http://www.anisaty.com/vb/t71876.html ???? ???? ????] [http://www.anisaty.com/vb/t71875.html ????? ????? ??????] [http://www.anisaty.com/vb/t71873.html ???? ???? ?????] [http://www.anisaty.com/vb/t71872.html ?????? ???????????] [http://www.anisaty.com/vb/t71869.html ???? ????? ?????? ??????] [http://www.anisaty.com/vb/t71868.html ???? ?????? ????? ??????] [http://www.anisaty.com/vb/t71865.html ????? ???? ????? ??????] [http://www.anisaty.com/vb/t71862.html ????? ?????? ????? ??????] [http://www.anisaty.com/vb/t71861.html ?????? ?????? ???????] [http://www.anisaty.com/vb/t51071.html ???? ???? ?????? 2013] [http://www.anisaty.com/vb/t50170.html ????? ???? ??????] [http://www.anisaty.com/vb/t48128.html ????? ??????] [http://www.anisaty.com/vb/t47482.html ????? ?????? ???? ??????] [http://www.anisaty.com/vb/t47270.html ???? ???? ??????] [http://www.anisaty.com/vb/t46995.html ????? ??? ???? ??????] [http://www.anisaty.com/vb/t46993.html ????? ??? ????? ??? ??????? ??] [http://www.anisaty.com/vb/t46988.html ??? ???? ????? ???? ??? ???? ????] [http://www.anisaty.com/vb/t46084.html ??? ???? ???? ?????? ??? ?????] [http://www.anisaty.com/vb/t46083.html ??? ?????] [http://www.anisaty.com/vb/t46082.html ????? ??? ????? ?????] [http://www.anisaty.com/vb/t45212.html ????? ??? ?? ??? ?? ????? ?????] [http://www.anisaty.com/vb/t45211.html ????? ???? ?????? ???????] [http://www.anisaty.com/vb/t45210.html ???? ???????] [http://www.anisaty.com/vb/t44964.html ????? ???? ???? ?????] [http://www.anisaty.com/vb/t44963.html ????? ??? ?? ????? ?? ?????] [http://www.anisaty.com/vb/t44961.html ??? ?????? ???? ??????] [http://www.anisaty.com/vb/t44605.html ????? ??? ??? ???????] [http://www.anisaty.com/vb/t44604.html ????? ??? ???? ?????] [http://www.anisaty.com/vb/t44602.html ????? ??? ?????? ?????] [http://www.anisaty.com/vb/t44600.html ????? ??? ????? ??????] [http://www.anisaty.com/vb/t44599.html ????? ??? ????? ??? ??????? ??] [http://www.anisaty.com/vb/t44598.html ??? ???? ????? ??????] [http://www.anisaty.com/vb/t44370.html ????? ?????? ??????] [http://www.anisaty.com/vb/t44369.html ??? ???? ??? ????? ???? ??????] [http://www.anisaty.com/vb/t71857.html ????? ?????? ?????] [http://www.anisaty.com/vb/t71856.html ????? ????? ???? ????] [http://www.anisaty.com/vb/t71854.html ???????? ???????] [http://www.anisaty.com/vb/t71853.html ????? ????????] [http://www.anisaty.com/vb/t71851.html ?????? ??? ?????] [http://www.anisaty.com/vb/t71848.html ??? ??????] [http://www.anisaty.com/vb/t71846.html ??? ??????] [http://www.anisaty.com/vb/t71818.html ??? ???????] [http://www.anisaty.com/vb/t71816.html ??? ????????? ???????] [http://www.anisaty.com/vb/t71814.html ??????? ????? ?????] [http://www.anisaty.com/vb/t71811.html ?????? ??????? ???????????] [http://www.anisaty.com/vb/t71810.html ?????? ?????] [http://www.anisaty.com/vb/t71807.html ???????] [http://www.anisaty.com/vb/t71805.html ???????? ?????? ?????? ?????? ???????] [http://www.anisaty.com/vb/t71803.html ?????? ????????] [http://www.anisaty.com/vb/t71801.html ????? ??????] [http://www.anisaty.com/vb/t71800.html ??????] [http://www.anisaty.com/vb/t71799.html ????? ?????] [http://www.anisaty.com/vb/t71797.html ??????] [http://www.anisaty.com/vb/t71795.html ?????? ??? ????] [http://www.anisaty.com/vb/t71792.html ????? ?????? ?????] [http://www.anisaty.com/vb/t71791.html ??????] [http://www.anisaty.com/vb/t71789.html ?????] [http://www.anisaty.com/vb/t71787.html ??????] [http://www.anisaty.com/vb/t71784.html ?? ??????] [http://www.anisaty.com/vb/t71190.html ????? ???? ?????] [http://www.anisaty.com/vb/t70544.html ????? ?????] [http://www.anisaty.com/vb/t70541.html ????? ????? ???? ???????] [http://www.anisaty.com/vb/t70492.html ????? ??? ?????? ??????] [http://www.anisaty.com/vb/t70488.html ???? ???????] [http://www.anisaty.com/vb/t70486.html ???? ????? ??? ???????] [http://www.anisaty.com/vb/t70482.html ??????? ??????? ????????] [http://www.anisaty.com/vb/t70479.html ??? ??? ??????? ???????] [http://www.anisaty.com/vb/t70476.html ??????? ??????] [http://www.anisaty.com/vb/t70474.html ???? ?????? ??????] [http://www.anisaty.com/vb/t70473.html ?????? ???? ?????] [http://www.anisaty.com/vb/t70472.html ??? ????? ????? ?????] [http://www.anisaty.com/vb/t70468.html ????? ???? ????? ???????] [http://www.anisaty.com/vb/t70466.html ???? ????? ????????] [http://www.anisaty.com/vb/t70464.html ???? ????? ????????] [http://www.anisaty.com/vb/t70462.html ????? ?? ?????] [http://www.anisaty.com/vb/t70458.html ???? ??????? ???????] [http://www.anisaty.com/vb/t70456.html ????? ????????] [http://www.anisaty.com/vb/t70454.html ?????? ?????] [http://www.anisaty.com/vb/t70453.html ???? ?????? ???????? ???] [http://www.anisaty.com/vb/t70450.html ????? ????? ??????? ?? ?????] [http://www.anisaty.com/vb/t70446.html ????? ????? ????????] [http://www.anisaty.com/vb/t70437.html ??? ????? ?? ?????? ??????] [http://www.anisaty.com/vb/t70436.html ??????? ???????? ??????] [http://www.anisaty.com/vb/t70434.html ?????? ????] [http://www.anisaty.com/vb/t71724.html ????? ?????] [http://www.anisaty.com/vb/t71722.html ????? ?????] [http://www.anisaty.com/vb/t71721.html ????? ????? ?????] [http://www.anisaty.com/vb/t71720.html ????? ?????] [http://www.anisaty.com/vb/t71719.html ?????? ???] [http://www.anisaty.com/vb/t71718.html ????? ?????? ???????] [http://www.anisaty.com/vb/t71717.html ????? ??????] [http://www.anisaty.com/vb/t71716.html ???? ??????] [http://www.anisaty.com/vb/t71715.html ????? ????] [http://www.anisaty.com/vb/t71714.html ?????? ??????? ?????] [http://www.anisaty.com/vb/t71713.html ????? ?????] [http://www.anisaty.com/vb/t71711.html ???? ????? ?????] [http://www.anisaty.com/vb/t71709.html ???? ????? ???????] [http://www.anisaty.com/vb/t71706.html ???? ???????] [http://www.anisaty.com/vb/t71704.html ????? ????? ????? ???????] [http://www.anisaty.com/vb/t71702.html ?????? ??????? ????] [http://www.anisaty.com/vb/t71698.html ??? ????? ??????] [http://www.anisaty.com/vb/t71695.html ????? ????? ????] [http://www.anisaty.com/vb/t71693.html ??? ???? ???????? ???] [http://www.anisaty.com/vb/t71691.html ?? ?????????? ?? ????? ?????] [http://www.anisaty.com/vb/t71687.html ????? ???? ??????] [http://www.anisaty.com/vb/t71684.html ????? ??????] [http://www.anisaty.com/vb/t71682.html ????? ???? ????] [http://www.anisaty.com/vb/t71681.html ????? ?????? ?????] [http://www.anisaty.com/vb/t71678.html ????? ??? ???????] [http://www.anisaty.com/vb/t71240.html ????? ?????? ?????? ???????] [http://www.anisaty.com/vb/t70914.html ?? ????? ?? ??? ??? ??? ?????????] [http://www.anisaty.com/vb/t70880.html ????? ?????? ?? ?????] [http://www.anisaty.com/vb/t70879.html 7 ????? ?????? ???? ????] [http://www.anisaty.com/vb/t69849.html ????? ???????] [http://www.anisaty.com/vb/t69845.html ????? ??? ????? ?????? ?????] [http://www.anisaty.com/vb/t69844.html ????? ??????? ???????] [http://www.anisaty.com/vb/t69841.html ????? ????? ???????] [http://www.anisaty.com/vb/t69838.html ???? ????? ????] [http://www.anisaty.com/vb/t69832.html ????? ????] [http://www.anisaty.com/vb/t69830.html ???? ????????????] [http://www.anisaty.com/vb/t69829.html ????? ?????? ?????] [http://www.anisaty.com/vb/t69826.html ????? ???????] [http://www.anisaty.com/vb/t69825.html ????? ?????? ?????] [http://www.anisaty.com/vb/t69822.html ??? ???????] [http://www.anisaty.com/vb/t69820.html ????? ??? ???????] [http://www.anisaty.com/vb/t69816.html ???? ???? ?????? ?????] [http://www.anisaty.com/vb/t69813.html ??? ??????? ????] [http://www.anisaty.com/vb/t69811.html ?????? ??????? ?????] [http://www.anisaty.com/vb/t69810.html ???? ???????] [http://www.anisaty.com/vb/t69807.html ??? ?????? ???? ???????] [http://www.anisaty.com/vb/t69806.html ???? ????? ?????] [http://www.anisaty.com/vb/t69804.html ????? ?????????????] [http://www.anisaty.com/vb/t69802.html ??????? ???????] [http://www.anisaty.com/vb/t69801.html ????? ???? ?????? ???? ?????] [http://www.anisaty.com/vb/t71224.html ?????? ???? ??? ?????? ???????] [http://www.anisaty.com/vb/t71207.html ????? ????? ???? ????? ?? ?????? ?????] [http://www.anisaty.com/vb/t71203.html ??? ?????? ?? ??????] [http://www.anisaty.com/vb/t71000.html ??? ????? ???????] [http://www.anisaty.com/vb/t70997.html ????? ???? ?????] [http://www.anisaty.com/vb/t70995.html ????? ????? ?????? ??????] [http://www.anisaty.com/vb/t70992.html ????? ????? ????] [http://www.anisaty.com/vb/t70988.html ????? ????] [http://www.anisaty.com/vb/t70979.html ??? ?????? ???? ??????] [http://www.anisaty.com/vb/t70933.html ?????? ??? ?????? ?? ???? ????] [http://www.anisaty.com/vb/t70932.html ???? ???? ????? ?? ???????? ???????] [http://www.anisaty.com/vb/t70931.html ???? ??????? ?? ???? ??? ????] [http://www.anisaty.com/vb/t70929.html ????? ????? ?? ???? ??????] [http://www.anisaty.com/vb/t70913.html ????? ???? ?????] [http://www.anisaty.com/vb/t70867.html ???? ???? ??? ????? ?????] [http://www.anisaty.com/vb/t70368.html ????? ?????? ?????? ???????] [http://www.anisaty.com/vb/t70189.html ????? ?????? ????? ???????? ???????] [http://www.anisaty.com/vb/t70184.html ????? ??????? ???????? ?? ?????? ???????] [http://www.anisaty.com/vb/t70180.html ????? ?????? ???????? ??? ??????] [http://www.anisaty.com/vb/t70177.html ?????? ?????? ???????? ???????] [http://www.anisaty.com/vb/t70156.html ?????? ?????? ?? ??????? ???????] [http://www.anisaty.com/vb/t70120.html ????? ???????? ??????? ???????] [http://www.anisaty.com/vb/t69693.html ????? ???? ?????] [http://www.anisaty.com/vb/t69682.html ????? ?????? ??? ?????] [http://www.anisaty.com/vb/t69676.html ????? ???? ?????] [http://vb.5rbz.com/f37 ??????] [http://vb.5rbz.com/f55 ???????] [http://vb.5rbz.com/f45 ??? ????] [http://vb.5rbz.com/f43 ???] [http://vb.5rbz.com/f22 ??? ??] [http://vb.5rbz.com/f30 ???????] [http://vb.5rbz.com/f20 ?????] [http://vb.5rbz.com/f19 ???? ?????] [http://vb.5rbz.com/t2574 ??????? ??] [http://vb.5rbz.com/t2628 ??? ??????] [http://vb.5rbz.com/t2651 ??? ?????] [http://vb.5rbz.com/t3167 ??? ???? ???????] [http://vb.5rbz.com/t3165 ??? ?????] [http://vb.5rbz.com/t3173 ??? ???????] [http://vb.5rbz.com/t3175 ?????? ?????] [http://vb.5rbz.com/t3177 ?????? ?????] [http://vb.5rbz.com/t3178 ?????? ???? ????] [http://vb.5rbz.com/t3179 ???????? ????????] [http://vb.5rbz.com/t3191 ??? ??????] [http://vb.5rbz.com/t3195 ??? ???? ????] [http://vb.5rbz.com/t3206 ??? ??????????] [http://vb.5rbz.com/t3207 ????? ??? ??????] [http://games.5rbz.com/category/1.html ????? ????] [http://games.5rbz.com/category/2.html ????? ????] [http://games.5rbz.com/category/3.html ????? ??????] [http://games.5rbz.com/category/4.html ????? ???] [http://games.5rbz.com/category/5.html ????? ????] [http://games.5rbz.com/category/7.html ????? ?????] [http://games.5rbz.com/category/8.html ????? ????] [http://games.5rbz.com/ ????? ????] [http://games.5rbz.com/category/9.html ????? ????] [http://games.5rbz.com/category/10.html ????? ?????] [http://games.5rbz.com/category/12.html ????? ?????] [http://games.5rbz.com/category/16.html ????? ????] [http://games.5rbz.com/category/25.html ????? ???????] [http://games.5rbz.com/category/14.html ????? ???] [http://games.5rbz.com/category/15.html ????? ?????] [http://games.5rbz.com/category/18.html ????? ?????] [http://games.5rbz.com/category/19.html ????? ?? ?????] [http://games.5rbz.com/category/20.html ????? ???? ?????] [http://games.5rbz.com/category/21.html ????? ?????] [http://games.5rbz.com/category/22.html ????? ?????] [http://games.5rbz.com/category/23.html ????? ?????] [http://games.5rbz.com/category/24.html ????? ????] [http://olivesgames.com/ Olives Games] [http://www.h55h.com ?????] [http://www.h55h.com/girl-games ????? ????] [http://www.5l5l.com/ ?????] [http://www.g55y.com/ ????? ????] [http://forums.5l5l.com/ ?????] [http://g9g.bz/ g9g] [http://www.neilshare.com/ ???? ????? ?????] [http://vb.ghrorak.com/ghrorak-t7777.html ??? ????] [http://vb.ghrorak.com/ghrorak-f88 ????? ???????] [http://vb.ghrorak.com/ghrorak-f49 ??? ???????] [http://mall.3orod.com/category.php?id_category=15 ??????] [http://mall.3orod.com/category.php?id_category=24 ??????] [http://mall.3orod.com/category.php?id_category=49 ?????] [http://mall.3orod.com/category.php?id_category=162 ?????????] [http://mall.3orod.com/category.php?id_category=165 ????] [http://www.nesaeya.com/category/%D9%81%D9%88%D8%A7%D8%A6%D8%AF/ ?????] [http://vb.maas1.com/f66.html ??? ?????] [http://vb.maas1.com/f91.html ???????] [http://vb.ghrorak.com/ghrorak-t7826.html ??? ???] [http://vb.ghrorak.com/ghrorak-t7828.html ??? ??? ?????] [http://helwat.com/ ?????] [http://helwat.com/vb/ ??????? ?????] [http://helwat.com/vb/ ??????? ??????] -- Posted via http://www.ruby-forum.com/.