Skip to content

Releases: microsoft/vs-streamjsonrpc

v2.6.86-alpha

04 Sep 15:54
fde90ef

Choose a tag to compare

v2.6.86-alpha Pre-release
Pre-release

Changes:

Fixes:

  • #537: IProgress<T> support fails when using MessagePack where T is a [Union] type
  • #481: Events raised twice on client if events are declared as abstract events on server
  • #508: User-supplied MessagePackSerializerOptions no longer honored at full fidelity
  • #487: Change default DateParseHandling behavior of Newtonsoft.Json

Enhancements:

  • #539: Tighten up exceptions thrown by formatters
  • #246: Stabilize Dispose patterns
  • #346: Add support for passing IObserver<T> objects over RPC
  • #532: Add support for passing IDisposable objects over RPC
See More
  • #521: JsonRpc should preserve order of invocations on RPC server by default
  • #522: Dynamic proxies should implement void returning methods by sending notifications
  • #517: Missing JsonRpc method to expose only members of a given interface from a given RPC target object
  • #502: Expose JsonRpc.CreateExceptionFromRpcError as a protected virtual method
  • #505: Add support for serializing exceptions
  • #503: Omit the error.data property when it is null
  • #501: Rename TransmissionCompletedSize event and add received event
  • #490: Add support for MessagePack [Union] types as parameter and return types
  • #480: Support streams as a return type
  • #460: MessagePackFormatter fails to deserialize Union types

Others:

  • #540: Fix IProgress<T> when T is a MessagePack [Union] type
  • #538: Document by test the exceptions thrown in disconnect scenarios
  • #536: Add support for marshaling IObserver over RPC
  • #533: Add support for marshaling IDisposable objects over RPC
  • #535: Bump Microsoft.NET.Test.Sdk from 16.7.0 to 16.7.1 in /src
  • #534: Run tests on mono using dotnet test
  • #531: Changed target insertion branch for VS
  • #529: Bump MessagePackAnalyzer from 2.1.152 to 2.1.165 in /src
  • #527: Bump MessagePack from 2.1.152 to 2.1.165 in /src
  • #530: Bump Microsoft.Net.Compilers.Toolset from 3.6.0 to 3.7.0 in /src
  • #528: Bump Microsoft.CodeAnalysis.PublicApiAnalyzers from 3.3.0-beta1.final to 3.3.0 in /src
  • #526: Add support for void returning methods in RPC interfaces
  • #524: Add Notify methods for declared argument types
  • #525: Switch default to to retain order of incoming RPC invocations
  • #523: JsonRpc.NotifyAsync needs an overload with declared parameter types
  • #520: Only raise events from RPC targets once
  • #519: Add JsonRpc.AddLocalRpcTarget method
  • #518: Expose CreateExceptionFromRpcError as a protected virtual method
  • #514: Bump Microsoft.Bcl.AsyncInterfaces from 1.0.0 to 1.1.1 in /src
  • #512: Bump System.IO.Pipelines from 4.7.0 to 4.7.2 in /src
  • #513: Bump System.Threading.Tasks.Extensions from 4.5.3 to 4.5.4 in /src
  • #511: Bump System.Threading.Tasks.Dataflow from 4.9.0 to 4.11.1 in /src
  • #516: Bump Microsoft.NET.Test.Sdk from 16.6.1 to 16.7.0 in /src
  • #510: Activate Dependabot and update several dependencies
  • #509: Preserve user-supplied MessagePackSerializerOptions
  • #507: Merge release/vs/16.8-preview.1 to master
  • #506: Fixed proxy generation for methods with many parameters
  • #504: Update Nerdbank.Streams to 2.5.72
  • #500: Update CredScan version
  • #499: Merge v2.5 into master
  • #496: Prevent JSON deserializer from scrambling dates
  • #495: Attempt to stabilize test InvokeThenCancelToken_BetweenWriteAndFlush
  • #494: Fixes a few test issues
  • #492: Fix mis-reported cancellation of message transmission
  • #493: ClientCanWriteAndReadFromTwoWayStream test causes test process to crash
  • #491: Update .NET SDK to 3.1.302
  • #488: Add TransmissionCompletedSize ETW event
  • #486: Removed extra space in secure-development-tools.yml
  • #483: Added security.md file
  • #482: Added security tenet checking

This list of changes was auto generated.

v2.5.46

11 Aug 17:57
22d12a4

Choose a tag to compare

  • Updates Nerdbank.Streams dependency to 2.5.76 to address connection stability issues.

v2.5.44

31 Jul 18:30
f0fb950

Choose a tag to compare

Changes:

  • #498: Fix mis-reported cancellation of message transmission
  • #489: Race condition in InvokeWithCancellationAsync

This list of changes was auto generated.

v2.5.36-alpha

16 Jul 14:56
18d079d

Choose a tag to compare

v2.5.36-alpha Pre-release
Pre-release

Changes:

Fixes:

  • #474: Skip unrecognized properties in msgpack-encoded messages
  • #461: Clear reserved buffer on reader disposal
  • #472: Fail gracefully if json-rpc 2.0 error or result is missing id

Enhancements:

  • #476: Trace message transmission failures
  • #467: Add JsonRpc.DispatchCompletion property
  • #465: Fix deserialization of messages with null IDs
  • #459: Trace failures to report progress
  • #430: Support IAsyncEnumerable prefetch without returning Task<IAsyncEnumerable<T>>
  • #446: Added UseSingleObjectParameterDeserialization option to JsonRpcTargetOptions
See More

Others:

  • #463: Add devcontainer.json
  • #462: Update Nerdbank.Streams to 2.5.58

This list of changes was auto generated.

v2.4.48

16 Jul 14:16
b666a41

Choose a tag to compare

Changes:

Fixes:

  • #455: The output char buffer is too small to contain the decoded characters...

Enhancements:

  • #448: Add JsonRpcTargetOptions to auto-dispose target object on connection loss
  • #447: Allow IDisposable or IAsyncDisposable to be implemented by RPC interfaces
  • #440: Provide order-preserving SynchronizationContext

Others:

  • #458: Apply fix for IAsyncEnumerable failure
  • #456: Update Nerdbank.Streams to 2.4.67
  • #451: Add test for async iterator method throwing an exception
See More
  • #449: Allow RPC interfaces to derive from IDisposable
  • #450: Add JsonRpcTargetOptions.DisposeOnDisconnect
  • #428: Fix env var capitalization handling

This list of changes was auto generated.

v2.4.24-rc

16 Jul 14:13

Choose a tag to compare

v2.4.24-rc Pre-release
Pre-release

Changes:

Fixes:

  • #441: Canceled RPC request recognized as error instead of cancellation if RPC server method is implemented synchronously

Others:

  • #442: Report cancellation when sync RPC methods throw OperationCanceledException
  • #438: Suppress compile warnings
  • #437: Update dependencies
  • #429: ms-vscode.csharp to ms-dotnettools.csharp
  • #422: Update to Nerdbank.Streams 2.4.60
  • #418: fix typo in RequestId class doc
  • #408: Merge v2.3 into master

This list of changes was auto generated.

v2.3.103

05 Mar 04:43
2d260d4

Choose a tag to compare

Changes:

  • Update Nerdbank.Streams dependency to 2.4.60. This gets IAsyncEnumerable<T> working where T is a managed type.

This list of changes was auto generated.

v2.3.99

10 Feb 20:24
e16b711

Choose a tag to compare

Changes:

Fixes:

  • #350: HeaderDelimitedMessageHandler.Write throws when in race with disposal
  • #413: PipeMessageHandler.Dispose should not Complete reader/writer directly
  • #417: Sign xml doc comment files
  • #415: Update Nerdbank.Streams to 2.4.57
  • #414: Avoid completing reader or writer except after they are done

Enhancements:

  • #404: Add NewLineDelimitedMessageHandler

Others:

See More
  • #405: Bump MessagePack from 2.0.323 to 2.1.80 in /src/StreamJsonRpc
  • #406: Update several package references

This list of changes was auto generated.

v2.3.80-rc

07 Jan 21:37
86ae6a4

Choose a tag to compare

v2.3.80-rc Pre-release
Pre-release

Changes:

Fixes:

  • #400: JsonRpc wraps failure to deserialize argument with misleading exception
  • #386: Improve/Fix GetJsonText on built-in formatters
  • #377: Custom JsonConverter not used for deserialization of items Reported by IProgress instance.
  • #371: Multiple IProgress parameters in a single method signature doesn't work
  • #372: Async hang when message transmission fails

Enhancements:

  • #402: Report argument deserialization failures more precisely
  • #396: UI delay caused by JsonRpc.Dispose()
  • #369: RemoteInvocationException.ToString() return value should include remote callstack
See More
  • #385: Replace specialized tracker code in formatters with general APIs
  • #379: Add IAsyncEnumerable support
  • #375: Keep CancellationToken given to RPC methods working on net472 after method completion
  • #367: Add built-in MessagePack formatter
  • #357: Enable nullable ref types
  • #353: Reduce allocations for invocations that have non-cancelable tokens
  • #347: Support for deserializing params object as single first parameter
  • #329: serialize the id field as a string

Others:

  • #401: Replace test project's netcoreapp2.2 target with netcoreapp3.1
  • #399: Update to stable MessagePack 2.0.323
  • #397: Avoid synchronous blocking in common case from JsonRpc.Dispose
  • #398: Fix verbose RPC message tracing
  • #395: Include RPC server stack trace in RemoteInvocationException.ToString()
  • #394: Document (and test) that obtaining error data is much simpler now
  • #252: Extracting exception details on the client is too complicated
  • #392: Update MessagePack version
  • #393: Merge v2.2 to master
  • #388: Fix hang on deserialization exception
  • #389: Optimize RPC traffic for IAsyncEnumerable<T>
  • #382: Use user-supplied JsonConverters when deserializing IProgress report
  • #381: Move IJsonRpcMessageBufferManager into Reflection namespace
  • #380: Move IJsonRpcMessageBufferManager into Reflection namespace
  • #374: Fix bugs in IProgress handling
  • #373: Fix hang when ObjectDisposedException or OCE is thrown but for an unexpected reason
  • #370: LOC CHECKIN | Microsoft/vs-streamjsonrpc master | 20191122
  • #368: Update MessagePack to 2.0.231-rc
  • #362: Package dependency updates and better Public API tracking
  • #361: Get Live Unit Testing running more smoothly
  • #359: Provide deterministic way to await for async disposal
  • #358: Merge v2.2 to master
  • #352: Only complete PipeReader/PipeWriter after operations complete
  • #355: Update to .NET Core 3.0 SDK and C# 8
  • #348: Add support for custom (string based) request IDs

This list of changes was auto generated.

v2.3.65-alpha

03 Dec 17:12
f16d000

Choose a tag to compare

v2.3.65-alpha Pre-release
Pre-release

Changes:

Fixes:

  • #377: Custom JsonConverter not used for deserialization of items Reported by IProgress instance.
  • #371: Multiple IProgress parameters in a single method signature doesn't work
  • #372: Async hang when message transmission fails
  • #350: HeaderDelimitedMessageHandler.Write throws when in race with disposal
  • #382: Use user-supplied JsonConverters when deserializing IProgress report
  • #374: Fix bugs in IProgress handling
  • #352: Only complete PipeReader/PipeWriter after operations complete

Enhancements:

  • #379: Add IAsyncEnumerable support
  • #367: Add built-in MessagePack formatter
  • #347: Support for deserializing params object as single first parameter
  • #348: Add support for custom (string based) request IDs
See More
  • #357: Enable nullable ref types
  • #353: Reduce allocations for invocations that have non-cancelable tokens

Others:

  • #392: Update MessagePack version
  • #393: Merge v2.2 to master
  • #391: Workaround issues on mono and get tests running
  • #388: Fix hang on deserialization exception
  • #389: Optimize RPC traffic for IAsyncEnumerable<T>
  • #387: Getting a StreamJsonRpc.RemoteInvocationException when invoking a server->client RPC on Mono.
  • #383: Use user-supplied JsonConverters when deserializing IProgress report
  • #381: Move IJsonRpcMessageBufferManager into Reflection namespace
  • #380: Move IJsonRpcMessageBufferManager into Reflection namespace
  • #373: Fix hang when ObjectDisposedException or OCE is thrown but for an unexpected reason
  • #370: LOC CHECKIN | Microsoft/vs-streamjsonrpc master | 20191122
  • #368: Update MessagePack to 2.0.231-rc
  • #364: Only complete PipeReader/PipeWriter after operations complete
  • #359: Provide deterministic way to await for async disposal
  • #363: Fix intermittent test failures
  • #362: Package dependency updates and better Public API tracking
  • #361: Get Live Unit Testing running more smoothly
  • #358: Merge v2.2 to master
  • #356: LOC CHECKIN | Microsoft/vs-streamjsonrpc v2.2 | 20191104
  • #355: Update to .NET Core 3.0 SDK and C# 8
  • #351: Improve tests to timeout quickly instead of hang when product defects exist

This list of changes was auto generated.