dotnet/runtime
Facades and NotSupported assemblies are bloated with resources they don't use
开放
#28,888 创建于 2019年3月6日
area-Infrastructure-librariesenhancementhelp wanted
仓库指标
- 星标
- (17,886 个星标)
- PR 合并指标
- (PR 指标待抓取)
描述
Often times we have builds that cross-compile and have very different implementations. Our resource conventions don't force folks to think about this, so the resources are often a superset of all configurations.
We should change the defaults so that this isn't the case.
I propose the following:
- By default PartialFacades should not include any resources, unless a project opts-in. Folks should discover this relatively easily as SR.Foo will fail to work in the partial source. They can fix it by setting a flag and potentially providing specific resources for that build of the library.
- By default NotSupported assemblies require a unique resx. We can change the path convention to something like Resources\NotSupported.resx instead of strings.resx
Across all our builds this will save over a MB of unused resources.