New tests.
[mono.git] / mcs / class / System.ServiceModel.Web / System.Runtime.Serialization.Json / ChangeLog
index a43d556a4b2894efa9cea80d0b5c419b63f1fa5d..4c38b06db2d44f9cf156ff0e21aecf857f21da98 100644 (file)
@@ -1,8 +1,156 @@
+2010-04-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonSerializationReader.cs : use List<T> if the contract member
+         type is interface.
+
+2010-03-16  Jb Evain  <jbevain@novell.com>
+
+       * DataContractJsonSerializer.cs: use MOONLIGHT symbol to
+       disambiguate MonoTouch and Moonlight code.
+
+2010-03-13  Kornél Pál  <kornelpal@gmail.com>
+
+       * JavaScriptReader.cs: Deserialize "false" correctly.
+         Fixed bug #586712.
+
+2010-03-10  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JavaScriptReader.cs : moved from Sys.Json/JsonReader.cs.
+
+2010-03-10  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JavaScriptObjectDeserializer.cs : new internal file, which is
+         used by System.Json (for moonlight compatibility).
+
+2010-03-09  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonSerializationWriter.cs, JsonSerializationReader.cs,
+         JsonWriter.cs : Fix DateTime serialization and "\/" string escape
+         issues. Fixed bug #586169.
+
+2010-02-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonWriter.cs : write NaN, INF, -INF as JSON string, not JSON number.
+         Fixed bug #573691.
+
+2010-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataContractJsonSerializer.cs : KnownTypes does not include root
+         type. Fixed bug #573689.
+
+2010-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonSerializationReader.cs : oops, wrong fix, should consume the
+         reader.
+
+2010-01-27  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonSerializationReader.cs : "null" for string should be read as
+         null, not String.Empty. Fixed bug #573690.
+
+2010-01-26  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DataContractJsonSerializer_2_1.cs: Don't hide [Field|Method]
+       AccessException inside a SerializationException but in a 
+       SecurityException.
+
+2010-01-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DataContractJsonSerializer_2_1.cs: New. Simpler version for 
+       Moonlight since it does not inherit from the same base type nor
+       does it overrides any base methods.
+
+2010-01-08  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * TypeMap.cs : forward port r145077 (see change line for 2009-10-29).
+
+2009-12-14  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * TypeMap.cs : handle [Serializable] objects such as KeyValuePair<,>
+         like we do in 2.0. Removed previous workarounds. (Do not serialize
+         and deserialize nonpublic members in "default" mappings.)
+
+2009-12-11  Chris Toshok  <toshok@ximian.com>
+
+       * TypeMap.cs (CreateDefaultTypeMap): only include non-public
+       property info when dealing with KeyValuePair<,>.  This is *not*
+       the way MS handles it, but we emulate things much better with this
+       hack.
+
+2009-12-11  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * JsonReader.cs : e- and e+ was resulting in wrong parse error.
+         This should fix part of bug #531904.
+
+2009-12-08  Chris Toshok  <toshok@ximian.com>
+
+       * JsonSerializationReader.cs (DeserializeGenericCollection): in
+       the 2.1 case we still need to convert the List<> to an array.
+
+2009-12-07  Chris Toshok  <toshok@ximian.com>
+
+       * JsonReaderWriterFactory.cs (CreateJsonReader): pass null for the
+       encoding parameter instead of calling Detect.  The jsonreader's
+       PushbackReader will autodetect.
+       (Detect): remove.  a BufferedStream created from an unseekable
+       stream is itself unseekable, which makes it just as useless.  This
+       breaks netflix's isostore file parsing.
+
+       * JsonReader.cs (PushbackReader): add a ctor which doesn't take an
+       encoding, for the autodetecting reader case.  for this ctor, pass
+       true to StreamReader's ctor for detectEncodingFromByteOrderMarks.
+
+2009-12-06  Chris Toshok  <toshok@ximian.com>
+
+       * JsonSerializationReader.cs (DeserializeGenericCollection): this
+       is jb's (iirc) patch, actually.  Types subclassing from
+       ICollection<T> need to be supported, and since it's an interface
+       the implementation might be explicit.  So instead of groveling
+       around in the actual type, we need to dispatch through the
+       interface's method.
+
+       * TypeMap.cs (CreateDefaultTypeMap): we need to include non-public
+       properties, since KeyValuePair items must be able to write to Key
+       and Value properties.
+
+       * JsonReader.cs (ReadContent): for builtin values (null, true,
+       false), use TryReadString instead of individual ReadChar's, since
+       they aren't reversible if the string didn't match.  In the default
+       case, if we're LameSilverlightLiseralParser, we need to push back
+       the current character onto the stream -- this is because for
+       netflix's AppConfig.json we were parsing "frameRatePolicy" as
+       "rameRatePolicy" (the 'f' was triggering the "false" parsing).
+       (class PushBackReader): add this class to unify all the pushing
+       back of characters we need to do.  1 character (JsonReader's old
+       "saved_char") isn't enough given that you could have a property
+       named, e.g., "falsifiable", and we'd need 4 characters worth of
+       pushback to recognize that correctly.
+
+2009-11-20  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DataContractJsonSerializer.cs, JsonReader.cs : Silverlight uses
+         LAME parser that allows object member name as *raw* string
+         without double-quotes. (This also reverts the previous change.)
+
+2009-11-12  Atsushi Enomoto  <atsushi@ximian.com>
+
+       *  JsonSerializationReader.cs : reuse generic collection search
+         logic in KnownTypeCollection.cs. Fixed bug #551671.
+
 2009-10-30  Andreia Gaita  <avidigal@novell.com>
 
        * DataContractJsonSerializer.cs: SL accepts keys without "", so tweak
        the data to fix the quotes before passing it to the deserializer
 
+2009-10-29  Chris Toshok  <toshok@ximian.com>
+
+       * TypeMap.cs (Deserialize): use
+       FormatterServices.GetUninitializedObject instead of
+       Activator.CreateInstance, since we shouldn't be invoking the
+       default ctor.
+
+       (forward ported to trunk on 2010-01-08 by atsushi)
+
 2009-10-23  Atsushi Enomoto  <atsushi@ximian.com>
 
        * DataContractJsonSerializer.cs