v1.2.0
Added
- Explicit
Replace,ClearAndFill, andAppendpolicies for existing-target collections. - Invocation-local reference preservation for shared and cyclic mutable object graphs.
- Closed-world runtime dispatch through generated
TryMapRuntimeandMapRuntimemethods. - Cached provider-neutral expression projections through the optional
DomainMapper.Projectionspackage. - Diagnostics
DMPR105throughDMPR107for unsupported tracking, projection, and registry declarations. - Incremental invalidation, concurrency, trimming, and native AOT validation fixtures.
Changed
- Incremental generator inputs are fingerprinted per mapper and reachable source contract, keeping isolated changes from invalidating unrelated mapper outputs.
- The 1.2 packages validate public API compatibility against the 1.1 release.
Fixed
- Reference tracking now distinguishes target contracts when one source instance participates in heterogeneous target shapes.
- Projection generation rejects failed mappings, custom delegates, and user-defined conversion calls while retaining pure lifted conversions.
- Runtime registries reject open-world interface ambiguity and value-type derived dispatch, handle nullable annotations, and exclude mappings whose deferred helpers fail.
- Incremental invalidation includes containing partial types and inherited mapper declarations that affect emitted source.
Full changelog: v1.1.0...v1.2.0