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

Track source mutations that occur before build #1499

Closed
dagood opened this issue Feb 24, 2020 · 1 comment
Closed

Track source mutations that occur before build #1499

dagood opened this issue Feb 24, 2020 · 1 comment
Labels
area-infra Source-build infrastructure and reporting

Comments

@dagood
Copy link
Member

dagood commented Feb 24, 2020

We use patches for some changes, but for others, we have MSBuild targets that mutate source code directly. This is useful for routine changes, where a patch would be frequently invalidated but a find-replace type of operation is reliable. For example, editing NuGet.configs and global.jsons.

Right now, since darc clone disconnects each repo's working tree from Git, it's hard to determine what the modifications are. We should track them to make it more obvious what's being built. It would probably be sufficient to generate a patch file against the cloned commit, just before the primary build command runs.


Mutations are significantly more resilient than patches for servicing updates, but the downside is it's harder to tell what's going on. By tracking the changes, it might be reasonable to migrate some non-integrable 3.1 patches into mutations to make it easier to get updates out quickly.

Just like patches, mutations are also something we should aim to minimize, to have a sensible build. But it may not be reasonable to eliminate mutation in some cases, such as hard-coded feeds in NuGet.configs that don't allow anonymous access.

@MichaelSimons
Copy link
Member

As part of the Unified Build project, source-edits will be supported and will automatically flow back to the product repos. Source mutations done as part of the build present a UX problem as they pollute the workspace. #3664 tracks the work to eliminate all source mutations.

@MichaelSimons MichaelSimons closed this as not planned Won't fix, can't repro, duplicate, stale Aug 2, 2024
@github-project-automation github-project-automation bot moved this from Backlog to Done in .NET Source Build Aug 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infra Source-build infrastructure and reporting
Projects
Archived in project
Development

No branches or pull requests

3 participants