Changes between Initial Version and Version 1 of Ticket #14


Ignore:
Timestamp:
05/15/06 14:49:36 (8 years ago)
Author:
xi
Comment:

Strange, it works for me under Python 2.5a2 on Linux and marshal dumps and loads inf/nan values correctly. Probably it's a win32 issue.

Anyway I've applied a modified version of your patch ([168]). I assume it fixes the problem, so I'm closing the ticket. Could you check in on your PC and reopen it if it still fails?

Thanks for the patch.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #14

    • Property Status changed from new to closed
    • Property Resolution changed from to fixed
  • Ticket #14 – Description

    initial v1  
    11Trying to import YAML fails in Python 2.5.  Even simple patches 
    2 fail, because the root cause is that NaNs and INFs cannot be 
     2fail, because the root cause is that !NaNs and INFs cannot be 
    33marshalled/unmarshalled.  Marshalling is used to save and restore  
    44compiled python modules, so a tested module can work initially,  
    55but later fail to load (when not from source). 
    66 
    7 When handling INFs and NaNs, you need to be careful. 1e300000 is  
     7When handling INFs and !NaNs, you need to be careful. 1e300000 is  
    88not a safe way to represent infinity, and fails to pickle/unpickle  
    99safely from manifest constants.  Different C runtimes represent  
    10 the text for INFs and NaNs differently.  Since Python 2.5 folds 
     10the text for INFs and !NaNs differently.  Since Python 2.5 folds 
    1111constants, a simple expression won't solve the problem. 
    1212