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

React to pipe renames #162

Merged
merged 1 commit into from
Mar 18, 2019
Merged

React to pipe renames #162

merged 1 commit into from
Mar 18, 2019

Conversation

JunTaoLuo
Copy link
Contributor

Addresses #143. Vendors filed an issue so I'm creating the update.

Copy link
Member

@JamesNK JamesNK left a comment

Choose a reason for hiding this comment

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

I think you need to re-enable the build step to get a preview version of the .NET SDK

@JamesNK
Copy link
Member

JamesNK commented Mar 13, 2019

What about the request pipe? e.g.

var readStreamTask = _serverCallContext.HttpContext.Request.BodyPipe.ReadStreamMessageAsync(_serverCallContext, cancellationToken);
isn't this changing to PipeReader?

@JunTaoLuo
Copy link
Contributor Author

Oops, I think I searched one file instead of the whole solution. Ran the tests now to ensure I didn't miss anything else. I don't think there's scripts that need updating since we run get-dotnet.sh already on our travis runs. I've updated the global.json which ensures the builds get the correct SDK.

@@ -1,5 +1,5 @@
{
"sdk": {
"version": "3.0.100-preview3-010431"
"version": "3.0.100-preview4-010737"
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this a nightly release? if merged as is, bumping would break the continuous interop test build.

Copy link
Contributor

Choose a reason for hiding this comment

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

We should figure out how to do testing against the latest released preview and against the nightly build at the same time.
Should we have two builds - one against the latest nightly and one against the latest released preview and test against both (and use #ifdefs to make things buildable). Then, once the next preview is out, we can cleanup the #ifdef sites?

Btw, would that nightly have dotnet/aspnetcore#8200?

Copy link
Member

Choose a reason for hiding this comment

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

Yes it is a nightly release.

What is the value of testing a build with custom #ifdefs against the official preview? Is it to keep the interop test build passing because it is not possible to install nightly .NET SDKs in that environment?

Copy link
Contributor

@jtattermusch jtattermusch Mar 14, 2019

Choose a reason for hiding this comment

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

I think the main value is maintain the ability to do a release on nuget.org at any time (there's probably no point in releasing something that won't work with the latest official preview) and early adopters still being able to build against the latest preview.

In the interop framework we could pull the never version of SDK if needed, but we'd like to avoid if possible because none of the other gRPC languages does that - all use a fixed environment.

Copy link
Contributor

Choose a reason for hiding this comment

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

Btw, updating the dotnet SDK version in out performance benchmark harness is harder than updating for interop framework - which is yet another motivation to keep things buildable with the stable preview.

Copy link
Member

Choose a reason for hiding this comment

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

If we need to make a point release I think it should come from a branch from the 0.1.9 release. I'd rather not try to maintain two versions because we're going to have more and more minor breaking changes from the SDK:

I don't think we should automatically use the latest nightly each build, but we are going to need to manually update to a newer nightly from time to time. This isn't really any different from manually updating to a newer official preview SDK.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Updating should be as simple as running the build/get-dotnet.{ps1/sh} script.

Copy link
Contributor

@jtattermusch jtattermusch left a comment

Choose a reason for hiding this comment

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

LGTM, but let's wait until grpc/grpc#18413 is merged (otherwise this will break the continous run of interop tests).

@JunTaoLuo
Copy link
Contributor Author

The grpc PR is merged. I'll merge this as well.

@JunTaoLuo JunTaoLuo merged commit 61de5a0 into grpc:master Mar 18, 2019
@JunTaoLuo JunTaoLuo deleted the johluo/pipe-rename branch March 18, 2019 19:54
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.

3 participants