Skip to content

Releases: JetBrains/rd

2026.1.2

10 Feb 18:37

Choose a tag to compare

  • rd-net: improve the performance of synchronous calls (#584)
  • rd-net: improve the performance of Signal (#585)
  • rd-gen: delegate marshaller's write to class's method to avoid cross-module protected method access

2026.1.1

26 Jan 17:34
4be878d

Choose a tag to compare

Fixed

  • rd-net: "RdId must not be nil" error during binding of a local call result.

2026.1.0

21 Jan 19:54

Choose a tag to compare

Changed

  • Breaking: rd-gen: get rid of runtime dependency on the Kotlin compiler, drop deprecated features related to bundled compiler
  • rd-net: nullify the JetDefaultInterpolatedStringHandler's buffer in when calling ToStringAndClear (saves allocations)
  • rd-reflection: simplification of assertions

Added

  • rd-net: .NET 8 support
  • rd-net: expose inner lifetime status of SequentialLifetimes

Fixed

  • rd-net: work around for infinite loop when using Reflection.Emit in a multi-threaded app (dotnet/runtime#119958)
  • rd-net: correct bound entities' lifetimes for local calls

New Contributors

Full Changelog: 2025.3.1...2026.1.0

2025.3.1

02 Oct 18:13

Choose a tag to compare

Fixed

  • rd-net: double type registration.

2025.3.0

19 Sep 14:53

Choose a tag to compare

Deprecated

  • rd-gen: ability to compile Kotlin code during rd-gen invocation is now deprecated, and will be removed in a later release. The users are advised to compile the code using other means (e.g. Gradle), and provide rd-gen with pre-compiled model classes.

Removed

  • rd-cpp: cut any support for CMake older than 3.5.
  • rd-net: support for .NET Framework 3.5.

Added

  • rd-gen: support for inline classes/structs (see #550).

Changed

Fixed
rd-kt: fix package loss in case of disconnect+reconnect scenario (see #540).

2024.3.3

02 Sep 10:05

Choose a tag to compare

Fixed

  • rd-net: rd-reflection: support boxed values

2025.2.3

22 Aug 16:50

Choose a tag to compare

Fixed

  • rd-net: infinite loop in the UnsafeWriter when trying to allocate over 1 GiB.
  • rd-net: fix IsBindable for default immutable arrays.

Changed

  • rd-net: disable the diagnostic errors on (Lifetime)default use. The diagnostic is currently opt-in (use Lifetime.LogErrorIfLifetimeIsNotInitialized to enable it).
  • rd-kt, rd-net: soft message length validation: do not break the connection on messages over SocketWire::maxMessageLength bytes, but print diagnostic.

2024.3.2

26 Jul 17:39

Choose a tag to compare

Fixed

  • rd-net: infinite loop in the UnsafeWriter when trying to allocate over 1 GiB

Full Changelog: 2024.3.1...2024.3.2

2025.2.2

19 Jun 17:13

Choose a tag to compare

  • rd-kt: Use fine-grained locking for creating protocol extensions to reduce lock contention and the chance of deadlock

2025.2.1

13 Jun 12:22

Choose a tag to compare

  • rd-cpp: changed logging level from Info to Trace in protocol message processing