Skip to content

11.0.1

Compare
Choose a tag to compare
@jandupej jandupej released this 26 Jun 17:03
· 23 commits to master since this release
4e93082

11.0.1: 2024-06-26

  • IDL core version: 3.0
  • C++ version: 11.0.1
  • C# NuGet version: 11.0.1
  • Java version: 11.0.1
  • gbc & compiler library: 0.13.0.0

gbc and Bond compiler library

C++

  • Breaking change: All Bond-over-gRPC code has been removed. This is
    everything under the bond::ext:grpc namespace. Service definitions can
    still appear in .bond files, but no C++ code will be generated for them.
    See issue #1131, Bond-over-gRPC will be deprecated February
    2022
    , for the full
    announcement.
  • By default, deserialization will no longer process very deeply nested
    structures. Instead, an bond::CoreException will be thrown in order to
    protect against stack overflows. The depth limit may be changed by calling
    the function bond::SetDeserializeMaxDepth(uint32_t).
  • Fixed handling of large containers of invalid types that could cause
    excessive CPU use when deserializing some payloads.

C#

  • Breaking change: Update of Newtonsoft.Json library to version 13.3.0.
    (Issue #1156)

    This update fixes depth check in input JSON string (by default: 64).
    Depth check is necessary to prevent stack overflow issue with long payloads.

  • Breaking change: The minimum supported version of .NET Framework is
    4.6.2. Support for .NET Framework 4.5 has been dropped.

  • Breaking change: All Bond-over-gRPC code has been removed. This is
    everything under the Bond.Grpc namespace and the Bond.Grpc.CSharp NuGet
    package. Service definitions can still appear in .bond files, but no C#
    code will be generated for them. See issue #1131, Bond-over-gRPC will be
    deprecated February 2022
    ,
    for the full announcement.

  • Added codegen and deserialization support for container type aliases to
    use
    System.Collections.Immutable
    collections. (Pull request
    #1161)

  • By default, deserialization will no longer process very deeply nested
    structures. Instead, an InvalidOperationException will be thrown in
    order to protect against stack overflows. The depth limit may be changed
    by setting the property Bond.DeserializerControls.Active.MaxDepth.

Java

  • By default, deserialization will no longer process very deeply nested
    structures. Instead, a org.bondlib.InvalidBondDataException exception
    will be thrown in order to protect against stack overflows. The depth
    limit may be changed by calling the method
    org.bondlib.bond.DeserializerControls.setMaxDepth.