Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v4: Only permit integration through API methods exposed through nunit.engine.api #886

Open
ChrisMaddock opened this issue Jan 30, 2021 · 2 comments
Milestone

Comments

@ChrisMaddock
Copy link
Member

We've faced various issues in v3 with it being unclear which public exposed methods are intended to be supported as interfaces. This leads to unexpected breaking changes for runners maintainers, and also lost time in trying to support interactivity with the engine through a range of unsupported methods.

For v4, I suggest we make only the methods in nunit.engine.api.dll publicly accessible. To do this, we would make methods internal in the other assemblies, and use InternalsVisibleTo to allow interaction between different assemblies.

@CharliePoole
Copy link
Contributor

Minor thing: I'd add "or any other API assemblies we decide we need."

@CharliePoole
Copy link
Contributor

We've made the basic decision: only API methods are guaranteed to remain stable. It remains to make current public methods internal or otherwise inaccessible to the greatest extent possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants