Do not include redist files in runtime packs - #66805
Conversation
|
Tagging subscribers to this area: @dotnet/runtime-infrastructure Issue DetailsIn progress. The goal is to not include with apps unnecessary files like api sets.
|
|
Note that this also stops copying Local deployment of crt is a perf and security concern. We should be using the one that comes with the system and serviced by the updates. Besides, on Win10+ the local ucrtbase is never used anyways. Even if a local one is newer, the system component always wins over. |
|
CC @jkotas |
|
Are these files gone from the msi as well? (ie they won't get installed at |
|
Also, do CI tests still pass on Windows 7 with this change? You may want to trigger extra platforms or outer loop tests to validate it. |
I do not know where else they would pe picked from, if we stop placing them into |
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@VSadov if you also want to remove them from runtime packs (which will) and the platform manifest - it would be here . My only question is where would Win7 apps pick them up from? |
jkoritzinsky
left a comment
There was a problem hiding this comment.
LGTM if the Windows 7 leg in runtime-extra-platforms passes.
|
I am not sure about the PlatformManifestFileEntry. It looks like we keep everything that was ever included there, so I did not remove the entries. |
|
Generally, the platform manifest must contain every file we ever shipped in an out-of-band package that is now in box. Since these always shipped with Microsoft.NETCore.App, it's probably okay to remove them. A good test to be sure would be to reference a package that targets |
|
Re: Windows7 The runtime (including native/managed components) has the following dependencies: These are basically dependencies of
Evidently not including all these files does not prevent singlefile apps working on Win7 SP1 (after #63196). |
|
Re: omitting these files from Microsoft.NETCore.App I have checked @jkoritzinsky - is that the right place to look at? (i.e. no files will be added later somehow) |
Since this is a good-to-have clean up, but there is a chance of failure, I will do that as a separate change once this gets all the way to SDK and we see that all is ok. |
|
created an issue to track PlatformManifestFileEntry cleanup. - #66860 |
|
@jkoritzinsky - which of the legs are Windows7 ? Did we pass? |
|
We need to watch the runtime-extra-platforms (Libaries Test Run release coreclr windows x86 Release) leg. That leg runs the Windows 7 test run. |
|
Helix is out today - we won't get results looks like. |
|
The only failure is on OSX and seems unrelated (some ThreadPool test). |
|
Thanks!! |
* do not copy redist files to artefacts * do not copy redist files to tests * Do not include Redist files in runtime packs
The goal is to not include with apps unnecessary files like api sets.
Once api set dlls like
api-ms-win-core-whatever-l1-1-0.dllare not in the runtime pack, SDK will stop placing them into self-containing apps. (SDK just copies all that is inRuntimeFiles)Fixes:#65758