-
Notifications
You must be signed in to change notification settings - Fork 136
Migrate patches to source mutations, in particular ones that are known to change every release #1644
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
Comments
For the product version, is there some msbuild variable that corresponds to the expected version? Are variables that are listed in Is there a test that verifies that this file is correct? Is there something that breaks if this patch is (accidentally) not applied? |
Not right now. I think we should add one for this and for #747. Plopping this into our
Maybe we could set up auto-update somehow, or something like how
Not sure, you can check a source-build binlog to know for sure.
IIRC the website won't work if you try to navigate to it? I'm not sure. @crummel @dseefeld ? |
@JunTaoLuo I'm not sure exactly what happens when the Blazor.js version and ASP.NET server version mismatch. Is this something that's easy to test for? |
With the recent changes to |
That's over at https://github.com/dotnet/source-build/blob/release/5.0/patches/aspnetcore/0016-Fix-version-number.patch for 5.0. (We'll fork a 6.0 branch from |
Patch usage has been steadily declining. For .NET 7.0 we are down to 3 patches. We do not want to make any investments around making patches easier to use - patch usage is being eliminated. |
Uh oh!
There was an error while loading. Please reload this page.
Patch: a change from some specific text to some other text in a specific part of a file. Extremely fragile--intentionally--when upstream source code changes in that file.
Source mutation: modifying a file with a looser tool, such as
sed
or an MSBuild task. We modify global.json, nuget.config, and the RID graph this way today.This patch is a prime candidate:
https://github.com/dotnet/source-build/blob/release/3.1/patches/aspnetcore/0007-Fix-version-number.patch
This patch is actually on a minified json file, changing the last handful of characters to the current product version. Instead of updating this patch for each servicing release, this should be done as a step in the build itself.
To keep this manageable, we should also keep track of what changes we're making to source code outside of patches: #1499. This is technically optional. (We already have some source mutations that aren't tracked.)
The text was updated successfully, but these errors were encountered: