Skip to content

Commit 6c67e1c

Browse files
committed
Value and To overloads for params arrays had conflicts with the object overloads. They were removed, please use Values and ToMany overloads now
1 parent 235071e commit 6c67e1c

16 files changed

Lines changed: 199 additions & 174 deletions

.paket/Paket.Restore.targets

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
<!-- Step 1 Check if lockfile is properly restored -->
4444
<PropertyGroup>
4545
<PaketRestoreRequired>true</PaketRestoreRequired>
46-
<NoWarn>$(NoWarn);NU1603</NoWarn>
46+
<NoWarn>$(NoWarn);NU1603;NU1604;NU1605;NU1608</NoWarn>
4747
</PropertyGroup>
4848

4949
<!-- Because ReadAllText is slow on osx/linux, try to find shasum and awk -->
@@ -60,6 +60,9 @@
6060
<Output TaskParameter="ConsoleOutput" PropertyName="PaketRestoreLockFileHash" />
6161
</Exec>
6262

63+
<!-- Debug whats going on -->
64+
<Message Importance="low" Text="calling paket restore with targetframework=$(TargetFramework) targetframeworks=$(TargetFrameworks)" />
65+
6366
<PropertyGroup Condition="Exists('$(PaketRestoreCacheFile)') ">
6467
<!-- if no hash has been done yet fall back to just reading in the files and comparing them -->
6568
<PaketRestoreCachedHash Condition=" '$(PaketRestoreCachedHash)' == '' ">$([System.IO.File]::ReadAllText('$(PaketRestoreCacheFile)'))</PaketRestoreCachedHash>
@@ -68,12 +71,23 @@
6871
<PaketRestoreRequired Condition=" '$(PaketRestoreLockFileHash)' == '$(PaketRestoreCachedHash)' ">false</PaketRestoreRequired>
6972
<PaketRestoreRequired Condition=" '$(PaketRestoreLockFileHash)' == '' ">true</PaketRestoreRequired>
7073
</PropertyGroup>
74+
75+
<PropertyGroup Condition="'$(PaketPropsVersion)' != '5.174.2' ">
76+
<PaketRestoreRequired>true</PaketRestoreRequired>
77+
</PropertyGroup>
7178

7279
<!-- Do a global restore if required -->
7380
<Exec Command='$(PaketBootStrapperCommand)' Condition="Exists('$(PaketBootStrapperExePath)') AND !(Exists('$(PaketExePath)'))" ContinueOnError="false" />
7481
<Exec Command='$(PaketCommand) restore' Condition=" '$(PaketRestoreRequired)' == 'true' " ContinueOnError="false" />
7582

7683
<!-- Step 2 Detect project specific changes -->
84+
<ItemGroup>
85+
<MyTargetFrameworks Condition="'$(TargetFramework)' != '' " Include="$(TargetFramework)"></MyTargetFrameworks>
86+
<!-- Don't include all frameworks when msbuild explicitly asks for a single one -->
87+
<MyTargetFrameworks Condition="'$(TargetFrameworks)' != '' AND '$(TargetFramework)' == '' " Include="$(TargetFrameworks)"></MyTargetFrameworks>
88+
<PaketResolvedFilePaths Include="@(MyTargetFrameworks -> '$(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).%(Identity).paket.resolved')"></PaketResolvedFilePaths>
89+
</ItemGroup>
90+
<Message Importance="low" Text="MyTargetFrameworks=@(MyTargetFrameworks) PaketResolvedFilePaths=@(PaketResolvedFilePaths)" />
7791
<PropertyGroup>
7892
<PaketReferencesCachedFilePath>$(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).paket.references.cached</PaketReferencesCachedFilePath>
7993
<!-- MyProject.fsproj.paket.references has the highest precedence -->
@@ -82,7 +96,9 @@
8296
<PaketOriginalReferencesFilePath Condition=" !Exists('$(PaketOriginalReferencesFilePath)')">$(MSBuildProjectDirectory)\$(MSBuildProjectName).paket.references</PaketOriginalReferencesFilePath>
8397
<!-- paket.references -->
8498
<PaketOriginalReferencesFilePath Condition=" !Exists('$(PaketOriginalReferencesFilePath)')">$(MSBuildProjectDirectory)\paket.references</PaketOriginalReferencesFilePath>
85-
<PaketResolvedFilePath>$(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).$(TargetFramework).paket.resolved</PaketResolvedFilePath>
99+
100+
<DoAllResolvedFilesExist>false</DoAllResolvedFilesExist>
101+
<DoAllResolvedFilesExist Condition="Exists(%(PaketResolvedFilePaths.Identity))">true</DoAllResolvedFilesExist>
86102
<PaketRestoreRequired>true</PaketRestoreRequired>
87103
<PaketRestoreRequiredReason>references-file-or-cache-not-found</PaketRestoreRequiredReason>
88104
</PropertyGroup>
@@ -101,33 +117,39 @@
101117
</PropertyGroup>
102118

103119
<!-- Step 2 b detect relevant changes in project file (new targetframework) -->
104-
<PropertyGroup Condition=" !Exists('$(PaketResolvedFilePath)') AND '$(TargetFramework)' != '' ">
120+
<PropertyGroup Condition=" '$(DoAllResolvedFilesExist)' != 'true' ">
105121
<PaketRestoreRequired>true</PaketRestoreRequired>
106-
<PaketRestoreRequiredReason>target-framework '$(TargetFramework)'</PaketRestoreRequiredReason>
122+
<PaketRestoreRequiredReason>target-framework '$(TargetFramework)' or '$(TargetFrameworks)' files @(PaketResolvedFilePaths)</PaketRestoreRequiredReason>
107123
</PropertyGroup>
108124

109125
<!-- Step 3 Restore project specific stuff if required -->
110126
<Message Condition=" '$(PaketRestoreRequired)' == 'true' " Importance="low" Text="Detected a change ('$(PaketRestoreRequiredReason)') in the project file '$(MSBuildProjectFullPath)', calling paket restore" />
111-
<Exec Command='$(PaketCommand) restore --project "$(MSBuildProjectFullPath)"' Condition=" '$(PaketRestoreRequired)' == 'true' " ContinueOnError="false" />
127+
<Exec Command='$(PaketCommand) restore --project "$(MSBuildProjectFullPath)" --target-framework "$(TargetFrameworks)"' Condition=" '$(PaketRestoreRequired)' == 'true' AND '$(TargetFramework)' == '' " ContinueOnError="false" />
128+
<Exec Command='$(PaketCommand) restore --project "$(MSBuildProjectFullPath)" --target-framework "$(TargetFramework)"' Condition=" '$(PaketRestoreRequired)' == 'true' AND '$(TargetFramework)' != '' " ContinueOnError="false" />
112129

113130
<!-- This shouldn't actually happen, but just to be sure. -->
114-
<Error Condition=" !Exists('$(PaketResolvedFilePath)') AND '$(TargetFramework)' != '' AND '$(ResolveNuGetPackages)' != 'False' " Text="Paket file '$(PaketResolvedFilePath)' is missing while restoring $(MSBuildProjectFile). Please delete 'paket-files/paket.restore.cached' and call 'paket restore'." />
131+
<PropertyGroup>
132+
<DoAllResolvedFilesExist>false</DoAllResolvedFilesExist>
133+
<DoAllResolvedFilesExist Condition="Exists(%(PaketResolvedFilePaths.Identity))">true</DoAllResolvedFilesExist>
134+
</PropertyGroup>
135+
<Error Condition=" '$(DoAllResolvedFilesExist)' != 'true' AND '$(ResolveNuGetPackages)' != 'False' " Text="One Paket file '@(PaketResolvedFilePaths)' is missing while restoring $(MSBuildProjectFile). Please delete 'paket-files/paket.restore.cached' and call 'paket restore'." />
115136

116137
<!-- Step 4 forward all msbuild properties (PackageReference, DotNetCliToolReference) to msbuild -->
117-
<ReadLinesFromFile Condition="Exists('$(PaketResolvedFilePath)')" File="$(PaketResolvedFilePath)" >
138+
<ReadLinesFromFile Condition="($(DesignTimeBuild) != true OR '$(PaketPropsLoaded)' != 'true') AND '@(PaketResolvedFilePaths)' != ''" File="%(PaketResolvedFilePaths.Identity)" >
118139
<Output TaskParameter="Lines" ItemName="PaketReferencesFileLines"/>
119140
</ReadLinesFromFile>
120141

121-
<ItemGroup Condition=" Exists('$(PaketResolvedFilePath)') AND '@(PaketReferencesFileLines)' != '' " >
142+
<ItemGroup Condition="($(DesignTimeBuild) != true OR '$(PaketPropsLoaded)' != 'true') AND '@(PaketReferencesFileLines)' != '' " >
122143
<PaketReferencesFileLinesInfo Include="@(PaketReferencesFileLines)" >
123144
<PackageName>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0])</PackageName>
124145
<PackageVersion>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1])</PackageVersion>
125146
<AllPrivateAssets>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[4])</AllPrivateAssets>
126147
</PaketReferencesFileLinesInfo>
127148
<PackageReference Include="%(PaketReferencesFileLinesInfo.PackageName)">
128149
<Version>%(PaketReferencesFileLinesInfo.PackageVersion)</Version>
129-
<PrivateAssets Condition="%(PaketReferencesFileLinesInfo.AllPrivateAssets) == 'true'">All</PrivateAssets>
150+
<PrivateAssets Condition=" ('%(PaketReferencesFileLinesInfo.AllPrivateAssets)' == 'true') Or ('$(PackAsTool)' == 'true') ">All</PrivateAssets>
130151
<ExcludeAssets Condition="%(PaketReferencesFileLinesInfo.AllPrivateAssets) == 'exclude'">runtime</ExcludeAssets>
152+
<Publish Condition=" '$(PackAsTool)' == 'true' ">true</Publish>
131153
</PackageReference>
132154
</ItemGroup>
133155

build.fsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ let nugetDir = @".\nuget\"
2929
let packagesDir = @".\packages\"
3030

3131
// version info
32-
let mutable majorversion = "1"
33-
let mutable minorversion = "2"
32+
let mutable majorversion = "2"
33+
let mutable minorversion = "0"
3434
let mutable build = "0"
3535
let mutable nugetVersion = ""
3636
let mutable asmVersion = ""

0 commit comments

Comments
 (0)