-
Notifications
You must be signed in to change notification settings - Fork 877
Closed
Description
The basic flow works, some experimentation and analysis done by @DamianEdwards and @eerhardt (thanks!)
Priority 1
- Remove trimming/AOT warnings #4800
- Reducing Npgsql size under NativeAOT #4799
The total size of the binary is 29.80MB (compared to 14.83MB trimmed, 11.28MB trimmed compressed). Npgsql code accounts for 4.2MB. - We reference System.Text.Json, and the linker can't trim it when it's not in use. That's ~1.9MB. Can be handled via Move the System.Text.Json support to an opt-in type mapping plugin #4846.
- Mark Npgsql as trimmable #4414
Console apps now trim everything by default regardless of marking. But people still have the option to opt into partial trimming, so we should do this.
Priority 2
- Array reader delegates (Reduce nullable and array reflection and code generation #3813). Note that we still use MakeGenericType so this won't actually work (but goes in the right direction).
- Enum handling - check if we need to annotate MapEnum or its non-generic counterpart, etc. Or even better: make enum type handling non-generic (Support for non-generic MapEnum method #4629).
- Composite handling. This could be tricky because the user can map arbitrary .NET CLR types to POCOs at runtime. We should be able to offer an optional source generator that generates the appropriate stubs for reading/writing the user POCO; we'd still leave the current code since e.g. F# doesn't support source generators.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels