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

Allow marshalable objects to implement additional optional interfaces #843

Merged
merged 26 commits into from
Oct 3, 2022

Conversation

matteo-prosperi
Copy link
Member

No description provided.

Copy link
Member

@AArnott AArnott left a comment

Choose a reason for hiding this comment

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

This is remarkable how well this fits in and how quickly you wrote it up. I have lots of comments, but I'm very enthusiastic about what you're proposing here.

@codecov-commenter
Copy link

codecov-commenter commented Sep 14, 2022

Codecov Report

Merging #843 (e7c8bd7) into main (bd27af1) will increase coverage by 0.02%.
The diff coverage is 92.73%.

❗ Current head e7c8bd7 differs from pull request most recent head 8ed2b8d. Consider uploading reports for the commit 8ed2b8d to get more accurate results

@@            Coverage Diff             @@
##             main     #843      +/-   ##
==========================================
+ Coverage   91.67%   91.69%   +0.02%     
==========================================
  Files         134      135       +1     
  Lines       13343    13689     +346     
==========================================
+ Hits        12232    12552     +320     
- Misses       1111     1137      +26     
Flag Coverage Δ
LinuxHost 90.73% <92.73%> (+0.03%) ⬆️
Release 91.69% <92.73%> (+0.02%) ⬆️
WindowsHost 91.67% <92.73%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
src/StreamJsonRpc/Reflection/RpcTargetInfo.cs 95.03% <86.95%> (+0.81%) ⬆️
test/StreamJsonRpc.Tests/MarshalableProxyTests.cs 91.22% <88.79%> (-2.02%) ⬇️
...tion/MessageFormatterRpcMarshaledContextTracker.cs 96.37% <95.38%> (-0.73%) ⬇️
src/StreamJsonRpc/ProxyGeneration.cs 99.41% <98.51%> (-0.38%) ⬇️
src/StreamJsonRpc/JsonMessageFormatter.cs 91.51% <100.00%> (-0.02%) ⬇️
src/StreamJsonRpc/JsonRpc.cs 92.50% <100.00%> (+0.44%) ⬆️
src/StreamJsonRpc/MessagePackFormatter.cs 92.45% <100.00%> (-0.01%) ⬇️
...ection/RpcMarshalableOptionalInterfaceAttribute.cs 100.00% <100.00%> (ø)
src/StreamJsonRpc/HeaderDelimitedMessageHandler.cs 86.98% <0.00%> (-0.60%) ⬇️
... and 4 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Copy link
Member

@AArnott AArnott left a comment

Choose a reason for hiding this comment

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

Exciting stuff. I still need to review the ProxyGeneration and tests, but thought I'd offer my feedback so far.
Note I did push a commit to your branch with a few small changes I just made instead of commenting asking you to make them.

Copy link
Member

@AArnott AArnott left a comment

Choose a reason for hiding this comment

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

Finished reviewing.

@matteo-prosperi matteo-prosperi changed the title Adding support for polymorphism of marshalable interfaces Allow marshalable objects to implement additional optional interfaces Sep 21, 2022
@matteo-prosperi matteo-prosperi enabled auto-merge (squash) October 3, 2022 17:13
@matteo-prosperi matteo-prosperi merged commit e540dd2 into main Oct 3, 2022
@matteo-prosperi matteo-prosperi deleted the dev/maprospe/marshalable_interface_polymorphism branch October 3, 2022 17:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants