-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
more fixes for msquic packaging #55607
Conversation
Tagging subscribers to this area: @dotnet/ncl Issue DetailsIt seems like previous change was good enough get it to runtime and run tests but it was not good enough to make it the final product. We also crate aspnet transport package and I'm not sure if the native dll needs to be there since it is now part of the runtime. We can possibly re-visit this later if need to.
|
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.
LGTM
src/installer/pkg/sfx/Microsoft.NETCore.App/Directory.Build.props
Outdated
Show resolved
Hide resolved
It doesn’t need to be there. You don’t need ASP.NET to know about this file in any way right? It’s an implementation detail of the assembly in the runtime. |
Currently the package has ref assembly but also |
That’s not right but they don’t consume it so it’s not a major issue, just cleanup. |
Is this closing #52085 once again? Should we adjust the description then? |
I think we might have a problem with single-file host + msquic. Since |
@jkoritzinsky what happens for |
System.IO.Compression.Native is statically linked into the single file host, so it doesn't need to ship alongside it. In the CMake build script:
|
Interesting. Perhaps that's a separate issue for the networking team to peel off and address since this shouldn't make it any worse, right? Today msquic fails to load for all apps, after this change it will fail to load for single-file apps. Some options to consider are:
|
We have that. If the msquic.dll is not present on the target machine, we just disable QUIC and by proxy HTTP/3. |
Yes, this can be future work. I just wanted to raise it before I forgot. |
I was talking about the reverse, where the build could decide when to include the dll in the customer's single file app. If there was a way for the customer (or the customer's app/project) to express "I want my single file app to have QUIC" rather than us say in our framework metadata that it must always be present. |
We have an AppContext switch: This PR: #55332 |
I'm glad you brought it up @jkoritzinsky and I think this should be future work. Quic/H3 is preview feature for 6.0 so I'm not sure if we should pollute the single file with something that is unlikely to be used. As @ericstj mentioned it would be great if this is something the project can control. |
Tracking in #55639 |
Mono build failure looks irrelevant. |
It seems like previous change was good enough get it to runtime and run tests but it was not good enough to make it the final product.
With this, I verified that
msquic.dll
is part of createddotnet-runtime-6.0.0-dev-win-x64.zip
and I also run the msi installer and I check install shared directory.We also crate aspnet transport package and I'm not sure if the native dll needs to be there since it is now part of the runtime. We can possibly re-visit this later if need to.