This is not a massively dramatic release over the previous version. The idea is to push new changes rapidly to the public to get early feedbacks. All that said, there are good set of new features and improvements in this release that I genuinely feel very excited about. Many of these changes are based on feedbacks I have received from early adopters. Thanks to everyone who has shared their inputs.
There is no significant changes on the underlying SheepAspect framework itself. This release is more of implementing new functionalities and natural progression of the feature-set of the library. Some of these new features are:
- Mixins. With the new [DeclareMixin] advice attribute, you can now statically add interface implementations to existing classes. I
will writehave written the details of this on a separate post.
- [DeclareAttribute] advice is now also introduced in SheepAspect. With this advice, you can add new attributes to existing types, methods, properties, fields, and constructors.
- In Preview 2, SheepAspect required pdb files of all target binaries (so that SheepAspect can preserve debuggability of your weaved binaries). This has caused a problem for users who do not have pdb files of their target binaries. In Preview 3, pdb files are optional.