Skip to content

Releases: microsoft/CsWinRT

CsWinRT v1.2.1

08 Apr 19:20
2c38175
Compare
Choose a tag to compare

Release Notes

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.2.1

This release includes the following changes:

  • A workaround fix in the runtime to address a WinUI issue with casting IBindableIterable to IIterable. (#793)
  • Setting CsWinRTWindowsMetadata when referencing the C#/WinRT package is not required. (#786)

Changes:

  • 2c38175 Fix scenarios where the managed object which the event handler is registered on is gone. (#795)
  • 7d70258 model IUserConsentVerifierInterop correctly (#794)
  • 77b498e Add workaround for issue in WinUI where they cast IBindableIterable to IIterable (#793)
  • ad6adcb default CsWinRTWindowsMetadata to TargetPlatformVersion (#786)
  • This list of changes was auto generated.

CsWinRT v1.2.0

02 Apr 21:16
0359ee3
Compare
Choose a tag to compare

Release Notes

This release addresses a major memory leak issue seen in WinUI and Project Reunion C# desktop applications (#782). For more details on bug-fixes in this release, refer to the Release 1.2.0 Milestone.

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.2.0

This release includes the following fixes:

  • Fix for memory leaks in various scenarios using WinUI objects and page navigation (#413): This fix will require a C#/WinRT package reference for the updated runtime until an updated .NET SDK comes out with that runtime, in addition to an upcoming WinUI update.

    Some of the main memory leak scenarios resolved include:

    1. Aggregated scenarios: subclassing WinUI objects, invoking an event handler, property or method
    2. Non-aggregated scenarios: page navigation, reference cycles
  • Fix for GC holes in string marshaling (#773): The updated runtime includes the fix for crashes resulting from the memory location of the string object being moved by the GC. The remaining part of the fix for this issue involving a memory leak will be addressed in a future Windows SDK projection update.
    Thank you @filipnavara for this community contribution!

Important Notes

  • WinRT.Runtime.dll AssemblyVersion has been incremented to v1.2.0.0. Because of this version change, building with the new runtime will require all dependent components to update their runtime version as well.

Changes:

This list of changes was auto generated.

CsWinRT v1.1.4

17 Mar 17:10
537d87a
Compare
Choose a tag to compare

Release Notes

This release of C#/WinRT is aligned with the .NET April 2021 Update, and includes a couple bugfixes to the runtime and Windows SDK projections. For a complete list of additions and bug-fixes, refer to the Release 1.1.4 Milestone. The v1.1.4 C#/WinRT NuGet package also includes updates to authoring support, which includes automating the runtimeconfig.json file and removing the need for manual edits to the native application project file.

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.4

.NET reference packages:
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.19041.15
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.18362.15
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.17763.15

This release includes the following fixes:

  • Fixes for System.ObjectDisposedException issues (#682)
  • DateTimeOffset marshaling now supports negative FileTime, making it compatible with .NET Core 3.
    Thank you @huoyaoyuan for this community contribution!
  • Fixed a regression involving typeof(Type) checks that fixes loading default styles of custom control: microsoft/microsoft-ui-xaml#4414
  • Fixed a regression involving InvalidCastException for a few types such as TimeSpan: microsoft/microsoft-ui-xaml#4461

Changes:

  • 537d87a Update ComWrappersSupport (#771)
  • 6e11955 Fixed regression in determining whether to provide IReference implementation, which dropped TimeSpan and a few other value types (#770)
  • d968022 Update AuthoringWinUITest (#769)
  • 2513fe2 Update targets (#765)
  • 006ad4e Fix GC issues with static events. (#759)
  • 0e66e66 Fix typeof(Type) checks to account for RuntimeType (#760)
  • d0051af Use .NET Core 3.1 compatible marshaling for DateTimeOffset. (#761)

This list of changes was auto generated.

CsWinRT v1.1.3

26 Feb 06:56
d361800
Compare
Choose a tag to compare

Release Notes

This release fixes a regression in v1.1.2 that caused ReadyToRun builds to break.

Note: This release is not associated with a .NET SDK update.

C#/WinRT Package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.3

Changes:

This list of changes was auto generated.

CsWinRT v1.1.2

17 Feb 21:19
d777f4b
Compare
Choose a tag to compare

Release Notes

This release of C#/WinRT is aligned with the .NET March 2021 Update and includes a couple fixes and updates to the runtime and Windows SDK projections for .NET v5.0.4. For a complete list of additions and bug-fixes, refer to the Release 1.1.2 Milestone.

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.2

.NET reference packages:
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.19041.14
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.18362.14
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.17763.14

Changes:

  • d777f4b ensure that value/delegate types are projected before implementing IPropertyValue (#741)
  • 4fa1fda Perf improvements in CCW creation. (#739)
  • eff4b06 add link to bgtask sample (#738)
  • c64ee59 Fix logging issues and move to SyntaxReceiver (#737)
  • 8e1ce85 Add background task component sample (#736)
  • 65f4e3f Update sample for 1.1.2-prerelease (#727)

This list of changes was auto generated.

CsWinRT v1.1.2-prerelease.210208.6

09 Feb 04:34
7ff08a8
Compare
Choose a tag to compare

https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.2-prerelease.210208.6

Release Notes

This release features an initial preview of C#/WinRT authoring support. This version supports consumption of C#/WinRT authored components using a package reference or project reference, with a few project modifications. For details on how to author and consume a C#/WinRT component, refer to the authoring docs. This version does not yet support WinUI 3 authoring scenarios.

For a list of authoring changes and bug-fixes, see the 1.1.2 Preview milestone.

Changes:

See More
  • 02ee3f4 Remove unsupported solution configs, make get_testwinrt curdir-independent, assert TestWinRT requirement (#706)
  • 4b3c932 Add support for explicitly implemented interfaces (#704)
  • 02896f5 Update authoring.md (#691)
  • e33691e Update nuget targets (#688)
  • 5351b4b Update Diagnostic rules (#685)
  • 02894d7 pr feedback
  • 244e24d Merge branch 'master' into jlarkin/update-diagnostics
  • 28eae2e doc CsWinRTEnableLogging (#689)
  • 31fe428 fix bug in ref diagnostic being thrown
  • 00da995 fix bug in unittests
  • f96ab51 update help link for rules
  • 0e9c04d Add notes to rules in AnalyzerReleases
  • fd9d6ac update gitignore, add analyzer release files, update unittests for new diagnostic identifer (wme -> cswinrt)
  • fc2f2b6 feedback
  • ad03f4d Merge branch 'master' into jlarkin/update-diagnostics
  • ea2ac32 change wme to cswinrt
  • b7f8d71 fix tables and casing in hosting.md (#683)
  • 7a31b0b update diagnostic messages

This list of changes was auto generated.

CsWinRT v1.1.1

20 Jan 22:51
5e14799
Compare
Choose a tag to compare

https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.1

Release Notes

This release of C#/WinRT is aligned with the .NET February 2021 Update and includes a couple fixes and updates to the runtime and Windows SDK projections for NET v5.0.3. For a complete list of additions and bug-fixes, refer to the Release 1.1.1 Milestone.

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.1

.NET reference packages:
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.19041.13
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.18362.13
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.17763.13

Changes:

  • 5e14799 Implement singleton pattern for ComWrappers (#675)
  • 913244d Fixed ObjectDisposedException on delegates (#674)
  • 3a4dd0d Add DefaultOverload attribute to projected interface methods (#672)
  • 0f83d07 Fix path to generated winmd (#671)
  • 15942b3 Add targets for hosting support (#665)
  • f5a5255 Fix issue where the same component can be loaded in multiple ALC and cause cast issues (#669)
  • fb0e7ad Authoring bug fixes and xaml type mapping (#666)
  • 86895f6 Add mapping from ContractVersion attrib to SupportedOSPlatform attrib for VS compat assistance (#557)
  • b7dad4a update broken link (#664)
  • 36f722d Move authoring tests to test folder (#660)
See More

This list of changes was auto generated.

CsWinRT v1.1.0

25 Nov 20:01
d9f1d21
Compare
Choose a tag to compare

Release Notes

https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.0

C#/WinRT v1.1.0 aligns with the servicing .NET December 2020 Update, which is focused on fixing bugs that were found after .NET5 GA. The runtime and Windows SDK projection assemblies from this version have been inserted into the .NET 5.0.101 SDK. For a complete list of bug-fixes, see the Release 1.1.0 Milestone.

C#/WinRT package:
https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/1.1.0

.NET reference packages:
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.19041.12
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.18362.12
https://www.nuget.org/packages/Microsoft.Windows.SDK.NET.Ref/10.0.17763.12

Breaking Changes

  • WinRT.Runtime.dll AssemblyVersion has been incremented to v1.1.0.0. Note that building components with the updated servicing SDK may cause versioning issues if referencing projects are on an earlier version of .NET5 (e.g., .NET5 RTM).
  • Added System.Numerics.VectorExtensions static methods. (#548 )

Common Errors

If your applications target an earlier .NET SDK version than any of its dependencies, it is recommended to upgrade your .NET SDK to the latest version (.NET 5.0.101 SDK). The following errors/warnings may occur in this scenario, depending on how types are shared:

  • CS1705 Compiler Error: Assembly 'AssemblyName1' uses 'WinRT.Runtime, Version=1.1.0.0, Culture=neutral, PublicKeyToken=99ea127f02d97709' which has a higher version than referenced assembly 'WinRT.Runtime' with identity 'WinRT.Runtime, Version=1.0.1.33301, Culture=neutral, PublicKeyToken=99ea127f02d97709'
  • Warning MSB3277: Found conflicts between different versions of "WinRT.Runtime" that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.
  • System.IO.FileLoadException: 'Could not load file or assembly 'WinRT.Runtime, Version=1.1.0.0, Culture=neutral, PublicKeyToken=99ea127f02d97709'. The located assembly's manifest definition does not match the assembly reference.

The workaround for any of these errors or warnings is to upgrade your .NET SDK to the latest version (.NET 5.0.101 SDK).

Changes:

  • d9f1d21 Add vtable entry for covariant IEnumerable for WinRT types too. (#601)
  • cca8f40 Update StreamOperationsImplementation (#588)
  • ee1fe28 Update interop.md (#586)
  • 201147b Merge pull request #593 from microsoft/ujjwalchadha/fix-ibindablevector-code-gen
  • 921464c Fixed code generation issues with projecting implementation of IBindableVector
  • 3a28fb4 Remove (another) WinRT.Host.Shim.dll reference
  • 46ec074 Add WinRT.Host and WinRT.Host.Shim to Nuget (#582)
  • 02eaf84 Update sample for net5 GA (#577)
  • 66da8e1 Update to .NET 5 RTM SDK. (#579)
  • dc44457 Splitting AssemblyVersion from FileVersion. (#578)
  • See More
    • 0f8cec2 Adding Vector extensions for point and size. (#575)
    • ab6a5ec Use custom marshalers when type is erased with MarshalInspectable (#568)
    • 183fc48 Merge pull request #573 from microsoft/ujjwalchadha/fix-splittablemap
    • ecb5672 Fixed ConstantSplittableMap's Keys and Values to return read only collections
    • d00974b Merge pull request #564 from microsoft/ujjwalchadha/fix-native-to-managed-calls [ #553 ]
    • 0a17d76 Merge branch 'master' into ujjwalchadha/fix-native-to-managed-calls
    • cc14330 Added missing methods
    • e4c16dd replacement for WindowsRuntimeMarshal.GetActivationFactory (#572)
    • 58f57ac link com interop guide to readme (#571)
    • bd267cd update readme doc (#541)
    • c29da87 Code cleanup
    • 8619e44 Undid changes not required for the fix
    • 642c651 Merge branch 'master' into ujjwalchadha/fix-native-to-managed-calls
    • 84baa1f Merge branch 'ujjwalchadha/test-manual-projections' into ujjwalchadha/fix-native-to-managed-calls
    • 95a7e72 Show actual NuGet link (#566)
    • 688c4bd COM Interop guide (#563)
    • ba155f5 migrate from PackageES to ESRP CodeSign task (#565)
    • 730e742 Fixed #553 and further issues in native to managed calls
    • d050500 Merge pull request #559 from microsoft/fix-idictionary-clear
    • 4ac4147 Merge branch 'master' into fix-idictionary-clear
    • 8d6b661 fix issue with FromManaged returning an HSTRING reference, rather than allocating an HSTRING, causing crashes (#551)
    • 25e2ed4 Fixing read only dictionary lookup. (#536)
    • 684f321 Ensure that xamlprecompile also adds generated sources (#552)
    • 5b17869 Fixed IDictionary.Clear EntryPointNotFoundException
    • 28e42b9 removed cruft causing warning (#556)
    • 085ff21 Added tests for collections
    • a36c61e Adding tests for IBindable and IDictionary
    • fab6067 ensure robustness against malformed runtime class name (#534)
    • 892817e Add more tests for WindowsRuntimeBufferExtensions (#527)
    • af63025 Fixed removal of dll references that report IsWinmdFile == true (#533)
    • fc55163 Forget the solution extension - workaround worked before, but under a ".sln" folder (#532)
    • 1027a50 workaround for VS 16.8 SolutionDir bug (#529)
    • This list of changes was auto generated.

CsWinRT v1.1.0-prerelease.201111.6

12 Nov 16:36
66da8e1
Compare
Choose a tag to compare
Pre-release

Changes:

  • 66da8e1 Update to .NET 5 RTM SDK. (#579)
  • dc44457 Splitting AssemblyVersion from FileVersion. (#578)
  • 0f8cec2 Adding Vector extensions for point and size. (#575)
  • ab6a5ec Use custom marshalers when type is erased with MarshalInspectable (#568)
  • 183fc48 Merge pull request #573 from microsoft/ujjwalchadha/fix-splittablemap
  • ecb5672 Fixed ConstantSplittableMap's Keys and Values to return read only collections
  • d00974b Merge pull request #564 from microsoft/ujjwalchadha/fix-native-to-managed-calls [ #553 ]
  • 0a17d76 Merge branch 'master' into ujjwalchadha/fix-native-to-managed-calls
  • cc14330 Added missing methods
  • e4c16dd replacement for WindowsRuntimeMarshal.GetActivationFactory (#572)
  • See More
    • 58f57ac link com interop guide to readme (#571)
    • bd267cd update readme doc (#541)
    • c29da87 Code cleanup
    • 8619e44 Undid changes not required for the fix
    • 642c651 Merge branch 'master' into ujjwalchadha/fix-native-to-managed-calls
    • 84baa1f Merge branch 'ujjwalchadha/test-manual-projections' into ujjwalchadha/fix-native-to-managed-calls
    • 95a7e72 Show actual NuGet link (#566)
    • 688c4bd COM Interop guide (#563)
    • ba155f5 migrate from PackageES to ESRP CodeSign task (#565)
    • 730e742 Fixed #553 and further issues in native to managed calls
    • d050500 Merge pull request #559 from microsoft/fix-idictionary-clear
    • 4ac4147 Merge branch 'master' into fix-idictionary-clear
    • 8d6b661 fix issue with FromManaged returning an HSTRING reference, rather than allocating an HSTRING, causing crashes (#551)
    • 25e2ed4 Fixing read only dictionary lookup. (#536)
    • 684f321 Ensure that xamlprecompile also adds generated sources (#552)
    • 5b17869 Fixed IDictionary.Clear EntryPointNotFoundException
    • 28e42b9 removed cruft causing warning (#556)
    • 085ff21 Added tests for collections
    • a36c61e Adding tests for IBindable and IDictionary
    • fab6067 ensure robustness against malformed runtime class name (#534)
    • 892817e Add more tests for WindowsRuntimeBufferExtensions (#527)
    • af63025 Fixed removal of dll references that report IsWinmdFile == true (#533)
    • fc55163 Forget the solution extension - workaround worked before, but under a ".sln" folder (#532)
    • 1027a50 workaround for VS 16.8 SolutionDir bug (#529)

    This list of changes was auto generated.

CsWinRT v1.0.2-prerelease.201103.7

03 Nov 20:01
d050500
Compare
Choose a tag to compare
Pre-release

Changes:

  • d050500 Merge pull request #559 from microsoft/fix-idictionary-clear
  • 4ac4147 Merge branch 'master' into fix-idictionary-clear
  • 8d6b661 fix issue with FromManaged returning an HSTRING reference, rather than allocating an HSTRING, causing crashes (#551)
  • 5b17869 Fixed IDictionary.Clear EntryPointNotFoundException

This list of changes was auto generated.