All Versions
11
Latest Version
Avg Release Cycle
140 days
Latest Release
1821 days ago

Changelog History
Page 1

  • v12.0.3 Changes

    November 09, 2019
    • ๐Ÿ†• New feature - Added support for nullable reference types
    • ๐Ÿ†• New feature - Added KebabCaseNamingStrategy
    • ๐Ÿ”„ Change - Package now uses embedded package icon
    • ๐Ÿ›  Fix - Fixed bug when merging JToken with itself
    • ๐Ÿ›  Fix - Fixed performance of calling ICustomTypeDescriptor.GetProperties
    • ๐Ÿ›  Fix - Fixed serializing Enumerable.Empty and empty arrays on .NET Core 3.0
    • ๐Ÿ›  Fix - Fixed deserializing some collection types with constructor
    • ๐Ÿ›  Fix - Fixed deserializing IImmutableSet to ImmutableHashSet instead of ImmutableSortedSet
    • ๐Ÿ›  Fix - Fixed deserializing IImmutableDictionary to ImmutableDictionary instead of ImmutableSortedDictionary
    • ๐Ÿ›  Fix - Fixed deserializing into constructors with more than 256 parameters
    • ๐Ÿ›  Fix - Fixed hang when deserializing JTokenReader with preceding comment
    • ๐Ÿ›  Fix - Fixed JSONPath scanning with nested indexer
    • ๐Ÿ›  Fix - Fixed deserializing incomplete JSON object to JObject
    • ๐Ÿ›  Fix - Fixed using StringEnumConverter with naming strategy and specified values
  • v12.0.2 Changes

    April 22, 2019
    • ๐Ÿ†• New feature - Added MissingMemberHandling to JsonObjectAttribute and JsonObjectContract
    • ๐Ÿ†• New feature - Added constructor to JTokenReader to specify initial path
    • ๐Ÿ†• New feature - Added JsonProperty.IsRequiredSpecified
    • ๐Ÿ†• New feature - Added JsonContract.InternalConverter
    • ๐Ÿ”„ Change - Moved embedded debug symbols in NuGet package to a symbol package on NuGet.org
    • ๐Ÿ›  Fix - Fixed deserializing nullable struct collections
    • ๐Ÿ›  Fix - Fixed memory link when serializing enums to named values
    • ๐Ÿ›  Fix - Fixed error when setting JsonLoadSettings.DuplicatePropertyNameHandling to Replace
  • v12.0.1 Changes

    November 27, 2018
    • ๐Ÿ†• New feature - Added NuGet package signing
    • ๐Ÿ†• New feature - Added Authenticode assembly signing
    • ๐Ÿ†• New feature - Added SourceLink support
    • ๐Ÿ†• New feature - Added constructors to StringEnumConverter for setting AllowIntegerValue
    • ๐Ÿ†• New feature - Added JsonNameTable and JsonTextReader.PropertyNameTable
    • ๐Ÿ†• New feature - Added line information to JsonSerializationException
    • ๐Ÿ†• New feature - Added JObject.Property overload with a StringComparison
    • ๐Ÿ†• New feature - Added JsonMergeSettings.PropertyNameComparison
    • ๐Ÿ†• New feature - Added support for multiple Date constructors with JavaScriptDateTimeConverter
    • ๐Ÿ†• New feature - Added support for strict equals and strict not equals in JSON Path queries
    • ๐Ÿ†• New feature - Added EncodeSpecialCharacters setting to XmlNodeConverter
    • ๐Ÿ†• New feature - Added trace message for serializing to non-writable properties
    • ๐Ÿ†• New feature - Added support for NamingStrategy to StringEnumConverter
    • ๐Ÿ†• New feature - Added JsonLoadSettings.DuplicatePropertyNameHandling setting
    • ๐Ÿ”„ Change - JTokenReader now uses JsonReader.DateTimeZoneHandling setting for date values
    • ๐Ÿ”„ Change - Excluded TargetSite when serializing Exceptions without SerializableAttribute
    • ๐Ÿ”„ Change - Changed StringEnumConverter.ctor(bool camelCaseText) to obsolete
    • ๐Ÿ”„ Change - Changed StringEnumConverter.CamelCaseText to obsolete
    • ๐Ÿ›  Fix - Fixed incorrect overflow when reading decimal values from JSON
    • ๐Ÿ›  Fix - Fixed error message when trying to deserialize an abstract serializable type
    • ๐Ÿ›  Fix - Fixed parsing decimals from a string with an exponent
    • ๐Ÿ›  Fix - Fixed losing DateTime.Kind when deserializing ISO date strings
    • ๐Ÿ›  Fix - Fixed calling constructors with ref and in parameters
    • ๐Ÿ›  Fix - Fixed rare race condition in name table when serializing
    • ๐Ÿ›  Fix - Fixed unhelpful exception message when unable to convert JSON value to DateTime
    • ๐Ÿ›  Fix - Fixed error when deserializing empty array in DataTable
    • ๐Ÿ›  Fix - Fixed deserializing empty string to empty byte array
    • ๐Ÿ›  Fix - Fixed blank extension data values with required properties and deserializing with constructor
    • ๐Ÿ›  Fix - Fixed ignored values being set in extension data when deserializing
    • ๐Ÿ›  Fix - Fixed comparing equal integer and floating point values in JSON Path
    • ๐Ÿ›  Fix - Fixed BsonReader when reading multiple content
    • ๐Ÿ›  Fix - Fixed setting extension data with existing key
    • ๐Ÿ›  Fix - Fixed including array attribute in XML with namespaces when converting JSON to XML
    • ๐Ÿ›  Fix - Fixed error when serializing ref struct properties by excluding them from serialization
  • v11.0.2 Changes

    March 24, 2018
    • ๐Ÿ”„ Change - Revert DataContractAttribute to not force JSON object serialization (use JsonObjectAttribute instead)
    • ๐Ÿ›  Fix - Fixed JPropertyDesciptor.GetValue and SetValue to not throw for non-JObject argument
    • ๐Ÿ›  Fix - Fixed JObject ICustomTypeDescriptor.GetProperty to return the current instance
    • ๐Ÿ›  Fix - Fixed serializing FileInfo/DirectoryInfo with a JsonConverter in .NET Standard
    • ๐Ÿ›  Fix - Fixed serializing F# enums
    • ๐Ÿ›  Fix - Fixed serializing types with multiple members of the same name
  • v11.0.1 Changes

    February 17, 2018
    • ๐Ÿ†• New feature - Added netstandard2.0 build
    • ๐Ÿ†• New feature - Added generic JsonConverter
    • ๐Ÿ†• New feature - Added UnixDateConverter for converting Unix timestaps
    • ๐Ÿ†• New feature - Added support for regex operator in JSON Paths
    • ๐Ÿ†• New feature - Added JsonObjectAttribute.ItemNullValueHandling
    • ๐Ÿ†• New feature - Added JsonObjectContract.ItemNullValueHandling
    • ๐Ÿ†• New feature - Improved performance when resolving serialization contracts by using ConcurrentDictionary
    • ๐Ÿ†• New feature - Improved performance of JToken.Path with a faster reverse
    • ๐Ÿ†• New feature - Improved performance of parsing Int32 JSON integer values
    • ๐Ÿ†• New feature - Improved performance of parsing and writing enum names
    • ๐Ÿ†• New feature - Added IgnoreIsSpecifiedMembers to DefaultContractResolver
    • ๐Ÿ†• New feature - Added IgnoreShouldSerializeMembers to DefaultContractResolver
    • ๐Ÿ†• New feature - Added support for reading multiple comma delimited values with JsonReader.SupportMultipleContent
    • ๐Ÿ†• New feature - Improved error message when an object is reused with PreserveReferencesHandling
    • ๐Ÿ†• New feature - Added IConvertible support to netstandard1.3
    • ๐Ÿ†• New feature - Added INotifyPropertyChanging support to netstandard1.3
    • ๐Ÿ†• New feature - Optimized internal buffering when writing very large strings
    • ๐Ÿ†• New feature - JObject.ContainsKey is now public
    • ๐Ÿ†• New feature - Improved the error message when serialized ByRef properties
    • ๐Ÿ†• New feature - Improved the error message when serializing FileInfo/DictionaryInfo without ISerializable
    • ๐Ÿ†• New feature - Improved the error message when failing conversion in JsonReader.ReadAsInt32 and JsonReader.ReadAsDecimal
    • ๐Ÿ†• New feature - Improved the error message when deserializing badly formatted regex strings
    • ๐Ÿ”„ Change - Types that implement ISerializable but don't have [SerializableAttribute] are not serialized using ISerializable
    • ๐Ÿ”„ Change - Changed JsonProperty.MemberConverter to obsolete
    • ๐Ÿ”„ Change - Changed camel casing logic for all caps words to not leave last character capitalized
    • ๐Ÿ”„ Change - Changed enum serialization in dictionary keys to use EnumMemberAttribute
    • ๐Ÿ›  Fix - Fixed converting default datetime in JSON to XML on netstandard1.3
    • ๐Ÿ›  Fix - Fixed deserializing ObservableCollection in .NET Core 2.0
    • ๐Ÿ›  Fix - Fixed incorrectly allowing static IsSpecified properties
    • ๐Ÿ›  Fix - Fixed not preserving trailing zeros when deserializing decimals
    • ๐Ÿ›  Fix - Fixed JValue.CompareTo with number and string values
    • ๐Ÿ›  Fix - Fixed not erroring when reading undefined for nullable long
    • ๐Ÿ›  Fix - Fixed serializing immutable collections when .NET 4.0 or previous Newtonsoft.Json assembly is GACed
    • ๐Ÿ›  Fix - Fixed writing null values by XmlNodeConverter and RegexConverter
    • ๐Ÿ›  Fix - Fixed deserializing with a TraceWriter when the reader is not at the start
    • ๐Ÿ›  Fix - Fixed TraceJsonWriter.WriteValue(object) writing value twice
    • ๐Ÿ›  Fix - Fixed deserializing with constructor and readonly collection property
    • ๐Ÿ›  Fix - Fixed error when writing unknown null value as JSON
    • ๐Ÿ›  Fix - Fixed merging null string values
    • ๐Ÿ›  Fix - Fixed missing CancellationToken usages in JsonTextWriter.WriteAsync
    • ๐Ÿ›  Fix - Fixed error with JsonSerializer.Populate and comments in JSON array
    • ๐Ÿ›  Fix - Fixed error handling when deserializing certain dictionary and lists
    • ๐Ÿ›  Fix - Fixed serializing collection that is nullable
    • ๐Ÿ›  Fix - Fixed JsonTextReader sync read in async method
    • ๐Ÿ›  Fix - Fixed JsonConverter not called when target type is list and token is a string
    • ๐Ÿ›  Fix - Fixed serializing a property that is defined in multiple interfaces
    • ๐Ÿ›  Fix - Fixed error when deserializing null value into ConcurrentDictionary
    • ๐Ÿ›  Fix - Fixed escaping special characters in generated JSON Paths
    • ๐Ÿ›  Fix - Fixed reading escaped special characters in JSON Paths
    • ๐Ÿ›  Fix - Fixed using extension data with dictionary that explicitly implements Add method
    • ๐Ÿ›  Fix - Fixed parsing enum name to exact casing value before falling back to case-insensitive value
    • ๐Ÿ›  Fix - Fixed DataContractAttribute not forcing object serialization of classes
    • ๐Ÿ›  Fix - Fixed bug when deserializing into existing non-IList collection
    • ๐Ÿ›  Fix - Fixed bug when deserializing into existing non-IDictionary collection
    • ๐Ÿ›  Fix - Fixed JsonReader.ReadAsInt32 with BigInteger values
  • v10.0.3 Changes

    June 18, 2017
    • ๐Ÿ†• New feature - Added support for deserializing XmlElement, XmlNode, XObject, XNode and XContainer with XmlNodeConverter
    • ๐Ÿ”„ Change - MinClientVersion 2.12 added to NuGet package to restrict to compatible clients
    • ๐Ÿ›  Fix - Fixed JsonSerializer.Binder to not throw an error when binder instance is compatible
    • ๐Ÿ›  Fix - Fixed stack overflow when deserializing incomplete JSON to XML
    • ๐Ÿ›  Fix - Fixed JSON Path recursive descent queries
    • ๐Ÿ›  Fix - Fixed serializing ConcurrentDictionary in .NET Core 2.0
    • ๐Ÿ›  Fix - Fixed serializing ConcurrentStack/Queue/Bag
    • ๐Ÿ›  Fix - Fixed MemoryTraceWriter thread safety
    • ๐Ÿ›  Fix - Fixed JSON Path root filter sometimes not correctly returning root token
    • ๐Ÿ›  Fix - Fixed properties with JsonIgnore not being ignored with ItemRequired
    • ๐Ÿ›  Fix - Fixed JToken.Load not reading past comment when CommentHandling is Ignore
    • ๐Ÿ›  Fix - Fixed JsonReader.ReadAsDecimal with a JValue containing a BigInteger value
    • ๐Ÿ›  Fix - Fixed converting JSON values to XML attributes to ignore current culture
    • ๐Ÿ›  Fix - Fixed converting JSON byte array data to XML
    • ๐Ÿ›  Fix - Fixed reading some types from KeyValuePairConverter incorrectly
    • ๐Ÿ›  Fix - Fixed comparing high precision decimal JValues
    • ๐Ÿ›  Fix - Fixed JsonWriter.WriteToken(JsonReader) not erroring on incomplete token
    • ๐Ÿ›  Fix - Fixed not preventing negative integers with StringEnumConverters.AllowIntegerValues
  • v10.0.2 Changes

    April 02, 2017
    • ๐Ÿ”„ Change - .NET 4 portable class library target added back to NuGet package
    • ๐Ÿ”„ Change - Changed NuGet dependencies to use NETStandard.Library 1.6.1
    • ๐Ÿ”„ Change - Changed double parsing back to double.TryParse to avoid small floating point precision errors
    • ๐Ÿ›  Fix - Fixed binary serialization of JsonException and friends
    • ๐Ÿ›  Fix - Fixed JsonLoadSettings.LineInfoHandling not being used correctly when loading JTokens
    • ๐Ÿ›  Fix - Fixed serializing IListSource implementations
    • ๐Ÿ›  Fix - Fixed handling errors when reading metadata properties during deserialization
  • v10.0.1 Changes

    March 20, 2017
    • ๐Ÿ†• New feature - Added async read support to JsonReader
    • ๐Ÿ†• New feature - Added async write support to JsonWriter
    • ๐Ÿ†• New feature - Added async support for loading JObject and JArray
    • ๐Ÿ†• New feature - Added non-allocating parsing of double and decimal values
    • ๐Ÿ†• New feature - Added support for TypeConverters to netstandard1.0+
    • ๐Ÿ†• New feature - Added support for BigInteger to netstandard1.3+
    • ๐Ÿ†• New feature - Added support for ISerializable to netstandard1.3+
    • ๐Ÿ†• New feature - Added support for XmlDocument to netstandard1.3+
    • ๐Ÿ†• New feature - Added support for SerializableAttribute and NonSerializedAttribute to netstandard1.3+
    • ๐Ÿ†• New feature - Added ISerializationBinder
    • ๐Ÿ†• New feature - Added SerializationBinder properties to JsonSerializer and JsonSerializerSettings
    • ๐Ÿ†• New feature - Added TypeNameAssemblyFormatHandling
    • ๐Ÿ†• New feature - Added TypeNameAssemblyFormatHandling properties to JsonSerializer and JsonSerializerSettings
    • ๐Ÿ†• New feature - Added support for root object selector in JSONPath filters
    • ๐Ÿ†• New feature - Added support for multiple names in JSONPath scan filter
    • ๐Ÿ†• New feature - Added support for any combination of paths and values in JSONPath filter expressions
    • ๐Ÿ†• New feature - Added support for extension data names to NamingStrategy
    • ๐Ÿ†• New feature - Added ProcessExtensionDataNames flag to NamingStrategy
    • ๐Ÿ†• New feature - Added JsonWriter.AutoCompleteOnClose to control whether JSON is auto-completed on JsonWriter.Close
    • ๐Ÿ†• New feature - Added JsonReaderException constructor with path, line number, line position
    • ๐Ÿ†• New feature - Added JsonWriterException constructor with path
    • ๐Ÿ†• New feature - Added JsonReader.SetToken method overload with option not to update position array index
    • ๐Ÿ†• New feature - Added support for automatically calling single constructor on immutable structs
    • ๐Ÿ”„ Change - Removed .NET 4 portable class library target from NuGet package
    • ๐Ÿ”„ Change - Removed obsolete JsonConverter.GetSchema method
    • ๐Ÿ”„ Change - Removed obsolete constructor from DefaultContractResolver
    • ๐Ÿ”„ Change - Removed obsolete async methods from JsonConvert
    • ๐Ÿ”„ Change - Removed obsolete OnDeserialized, OnDeserializing, OnSerialized, OnSerializing, OnError from JsonContract
    • ๐Ÿ”„ Change - Removed obsolete JsonDictionaryContract.PropertyNameResolver
    • ๐Ÿ”„ Change - Removed obsolete ConstructorParameters, OverrideConstructor, ParametrizedConstructor from JsonObjectContract
    • ๐Ÿ”„ Change - Obsoleted TypeNameAssemblyFormat properties on JsonSerializer and JsonSerializerSettings
    • ๐Ÿ”„ Change - Obsoleted SerializationBinder
    • ๐Ÿ”„ Change - Obsoleted Binder properties on JsonSerializer and JsonSerializerSettings
    • ๐Ÿ’… Change - Obsoleted FormatterAssemblyStyle in non-full .NET targets
    • ๐Ÿ”„ Change - Obsoleted Newtonsoft.Json.Bson (moved to new NuGet package)
    • ๐Ÿ”„ Change - Improved constructor parameter binding on .NET Core and portable builds
    • ๐Ÿ”„ Change - Improved error when attempting to convert root JSON object property to an XML attribute
    • ๐Ÿ”„ Change - Changed exception thrown when parsing invalid Unicode escape sequence to JsonReaderException
    • ๐Ÿ”„ Change - Changed StringEnumConverter.AllowIntegerValues to also reject reading integer strings
    • ๐Ÿ”„ Change - Changed StringEnumConverter.AllowIntegerValues to also reject writing enum values with no name
    • ๐Ÿ›  Fix - Fixed JsonTextReader.ReadAsXXX methods not erroring on missing commas between values
    • ๐Ÿ›  Fix - Fixed error when serializing F# lists with F# 4.1+
    • ๐Ÿ›  Fix - Fixed StringEnumConverter reading specified enum names that contain a comma
    • ๐Ÿ›  Fix - Fixed using a TraceWriter with nullable bytes
    • ๐Ÿ›  Fix - Fixed deserializing null Regex values
    • ๐Ÿ›  Fix - Fixed deserializing DataTable with error handling
    • ๐Ÿ›  Fix - Fixed DynamicReflectionDelegateFactory creating typed value type constructors
    • ๐Ÿ›  Fix - Fixed deserializing with type naming and complex nested generic types
    • ๐Ÿ›  Fix - Fixed error when converting certain JSON to XML on .NET Core
    • ๐Ÿ›  Fix - Fixed error handling skipping reading the next object value
    • ๐Ÿ›  Fix - Fixed date XML precision when converting certain JSON to XML on portable builds
    • ๐Ÿ›  Fix - Fixed not serializing readonly properties as references if they have corresponding creator parameters
    • ๐Ÿ›  Fix - Fixed type name being written with nullable structs and TypeNameHandling.Auto
    • ๐Ÿ›  Fix - Fixed deserializing a duplicate dictionary key from a parameterized constructor
    • ๐Ÿ›  Fix - Fixed not erroring when deserializing incomplete JSON with a parameterized constructor
    • ๐Ÿ›  Fix - Fixed incorrectly parsing scan filter when name is quoted
    • ๐Ÿ›  Fix - Fixed return type for SByte and SByteNullable in JToken.ToObject
    • ๐Ÿ›  Fix - Fixed deserializing generic only IList types with a constructor override
    • ๐Ÿ›  Fix - Fixed null reference error with ReadAsBytes and an empty JSON object
    • ๐Ÿ›  Fix - Fixed StringEnumConverter when EnumMember defines members that differ only by case
    • ๐Ÿ›  Fix - Fixed serializing protected override properties
    • ๐Ÿ›  Fix - Fixed merging null with complex type and MergeNullValueHandling.Ignore
    • ๐Ÿ›  Fix - Fixed roundtripping double.MaxValue and float.MaxValue as dictionary keys
    • ๐Ÿ›  Fix - Fixed JsonValidatingReader not closing underlying reader
    • ๐Ÿ›  Fix - Fixed writing duplicate nulls to trace with TraceJsonWriter.WriteValue for object, Uri, byte[]
    • ๐Ÿ›  Fix - Fixed BsonWriter.WriteValue erroring for null Uri or byte[]
    • ๐Ÿ›  Fix - Fixed not calling nullable WriteValue overloads in TraceJsonWriter
    • ๐Ÿ›  Fix - Fixed serializer not throwing an error when there is a comment followed by additional content when CheckAdditionalContent is true
    • ๐Ÿ›  Fix - Fixed JObject/JArray Parse not throwing an error when there is a comment followed by additional content
    • ๐Ÿ›  Fix - Fixed deserializing non-string values in some XML nodes
    • ๐Ÿ›  Fix - Fixed converting XML to JSON when json:Array and xmlns:json attributes are used directly on the array's element
    • ๐Ÿ›  Fix - Fixed error when attempting to populate values into read-only collection after creating object from non-default constructor
  • v9.0.1 Changes

    June 27, 2016
    • ๐Ÿ†• New feature - Added support for .NET Core with netstandard1.0
    • ๐Ÿ†• New feature - Added NamingStrategy, CamelCaseNamingStrategy, SnakeCaseNamingStrategy
    • ๐Ÿ†• New feature - Added naming strategy properties to JsonObjectAttribute and JsonPropertyAttribute
    • ๐Ÿ†• New feature - Updated build to use .NET CLI tools
    • ๐Ÿ†• New feature - Improved performance of many operations on large JArrays
    • ๐Ÿ›  Fix - Fixed converting XElements without a namespace attribute to JSON
    • ๐Ÿ›  Fix - Fixed various bugs in JSONPath equals and not equals comparisions
    • ๐Ÿ›  Fix - Fixed JsonTextReader.ReadAsString incorrectly erroring when reading some numbers
    • ๐Ÿ›  Fix - Fixed JTokenWriter sometimes losing types when writing JTokens
    • ๐Ÿ›  Fix - Fixed JTokenWriter sometimes losing types with JValue.WriteTo
    • ๐Ÿ›  Fix - Fixed incorrect check when looking for non-default constructors on collections
    • ๐Ÿ›  Fix - Fixed JsonReader.ReadAsDouble with a JValue BigInteger
    • ๐Ÿ›  Fix - Fixed converting dollar JSON properties to XML
    • ๐Ÿ›  Fix - Fixed dynamic property getter type information
    • ๐Ÿ›  Fix - Fixed JsonTextReader reading NaN, Infinity, -Infinity with ReadAsDouble and ReadAsString
  • v8.0.3 Changes

    March 14, 2016
    • ๐Ÿ†• New feature - Added MergeNullValueHandling
    • ๐Ÿ†• New feature - Added constructor to StringEnumConverter for setting camelcase from attribute
    • ๐Ÿ›  Fix - Fixed JsonTextWriter not getting buffer from buffer pool
    • ๐Ÿ›  Fix - Fixed iterating over extension data multiple times
    • ๐Ÿ›  Fix - Fixed JSONPath queries combining wildcard with property search
    • ๐Ÿ›  Fix - Fixed serializing ISet with the .NET 4 portable assembly
    • ๐Ÿ›  Fix - Fixed converting some property names to camel case
    • ๐Ÿ›  Fix - Fixed F# serialization in partial trust issue