Releases: finerace/MethodBoundaryAspect.Fody-for-Unity
v2.0.0
v2.0.0
This is a major update focused on improving stability, fixing critical bugs with async methods, and adding new functionality.
✨ New Features
Class-Level Attribute Support: You can now apply aspects to an entire class, significantly reducing code duplication.
Partial yield Iterator Support: Aspects are now correctly applied to the MoveNext() method of the state machine, allowing you to track each iteration.
Increased Stability: The plugin is now more predictable and reliable in complex scenarios.
🐛 Bug Fixes
Incorrect behavior with async methods (Task/UniTask):
OnExit is now correctly called after the final async operation completes, not synchronously at the start.
Fixed a Deadlock that occurred when handling exceptions in async methods (FlowBehavior.Continue), which caused an infinite await.
Fixed a Race Condition that could cause OnExit to fire unpredictably.
Incorrect FlowBehavior.Return behavior: When execution is aborted via OnEntry, OnExit is now correctly called for all aspects in the chain.
Broken OnExit chain during exceptions: When an exception is handled by one aspect (FlowBehavior.Continue), OnExit is now correctly called for all preceding aspects.