diff --git a/.travis.yml b/.travis.yml index a9d50a89608..0ae6e716371 100644 --- a/.travis.yml +++ b/.travis.yml @@ -61,7 +61,7 @@ after_success: # which is expensive and unneeded for build agents. env: global: - - CACHE_VERSION=netcoreapp.2.1-sdk.2.1.301 + - CACHE_VERSION=netcoreapp.2.1-sdk.2.1.302 - POWERSHELL_TELEMETRY_OPTOUT=1 - DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 diff --git a/PowerShell.Common.props b/PowerShell.Common.props index 3cbf0bced01..33c7a4b5501 100644 --- a/PowerShell.Common.props +++ b/PowerShell.Common.props @@ -94,7 +94,7 @@ (c) Microsoft Corporation. All rights reserved. netcoreapp2.1 - 2.1.1 + 2.1.2 Latest true @@ -118,7 +118,7 @@ $(DefineConstants);UNIX - + portable diff --git a/appveyor.yml b/appveyor.yml index a215ead15d0..d7fcb8b30ff 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -9,7 +9,7 @@ environment: - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 Purpose: ElevatedPesterTests_xUnit_Packaging -# cache version - netcoreapp.2.1-sdk.2.1.301 +# cache version - netcoreapp.2.1-sdk.2.1.302 cache: - '%HOMEDRIVE%%HOMEPATH%\.nuget\packages -> appveyor.yml' diff --git a/assets/files.wxs b/assets/files.wxs index 1f593873d2b..f861da02d53 100644 --- a/assets/files.wxs +++ b/assets/files.wxs @@ -190,8 +190,8 @@ - - + + @@ -487,8 +487,8 @@ - - + + @@ -1981,7 +1981,7 @@ - + @@ -2080,7 +2080,7 @@ - + diff --git a/global.json b/global.json index 23a846ef77e..1208561d0c4 100644 --- a/global.json +++ b/global.json @@ -1,5 +1,5 @@ { "sdk": { - "version": "2.1.301" + "version": "2.1.302" } } diff --git a/src/Microsoft.PowerShell.Commands.Utility/Microsoft.PowerShell.Commands.Utility.csproj b/src/Microsoft.PowerShell.Commands.Utility/Microsoft.PowerShell.Commands.Utility.csproj index ea348f89ef5..4dfe128377c 100644 --- a/src/Microsoft.PowerShell.Commands.Utility/Microsoft.PowerShell.Commands.Utility.csproj +++ b/src/Microsoft.PowerShell.Commands.Utility/Microsoft.PowerShell.Commands.Utility.csproj @@ -67,7 +67,7 @@ - + diff --git a/src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj b/src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj index fac404978f6..4550d251a06 100644 --- a/src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj +++ b/src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj @@ -23,12 +23,12 @@ - - - - - - + + + + + + diff --git a/test/Test.Common.props b/test/Test.Common.props index f0ad66b1ca7..7afc618a8a4 100644 --- a/test/Test.Common.props +++ b/test/Test.Common.props @@ -5,7 +5,7 @@ (c) Microsoft Corporation. All rights reserved. netcoreapp2.1 - 2.1.1 + 2.1.2 true true diff --git a/test/tools/WebListener/WebListener.csproj b/test/tools/WebListener/WebListener.csproj index b256708e941..5b8b31c3ed8 100644 --- a/test/tools/WebListener/WebListener.csproj +++ b/test/tools/WebListener/WebListener.csproj @@ -7,7 +7,7 @@ - + diff --git a/tools/packaging/packaging.psm1 b/tools/packaging/packaging.psm1 index 0b5501a0a70..3ab3da7abf8 100644 --- a/tools/packaging/packaging.psm1 +++ b/tools/packaging/packaging.psm1 @@ -1496,21 +1496,33 @@ function New-UnifiedNugetPackage 'Microsoft.PowerShell.Commands.Management' { $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.PowerShell.Security'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceProcess.ServiceController'), [tuple]::Create('version', '4.5.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.PowerShell.Commands.Utility' { $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Management.Automation'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.CodeAnalysis.CSharp'), [tuple]::Create('version', '2.7.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.PowerShell.ConsoleHost' { $deps.Add([tuple]::Create( [tuple]::Create('id', 'System.Management.Automation'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create( [tuple]::Create('id', 'Microsoft.ApplicationInsights'), [tuple]::Create('version', '2.4.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.PowerShell.CoreCLR.Eventing' { - $deps.Add([tuple]::Create( [tuple]::Create('id', 'System.Security.Principal.Windows'), [tuple]::Create('version', '4.5.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.PowerShell.SDK' { @@ -1519,20 +1531,10 @@ function New-UnifiedNugetPackage $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.PowerShell.ConsoleHost'), [tuple]::Create('version', $PackageVersion))) > $null $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.PowerShell.Security'), [tuple]::Create('version', $PackageVersion))) > $null $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Management.Automation'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Data.SqlClient'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.IO.Packaging'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Net.Http.WinHttpHandler'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceModel.Duplex'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceModel.Http'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceModel.NetTcp'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceModel.Primitives'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceModel.Security'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Text.Encodings.Web'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Threading.AccessControl'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Private.ServiceModel'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.NETCore.Windows.ApiSets'), [tuple]::Create('version', '1.0.1'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.WSMan.Management'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.PowerShell.Commands.Diagnostics'), [tuple]::Create('version', $PackageVersion))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.PowerShell.Security' { @@ -1542,7 +1544,10 @@ function New-UnifiedNugetPackage 'Microsoft.WSMan.Management' { $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Management.Automation'), [tuple]::Create('version', $PackageVersion))) > $null $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.WSMan.Runtime'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.ServiceProcess.ServiceController'), [tuple]::Create('version', '4.5.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } } 'Microsoft.WSMan.Runtime' { @@ -1551,13 +1556,11 @@ function New-UnifiedNugetPackage 'System.Management.Automation' { $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.PowerShell.CoreCLR.Eventing'), [tuple]::Create('version', $PackageVersion))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.Win32.Registry.AccessControl'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'Newtonsoft.Json'), [tuple]::Create('version', '10.0.3'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.IO.FileSystem.AccessControl'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Security.AccessControl'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Security.Cryptography.Pkcs'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Security.Permissions'), [tuple]::Create('version', '4.5.0'))) > $null - $deps.Add([tuple]::Create([tuple]::Create('id', 'System.Text.Encoding.CodePages'), [tuple]::Create('version', '4.3.0'))) > $null + foreach($packageInfo in (Get-ProjectPackageInformation -ProjectName $fileBaseName)) + { + $deps.Add([tuple]::Create([tuple]::Create('id', $packageInfo.Name), [tuple]::Create('version', $packageInfo.Version))) > $null + } + $deps.Add([tuple]::Create([tuple]::Create('id', 'Microsoft.Management.Infrastructure'), [tuple]::Create('version', '1.0.0-alpha08'))) > $null $deps.Add([tuple]::Create([tuple]::Create('id', 'PowerShell.Core.Instrumentation'), [tuple]::Create('version', '6.0.0-RC2'))) > $null $deps.Add([tuple]::Create([tuple]::Create('id', 'libpsl'), [tuple]::Create('version', '6.0.0-rc'))) > $null @@ -1580,6 +1583,41 @@ function New-UnifiedNugetPackage } } +<# +.SYNOPSIS +Return the list of packages and versions used by a project + +.PARAMETER ProjectName +The name of the project to get the projects for. +#> +function Get-ProjectPackageInformation +{ + param( + [Parameter(Mandatory = $true)] + [string] + $ProjectName + ) + + $csproj = "$PSScriptRoot\..\..\src\$ProjectName\$ProjectName.csproj" + [xml] $csprojXml = (Get-content -Raw -Path $csproj) + + # get the package references + $packages=$csprojXml.Project.ItemGroup.PackageReference + + # check to see if there is a newer package for each refernce + foreach($package in $packages) + { + if($package.Version -notmatch '\*' -and $package.Include) + { + # Get the name of the package + [PSCustomObject] @{ + Name = $package.Include + Version = $package.Version + } + } + } +} + <# .SYNOPSIS Creates a nuspec file.