Rename --force-incremental-unsafe flag to --no-incremental

This commit is contained in:
Mihai Codoban 2016-01-21 11:04:45 -08:00
parent 947807d457
commit 897c0fa0f0
6 changed files with 17 additions and 14 deletions

View file

@ -14,4 +14,4 @@ The following represent warning codes printed by CLI when the project structure
- __[Unknown Compiler]__: csc, vbc, and fsc have known side effects (which files and directories they read, write, and what they are not reading/writing).
We dont know this for other compilers. So we choose to be safe and disable incremental compilation for now. We are planning to enable specification of tool side effects in a future version, so that they can participate in incremental compilation as well.
- __[Forced Unsafe]__: The build was marked unsafe using the `--force-incremental-unsafe` flag. Remove this flag to enable incremental compilation.
- __[Forced Unsafe]__: The build was not incremental because the `--no-incremental` flag was used. Remove this flag to enable incremental compilation.

View file

@ -8,7 +8,7 @@ namespace Microsoft.DotNet.Tools.Build
internal class BuilderCommandApp : CompilerCommandApp
{
public const string BuildProfileFlag = "--build-profile";
public const string ForceUnsafeFlag = "--force-incremental-unsafe";
public const string ForceUnsafeFlag = "--no-incremental";
public bool BuildProfileValue => OptionHasValue(BuildProfileFlag);
public bool ForceUnsafeValue => OptionHasValue(ForceUnsafeFlag);
@ -16,7 +16,7 @@ namespace Microsoft.DotNet.Tools.Build
public BuilderCommandApp(string name, string fullName, string description) : base(name, fullName, description)
{
AddNoValueOption(BuildProfileFlag, "Set this flag to print the incremental safety checks that prevent incremental compilation");
AddNoValueOption(ForceUnsafeFlag, "Set this flag to mark the entire build as not safe for incrementality");
AddNoValueOption(ForceUnsafeFlag, "Set this flag to turn off incremental build");
}
}
}

View file

@ -30,3 +30,6 @@ In addition Compile's parameters, Build adds the following flag:
--build-profile
Prints out the incremental safety checks that users need to address in order for incremental compilation to be automatically turned on.
--no-incremental
Marks the build as unsafe for incrementality. This turns off incremental compilation and forces a clean rebuild of the project dependency graph.

View file

@ -24,7 +24,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities
private bool _nativeCppMode;
private string _cppCompilerFlags;
private bool _buildProfile;
private bool _forceIncrementalUnsafe;
private bool _noIncremental;
private string OutputOption
{
@ -146,12 +146,12 @@ namespace Microsoft.DotNet.Tools.Test.Utilities
}
}
private string ForceIncrementalUnsafe
private string NoIncremental
{
get
{
return _forceIncrementalUnsafe ?
"--force-incremental-unsafe" :
return _noIncremental ?
"--no-incremental" :
"";
}
}
@ -170,7 +170,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities
bool nativeCppMode=false,
string cppCompilerFlags="",
bool buildProfile=true,
bool forceIncrementalUnsafe=false
bool noIncremental=false
)
: base("dotnet")
{
@ -190,7 +190,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities
_nativeCppMode = nativeCppMode;
_cppCompilerFlags = cppCompilerFlags;
_buildProfile = buildProfile;
_forceIncrementalUnsafe = forceIncrementalUnsafe;
_noIncremental = noIncremental;
}
public override CommandResult Execute(string args = "")
@ -214,7 +214,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities
private string BuildArgs()
{
return $"{BuildProfile} {ForceIncrementalUnsafe} \"{_projectPath}\" {OutputOption} {TempOutputOption} {ConfigurationOption} {NoHostOption} {NativeOption} {ArchitectureOption} {IlcArgsOption} {IlcPathOption} {AppDepSDKPathOption} {NativeCppModeOption} {CppCompilerFlagsOption}";
return $"{BuildProfile} {NoIncremental} \"{_projectPath}\" {OutputOption} {TempOutputOption} {ConfigurationOption} {NoHostOption} {NativeOption} {ArchitectureOption} {IlcArgsOption} {IlcPathOption} {AppDepSDKPathOption} {NativeCppModeOption} {CppCompilerFlagsOption}";
}
}
}

View file

@ -48,13 +48,13 @@ namespace Microsoft.DotNet.Tools.Builder.Tests
File.SetLastWriteTimeUtc(file, DateTime.UtcNow);
}
protected CommandResult BuildProject(bool forceIncrementalUnsafe = false, bool expectBuildFailure = false)
protected CommandResult BuildProject(bool noIncremental = false, bool expectBuildFailure = false)
{
var outputDir = GetBinDirectory();
var intermediateOutputDir = Path.Combine(Directory.GetParent(outputDir).FullName, "obj", _mainProject);
var mainProjectFile = GetProjectFile(_mainProject);
var buildCommand = new BuildCommand(mainProjectFile, output: outputDir, tempOutput: intermediateOutputDir ,forceIncrementalUnsafe : forceIncrementalUnsafe);
var buildCommand = new BuildCommand(mainProjectFile, output: outputDir, tempOutput: intermediateOutputDir ,noIncremental : noIncremental);
var result = buildCommand.ExecuteWithCapturedOutput();
if (!expectBuildFailure)

View file

@ -22,12 +22,12 @@ namespace Microsoft.DotNet.Tools.Builder.Tests
}
[Fact]
public void TestForceIncrementalUnsafe()
public void TestNoIncrementalFlag()
{
var buildResult = BuildProject();
AssertProjectCompiled(_mainProject, buildResult);
buildResult = BuildProject(forceIncrementalUnsafe: true);
buildResult = BuildProject(noIncremental: true);
Assert.Contains("[Forced Unsafe]", buildResult.StdOut);
}