Update to latest tools and changes from those tools
Rob Mensching committed
May 9, 2019 at 08:57 UTC
fbc081741b9923868ebf4aeb98f1e678f5fb6d97
5 files changed
+64
-70
src/test/WixToolsetTest.Util/WixToolsetTest.Util.csproj
+7
-4
@@ -1,4 +1,4 @@
1
-<?xml version="1.0" encoding="utf-8"?>
1
+<?xml version="1.0" encoding="utf-8"?>
2
<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4
<Project Sdk="Microsoft.NET.Sdk">
@@ -23,7 +23,10 @@
23
</ItemGroup>
24
25
<ItemGroup>
26
- <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" PrivateAssets="all" />
26
+ <PackageReference Include="WixToolset.Core" Version="4.0.*" />
27
+ <PackageReference Include="WixToolset.Core.Burn" Version="4.0.*" />
28
+ <PackageReference Include="WixToolset.Core.WindowsInstaller" Version="4.0.*" />
29
+ <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" />
30
</ItemGroup>
31
32
<ItemGroup>
@@ -32,7 +35,7 @@
35
36
<ItemGroup>
37
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
35
- <PackageReference Include="xunit" Version="2.4.0" />
36
- <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" />
38
+ <PackageReference Include="xunit" Version="2.4.1" />
39
+ <PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" PrivateAssets="All" />
40
</ItemGroup>
41
</Project>
src/test/WixToolsetTest.Util/WixToolsetTest.Util.v3.ncrunchproject
new
+5
@@ -0,0 +1,5 @@
1
+<ProjectConfiguration>
2
+ <Settings>
3
+ <CopyReferencedAssembliesToWorkspace>True</CopyReferencedAssembliesToWorkspace>
4
+ </Settings>
5
+</ProjectConfiguration>
\ No newline at end of file
src/wixext/UtilCompiler.cs
+49
-63
@@ -11,6 +11,7 @@ namespace WixToolset.Util
11
using System.Text.RegularExpressions;
12
using System.Xml.Linq;
13
using WixToolset.Data;
14
+ using WixToolset.Data.Tuples;
15
using WixToolset.Extensibility;
16
using WixToolset.Extensibility.Data;
17
@@ -146,9 +147,9 @@ namespace WixToolset.Util
147
/// <param name="parentElement">Parent element of element to process.</param>
148
/// <param name="element">Element to process.</param>
149
/// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
149
- public override ComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context)
150
+ public override IComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context)
151
{
151
- ComponentKeyPath possibleKeyPath = null;
152
+ IComponentKeyPath possibleKeyPath = null;
153
154
switch (parentElement.Name.LocalName)
155
{
@@ -549,7 +550,7 @@ namespace WixToolset.Util
550
/// </summary>
551
/// <param name="element">Element to parse.</param>
552
/// <param name="componentId">Identifier of parent component.</param>
552
- private ComponentKeyPath ParseEventSourceElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId)
553
+ private IComponentKeyPath ParseEventSourceElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId)
554
{
555
SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element);
556
string sourceName = null;
@@ -568,7 +569,7 @@ namespace WixToolset.Util
569
switch (attrib.Name.LocalName)
570
{
571
case "CategoryCount":
571
- categoryCount = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
572
+ categoryCount = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
573
break;
574
case "CategoryMessageFile":
575
categoryMessageFile = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -660,31 +661,34 @@ namespace WixToolset.Util
661
662
this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element);
663
663
- int registryRoot = 2; // MsiInterop.MsidbRegistryRootLocalMachine
664
- string eventSourceKey = String.Format(@"SYSTEM\CurrentControlSet\Services\EventLog\{0}\{1}", logName, sourceName);
665
- Identifier id = this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, eventSourceKey, "EventMessageFile", String.Concat("#%", eventMessageFile), componentId, false);
664
+ string eventSourceKey = $@"SYSTEM\CurrentControlSet\Services\EventLog\{logName}\{sourceName}";
665
+ Identifier id = this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, eventSourceKey, "EventMessageFile", String.Concat("#%", eventMessageFile), componentId, false);
666
667
if (null != categoryMessageFile)
668
{
669
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, eventSourceKey, "CategoryMessageFile", String.Concat("#%", categoryMessageFile), componentId, false);
669
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, eventSourceKey, "CategoryMessageFile", String.Concat("#%", categoryMessageFile), componentId, false);
670
}
671
672
if (CompilerConstants.IntegerNotSet != categoryCount)
673
{
674
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, eventSourceKey, "CategoryCount", String.Concat("#", categoryCount), componentId, false);
674
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, eventSourceKey, "CategoryCount", String.Concat("#", categoryCount), componentId, false);
675
}
676
677
if (null != parameterMessageFile)
678
{
679
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, eventSourceKey, "ParameterMessageFile", String.Concat("#%", parameterMessageFile), componentId, false);
679
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, eventSourceKey, "ParameterMessageFile", String.Concat("#%", parameterMessageFile), componentId, false);
680
}
681
682
if (0 != typesSupported)
683
{
684
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, eventSourceKey, "TypesSupported", String.Concat("#", typesSupported), componentId, false);
684
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, eventSourceKey, "TypesSupported", String.Concat("#", typesSupported), componentId, false);
685
}
686
687
- return new ComponentKeyPath() { Id = id.Id, Explicit = isKeyPath, Type = ComponentKeyPathType.Registry };
687
+ var componentKeyPath = this.CreateComponentKeyPath();
688
+ componentKeyPath.Id = id.Id;
689
+ componentKeyPath.Explicit = isKeyPath;
690
+ componentKeyPath.Type = PossibleKeyPathType.Registry;
691
+ return componentKeyPath;
692
}
693
694
/// <summary>
@@ -720,10 +724,10 @@ namespace WixToolset.Util
724
property = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib);
725
break;
726
case "Sequence":
723
- sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
727
+ sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
728
break;
729
case "Timeout":
726
- timeout = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
730
+ timeout = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
731
break;
732
case "Target":
733
target = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -789,7 +793,7 @@ namespace WixToolset.Util
793
}
794
break;
795
case "TerminateProcess":
792
- terminateExitCode = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
796
+ terminateExitCode = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
797
attributes |= 0x20; // CLOSEAPP_ATTRIBUTE_TERMINATEPROCESS
798
break;
799
default:
@@ -1273,7 +1277,7 @@ namespace WixToolset.Util
1277
this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "User"));
1278
}
1279
1276
- if (int.MinValue == permission) // just GENERIC_READ, which is MSI_NULL
1280
+ if (Int32.MinValue == permission) // just GENERIC_READ, which is MSI_NULL
1281
{
1282
this.Messaging.Write(ErrorMessages.GenericReadNotAllowed(sourceLineNumbers));
1283
}
@@ -1427,7 +1431,7 @@ namespace WixToolset.Util
1431
iconFile = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
1432
break;
1433
case "IconIndex":
1430
- iconIndex = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
1434
+ iconIndex = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
1435
break;
1436
default:
1437
this.ParseHelper.UnexpectedAttribute(element, attrib);
@@ -1481,7 +1485,7 @@ namespace WixToolset.Util
1485
1486
if (!this.Messaging.EncounteredError)
1487
{
1484
- CreateWixInternetShortcut(intermediate, section, sourceLineNumbers, componentId, directoryId, id, name, target, shortcutType, iconFile, iconIndex);
1488
+ this.CreateWixInternetShortcut(section, sourceLineNumbers, componentId, directoryId, id, name, target, shortcutType, iconFile, iconIndex);
1489
}
1490
}
1491
@@ -1495,7 +1499,7 @@ namespace WixToolset.Util
1499
/// <param name="id">Identifier of shortcut.</param>
1500
/// <param name="name">Name of shortcut without extension.</param>
1501
/// <param name="target">Target URL of shortcut.</param>
1498
- public void CreateWixInternetShortcut(Intermediate intermediate, IntermediateSection section, SourceLineNumber sourceLineNumbers, string componentId, string directoryId, string shortcutId, string name, string target, InternetShortcutType type, string iconFile, int iconIndex)
1502
+ private void CreateWixInternetShortcut(IntermediateSection section, SourceLineNumber sourceLineNumbers, string componentId, string directoryId, string shortcutId, string name, string target, InternetShortcutType type, string iconFile, int iconIndex)
1503
{
1504
// add the appropriate extension based on type of shortcut
1505
name = String.Concat(name, InternetShortcutType.Url == type ? ".url" : ".lnk");
@@ -1687,20 +1691,19 @@ namespace WixToolset.Util
1691
row.Set(4, sbSymbolicConstants.ToString());
1692
1693
// Set up the application's performance key.
1690
- int registryRoot = 2; // HKLM
1694
string escapedName = UtilCompiler.FindPropertyBrackets.Replace(name, this.EscapeProperties);
1695
string linkageKey = String.Format(@"SYSTEM\CurrentControlSet\Services\{0}\Linkage", escapedName);
1696
string performanceKey = String.Format(@"SYSTEM\CurrentControlSet\Services\{0}\Performance", escapedName);
1697
1695
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, linkageKey, "Export", escapedName, componentId, false);
1696
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "-", null, componentId, false);
1697
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Library", library, componentId, false);
1698
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Open", openEntryPoint, componentId, false);
1699
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Collect", collectEntryPoint, componentId, false);
1700
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Close", closeEntryPoint, componentId, false);
1701
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "IsMultiInstance", YesNoType.Yes == multiInstance ? "#1" : "#0", componentId, false);
1702
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Counter Names", sbCounterNames.ToString(), componentId, false);
1703
- this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, registryRoot, performanceKey, "Counter Types", sbCounterTypes.ToString(), componentId, false);
1698
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, linkageKey, "Export", escapedName, componentId, false);
1699
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "-", null, componentId, false);
1700
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Library", library, componentId, false);
1701
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Open", openEntryPoint, componentId, false);
1702
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Collect", collectEntryPoint, componentId, false);
1703
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Close", closeEntryPoint, componentId, false);
1704
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "IsMultiInstance", YesNoType.Yes == multiInstance ? "#1" : "#0", componentId, false);
1705
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Counter Names", sbCounterNames.ToString(), componentId, false);
1706
+ this.ParseHelper.CreateRegistryRow(section, sourceLineNumbers, RegistryRootType.LocalMachine, performanceKey, "Counter Types", sbCounterTypes.ToString(), componentId, false);
1707
}
1708
1709
// Reference InstallPerfCounterData and UninstallPerfCounterData since nothing will happen without them
@@ -2523,7 +2526,7 @@ namespace WixToolset.Util
2526
this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "User"));
2527
}
2528
2526
- if (int.MinValue == permission) // just GENERIC_READ, which is MSI_NULL
2529
+ if (Int32.MinValue == permission) // just GENERIC_READ, which is MSI_NULL
2530
{
2531
this.Messaging.Write(ErrorMessages.GenericReadNotAllowed(sourceLineNumbers));
2532
}
@@ -2694,7 +2697,7 @@ namespace WixToolset.Util
2697
string variable = null;
2698
string condition = null;
2699
string after = null;
2697
- int root = CompilerConstants.IntegerNotSet;
2700
+ RegistryRootType? root = null;
2701
string key = null;
2702
string value = null;
2703
YesNoType expand = YesNoType.NotSet;
@@ -2715,7 +2718,7 @@ namespace WixToolset.Util
2718
this.ParseCommonSearchAttributes(sourceLineNumbers, attrib, ref id, ref variable, ref condition, ref after);
2719
break;
2720
case "Root":
2718
- root = this.ParseHelper.GetAttributeMsidbRegistryRootValue(sourceLineNumbers, attrib, false);
2721
+ root = this.ParseHelper.GetAttributeRegistryRootValue(sourceLineNumbers, attrib, false);
2722
break;
2723
case "Key":
2724
key = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -2764,7 +2767,7 @@ namespace WixToolset.Util
2767
this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Variable"));
2768
}
2769
2767
- if (CompilerConstants.IntegerNotSet == root)
2770
+ if (!root.HasValue)
2771
{
2772
this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Root"));
2773
}
@@ -2834,7 +2837,7 @@ namespace WixToolset.Util
2837
}
2838
2839
var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "WixRegistrySearch", id);
2837
- row.Set(1, root);
2840
+ row.Set(1, (int)root);
2841
row.Set(2, key);
2842
row.Set(3, value);
2843
row.Set(4, (int)attributes);
@@ -3044,10 +3047,10 @@ namespace WixToolset.Util
3047
rebootMessage = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
3048
break;
3049
case "ResetPeriodInDays":
3047
- resetPeriod = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
3050
+ resetPeriod = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
3051
break;
3052
case "RestartServiceDelayInSeconds":
3050
- restartServiceDelay = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue);
3053
+ restartServiceDelay = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, Int32.MaxValue);
3054
break;
3055
case "SecondFailureActionType":
3056
secondFailureActionType = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -3511,7 +3514,7 @@ namespace WixToolset.Util
3514
}
3515
break;
3516
case "Sequence":
3514
- sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 1, short.MaxValue);
3517
+ sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 1, Int16.MaxValue);
3518
break;
3519
case "Value":
3520
value = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -3700,7 +3703,7 @@ namespace WixToolset.Util
3703
}
3704
break;
3705
case "Sequence":
3703
- sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 1, short.MaxValue);
3706
+ sequence = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 1, Int16.MaxValue);
3707
break;
3708
case "Value":
3709
value = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib);
@@ -3874,38 +3877,21 @@ namespace WixToolset.Util
3877
/// </summary>
3878
private class ParsedPerformanceCounter
3879
{
3877
- string name;
3878
- string help;
3879
- int type;
3880
- string language;
3881
-
3880
internal ParsedPerformanceCounter(string name, string help, System.Diagnostics.PerformanceCounterType type, int language)
3881
{
3884
- this.name = name;
3885
- this.help = help;
3886
- this.type = (int)type;
3887
- this.language = language.ToString("D3", CultureInfo.InvariantCulture);
3882
+ this.Name = name;
3883
+ this.Help = help;
3884
+ this.Type = (int)type;
3885
+ this.Language = language.ToString("D3", CultureInfo.InvariantCulture);
3886
}
3887
3890
- internal string Name
3891
- {
3892
- get { return this.name; }
3893
- }
3888
+ internal string Name { get; }
3889
3895
- internal string Help
3896
- {
3897
- get { return this.help; }
3898
- }
3890
+ internal string Help { get; }
3891
3900
- internal int Type
3901
- {
3902
- get { return this.type; }
3903
- }
3892
+ internal int Type { get; }
3893
3905
- internal string Language
3906
- {
3907
- get { return this.language; }
3908
- }
3894
+ internal string Language { get; }
3895
}
3896
}
3897
}
src/wixlib/packages.config
+1
-1
@@ -1,5 +1,5 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
<package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" />
4
- <package id="WixToolset.MSBuild" version="4.0.0-build-0005" developmentDependency="true" targetFramework="net40" />
4
+ <package id="WixToolset.MSBuild" version="4.0.0-build-0043" developmentDependency="true" targetFramework="net40" />
5
</packages>
\ No newline at end of file
src/wixlib/util.wixproj
+2
-2
@@ -1,7 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
<Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0">
4
- <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props')" />
4
+ <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0043\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0043\build\WixToolset.MSBuild.props')" />
5
<Import Project="..\FindLocalWix.props" />
6
<PropertyGroup>
7
<ProjectGuid>{1ACFFEFD-505A-41A5-ACBF-A02B7B473AA2}</ProjectGuid>
@@ -46,7 +46,7 @@
46
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
47
</PropertyGroup>
48
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
49
- <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props'))" />
49
+ <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0043\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0043\build\WixToolset.MSBuild.props'))" />
50
</Target>
51
<Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" />
52
</Project>