Skip to content
This repository has been archived by the owner on Oct 6, 2023. It is now read-only.

Releases: applejag/Newtonsoft.Json-for-Unity

Json.NET 13.0.1, release 2

24 Mar 20:00
13.0.102
415da26
Compare
Choose a tag to compare

This release is based on v12.0.302, but with the changes from upstream JamesNK/Newtonsoft.Json between 12.0.3 to 13.0.1 applied to it.

"Release 2" may be confusing. But I'm trying to be less confusing by using the same release integer throughout.

v11.0.202, v12.0.302, and v13.0.102 all has the equivalent changes made to the repo in comparison to the upstream.

Changes

Changes from JamesNK/Newtonsoft.Json

  • New feature - Add JsonSelectSettings with configuration for a regex timeout
  • Change - Remove portable assemblies from NuGet package
  • Change - JsonReader and JsonSerializer MaxDepth defaults to 64
  • Fix - Fixed throwing missing member error on ignored fields
  • Fix - Fixed various nullable annotations
  • Fix - Fixed annotations not being copied when tokens are cloned
  • Fix - Fixed naming strategy not being used when deserializing dictionary enum keys
  • Fix - Fixed serializing nullable struct dictionaries
  • Fix - Fixed JsonWriter.WriteToken to allow null with string token
  • Fix - Fixed missing error when deserializing JToken with a contract type mismatch
  • Fix - Fixed JTokenWriter when writing comment to an object

Json.NET 11.0.2, release 2

24 Mar 19:52
11.0.202
77748af
Compare
Choose a tag to compare

This is a backport of the changes made on the original Newtonsoft.Json from v12.0.3 to this fork's v12.0.302, but applied to Newtonsoft.Json v11.0.2.

Changes

  • ✨ Initial release of 11.0.2 backport.

  • ✨ Based on JamesNK/Newtonsoft.Json version 11.0.2

  • ✨ New: Backport of all changes made from original Newtonsoft.Json 12.0.3 to
    Newtonsoft.Json-for-Unity 12.0.302. Which includes:

    • 12.0.302 (2021-02-19)

      • ✨ New: Properly embed the link.xml into the DLLs. (#54)

      • 🐛 Fix: Preserve NullableAttribute and NullableContextAttribute.
        (#54)

      • 🐛 Fix: Preserve all JSON converters. (#8, #65)

    • 12.0.301 (2020-01-19)

      • 🔄 Change: Testing libraries are precompiled to be able to use the
        nullable reference types, as Unity does not yet support them. (#37)
    • 12.0.201 (2020-01-03)

      • ✨ New: Downgrade script for .asmdef to be able to test in Unity 2018.x.

      • ✨ New: Now testing in both Unity 2019.x and 2018.x in CircleCI workflow.

      • ✨ New: Added System.Web.HttpUtility polyfill to test project due to
        it's not included in IL2CPP builds.
        See https://forum.unity.com/threads/solved-httputility-in-il2cpp.802368/#post-5333634

      • 🔄 Change: Custom StringAssert.StartsWith to get better error messages in
        tests.

      • 🐛 Fix: AotHelper.EnsureDictionary was not generating constructor for
        DefaultContractResolver.EnumerableDictionaryWrapper<TKey, TValue>

    • 12.0.102 (2019-12-30)

      • ✨ New: Moved some documentation to the new wiki. All markdown files in
        the repository has been tidied.

      • 🐛 Fix: Only use major version in assembly version (ex: 12.0.0.0,
        instead of 12.0.1.0) (#18)

      • 🐛 Fix: Package targets .NET 4.5 & .NET 4.6.1 instead of recommended
        .NET Standard 2.0. Portable should still target the PCL profile 259
        (portable-net45+win8+wpa81+wp8)
        . (#29)

      • 🐛 Fix: Assembly not found due to unsigned and not strong named assembly.
        The packaged DLL's are now signed with the public key of Newtonsoft.Json.
        (#7, #10)

    • 12.0.101 (2019-11-26)

      • ✨ New: Setup CircleCI integration for build automation
        CircleCI badge

      • ✨ New: Setup Codacy integration for automated code reviews
        Codacy badge

      • 🔄 Change: Switched to cloudsmith.com as registry
        provider instead of npmjs.com
        Latest Version @ Cloudsmith

      • 🔄 Change: Better versioning format. For more info see
        the wiki page. Changes are based of off 12.0.1
        version (in previous format).

      • 🐛 Fix: Building on standalone causes plugin collision (#3)

Json.NET 12.0.3, release 2

24 Mar 19:56
12.0.302
49626d2
Compare
Choose a tag to compare

Changes

  • ✨ New: Properly embed the link.xml into the DLLs. (#54)

  • 🐛 Fix: Preserve NullableAttribute and NullableContextAttribute.
    (#54)

  • 🐛 Fix: Preserve all JSON converters. (#8, #65)

Json.NET 12.0.3, release 1

19 Jan 22:41
12.0.301
486af8b
Compare
Choose a tag to compare

Changes

  • ✨ New: Merged changes from
    JamesNK/Newtonsoft.Json version 12.0.3

  • 🔄 Change: Testing libraries are precompiled to be able to use the nullable
    reference types, as Unity does not yet support them. (#37)

Changes from JamesNK/Newtonsoft.Json

  • 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

Json.NET 12.0.2, release 1

04 Jan 11:21
12.0.201
7fde756
Compare
Choose a tag to compare

Changes

  • ✨ New: Merged changes from JamesNK/Newtonsoft.Json version 12.0.2

  • ✨ New: Downgrade script for .asmdef to be able to test in Unity 2018.x.

  • ✨ New: Now testing in both Unity 2019.x and 2018.x in CircleCI workflow.

  • ✨ New: Added System.Web.HttpUtility polyfill to test project due to it's not included in IL2CPP builds. See https://forum.unity.com/threads/solved-httputility-in-il2cpp.802368/#post-5333634

  • 🔄 Change: Custom StringAssert.StartsWith to get better error messages in tests.

  • 🐛 Fix: AotHelper.EnsureDictionary was not generating constructor for DefaultContractResolver.EnumerableDictionaryWrapper<TKey, TValue>

Changes from JamesNK/Newtonsoft.Json

  • 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

Json.NET 12.0.1, release 2

30 Dec 01:43
12.0.102
35a2470
Compare
Choose a tag to compare

Changes

  • ✨ New: Moved some documentation to the new wiki. All markdown files in the
    repository has been tidied.

  • 🐛 Fix: Only use major version in assembly version (ex: 12.0.0.0, instead of
    12.0.1.0) (#18)

  • 🐛 Fix: Package targets .NET 4.5 & .NET 4.6.1 instead of recommended
    .NET Standard 2.0. Portable should still target the PCL profile 259
    (portable-net45+win8+wpa81+wp8)
    . (#29)

  • 🐛 Fix: Assembly not found due to unsigned and not strong named assembly.
    The packaged DLL's are now signed with the public key of Newtonsoft.Json.
    (#7, #10)

Json.NET 12.0.1, release 1 for NPM

30 Dec 02:04
12.0.101-npm
8c47720
Compare
Choose a tag to compare

This is a special release, identical to release 12.0.101, but with some description changes.

12.0.101-npm was released as the last NPM published package of Newtonsoft.Json-for-Unity (npmjs.com) npmjs badge.

We've since moved to Cloudsmith (cloudsmith.com) Cloudsmith badge

Note: This release remains as for future reference and should not be consumed by users of the Newtonsoft.Json-for-Unity package.

Json.NET 12.0.1, release 1

26 Nov 21:41
12.0.101
834f9cb
Compare
Choose a tag to compare

Changes

  • ✨ Initial release

  • ✨ Based on JamesNK/Newtonsoft.Json version 12.0.1

  • ✨ New: Setup CircleCI integration for build automation CircleCI badge

  • ✨ New: Setup Codacy integration for automated code reviews Codacy badge

  • 🔄 Change: Switched to cloudsmith.com as registry provider instead of npmjs.com Latest Version @ Cloudsmith

  • 🔄 Change: Better versioning format. For more info see the wiki page. Changes are based of off 12.0.1 version (in previous format).

  • 🐛 Fix: Building on standalone causes plugin collision (#3)

The new versioning format

Reason for the new versioning is so this repo can have an independent version but still look like JamesNK's versioning.

versioning explanation

NPM registries only supports 3-component versions, in comparison to .NET that rolls with 4-component versions. Otherwise this release would be 12.0.1.1 not 12.0.101

Changes from JamesNK/Newtonsoft.Json

  • 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