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

Fix #557 - public type implements an internal interface that uses an internal type #1920

Merged
merged 4 commits into from
Dec 20, 2016
Merged

Fix #557 - public type implements an internal interface that uses an internal type #1920

merged 4 commits into from
Dec 20, 2016

Conversation

kurtschelfthout
Copy link
Contributor

@kurtschelfthout kurtschelfthout commented Dec 2, 2016

I'd like to request a review for this.

The change passes the test I added, but not sure the approach is ok. If you think this is promising, I'd want to add more tests too.

Issue #557

@dsyme dsyme changed the title [WIP] Try to fix #557. [WIP] Try to fix #557 - public type implements an internal interface that uses an internal type Dec 3, 2016
@dsyme
Copy link
Contributor

dsyme commented Dec 3, 2016

@kurtschelfthout Wow, it would be great to have this fixed. The approach looks like the correct one.

@kurtschelfthout kurtschelfthout changed the title [WIP] Try to fix #557 - public type implements an internal interface that uses an internal type [WIP] Fix #557 - public type implements an internal interface that uses an internal type Dec 3, 2016
@kurtschelfthout
Copy link
Contributor Author

(re: edit of title: "There is no try. Do or don't." :) )

So I added more tests and moved them to a more appropriate place (I think). It seems to work without any further compiler changes.

Is the CI still borked? Some things failed last push but I couldn't really find the actual problem or even whether it's something I caused.

In any case this is ready for review from my perspective - I had some trouble coming up with good negative test cases or edge cases where things may go wrong, so feel free to suggest things along those lines (or anything else of course).

@kurtschelfthout kurtschelfthout changed the title [WIP] Fix #557 - public type implements an internal interface that uses an internal type Fix #557 - public type implements an internal interface that uses an internal type Dec 7, 2016
@@ -0,0 +1,84 @@

module Definitions =
Copy link
Member

Choose a reason for hiding this comment

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

should this be module internal?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That could be an additional test, but for the purpose of this fix I was trying to make things as clear as possible by keeping everything public except the interfaces/types themselves.

@KevinRansom
Copy link
Member

@kurtschelfthout
Thanks for doing this

Kevin

@KevinRansom KevinRansom merged commit cd501e1 into dotnet:master Dec 20, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants