Skip to content

Commit c9f7a72

Browse files
committed
Update changelog
1 parent fbab197 commit c9f7a72

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Breaking Changes:
77
- Moved `Castle.Core.Logging.DiagnosticsLogger` into a separate NuGet package `Castle.Core-DiagnosticsLogger`, which renders the main package dependency-free for .NET 8+ (@snakefoot, #694)
88

99
Enhancements:
10-
- Minimally improved support for methods having `ref struct` parameter and return types, such as `Span<T>`: Intercepting such methods caused the runtime to throw `InvalidProgramException` and `NullReferenceException` due to forbidden conversions of `ref struct` values when transferring them into & out of `IInvocation` instances. To prevent these exceptions from being thrown, such values now get replaced with `null` in `IInvocation`, and with `default` values in return values and `out` arguments. When proceeding to a target, the target methods likewise receive such nullified values. (@stakx, #665)
10+
- Comprehensive support for proxying methods with byref-like (`ref struct`) parameter and return types, such as `Span<T>`. Until now, any `ref struct` values triggered exceptions during interception because DynamicProxy could not box them to `object` & transfer them into `IInvocation` instances. Now, byref-like values are represented in `IInvocation` instances with new substitute types `SpanReference<T>`, `ReadOnlySpanReference<T>`, and `ByRefLikeReference<TByRefLike>` which grant you indirect access to the actual values. Please [read the documentation for details](docs/dynamicproxy-byref-like-parameters.md). (@stakx, #665, #712)
1111
- Restore ability on .NET 9 and later to save dynamic assemblies to disk using `PersistentProxyBuilder` (@stakx, #718)
1212
- Configure SourceLink & `.snupkg` symbols package format (@Romfos, #722)
1313
- Dependencies were updated

0 commit comments

Comments
 (0)