From ca753f245c0c924708d0df4871bbf7339cd0a7fd Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 12 Jan 2026 15:42:19 +0000
Subject: [PATCH 1/6] Initial plan
From 2672911246d83f1b1bd4ba7f75b318c6a6e07e3e Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 12 Jan 2026 15:46:30 +0000
Subject: [PATCH 2/6] Update branding from VS 18.3 to VS 18.4
Co-authored-by: ViktorHofer <7412651+ViktorHofer@users.noreply.github.com>
---
azure-pipelines/vs-insertion.yml | 5 ++++-
eng/Versions.props | 2 +-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/azure-pipelines/vs-insertion.yml b/azure-pipelines/vs-insertion.yml
index 10542091113..76f7ff3a5d1 100644
--- a/azure-pipelines/vs-insertion.yml
+++ b/azure-pipelines/vs-insertion.yml
@@ -44,6 +44,7 @@ parameters:
values:
- auto
- main
+ - rel/d18.4
- rel/d18.3
- rel/d18.0
- rel/d17.14
@@ -67,7 +68,9 @@ parameters:
variables:
# `auto` should work every time and selecting a branch in parameters is likely to fail due to incompatible versions in MSBuild and VS
- name: AutoInsertTargetBranch
- ${{ if eq(variables['Build.SourceBranchName'], 'vs18.3') }}:
+ ${{ if eq(variables['Build.SourceBranchName'], 'vs18.4') }}:
+ value: 'rel/d18.4'
+ ${{ elseif eq(variables['Build.SourceBranchName'], 'vs18.3') }}:
value: 'rel/d18.3'
${{ elseif eq(variables['Build.SourceBranchName'], 'vs18.0') }}:
value: 'rel/d18.0'
diff --git a/eng/Versions.props b/eng/Versions.props
index 74765ef67d5..fb60b6444c5 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -3,7 +3,7 @@
- 18.3.0
+ 18.4.0
preview
18.0.2
15.1.0.0
From 585e42a1b46d6b8e66107042063a4c7b433a1c25 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 12 Jan 2026 16:19:40 +0000
Subject: [PATCH 3/6] Update merge flow configuration for vs18.3 branch
Co-authored-by: ViktorHofer <7412651+ViktorHofer@users.noreply.github.com>
---
.config/git-merge-flow-config.jsonc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.config/git-merge-flow-config.jsonc b/.config/git-merge-flow-config.jsonc
index f1070da2f95..9c1449ad253 100644
--- a/.config/git-merge-flow-config.jsonc
+++ b/.config/git-merge-flow-config.jsonc
@@ -28,7 +28,7 @@
},
// Automate opening PRs to merge msbuild's vs18.0 (SDK 10.0.1xx) into vs18.3 (SDK 10.0.2xx, VS)
"vs18.0": {
- "MergeToBranch": "main" // update to flow through vs18.3 after we fork for release
+ "MergeToBranch": "vs18.3"
},
// MSBuild latest release to main
"vs18.3": {
From 7c1771da0a0f1ff3a0d8e2f6bf2e119f484e302d Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 12 Jan 2026 16:40:06 +0000
Subject: [PATCH 4/6] Add vs18.4 to merge flow configuration
Co-authored-by: ViktorHofer <7412651+ViktorHofer@users.noreply.github.com>
---
.config/git-merge-flow-config.jsonc | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/.config/git-merge-flow-config.jsonc b/.config/git-merge-flow-config.jsonc
index 9c1449ad253..b71aa6bf459 100644
--- a/.config/git-merge-flow-config.jsonc
+++ b/.config/git-merge-flow-config.jsonc
@@ -30,8 +30,12 @@
"vs18.0": {
"MergeToBranch": "vs18.3"
},
- // MSBuild latest release to main
+ // Automate opening PRs to merge msbuild's vs18.3 (SDK 10.0.2xx) into vs18.4 (SDK 10.0.3xx, VS)
"vs18.3": {
+ "MergeToBranch": "vs18.4"
+ },
+ // MSBuild latest release to main
+ "vs18.4": {
"MergeToBranch": "main"
}
}
From 566c81aea3e523d94106f27d419aee5dbaf2a4e5 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Mon, 12 Jan 2026 16:44:34 +0000
Subject: [PATCH 5/6] Update comment in merge flow config to match pattern
Co-authored-by: ViktorHofer <7412651+ViktorHofer@users.noreply.github.com>
---
.config/git-merge-flow-config.jsonc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.config/git-merge-flow-config.jsonc b/.config/git-merge-flow-config.jsonc
index b71aa6bf459..b43624c796e 100644
--- a/.config/git-merge-flow-config.jsonc
+++ b/.config/git-merge-flow-config.jsonc
@@ -34,7 +34,7 @@
"vs18.3": {
"MergeToBranch": "vs18.4"
},
- // MSBuild latest release to main
+ // Automate opening PRs to merge msbuild's vs18.4 (SDK 10.0.3xx, VS) into main
"vs18.4": {
"MergeToBranch": "main"
}
From d337e463c6af78240c41f9c940722a55889ded83 Mon Sep 17 00:00:00 2001
From: Viktor Hofer
Date: Mon, 12 Jan 2026 17:54:52 +0100
Subject: [PATCH 6/6] Update merge flow configuration for vs18.3
---
.config/git-merge-flow-config.jsonc | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/.config/git-merge-flow-config.jsonc b/.config/git-merge-flow-config.jsonc
index b43624c796e..13efaeba878 100644
--- a/.config/git-merge-flow-config.jsonc
+++ b/.config/git-merge-flow-config.jsonc
@@ -30,12 +30,8 @@
"vs18.0": {
"MergeToBranch": "vs18.3"
},
- // Automate opening PRs to merge msbuild's vs18.3 (SDK 10.0.2xx) into vs18.4 (SDK 10.0.3xx, VS)
+ // Automate opening PRs to merge msbuild's vs18.3 (SDK 10.0.2xx) into main
"vs18.3": {
- "MergeToBranch": "vs18.4"
- },
- // Automate opening PRs to merge msbuild's vs18.4 (SDK 10.0.3xx, VS) into main
- "vs18.4": {
"MergeToBranch": "main"
}
}