Assets 18

v6.1.0-preview.1 - 2018-03-23

Known Issue

$PSVersionTable.PSVersion throw error - #6482

Breaking Changes

  • Throw terminating error in New-TemporaryFile and make it not rely on the presence of the TEMP environment variable (#6182) (Thanks @bergmeister!)
  • Remove the unnecessary AddTypeCommandBase class from Add-Type (#5407) (Thanks @iSazonov!)
  • Remove unsupported members from the enum Language in Add-Type (#5829) (Thanks @iSazonov!)
  • Fix range operator to work better with character ranges (#5732) (Thanks @iSazonov!)

Engine Updates and Fixes

  • Fix ValidateSet with generator in a module (#5702)
  • Update SAL annotation and fix warnings (#5617)
  • Add ForEach and Where methods to PSCustomobject (#5756) (Thanks @iSazonov!)
  • Add Count and Length properties to PSCustomobject (#5745) (Thanks @iSazonov!)
  • Make minor fixes in compiler to properly handle void type expression (#5764)
  • Logging: Fix the escaped characters when generating .resx file from PowerShell ETW manifest. (#5892)
  • Remove PSv2 only code from Types_Ps1Xml.cs and HostUtilities.cs (#5907) (Thanks @iSazonov!)
  • Enable passing arrays to pwsh -EncodedArguments on debug builds. (#5836)
  • Logging: Handle path that contains spaces in RegisterManifest.ps1 (#5859) (Thanks @tandasat!)
  • Add -settingsfile to pwsh to support loading a custom powershell config file. (#5920)
  • Return better error for pwsh -WindowStyle on unsupported platforms. (#5975) (Thanks @thezim!)
  • Enable conversions from PSMethod to Delegate (#5287) (Thanks @powercode!)
  • Minor code clean-up changes in tab completion code (#5737) (Thanks @kwkam!)
  • Add lambda support to -replace operator (#6029) (Thanks @IISResetMe!)
  • Fix retrieval of environment variables on Windows in cases where variable names differ only by case. (#6320)
  • Fix the NullRefException when using -PipelineVariable with DynamicParam block (#6433)
  • Add NullReference checks to two code paths related to PseudoParameterBinder (#5738) (Thanks @kwkam!)
  • Fix PropertyOnlyAdapter to allow calling base methods (#6394)
  • Improve table view for Certs and Signatures by adding EnhancedKeyUsageList and StatusMessage (#6123)
  • Fix the filtering of analytic events on Unix platforms. (#6086)
  • Update copyright and license headers (#6134)
  • Set pipeline thread stack size to 10MB (#6224) (Thanks @iSazonov!)

General Cmdlet Updates and Fixes

  • Fix the NullRefException in Enter-PSHostProcess (#5995)
  • Merge and Sort BasicHtmlWebResponseObject and ContentHelper in Web Cmdlets (#5720) (Thanks @markekraus!)
  • Encoding for New-ModuleManifest on all platforms should be UTF-8 NoBOM (#5923)
  • Make Set-Location use path with wildcard characters as literal if it exists (#5839)
  • Combine Web Cmdlets partial class files (#5612) (Thanks @markekraus!)
  • Change Microsoft.PowerShell.Commands.SetDateCommand.SystemTime to struct. (#6006) (Thanks @stknohg!)
  • Add Simplified multipart/form-data support to Web Cmdlets through -Form parameter (#5972) (Thanks @markekraus!)
  • Make a relative redirect URI absolute when Authorization header present (#6325) (Thanks @markekraus!)
  • Make relation-link handling in Web Cmdlets case-insensitive (#6338)
  • Make Get-ChildItem -LiteralPath accept Include or Exclude filter (#5462)
  • Stop ConvertTo-Json when Ctrl+c is hit (#6392)
  • Make Resolve-Path -Relative return useful path when $PWD and -Path is on different drive (#5740) (Thanks @kwkam!)
  • Correct the %c, %l, %k, %s and %j formats in Get-Date -UFormat (#4805) (Thanks @iSazonov!)
  • Add standard deviation implementation on Measure-Object (#6238) (Thanks @CloudyDino!)
  • Make Get-ChildItem <PATH>/* -file include <Path> as search directory (#5431)
  • Enable setting PSSession Name when using SSHTransport and add Transport property (#5954)
  • Add Path alias to -FilePath parameters and others for several commands (#5817) (Thanks @KevinMarquette!)
  • Add the parameter -Password to Get-PfxCertificate (#6113) (Thanks @maybe-hello-world!)
  • Don't add trailing spaces to last column when using Format-Table (#5568)
  • Fix table alignment and padding. (#6230)
  • Add -SkipHeaderValidation Support to ContentType on Web Cmdlets (#6018) (Thanks @markekraus!)
  • Add common aliases for all write-* commands default message parameter (#5816) (Thanks @KevinMarquette!)
  • Make UTF-8 the default encoding for application/json (#6109) (Thanks @markekraus!)
  • Enable $env:PAGER to work correctly if arguments are used (#6144)

Test

  • Convert Web Cmdlets test to one-true-brace-style formatting (#5716) (Thanks @markekraus!)
  • Add a test for IValidateSetValuesGenerator in a module (#5830) (Thanks @iSazonov!)
  • Fix function to test for docker OS due to change to use linuxkit for macOS (#5843)
  • Replace HttpListener tests with WebListener (#5806, #5840, #5872) (Thanks @markekraus!)
  • Stop HttpListener from running in Web Cmdlets tests (#5921) (Thanks @markekraus!)
  • Fix PSVersion in PSSessionConfiguration tests (#5554) (Thanks @iSazonov!)
  • Update test framework to support Pester v4 (#6064)
  • Update tests to use Pester v4 Syntax. (#6294, #6257, #6306, #6304, #6298)
  • Add negative tests for Copy-Item over remote sessions (#6231)
  • Markdown test: Use strict in JavaScript (#6328)
  • Add tests for Get-Process about the -Module and -FileVersion parameters (#6272)
  • Add test for the OsLocalDateTime property of Get-ComputerInfo. (#6253)
  • Change Get-FileHash tests to use raw bytes (#6430)
  • Remove runas.exe from tests as we have tags to control this behavior (#6432)
  • Refactor the Get-Content tests to use -TestCases. (#6082)
  • Use RequireAdminOnWindows tag in Set-Date tests (#6034) (Thanks @stknohg!)
  • Remove -TimeOutSec from non timeout related tests (#6055) (Thanks @markekraus!)
  • Add verbosity and more accurate timeout implementation for Start-WebListener (#6013) (Thanks @markekraus!)
  • Skip tests that use ExecutionPolicy cmdlets on Unix (#6021)
  • Change Web Cmdlet tests to use 127.0.0.1 instead of Localhost (#6069) (Thanks @markekraus!)
  • Fix Start-PSPester to include or exclude RequireSudoOnUnix tag smartly on Unix (#6241)
  • Fix the terse output on Windows for test runs without admin privilege (#6252)
  • Add RequireSudoOnUnix tag for Get-Help tests. (#6223)
  • Add tests for *-Item Cmdlets in function provider (#6172)
  • Support running tests in root privilege on Linux. (#6145)

Build and Packaging Improvements

  • Add option to add explorer shell context menu in Windows installer (#5774) (Thanks @bergmeister!)
  • Make the explorer shell context menu registry entries platform specific to allow side by side of x86 and x64. (#5824) (Thanks @bergmeister!)
  • Fix start menu folder clash of shortcut when x86 and x64 are both installed by appending (x86) for x86 installation. (#5826) (Thanks @bergmeister!)
  • Reduce image file sizes using lossless compression with imgbot (#5808) (Thanks @bergmeister!)
  • Windows installer: Allow Launch PowerShell checkbox to be toggled using the space bar. (#5792) (Thanks @bergmeister!)
  • Fix release packaging build (#6459)
  • Fail AppVeyor Build if MSI does not build (#5755) (Thanks @bergmeister!)
  • Cleanup temporarily created WiX files after compilation to be able to have a clean re-build (#5757) (Thanks @bergmeister!)
  • Fix install-powershell.ps1 for running during window setup (#5727)
  • Start using Travis-CI cache (#6003)
  • Fix build, packaging and installation scripts for SLES (#5918) (Thanks @tomconte!)
  • Update recommended WiX toolset link to be generic to WiX 3.x but mention that latest version of 3.11 has to be taken (#5926) (Thanks @bergmeister!)
  • Add service point manager call in Install-PowerShell.ps1 to force TLS1.2. (#6310) (Thanks @DarqueWarrior!)
  • Add -Restore when build win-arm and win-arm64 (#6353)
  • Make sure package verification failure fails the AppVeyor build (#6337)
  • Specify the runtime when running dotnet restore in Start-PSBuild (#6345)
  • Rename log and logerror to Write-Log [$message] [-error] (#6333)
  • Make Linux packages use correct version scheme for preview releases (#6318)
  • Add support for Debian in installpsh-debian.sh (#6314) (Thanks @pawamoy!)
  • MSI: Make preview builds to install Side by side with release builds (#6301)
  • Add TLS1.2 workaround for code coverage script (#6299)
  • Cleanup after Powershell install for CentOS and Fedora Docker images (#6264) (Thanks @strawgate!)
  • MSI: Update the environment variable PATH with proper value (#6441)
  • MSI: Remove the version from the product name (#6415)
  • Support non-GitHub commits in the change log generation script (#6389)
  • Fix secret and JavaScript compliance issues (#6408)
  • Remove AppVeyor specific cmdlet from Start-NativeExecution (#6263)
  • Restore modules from the NuGet package cache by using dotnet restore (#6111)
  • CI Build: Use TRAVIS_PULL_REQUEST_SHA to accurately get the commit message (#6024)
  • Use TLS1.2 on Windows during Start-PSBootstrap (#6235) (Thanks @CallmeJoeBob!)
  • Use TLS1.2 in Start-PSBootStrap without breaking HTTPS (#6236) (Thanks @markekraus!)
  • Add options to enable PSRemoting and register Windows Event Logging Manifest to MSI installer (#5999) (Thanks @bergmeister!)

Documentation and Help Content

  • Separate macOS from Linux install instructions. (#5823) (Thanks @thezim!)
  • Show usage (short) help if command line parameter is wrong (#5780) (Thanks @iSazonov!)
  • Add the breaking changes doc for 6.0.0 release. (#5620) (Thanks @maertendMSFT!)
  • Remove DockerFile for Fedora 25 and add DockerFile for Fedora 27 (#5984) (Thanks @seemethere!)
  • Add a missing step to prepare the build environment on Mac. (#5901) (Thanks @zackJKnight!)
  • Update BREAKINGCHANGES.md to include WebCmdlets breaking changes (#5852) (Thanks @markekraus!)
  • Fix typos in BREAKINGCHANGES.md (#5913) (Thanks @brianbunke!)
  • Update macos.md to use brew cask upgrade for upgrading powershell (#5875) (Thanks @timothywlewis!)
  • Add verification step to macOS install docs (#5860) (Thanks @rpalo!)
  • Fix links in macOS install docs (#5861) (Thanks @kanjibates!)
  • Update docs with test guidelines with the RequireSudoOnUnix tag. (#6274)
  • Add Alpine Linux support (#6367) (Thanks @kasper3!)
  • Update to Governance doc to reflect current working model (#6323)
  • Add guidance on adding copyright and license header to new source files (#6140)
  • Fix the command to build type catalog in internals.md (#6084) (Thanks @ppadmavilasom!)
  • Fix Pull Request Process dead link (#6066) (Thanks @IISResetMe!)
  • Update processes to allow for coordinated vulnerability disclosure (#6042)
  • Rework Windows Start menu folder name (#5891) (Thanks @Stanzilla!)
  • Update Raspbian installation instructions to create symlink for pwsh (#6122)
  • Fix various places that still refer to old versions of pwsh (#6179) (Thanks @bergmeister!)
  • Correct a Linux installation typo (#6219) (Thanks @mababio!)
  • Change synopsis of install-powershell.ps1 to reflect that it works cross-platform (#5465) (Thanks @bergmeister!)

SHA256 Hashes of the release artifacts

  • powershell_6.1.0~preview.1-1.debian.8_amd64.deb
    • 9DEC39B981B1137162E1005858D8948BF222C1D015CEFF2510110F5A6521F611
  • powershell_6.1.0~preview.1-1.debian.9_amd64.deb
    • 337485FCD03CEC452B05597A3DD402209C39BF05473818A3A182AEECC01FFD4B
  • powershell_6.1.0~preview.1-1.ubuntu.14.04_amd64.deb
    • 5EBA2B2869241962369389453199581D19876894770C59936DCC1E9C1A97100B
  • powershell_6.1.0~preview.1-1.ubuntu.16.04_amd64.deb
    • BF8B07FCDA8CEF78D6A7583E988E6643CCECAFBC07FA11F30745AFDCABBEBFC7
  • powershell_6.1.0~preview.1-1.ubuntu.17.04_amd64.deb
    • ECE7471F4148EE2E9C800DB5119A9436B43E084ED8F9011B22E87CAAA6E9D755
  • powershell-6.1.0~preview.1-1.rhel.7.x86_64.rpm
    • 54FF7578F2C558C2BCE34A357A4D73AE14334F445A6DFC8121288D88B1752841
  • powershell-6.1.0-preview.1-linux-arm32.tar.gz
    • 01C479FF633C36B60304049368C472CF1BDAB7D0E3B334C5D8D8A180D95C8B07
  • powershell-6.1.0-preview.1-linux-x64.tar.gz
    • AE8A2CEE16F96DC3C7DA4129F6D2CEF9C97DED7BD004A9B55B00AF79BD2CB95F
  • powershell-6.1.0-preview.1-osx.10.12-x64.pkg
    • 00C7D03ADC1460479037385AA7F7FD0D6C16FD0F2EB15A65FCE9288FF6E5CC9A
  • powershell-6.1.0-preview.1-osx-x64.tar.gz
    • 98172BD79D023982B45233E29EEA846EA23DC2EB33B9A6B193BFD04779D1F8C3
  • PowerShell-6.1.0-preview.1-win-arm32.zip
    • 2BEC59892FB856BB91E11FF735D23B2C111FA00EA38027E51BF7F512B15DAC48
  • PowerShell-6.1.0-preview.1-win-arm64.zip
    • 099603A50E1044D8C800586E8AABDF3162E73D01A369A9B882EE73F271B25B94
  • PowerShell-6.1.0-preview.1-win-x64.msi
    • 090C2DEAD06E3899A78CFF6094A10B46AA56FB58F3B0E71924CBBDC56CD70444
  • PowerShell-6.1.0-preview.1-win-x64.zip
    • D2CABFC8F4EC9F420D2D01932232C0E25E056E700BC6786A152842E0D55B3554
  • PowerShell-6.1.0-preview.1-win-x86.msi
    • 2635FC3A773A0626B414CD6D731294DADC8DE5BEA7C2DE4237A6B442E2BD89B7
  • PowerShell-6.1.0-preview.1-win-x86.zip
    • DE17F9CDA9B646B90B2B61B320E359C19B9F7A390E79042C3B3D10D5D282E8EC