Skip to content

MsQuic v2.0.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@nibanks nibanks released this 19 Mar 12:58
· 15 commits to release/2.0 since this release
8ed8679

Signed Windows binaries and NuGet packages are available. Signed Linux package are also available.

Official (v1) RFC and draft-29 are supported by this release.

Breaking Changes

  • Fix QUIC_SETTINGS across different versions (#2271)
  • Remove synchronous StreamStart (#2312)
  • Remove Level from SetParam/GetParam (#2322)
  • Add new datagram send state enum (#2342)
  • Add support for async listener stop (#2346)
  • Refactor custom CID prefix (#2363)
  • Make StreamReceiveComplete not fail (#2371)

Upgrade Notes

The following changes will be necessary for apps that upgrade from v1.* to v2.0:

  • Remove any usage of QUIC_STREAM_START_FLAG_ASYNC, replacing with QUIC_STREAM_START_FLAG_NONE if no other flags are used. If the flag was not used before, the app code must handle the call not blocking any more.
  • Remove all Level parameters passed to GetParam or SetParam.
  • Ensure the app handles ListenerStop not blocking any more. ListenerClose still blocks.
  • No more need to check for a return code from StreamReceiveComplete.
  • QUIC_ADDRESS_FAMILY_IPV6 has been changed to be platform specific rather then always windows values. For C/C++ consumers this is only a binary breaking change. For Interop consumers, the value will change for linux and macOS.

Other Changes

Changes since v2.0.0

  • Infrastructure and automation fixes
  • Fix for kqueue shared EC (#2510)
  • Extra Protection Around Stream Send Queue (#2477)
  • Fix for FC issue with small streams (#2555)