Skip to content

Conversation

@Sergio0694
Copy link
Member

This type is super cursed and causes a ton of code to be rooted. It's also not really needed anymore on Native AOT. This PR makes its static constructor throw right away on Native AOT, allowing all its code to be removed. This should save a fair amount 🤞

@Sergio0694 Sergio0694 requested a review from manodasanW January 29, 2025 07:55
@Sergio0694 Sergio0694 changed the base branch from master to staging/2.3 January 29, 2025 07:55
@dongle-the-gadget
Copy link
Contributor

Should we make this pay-for-play instead (using a feature flag, for instance) rather than a complete breaking change?

@Sergio0694
Copy link
Member Author

@dongle-the-gadget there's two considerations for why we're not doing that:

  • There should be no "play" here. Things should just keep working the same, because pretty much all marshalling code paths that used to rely on Marshaler<T> now rely on generated code from the AOT generator. Those who don't, we should just fix.
  • Disabling this makes us add proper AOT annotations, so we get diagnostics to further help enforce not using them.

@Sergio0694 Sergio0694 force-pushed the dev/disable-marshaler-t-aot branch from 23a420b to 164015e Compare March 12, 2025 16:48
@Sergio0694 Sergio0694 force-pushed the dev/disable-marshaler-t-aot branch 2 times, most recently from 92c9e44 to c07f758 Compare April 3, 2025 19:00
@Sergio0694 Sergio0694 force-pushed the dev/disable-marshaler-t-aot branch from c07f758 to 5d21903 Compare June 3, 2025 19:02
@Sergio0694 Sergio0694 force-pushed the dev/disable-marshaler-t-aot branch from 5d21903 to dc7feb2 Compare July 11, 2025 17:53
* Fix non bittable array marshaling

* Move AOT tests to .NET 9

* Fix enums

* Fix for .NET 9

* PR feedback
@manodasanW manodasanW merged commit a39ef31 into staging/2.3 Jul 18, 2025
12 checks passed
@Sergio0694 Sergio0694 deleted the dev/disable-marshaler-t-aot branch July 18, 2025 15:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants