Skip to content

Conversation

@manodasanW
Copy link
Member

No description provided.

Sergio0694 and others added 30 commits November 24, 2024 20:59
* Remove .NET 6 target from all projects

* Update RIDs for .NET 8

* Bump .NET SDK in build script

* Override RIDs for 'WinUIDesktopSample' project

* Rename 'TestEmbedding' folders and files

* Update readme files

* Update runtimeconfig.json files

* Throw if < .NET 8 is used for projections

* Remove 'net7_0_or_greater' setting

* Fix leftover options

Co-authored-by: Manodasan Wignarajah <[email protected]>

* Update RuntimeFrameworkVersion.csproj

* Fix host tests

* Add TFM check

* Update src/WinRT.Runtime/WinRT.Runtime.csproj

---------

Co-authored-by: Manodasan Wignarajah <[email protected]>
* Fix WUX test build expecting target platform version after recent VS update

* Fix test

* Fix tests via another way

Co-authored-by: Manodasan Wignarajah <[email protected]>
* Skip closure in IDIC enumerable caching

* Use custom type for arguments
* Create WinRTSuppressions.cs

* Bump Roslyn to 4.8

* Create CollectionExpressionSuppressor.cs

* Create CollectionExpressionAnalyzer.cs

* Bump Roslyn to 4.9.2

* Update 'CollectionExpressionAnalyzer'

* Update AotOptimizer.cs

* Create CollectionExpressionIDE0300Suppressor.cs

* Create CollectionExpressionIDE0305Suppressor.cs

* Create CollectionExpressionIDE0303Suppressor.cs

* Add 'SourceGeneratorTest' project

* Add tests for 'CollectionExpressionAnalyzer'

* Fix folder for new tests

* Run new tests in CI

* Rename source generator project

* Use shared project for generator

* Add shared .props for generators

* Add Roslyn 4.12 version of the generators

* Use 'Microsoft.CodeAnalysis.CSharp.Workspaces'

* Fix the diagnostic suppressors

* Remove leftover file

* Rename analyzer test helper

* Add 'CSharpSuppressorTest<TSuppressor>' type

* Add 'DiagnosticSuppressorTests'

* Skip new analyzers if not in 'auto' mode

* Update project references to generators

* Update build steps

* Change analyzer rule identifier

* Override resource names

* Only run source generator tests on x86

* Add 'CollectionExpressionIDE0304Suppressor'

* Fix analyzer tests

* Don't pack .resx files for the generators

* Handle multiple '[CollectionBuilder]' attributes

* Enable CsWinRT options in tests

* Bump package and assembly versions

* Fix IDE0303, IDE0305 suppressions

* Fix IDE0300 suppressions

* Fix another 'ArgumentSyntax' case

* Remove diagnostic suppressors

* Bump Roslyn version to 4.12.0 stable

* Use new generator in 'Collections' functional test
* Add 'CsWinRTEnableManifestFreeActivation' feature switch

* Implement logic for 'CsWinRTEnableManifestFreeActivation'

* Add nullable annotations to 'ActivationFactory'

* Add XML docs

* Bump package and assembly versions

* Fix typo in exception message

* Update readme.md

* Revert parameter name changes

* Restore nullable context

* Add 'CsWinRTManifestFreeActivationReportOriginalException'

* Apply suggestions from code review
* Add MSBuild target for stub .exe-s

* Tweak stub .exe creation

* Automatically enable stub .exe creation

* Update Microsoft.Windows.CsWinRT.nuspec

* Use 'cl.exe' path from Native AOT

* Improve MSVC args handling

* Dynamically link UCRT, remove unsafe options

* Add more options (CFG, CET, etc.)

* Fix linker warning for UCRT

* Fix ordering for stub .exe target

* Remove relative paths

* Add stub .exe to 'ResolvedFileToPublish'

* Fix entry point for 'WinExe' projects

* Tweak output folder for stub .exe

* Fix build errors in native exports

* Fix '_CsWinRTGenerateStubExe' condition

* Add 'CsWinRTUseEnvironmentalTools' property

* Remove unnecessary leading spaces

* Document 'CsWinRTUseEnvironmentalTools'

* Fix stub .exe outside of VS Dev Command Prompt

* Move stub .exe to packaged source file

* Don't exclude 'StubExe.c' from git

* Use environment tools automatically if available

* Handle debug libs
* Always enable GC pressure

* Fix memory pressure removal
Update staging with latest changes from master
* Move 'CollectionExpressionAnalyzer'

* Add 'ComImportInterfaceAnalyzer'

* Add unit tests, minor fixes

* Fix analyzer checks

* Check for 'auto' AOT analyzer mode instead

* Fix unit tests

* Check for 'EnableAotAnalyzer' as well
* Remove 'IPropertyValue' IDIC interface

* Add tests

---------

Co-authored-by: Manodasan Wignarajah <[email protected]>
* Build CsWinRT with .NET 9 locally

* Suppress all 'IL2081' warnings

* Update 'MarshalNonBlittable' for AOT support

* Update build steps for .NET 9

* Update .nuspec file for .NET 9

* Fix duplicate 'global.json' creation

* Remove new framework references

* Update CsWinRT-PublishToNuget-Stage.yml

* Build .NET 9 in CI as well

* Fix new IL analyzer warnings

* Add missing nullable annotation

* Remove double lookup in 'FindRcwTypeByNameCached'

* Delete leftover API compat files

* Fix build

* Bump .NET SDK to 9.0.201

Co-authored-by: Manodasan Wignarajah <[email protected]>

* Update src/build.cmd

---------

Co-authored-by: Manodasan Wignarajah <[email protected]>
…1956)

* Add 'RuntimeClassCastAnalyzer'

* Add unit tests for new analyzer

* Ignore some warnings in tests

* Fix false positives

* Add more unit tests

* Add 'EnumerateAttributesWithType' extension

* Detect and handle '[DynamicDependency]'

* Add unit tests for '[DynamicDependency]'

* Don't analyze generated code

* Update resource strings

* Make analyzer opt-in

* Handle field initializers too

* Better handle implicit conversions

* Fix typo

Co-authored-by: Manodasan Wignarajah <[email protected]>

* Add 'CsWinRT1035' warning for enum types

* Add unit tests for enum casts

* Handle nullable enum types too

* Add unit tests for nullable enums

---------

Co-authored-by: Manodasan Wignarajah <[email protected]>
* Add '[DynamicWindowsRuntimeCast]' attribute type

* Update analyzer to target the new attribute

* Update resources

* Add 'RuntimeClassCastCodeFixer' draft

* Add 'ArrayBufferWriter<T>' type

* Add 'TypeSymbolExtensions' type

* Add target type attribute argument

* Fix attribute matching, update unit tests

* Port 'CSharpCodeFixTest<TAnalyzer, TCodeFixer>' type

* Tweaks to the analyzer and code fixer

* Add code fixer unit tests

* Misc fixes

* Add missing 'Clear' call

* Fix RuntimeClassCastCodeFixer

* Minor tweaks

* Add support for fixing property accessors

* Deduplicate repeated casts in same nodes

* Add unit tests for duplicated casts

* Support constructors too, add tests

* Add 'DynamicWindowsRuntimeCastGenerator'

* Deduplicate and sort attributes

* Remove duplicated 'global::' prefix

---------

Co-authored-by: Youssef1313 <[email protected]>
…ing of the same vtable ptr for nullable support. (#1971)
manodasanW and others added 22 commits April 8, 2025 11:40
…ess is gone (#1969)

* Don't report RPC errors for completion handlers that can't be handled by the process

* Update src/cswinrt/strings/additions/Windows.Foundation/ExceptionDispatchHelper.cs

Co-authored-by: Sergio Pedri <[email protected]>

---------

Co-authored-by: Sergio Pedri <[email protected]>
* Move source generator tests to other environment due to nuget restore during test

* Try to fix

* Fix

* Cleanup
* Skip lambda allocation in 'EventSourceCache'

* Add comment
…1991)

* Move property from authoring targets to main targets to reflect use in non component scenarios

* Fix warning
* Add more unit tests for dynamic casts

* Handle missing check for switch statements
…tribute classes (#2010)

* As part of vtable generation for generic instantions, also look at class maked as bindable using our attribute.

* Fix logic

* Remove need for func
* Handle 'IWeakReferenceSource' in 'ICustomQueryInterface'

* Update API compat files
…#2003)

* Check if this is a type from a project reference to another cswinrt component project

* Fix namespace missing in check

* Refactor to helper function

* Rename function
* Escape assembly name starting with numbers when using in generated code

* Do alternative fix

* Feedback
* Add support for loading in default ALC

* Put behind feature switch

* Update readme

* Reorder

* Add link

* Fix url

* Add warning
* Disable 'Marshaler<T>' on AOT

* Update 'AsAgile' extension

* Update 'StructTypeDetails<,>.GetNullableValue'

* Add AOT annotations for 'Marshaler<T>' changes

* Update non blittable 'BoxedValueIReferenceImpl<,>'

* Update 'BoxedArrayIReferenceArrayImpl<T>'

* Normalize whitespaces

* Update MatchingRefApiCompatBaseline.net8.0.txt

* Fix some warnings

* Fix new AOT warnings

* Use specialized marshallers for generic instantiations

* Fix more generic instantiation cases

* Make 'Marshaler' obsolete

* Fix ILC warnings on 'IReferenceArray<T>'

* Remove '[RequiresDynamicCode]' from 'Marshaler<T>'

* Remove unnecessary '[Obsolete]' attribute

* Tweak AOT checks

* Fix non-blittable array marshaling (#2016)

* Fix non bittable array marshaling

* Move AOT tests to .NET 9

* Fix enums

* Fix for .NET 9

* PR feedback

---------

Co-authored-by: Manodasan Wignarajah <[email protected]>
* Fix IReferenceArray support on AOT

* Add more test

* Try out alternative approach

* Get working

* Fix build

* Fix and more tests

* Fix copy paste

* Improve size

* Scope down to built-in types

* Fix

* Fix test

* Cleanup

* Cleanup

* More cleanup
@manodasanW manodasanW requested a review from Sergio0694 August 8, 2025 04:22
@manodasanW manodasanW merged commit 10bad02 into master Aug 8, 2025
12 checks passed
glennawatson pushed a commit to reactiveui/ReactiveUI that referenced this pull request Dec 14, 2025
…release.251115.2 (#4204)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[Microsoft.Windows.CsWinRT](https://redirect.github.com/microsoft/cswinrt)
| `2.3.0-prerelease.251015.2` -> `2.3.0-prerelease.251115.2` |
![age](https://developer.mend.io/api/mc/badges/age/nuget/Microsoft.Windows.CsWinRT/2.3.0-prerelease.251115.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/Microsoft.Windows.CsWinRT/2.3.0-prerelease.251015.2/2.3.0-prerelease.251115.2?slim=true)
|

---

### Release Notes

<details>
<summary>microsoft/cswinrt (Microsoft.Windows.CsWinRT)</summary>

###
[`v2.3.0-prerelease.251115.2`](https://redirect.github.com/microsoft/CsWinRT/releases/tag/2.3.0-prerelease.251115.2):
CsWinRT 2.3.0-prerelease.251115.2

This is a prerelease version of C#/WinRT with more bug fixes and
improvements.

**C#/WinRT package**:

<https://www.nuget.org/packages/Microsoft.Windows.CsWinRT/2.3.0-prerelease.251115.2>

#### What's Changed

- Fix warning by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2023](https://redirect.github.com/microsoft/CsWinRT/pull/2023)
- Use FormatMessage for exception messages in cases where the
stowed/language exception doesn't contain a message by
[@&#8203;ahmed605](https://redirect.github.com/ahmed605) in
[microsoft/CsWinRT#2022](https://redirect.github.com/microsoft/CsWinRT/pull/2022)
- Merge to staging/2.3 by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2025](https://redirect.github.com/microsoft/CsWinRT/pull/2025)
- Merge staging/2.3 to master by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2030](https://redirect.github.com/microsoft/CsWinRT/pull/2030)
- Fix 'Initialize' typo in several files by
[@&#8203;Lightczx](https://redirect.github.com/Lightczx) in
[microsoft/CsWinRT#2035](https://redirect.github.com/microsoft/CsWinRT/pull/2035)
- Fix design time build error causing incremental build issue by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2036](https://redirect.github.com/microsoft/CsWinRT/pull/2036)
- Move TestWinRT repo clone to resource by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2032](https://redirect.github.com/microsoft/CsWinRT/pull/2032)
- Fix weak reference rehydration scenarios for non projected types by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2043](https://redirect.github.com/microsoft/CsWinRT/pull/2043)
- Add UpToDateCheckBuilt to cover incremental build of Implementation
dlls by [@&#8203;jevansaks](https://redirect.github.com/jevansaks) in
[microsoft/CsWinRT#2051](https://redirect.github.com/microsoft/CsWinRT/pull/2051)
- Fix issue where IReferenceArray is not being found by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2071](https://redirect.github.com/microsoft/CsWinRT/pull/2071)
- Fix issue with unsubscribing from events on non-agile objects by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2079](https://redirect.github.com/microsoft/CsWinRT/pull/2079)
- Fix issues with CopyToManagedArray by
[@&#8203;manodasanW](https://redirect.github.com/manodasanW) in
[microsoft/CsWinRT#2084](https://redirect.github.com/microsoft/CsWinRT/pull/2084)

#### New Contributors

- [@&#8203;ahmed605](https://redirect.github.com/ahmed605) made their
first contribution in
[microsoft/CsWinRT#2022](https://redirect.github.com/microsoft/CsWinRT/pull/2022)
- [@&#8203;Lightczx](https://redirect.github.com/Lightczx) made their
first contribution in
[microsoft/CsWinRT#2035](https://redirect.github.com/microsoft/CsWinRT/pull/2035)

**Full Changelog**:
<microsoft/CsWinRT@2.3.0-prerelease.250720.1...2.3.0-prerelease.251115.2>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/reactiveui/ReactiveUI).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNi4xIiwidXBkYXRlZEluVmVyIjoiNDIuMzIuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiRGVwZW5kZW5jeSBNYW5hZ2VtZW50Il19-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants