ChangeLog 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. 2009-12-08 Chris Toshok <[email protected]>
  2. * JsonSerializationReader.cs (DeserializeGenericCollection): in
  3. the 2.1 case we still need to convert the List<> to an array.
  4. 2009-12-07 Chris Toshok <[email protected]>
  5. * JsonReaderWriterFactory.cs (CreateJsonReader): pass null for the
  6. encoding parameter instead of calling Detect. The jsonreader's
  7. PushbackReader will autodetect.
  8. (Detect): remove. a BufferedStream created from an unseekable
  9. stream is itself unseekable, which makes it just as useless. This
  10. breaks netflix's isostore file parsing.
  11. * JsonReader.cs (PushbackReader): add a ctor which doesn't take an
  12. encoding, for the autodetecting reader case. for this ctor, pass
  13. true to StreamReader's ctor for detectEncodingFromByteOrderMarks.
  14. 2009-12-06 Chris Toshok <[email protected]>
  15. * JsonSerializationReader.cs (DeserializeGenericCollection): this
  16. is jb's (iirc) patch, actually. Types subclassing from
  17. ICollection<T> need to be supported, and since it's an interface
  18. the implementation might be explicit. So instead of groveling
  19. around in the actual type, we need to dispatch through the
  20. interface's method.
  21. * TypeMap.cs (CreateDefaultTypeMap): we need to include non-public
  22. properties, since KeyValuePair items must be able to write to Key
  23. and Value properties.
  24. * JsonReader.cs (ReadContent): for builtin values (null, true,
  25. false), use TryReadString instead of individual ReadChar's, since
  26. they aren't reversible if the string didn't match. In the default
  27. case, if we're LameSilverlightLiseralParser, we need to push back
  28. the current character onto the stream -- this is because for
  29. netflix's AppConfig.json we were parsing "frameRatePolicy" as
  30. "rameRatePolicy" (the 'f' was triggering the "false" parsing).
  31. (class PushBackReader): add this class to unify all the pushing
  32. back of characters we need to do. 1 character (JsonReader's old
  33. "saved_char") isn't enough given that you could have a property
  34. named, e.g., "falsifiable", and we'd need 4 characters worth of
  35. pushback to recognize that correctly.
  36. 2009-11-20 Atsushi Enomoto <[email protected]>
  37. * DataContractJsonSerializer.cs, JsonReader.cs : Silverlight uses
  38. LAME parser that allows object member name as *raw* string
  39. without double-quotes. (This also reverts the previous change.)
  40. 2009-11-12 Atsushi Enomoto <[email protected]>
  41. * JsonSerializationReader.cs : reuse generic collection search
  42. logic in KnownTypeCollection.cs. Fixed bug #551671.
  43. 2009-10-30 Andreia Gaita <[email protected]>
  44. * DataContractJsonSerializer.cs: SL accepts keys without "", so tweak
  45. the data to fix the quotes before passing it to the deserializer
  46. 2009-10-23 Atsushi Enomoto <[email protected]>
  47. * DataContractJsonSerializer.cs
  48. TypeMap.cs
  49. JsonSerializationReader.cs : add experimental monotouch build.
  50. 2009-10-08 Atsushi Enomoto <[email protected]>
  51. * DataContractJsonSerializer.cs, JsonSerializationWriter.cs:
  52. alwaysEmitTypeInformation is false by default. It is for __type
  53. attribute, not for type attribute. __type name is always with ":#".
  54. * TypeMap.cs : sort members in default typemap (it is ordered).
  55. Uncomment EmitDefaultValue.
  56. * JsonWriter.cs : handle "null" string (it is somewhat messy).
  57. 2009-10-05 Atsushi Enomoto <[email protected]>
  58. * JsonReader.cs : copy string literal parser from System.Json.
  59. 2009-09-22 Atsushi Enomoto <[email protected]>
  60. * JsonSerializationWriter.cs : output "type" attribute on bool
  61. values too.
  62. * JsonSerializationReader.cs : type loading attempt was insufficient
  63. and hence often missed indicated types to deserialize.
  64. 2009-09-15 Atsushi Enomoto <[email protected]>
  65. * JsonWriter.cs : use Stream as its output directly and avoid
  66. extraneous preamble output. Fix interop with .NET.
  67. 2009-09-07 Atsushi Enomoto <[email protected]>
  68. * JsonReaderWriterFactory.cs : check null stream (fix test failure).
  69. 2009-03-13 Andreia Gaita <[email protected]>
  70. * JsonReader.cs: fix depth calculation
  71. 2009-03-12 Geoff Norton <[email protected]>
  72. * TypeMap.cs: Avoid checking the getter/setter information until after
  73. checking if we have the required attribute decorated.
  74. 2009-03-12 Andreia Gaita <[email protected]>
  75. * JsonReaderWriterFactory.cs: try to auto-detect encoding for streams
  76. without BOM
  77. 2009-03-02 Chris Toshok <[email protected]>
  78. * JsonReader.cs: 2.1 has HasValue.
  79. 2009-02-02 Atsushi Enomoto <[email protected]>
  80. * JsonReader.cs : show invalid input character in the error
  81. message.
  82. 2009-02-02 Atsushi Enomoto <[email protected]>
  83. * TypeMap.cs : in 2.1 do not use non-2.1 CreateInstance().
  84. 2009-02-02 Atsushi Enomoto <[email protected]>
  85. * TypeMap.cs : allow get-only collections. Note that they are not
  86. always deserializable (in .NET either).
  87. 2009-02-02 Atsushi Enomoto <[email protected]>
  88. * TypeMap.cs : DataContractJsonSerializer in RTM does not seem to
  89. reject contract-less types. So populate map for public members.
  90. * DataContractJsonSerializer.cs : close XmlWriter to flush stream
  91. (and it closes the stream by default).
  92. 2009-02-02 Andreia Gaita <[email protected]>
  93. * JsonSerializationReader.cs : Use 2.1 "approved" calls for Enum.Parse
  94. and Convert.ChangeType
  95. 2008-02-18 Atsushi Enomoto <[email protected]>
  96. * DataContractJsonSerializer.cs : IsStartObject() could raise
  97. an arbitrary exception, so wrap it inside try-catch too to enclose
  98. with SerializationException.
  99. * JsonSerializationReader.cs : support DBNull.
  100. 2008-01-30 Atsushi Enomoto <[email protected]>
  101. * DataContractJsonSerializer.cs : fixed .ctor(type, knonwTypes) that
  102. missed to delegate knownTypes correctly.
  103. * JsonSerializationReader.cs : consider KnownTypes correctly.
  104. Take "__type" fully into consideration, not just for arrays.
  105. 2008-01-30 Atsushi Enomoto <[email protected]>
  106. * JsonReader.cs : GetAttribute() was not still missing support for
  107. __type.
  108. 2008-01-30 Atsushi Enomoto <[email protected]>
  109. * JsonReader.cs : now __type is fully supported in every methods and
  110. properties in correct shape.
  111. 2008-01-30 Atsushi Enomoto <[email protected]>
  112. * JsonReader.cs : Do not consume "__type" (which is the first content
  113. of an object) as an element content. It must be handled as an
  114. attribute (it needs more changes).
  115. 2008-01-24 Atsushi Enomoto <[email protected]>
  116. * JsonSerializationReader.cs : when deserializing primitive strings,
  117. make use of "type" attribute (they are supposed to exist).
  118. Output source reader location if available.
  119. * JsonReader.cs : implement IXmlLineInfo.
  120. 2008-01-24 Atsushi Enomoto <[email protected]>
  121. * JsonSerializationReader.cs : new, for JSON deserialization support.
  122. * DataContractJsonSerializer.cs, TypeMap.cs :
  123. basic support for deserialization.
  124. 2008-01-24 Atsushi Enomoto <[email protected]>
  125. * DataContractJsonSerializer.cs,
  126. TypeMap.cs,
  127. JsonSerializationWriter.cs : split the first to those three files.
  128. 2008-01-24 Atsushi Enomoto <[email protected]>
  129. * DataContractJsonSerializer.cs : Uri and Guid are serialized as
  130. string. XmlQualifiedName is serialized as local:ns.
  131. 2008-01-22 Atsushi Enomoto <[email protected]>
  132. * JsonWriter.cs : allow __type attribute. It required couple of
  133. changes all around the class.
  134. * DataContractJsonSerializer.cs : implemented large part of
  135. serialization support (deserialization is not done yet).
  136. 2007-12-05 Atsushi Enomoto <[email protected]>
  137. * DataContractJsonSerializer.cs :
  138. moved from System.Runtime.Serialization and changed the namespace.
  139. * JsonReader.cs, JsonWriter.cs, JsonReaderWriterFactory.cs,
  140. IXmlJsonReaderInitializer.cs, IXmlJsonWriterInitializer.cs :
  141. moved from System.Xml and changed the namespace.