- 
    Type:Improvement 
- 
    Resolution: Won't Fix
- 
    Priority:Major - P3 
- 
    None
- 
    Affects Version/s: None
- 
    Component/s: None
Right now, when deserializing unsigned numbers, the bson crate will check to see if they fit in an i32 or i64 and return an appropriate bson value; however, there's no such check for signed values. This can lead to confusion, e.g. storing golden values in yaml, which always deserializes numbers as 64-bit, will produce a mixed stream of Bson::Int32 and Bson::Int64 depending on the sign of the values.