NativeAOT: full DAMs propagation, trimmer-safe serializers - Propagate [DynamicallyAccessedMembers] from all public Serialize<T>/Deserialize<T> APIs through all type/property metadata and factories, centralizing requirements in TypeMetadataBase.RequiredMembers. - Add [UnconditionalSuppressMessage] for known trimmer blind spots (polymorphism, inheritance, nested types) with detailed justifications. - Update all internal delegate/factory signatures to preserve DAMs context. - Annotate public APIs for AOT safety; document consumer requirements for SGen or rooted model assemblies. - Update BINARY_FEATURES.md with NativeAOT/trimmer compatibility, guidance, and limitations. - Adjust benchmark project for AOT/JIT parity and add i18n test data. - No breaking API changes; SGen and Runtime paths remain, now fully AOT-compatible. |
||
|---|---|---|
| .. | ||
| AcSerializerModels.cs | ||
| BenchmarkTestDataProvider.cs | ||
| GeneratedSerializerTestModels.cs | ||
| README.md | ||
| SharedTestModels.cs | ||
| SignalRTestInfrastructure.cs | ||
| StockTakingTestModels.cs | ||
| TestDataFactory.cs | ||
| TestLogger.cs | ||
README.md
TestModels
Shared test entities, enums, data factories, and SignalR test infrastructure. Used across test and benchmark projects.
Key Files
SharedTestModels.cs— Enums (TestStatus, TestPriority, TestUserRole) and shared IId types (SharedTag, SharedCategory, SharedUser, MetadataInfo). Multi-serializer: [AcBinarySerializable], [MessagePackObject], [MemoryPackable].AcSerializerModels.cs— 30+ test models: simple, nested, collections, nullable, StockTaking hierarchy, circular references, generics, navigation properties, schema mismatch scenarios.GeneratedSerializerTestModels.cs— [AcBinarySerializable] models for source generator testing.StockTakingTestModels.cs— Production-like hierarchy: BaseEntity → MgEntityBase → MgStockTaking.TestDataFactory.cs— Centralized factory with ID sequencing: CreateTag(), CreateCategory(), CreateUser(), CreateOrder(), CreateOrderItem().SignalRTestInfrastructure.cs— SignalRMessageFactory, DTOs, CommonSignalRTags, SignalRBenchmarkData.TestLogger.cs— Logger with capture for assertions: HasErrorLogs, HasWarningLogs, GetErrorMessages().