Fix resuming of persistent builds after failures in task -If
(#90).
Support version suffix x86 in use
and Resolve-MSBuild
(#85).
Resolve MSBuild 15 to ../amd64/MSBuild.exe on x64 (#84).
Warn about always skipped double references (#82).
Task
in the collected errors.Support script block as File
(#78).
Improved product selection logic in Resolve-MSBuild
(#77). If you use the module VSSetup
make sure it is not too old. It should support -Product *
.
property
limitations (#75).&
in exec
, it looks safer.Set-BuildHeader
for writing custom task headers.Get-BuildSynopsis
, e.g. for Set-BuildHeader
.See repo/Tasks/Header for examples of Set-BuildHeader
and Get-BuildSynopsis
.
New command requires
, the alias of Test-BuildAsset
(#73).
Rework engine variables to reduce noise on debugging (#72).
Fix incremental tasks on Mono (#69).
Improve errors on tasks check failures (#67).
Retire obsolete events defined as functions, see #66.
Use less cryptic names for internal functions (#63).
Adjust property
behaviour to PowerShell and MSBuild (#60):
Resolve-MSBuild
supports the BuildTools installation (#57).
Improve info on typical mistakes:
Improve errors on invalid script syntax (#56).
New Resolve-MSBuild.ps1 for finding MSBuild 2.0-15.0, specified or the latest. It may be used directly. Build scripts use it via the alias Resolve-MSBuild
. NuGet and PSGallery packages include this script.
The old way use <version> MSBuild
is supported and works with all versions. But the new script is used internally, Invoke-Build.ps1 alone is not enough.
Fix #54, exec
should use $global:LastExitCode
.
Use exit /B
in ib.cmd (#52).
Module help tweaks.
use
: The conventional path VisualStudio\<version>
is resolved via the registry to the Visual Studio tools directory (devenv
, mstest
, tf
).
Event blocks instead of functions, see #36.
Use exit 0
on success (#34).
Invoke-Build is cross-platform with PowerShell v6.0.0-alpha.
Build script parameters are specified as Invoke-Build dynamic parameters. The parameter Parameters
was removed. This change is breaking in some cases, see #29.
Avoided cryptic errors on invoking scripts with invalid syntax and on resuming builds with an invalid checkpoint file.
Previous release notes: V2 Release Notes