Skip to content
This repository was archived by the owner on Jun 30, 2023. It is now read-only.

Conversation

@kzu
Copy link
Member

@kzu kzu commented Aug 23, 2019

By leveraging Castle DP, we can speed up the beta release, since
most of the new testing required would be exclusively on the new
API and backwards compatibility, rather than having to keep
investing in the non-trivial amount of work required to have a
solid alternative approach (or two!).

This brings back Castle.Core DynamicProxy for the proxy generation, which has been very robust over the years.

All tests passing.
By leveraging Castle DP, we can speed up the beta release, since
most of the new testing required would be exclusively on the new
API and backwards compatibility, rather than having to keep
investing in the non-trivial amount of work required to have a
solid alternative approach (or two!).

The alternative approaches are now in separate branches:
- Build/design-time codegen using Roslyn: dev/codeanalysis branch
- Static codegen using Cecil: dev/emit
Copy link
Contributor

@stakx stakx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took a quick look at this PR (nothing in-depth, I'm afraid). Nice to see DynamicProxy gets a comeback. :-) Just two minor comments.

Brought most of this from moq4, including the test suite :).
Implemented the VerifyAll method for the legacy API since it
was used by that test suite. Also added overloads for Verify
with void methods which was also needed.
@kzu kzu merged commit 494f3a6 into master Aug 24, 2019
@kzu kzu deleted the dev/dynamic branch August 24, 2019 05:50
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants