Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
3cf160b
Remove all CLR2COMPATIBILITY code paths
DustinCampbell Feb 25, 2026
83253e4
Remove all TASKHOST code paths
DustinCampbell Feb 25, 2026
5e8c0ef
Remove all NET35 code paths (except StringTools)
DustinCampbell Feb 25, 2026
f8699df
Move FileUtilities.IsPathTooLong to Framework
DustinCampbell Feb 27, 2026
12e7020
Move FileSystem to Framework
DustinCampbell Feb 27, 2026
99fe386
Move EscapingUtilities to Framework
DustinCampbell Mar 2, 2026
bbfccd9
Move FileUtilitiesRegex to Framework
DustinCampbell Mar 2, 2026
002592c
Move exception dumping members from ExceptionHandling to DebugUtils
DustinCampbell Mar 9, 2026
34ec179
Move ExceptionHandling member implementations to Framework
DustinCampbell Mar 9, 2026
03d0b9e
Move TempFileUtilities member implementations to Framework
DustinCampbell Mar 9, 2026
abf128e
Move StreamExtensions from FileUtilities.cs to Framework
DustinCampbell Mar 9, 2026
07d931d
Prepare FrameworkFileUtiliites for FileUtilities merge
DustinCampbell Mar 10, 2026
2741dff
Move FileUtilities member implementations to Framework
DustinCampbell Mar 9, 2026
3eefb90
Move Modifiers member implementations to Framework
DustinCampbell Mar 10, 2026
ae08ede
Move FileUtilities.ExecutingAssemblyPath to BuildEnvironmentHelper
DustinCampbell Mar 10, 2026
5e51cbb
Update ItemSpecModifiers usages and remove Modifiers.cs
DustinCampbell Mar 10, 2026
512378a
Remove shared FileUtilities and update usages to use Framework version
DustinCampbell Mar 10, 2026
2a69cd0
Update ExceptionHandling usages to DebugUtils
DustinCampbell Mar 10, 2026
ea19214
Remove shared ExceptionHandling and update usages to Framework version
DustinCampbell Mar 10, 2026
765c837
Move FileUtilities_Tests to Framework.UnitTests
DustinCampbell Mar 10, 2026
79fb6df
Move EscapingUtilities_Tests to Framework.UnitTests
DustinCampbell Mar 10, 2026
b280244
Move MSBuildConstants to Framework
DustinCampbell Mar 10, 2026
9cce71a
Move EnvironmentUtilities to Framework
DustinCampbell Mar 10, 2026
3220e1b
Move BinaryReader/WriterExtensions to Framework
DustinCampbell Mar 10, 2026
4ee291a
Move IMSBuildElementLocation to Framework
DustinCampbell Mar 10, 2026
9f64672
Rationalize FileUtilities.GetIsFileSystemCaseSensitive()
DustinCampbell Mar 10, 2026
119a67e
Merge branch 'main' into isolate-taskhost-followup
DustinCampbell Mar 11, 2026
0d3953a
Remove a couple of lingering CLRCOMPATIBILITY code paths
DustinCampbell Mar 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
using System.Text;
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;
using Microsoft.Build.UnitTests;
using Xunit;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using System.Xml;
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;
using Xunit;
using InvalidProjectFileException = Microsoft.Build.Exceptions.InvalidProjectFileException;
Expand Down Expand Up @@ -159,12 +160,12 @@ public void SettingProjectDirties()

try
{
file1 = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file1 = FileUtilities.GetTemporaryFileName();
ProjectRootElement importProject1 = ProjectRootElement.Create();
importProject1.AddProperty("p", "v1");
importProject1.Save(file1);

file2 = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file2 = FileUtilities.GetTemporaryFileName();
ProjectRootElement importProject2 = ProjectRootElement.Create();
importProject2.AddProperty("p", "v2");
importProject2.Save(file2);
Expand Down Expand Up @@ -203,7 +204,7 @@ public void SettingConditionDirties()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file = FileUtilities.GetTemporaryFileName();
ProjectRootElement importProject = ProjectRootElement.Create();
importProject.AddProperty("p", "v1");
importProject.Save(file);
Expand Down
11 changes: 6 additions & 5 deletions src/Build.OM.UnitTests/Construction/ProjectRootElement_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
using InvalidProjectFileException = Microsoft.Build.Exceptions.InvalidProjectFileException;
using ProjectCollection = Microsoft.Build.Evaluation.ProjectCollection;
using Xunit;
using Microsoft.Build.Framework;

#nullable disable

Expand Down Expand Up @@ -253,7 +254,7 @@ public void ConstructOverSameFileReturnsSameEvenWithOneBeingRelativePath4()
public void SetFullPathProjectXmlAlreadyLoaded()
{
ProjectRootElement projectXml1 = ProjectRootElement.Create();
projectXml1.FullPath = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile();
projectXml1.FullPath = FileUtilities.GetTemporaryFile();

ProjectRootElement projectXml2 = ProjectRootElement.Create();
projectXml2.FullPath = projectXml1.FullPath;
Expand Down Expand Up @@ -425,7 +426,7 @@ public void ValidXmlInvalidSyntaxOpenFromDiskTwice()
{
try
{
path = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
path = FileUtilities.GetTemporaryFileName();
File.WriteAllText(path, content);

ProjectRootElement.Open(path);
Expand Down Expand Up @@ -909,7 +910,7 @@ public void SolutionCanNotBeOpened()

try
{
tempFileSentinel = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile();
tempFileSentinel = FileUtilities.GetTemporaryFile();
solutionFile = Path.ChangeExtension(tempFileSentinel, ".sln");
File.Copy(tempFileSentinel, solutionFile);

Expand Down Expand Up @@ -954,7 +955,7 @@ public void ProjectCanNotBeOpened()
try
{
// Does not have .sln or .vcproj extension so loads as project
projectFile = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile();
projectFile = FileUtilities.GetTemporaryFile();

security = new FileSecurity(projectFile, System.Security.AccessControl.AccessControlSections.All);
security.AddAccessRule(rule);
Expand Down Expand Up @@ -990,7 +991,7 @@ public void SolutionCorrupt()

try
{
solutionFile = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
solutionFile = FileUtilities.GetTemporaryFileName();

// Arbitrary corrupt content
string content = @"Microsoft Visual Studio Solution File, Format Version 10.00
Expand Down
1 change: 1 addition & 0 deletions src/Build.OM.UnitTests/Construction/SolutionFile_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using System.Threading;
using Microsoft.Build.Construction;
using Microsoft.Build.Exceptions;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;
using Microsoft.VisualStudio.SolutionPersistence;
using Microsoft.VisualStudio.SolutionPersistence.Model;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using System.Text.RegularExpressions;
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;
using Xunit;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Execution;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;
using Microsoft.Build.Utilities;
using Shouldly;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public void UpdateMetadataImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile();
file = FileUtilities.GetTemporaryFile();
ProjectRootElement import = ProjectRootElement.Create(file);
import.AddItemDefinitionGroup().AddItemDefinition("i").AddMetadata("m", "m0");
import.Save();
Expand Down Expand Up @@ -151,7 +151,7 @@ public void SetMetadataImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile();
file = FileUtilities.GetTemporaryFile();
ProjectRootElement import = ProjectRootElement.Create(file);
import.AddItemDefinitionGroup().AddItemDefinition("i").AddMetadata("m", "m0");
import.Save();
Expand Down
10 changes: 5 additions & 5 deletions src/Build.OM.UnitTests/Definition/ProjectItem_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -319,7 +319,7 @@ public void BuiltInMetadataTimes()

try
{
path = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
path = FileUtilities.GetTemporaryFileName();
File.WriteAllText(path, String.Empty);
FileInfo info = new FileInfo(path);

Expand Down Expand Up @@ -2053,7 +2053,7 @@ public void RenameImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file = FileUtilities.GetTemporaryFileName();
Project import = new Project();
import.AddItem("i", "i1");
import.Save(file);
Expand Down Expand Up @@ -2084,7 +2084,7 @@ public void SetMetadataImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file = FileUtilities.GetTemporaryFileName();
Project import = new Project();
import.AddItem("i", "i1");
import.Save(file);
Expand Down Expand Up @@ -2115,7 +2115,7 @@ public void RemoveMetadataImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file = FileUtilities.GetTemporaryFileName();
Project import = new Project();
ProjectItem item = import.AddItem("i", "i1")[0];
item.SetMetadataValue("m", "m0");
Expand Down Expand Up @@ -2478,7 +2478,7 @@ public void RemoveWithItemReferenceOnFilePathMatchingMetadata()
var project = ObjectModelHelpers.CreateInMemoryProject(content);
var items = project.ItemsIgnoringCondition.Where(i => i.ItemType.Equals("I2"));

if (FileUtilities.GetIsFileSystemCaseSensitive())
if (FileUtilities.IsFileSystemCaseSensitive)
{
items.Select(i => i.EvaluatedInclude).ShouldBe(new[] { "a2", "b2", "c2", "g2" });

Expand Down
3 changes: 2 additions & 1 deletion src/Build.OM.UnitTests/Definition/ProjectProperty_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Framework;
using Xunit;

#nullable disable
Expand Down Expand Up @@ -260,7 +261,7 @@ public void SetPropertyImported()

try
{
file = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
file = FileUtilities.GetTemporaryFileName();
Project import = new Project();
import.SetProperty("p", "v0");
import.Save(file);
Expand Down
4 changes: 2 additions & 2 deletions src/Build.OM.UnitTests/Definition/Project_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2089,7 +2089,7 @@ public void BuildEvaluationUsesCustomLoggers()
ObjectModelHelpers.CleanupFileContents(@"<Project xmlns='msbuildnamespace'>
</Project>");

string importFileName = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName() + ".proj";
string importFileName = FileUtilities.GetTemporaryFileName() + ".proj";
File.WriteAllText(importFileName, importProjectContent);

string projectContent =
Expand Down Expand Up @@ -3350,7 +3350,7 @@ public void GetItemProvenancePathMatchingShouldBeCaseInsensitive()
("A", Operation.Include, Provenance.StringLiteral, 1)
};

AssertProvenanceResult(expected, project, FileUtilities.GetIsFileSystemCaseSensitive() ? "a" : "A");
AssertProvenanceResult(expected, project, FileUtilities.IsFileSystemCaseSensitive ? "a" : "A");
}


Expand Down
3 changes: 2 additions & 1 deletion src/Build.OM.UnitTests/Definition/ProtectImports_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using System.Linq;

using Microsoft.Build.Evaluation;
using Microsoft.Build.Framework;
using Xunit;

#nullable disable
Expand Down Expand Up @@ -103,7 +104,7 @@ public ProtectImports_Tests()
</Project>";

importContents = Expand(importContents);
_importFilename = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName() + ".targets";
_importFilename = FileUtilities.GetTemporaryFileName() + ".targets";
File.WriteAllText(_importFilename, importContents);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
using Microsoft.Build.Execution;
using Microsoft.Build.Framework;
using Xunit;

#nullable disable
Expand Down Expand Up @@ -111,7 +112,7 @@ public void FileLocationAvailableEvenAfterEdits()

try
{
path = Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName();
path = FileUtilities.GetTemporaryFileName();
ProjectRootElement projectXml = ProjectRootElement.Create(path);
projectXml.Save();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<Import Project="..\Shared\FileSystemSources.proj" />
<Import Project="..\Shared\DebuggingSources.proj" />

<PropertyGroup>
Expand Down Expand Up @@ -46,11 +45,6 @@
<Compile Include="..\Shared\BuildEnvironmentHelper.cs">
<Link>BuildEnvironmentHelper.cs</Link>
</Compile>
<Compile Include="..\Shared\TempFileUtilities.cs" />
<Compile Include="..\Shared\FileUtilities.cs" />
<Compile Include="..\Shared\EscapingUtilities.cs" />
<Compile Include="..\Shared\FileUtilitiesRegex.cs" />
<Compile Include="..\Shared\ExceptionHandling.cs" />
<None Include="..\Shared\UnitTests\App.config">
<Link>App.config</Link>
<SubType>Designer</SubType>
Expand Down
1 change: 1 addition & 0 deletions src/Build.OM.UnitTests/TransientIO.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ namespace Microsoft.Build.UnitTests
using System;
using System.Collections.Generic;
using System.IO;
using Microsoft.Build.Framework;
using Microsoft.Build.Shared;

public class TransientIO : IDisposable
Expand Down
Loading
Loading