Skip to content

Releases: microsoft/vs-streamjsonrpc

v2.24.84

21 Jan 22:53
0cc78b1

Choose a tag to compare

What's Changed

Features

  • Add source generation of proxies by @AArnott in #1223
  • Add NerdbankMessagePackFormatter by @trippwill in #1100
  • Enable RPC marshalable objects in NerdbankMessagePackFormatter by @AArnott in #1260
  • Source generate proxies for RpcMarshalable interfaces by @AArnott in #1246
  • Add RpcTargetMetadata generation from ITypeShape by @AArnott in #1251
  • Create a NativeAOT-compatible JsonRpc.AddLocalTargetObject method by @AArnott in #1236
  • Use PolyType shapes for events by @AArnott in #1297
  • Add PolyTypeJsonFormatter as an experimental API by @AArnott in #1344
  • Add RpcTargetMetadata.FromShape<T> overloads that work on .NET Framework by @AArnott in #1358
  • Expose MessageFormatterEnumerableTracker.EnumeratorResults as public by @eerhardt in #1206

Fixes

  • Remove Dependency on Newtonsoft.Json from JsonRpc by @eerhardt in #1201
  • Remove Dependency on Newtonsoft.Json From Protocol objects by @eerhardt in #1198
  • Cut ProxyGeneration out if dynamic code isn't supported by @eerhardt in #1202
  • Add attributes for NativeAOT safety by @AArnott in #1196
  • Refactor code and annotations to fix all warnings in NativeAOTCompatibility. by @eerhardt in #1207
  • Reduce trimming demands for RPC target objects by @AArnott in #1233
  • Improve performance of WebSocketMessageHandler by @AArnott in #1237
  • Cap the amount of text copied into the stringbuilder in JsonRpcEventSource.Format by @ToddGrun in #1187
  • Use JsonElement.Clone instead of Deserialize by @eerhardt in #1200
  • Refactor reflection usage to only reflection against the one method by @eerhardt in #1199
  • Create dynamic proxies in the same ALC as the interface they implement by @AArnott in #1248
  • Avoid 1-2 first chance exceptions on out of order disposal by @AArnott in #1220
  • Avoid loading assemblies unnecessarily by @AArnott in #1256
  • Dynamically generated proxies reliably invoke with non-aliased method names by @AArnott in #1268
  • Proxies should honor MethodShapeAttribute.Name by @AArnott in #1271
  • Fix proxy generation for interfaces with type parameter variance modifiers by @AArnott in #1300
  • Fix source generated proxies compile errors by @AArnott in #1303
  • Allow null argument to As<T> and Is(Type) helper methods by @AArnott in #1305
  • Avoid producing a new proxy 'group' that is redundant with the first by @AArnott in #1315
  • Fix perf regression in testing for RPC marshalable objects by @AArnott in #1329
  • Fix perf regression in testing for RPC marshalable objects by @AArnott in #1330
  • Fix ProxyBase to report assignability for its own built-in interfaces by @AArnott in #1335
  • Fix source generated proxy suitability testing by @AArnott in #1336
  • Fix IDE fast up-to-date check by @AArnott in #1342
  • Fix new linker warnings by @AArnott in #1372
  • Unregister event handlers in RpcTargetInfo.DisposeAsync by @Copilot in #1379
  • Fix failure in design-time builds when working in a clean repo by @AArnott in #1262
  • Address vulnerabilities in MessagePack and STJ by @RyanToth3 in #1095
  • Drop threading analyzers from package dependencies by @AArnott in #1169
  • Fix doc links by @AArnott in #1183
  • Fix build break in samples due to localization by @AArnott in #1238
  • Only suppress diagnostics when the interceptor is running by @AArnott in #1235
  • Stop intercepting Attach calls within StreamJsonRpc itself by @AArnott in #1241
  • Hopefully stabilize the RpcInterfacesNeedMethodsIncludedInShape_Fixable test by @AArnott in #1299
  • Fix msbuild analyzer version property by @AArnott in #1276

Documentation and Miscellaneous

  • Typos and doc tweaks by @drewnoakes in #1181
  • Replace tedious GenerateShapeFor attributes with method shapes by @AArnott in #1273
  • Share more with FormatterBase by @AArnott in #1317
  • Add DebuggerDisplay for RpcTargetMetadata by @AArnott in #1338
  • Obsolete an API that we intend to remove before a stable release by @AArnott in #1359
  • Skip collection of symbols from samples project by @AArnott in #1240
  • Classify UnreachableAssembly symbols as test symbol by @AArnott in #1253
  • Eliminate over-build from the dotnet publish "test" by @AArnott in #1254
  • Remove the special PolyType job from the build by @AArnott in #1298
  • Pack with nuget semver 2 rules by @AArnott in #1316

New Contributors

Full Changelog: v2.22.23...v2.24.84

v2.22.23

05 Oct 15:21
df6b388

Choose a tag to compare

What's Changed

Fixes

  • Create dynamic proxies in the same ALC as the interface they implement by @AArnott in #1247

Full Changelog: v2.22.11...v2.22.23

v2.23.32-alpha

20 Jun 17:29
a34b2e5

Choose a tag to compare

v2.23.32-alpha Pre-release
Pre-release

What's Changed

Dependency updates

  • Update dependency Microsoft.Bcl.AsyncInterfaces to v9 by @renovate in #1163

Enhancements

  • Cap the amount of text copied into the stringbuilder in JsonRpcEventSource.Format by @ToddGrun in #1187
  • Use JsonElement.Clone instead of Deserialize by @eerhardt in #1200
  • NativeAOT readiness
    • Refactor reflection usage to only reflection against the one method by @eerhardt in #1199
    • Cut ProxyGeneration out if dynamic code isn't supported by @eerhardt in #1202
    • Remove Dependency on Newtonsoft.Json from JsonRpc by @eerhardt in #1201
    • Remove Dependency on Newtonsoft.Json From Protocol objects by @eerhardt in #1198
    • Expose MessageFormatterEnumerableTracker.EnumeratorResults as public by @eerhardt in #1206
    • Refactor code and annotations to fix all warnings in NativeAOTCompatibility. by @eerhardt in #1207
    • Minor PR feedback by @eerhardt in #1210
    • Add attributes for NativeAOT safety by @AArnott in #1196

New Contributors

Full Changelog: v2.22.11...v2.23.32-alpha

v2.22.11

20 Jun 17:26
cdd916a

Choose a tag to compare

What's Changed

  • Drop the vs-threading analyzers from our package by @AArnott in #1167
  • Fix connection hang upon failure to deserialize result values by @AArnott in #1175

Full Changelog: v2.21.69...v2.22.11

v2.21.69

18 Mar 04:24
4d63f24

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.20.17...v2.21.69

v2.22.3-alpha

20 Jun 17:22
c8568eb

Choose a tag to compare

v2.22.3-alpha Pre-release
Pre-release

What's Changed

  • Drop the vs-threading analyzers from our package by @AArnott in #1167

Full Changelog: v2.21.69...v2.22.3-alpha

v2.20.20

14 Jan 16:20
67633e0

Choose a tag to compare

What's Changed

Full Changelog: v2.20.17...v2.20.20

v2.20.17

14 Jan 16:20
ece3a29

Choose a tag to compare

Enhancements

  • Enable sending RPC marshalable objects back to their owner by @AArnott in #1065
  • Enable generation of proxies that implement multiple interfaces by @AArnott in #1066
  • Allow JsonElement as the params object in the SystemTextJsonFormatter by @AArnott in #1074

Fixes

  • Fix proxies with derived interfaces by @AArnott in #1070
  • Fix proxy generation based on public interfaces nested in internal ones by @AArnott in #1072
  • Avoid unobserved exception when read loop fails by @AArnott in #1079
  • Replace warning with verbose message in log regarding $/progress not matching any method by @AArnott in #1082

Others

  • Add docs to help with disconnect investigations by @AArnott in #1076

Full Changelog: v2.19.27...v2.20.17

v2.19.27

23 Aug 16:26
0361871

Choose a tag to compare

What's Changed

  • Fix ETW logging of named arguments in System.Text.Json formatter by @AArnott in #1040
  • Fix System.Text.Json formatter's support for named arguments object by @AArnott in #1045
  • Expose metadata about TargetMethod publicly by @AArnott in #1055

Dependency updates

New Contributors

Full Changelog: v2.18.48...v2.19.27

v2.18.48

23 Aug 16:25
0d588e2

Choose a tag to compare

What's Changed

  • LEGO: Pull request from juno/hb_152458e8-e8c0-49aa-b375-9938c873e7e8_20240319153626139 to main by @csigs in #1021
  • LEGO: Pull request from juno/hb_152458e8-e8c0-49aa-b375-9938c873e7e8_20240320153615567 to main by @csigs in #1023
  • Bump Microsoft.Bcl.AsyncInterfaces from 7.0.0 to 8.0.0 by @dependabot in #1019

Full Changelog: v2.18.44...v2.18.48