-
Notifications
You must be signed in to change notification settings - Fork 492
Add ContinueConversationAsync to IAdapterIntegration #1289
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
Add ContinueConversationAsync to IAdapterIntegration #1289
Conversation
This effectively just copies the signature from the |
@drub0y , The build error says this: tests\Microsoft.Bot.Builder.TestBot\InteceptorAdapter.cs(11,38): Error CS0535: 'InteceptorAdapter' does not implement interface member 'IAdapterIntegration.ContinueConversationAsync(string, ConversationReference, BotCallbackHandler, CancellationToken)' (Note: Amusingly, InteceptorAdapter looks to be spelled wrong. If you're in there anyway, could you fix the spelling error?) |
I wonder - does adding a method to an interface definition count as a breaking change? It clearly is (as seen by the broken build), but I'm not sure what to make of that. This seems like a class that's deep enough that nobody would be broken by taking the change. |
So it's really strange that I didn't hit this locally, I will run that to grounds and get whatever fix is necessary in. |
The test projects contain an `IntercepterAdapter` class for demonstration purposes and those needed to implement the new `IAdapterIntegration::ContinueConversationAysnc` method.
So, I really don't know what I did that missed this because I usually just build the whole solution, but clearly I must have built some subset. The problem was sample |
Pull Request Test Coverage Report for Build 47177
💛 - Coveralls |
Just to keep the discussion up to date here, @cleemullins had an offline chat and, yes, this is a breaking change because people who may have implemented the interface would be broken and need to implement the new method. In your own app this might not be a big deal, but if you took a dependency on another package that implemented a class with this interface it would be a bigger issue. You would have to wait until that package provided a compatible version before you could upgrade the BBSDK. The decision will need to be made if this is the exact approach taken to keep things simple because there probably aren't many people out there who have implemented this interface or if we need to consider a different change (e.g. the old Finally, this is the reason why the C# team is working on the default interface implementations feature. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signed off during phone PR review.
Fixes #1287