diff --git a/.spelling b/.spelling index 4f96a36929..222baac294 100644 --- a/.spelling +++ b/.spelling @@ -75,6 +75,7 @@ nunit exe init labeled +alpha.14 - demos/Azure/README.md alpha.12 AzureRM.NetCore.Preview diff --git a/CHANGELOG.md b/CHANGELOG.md index 5dda3a369c..3ad037ee4b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,21 @@ Changelog ========= +v6.0.0-alpha.14 - 2016-12-14 +---------------------------- +- Moved to .NET Core 1.1 +- Add Windows performance counter cmdlets to PowerShell Core +- Fix try/catch to choose the more specific exception handler +- Fix issue reloading modules that define PowerShell classes +- `Add ValidateNotNullOrEmpty` to approximately 15 parameters +- `New-TemporaryFile` and `New-Guid` rewritten in C# +- Enable client side PSRP on non-Windows platforms +- `Split-Path` now works with UNC roots +- Implicitly convert value assigned to XML property to string +- Updates to `Invoke-Command` parameters when using SSH remoting transport +- Fix `Invoke-WebRequest` with non-text responses on non-Windows platforms +- `Write-Progress` performance improvement from `alpha13` reverted because it introduced crash with a race condition + v6.0.0-alpha.13 - 2016-11-22 ---------------------------- - Fix `NullReferenceException` in binder after turning on constrained language mode diff --git a/README.md b/README.md index fb5b36bb03..afd12db763 100644 --- a/README.md +++ b/README.md @@ -32,14 +32,14 @@ You can download and install a PowerShell package for any of the following platf | macOS 10.11 | [.pkg][rl-macos] | [Instructions][in-macos] | | Docker | | [Instructions][in-docker] | -[rl-windows10]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/PowerShell_6.0.0.13-alpha.13-win10-x64.msi -[rl-windows81]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/PowerShell_6.0.0.13-alpha.13-win81-x64.msi -[rl-windows7-64]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/PowerShell_6.0.0.13-alpha.13-win7-x64.msi -[rl-windows7-86]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/PowerShell_6.0.0.13-alpha.13-win7-x86.msi -[rl-ubuntu16]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell_6.0.0-alpha.13-1ubuntu1.16.04.1_amd64.deb -[rl-ubuntu14]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell_6.0.0-alpha.13-1ubuntu1.14.04.1_amd64.deb -[rl-centos]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell-6.0.0_alpha.13-1.el7.centos.x86_64.rpm -[rl-macOS]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell-6.0.0-alpha.13.pkg +[rl-windows10]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/PowerShell_6.0.0.14-alpha.14-win10-x64.msi +[rl-windows81]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/PowerShell_6.0.0.14-alpha.14-win81-x64.msi +[rl-windows7-64]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/PowerShell_6.0.0.14-alpha.14-win7-x64.msi +[rl-windows7-86]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/PowerShell_6.0.0.14-alpha.14-win7-x86.msi +[rl-ubuntu16]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell_6.0.0-alpha.14-1ubuntu1.16.04.1_amd64.deb +[rl-ubuntu14]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell_6.0.0-alpha.14-1ubuntu1.14.04.1_amd64.deb +[rl-centos]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm +[rl-macOS]: https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell-6.0.0-alpha.14.pkg [installation]: docs/installation [in-windows]: docs/installation/windows.md#msi diff --git a/appveyor.yml b/appveyor.yml index 1da244c856..1d7ee10c39 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,4 +1,4 @@ -version: 6.0.0-alpha.13-{build} +version: 6.0.0-alpha.14-{build} image: Visual Studio 2015 diff --git a/demos/Azure/README.md b/demos/Azure/README.md index 22b77e3e6d..6b345c3362 100644 --- a/demos/Azure/README.md +++ b/demos/Azure/README.md @@ -3,7 +3,7 @@ This demo (Azure-Demo.ps1) shows management of Azure Compute resource using Azure Resource Management (ARM) cmdlets. ## Prerequisites ## -- Install PowerShell 6.0.0-alpha.13 +- Install PowerShell 6.0.0-alpha.14 - Install AzureRM.NetCore.Preview, AzureRM.Profile.NetCore.Preview and AzureRM.Resources.NetCore.Preview modules to a local directory. - The instructions for downloading these modules are in Azure-Demo.ps1 file. - You have to use the command "Install-Package -Name AzureRM.NetCore.Preview -Source https://www.powershellgallery.com/api/v2 -ProviderName NuGet -ExcludeVersion -Destination " diff --git a/docker/release/centos7/Dockerfile b/docker/release/centos7/Dockerfile index 7e4f4b601f..97c887c242 100644 --- a/docker/release/centos7/Dockerfile +++ b/docker/release/centos7/Dockerfile @@ -1,8 +1,8 @@ FROM centos:7 MAINTAINER Andrew Schwartzmeyer -ARG POWERSHELL_RELEASE=v6.0.0-alpha.13 -ARG POWERSHELL_PACKAGE=powershell-6.0.0_alpha.13-1.el7.centos.x86_64.rpm +ARG POWERSHELL_RELEASE=v6.0.0-alpha.14 +ARG POWERSHELL_PACKAGE=powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm # Setup the locale ENV LANG en_US.UTF-8 diff --git a/docker/release/nanoserver/Dockerfile b/docker/release/nanoserver/Dockerfile index 835de562aa..fc26d7c223 100644 --- a/docker/release/nanoserver/Dockerfile +++ b/docker/release/nanoserver/Dockerfile @@ -4,7 +4,7 @@ MAINTAINER brycem@microsoft.com LABEL Readme.md="https://github.com/PowerShell/PowerShell/blob/master/docker/README.md" LABEL Description="This Dockerfile will install the latest release of PS." -ARG POWERSHELL_ZIP=https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell-6.0.0-alpha.13-win10-x64.zip +ARG POWERSHELL_ZIP=https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell-6.0.0-alpha.14-win10-x64.zip ARG POWERSHELL_SHA256=257D5F081C112713DF17F6D0E4CBC794E5099664EDA8DBC543B996915834D5CE # Setup PowerShell - Log-to > C:\Docker.log diff --git a/docker/release/ubuntu14.04/Dockerfile b/docker/release/ubuntu14.04/Dockerfile index a4cc676b26..690e310379 100644 --- a/docker/release/ubuntu14.04/Dockerfile +++ b/docker/release/ubuntu14.04/Dockerfile @@ -1,8 +1,8 @@ FROM ubuntu:trusty MAINTAINER Andrew Schwartzmeyer -ARG POWERSHELL_RELEASE=v6.0.0-alpha.13 -ARG POWERSHELL_PACKAGE=powershell_6.0.0-alpha.13-1ubuntu1.14.04.1_amd64.deb +ARG POWERSHELL_RELEASE=v6.0.0-alpha.14 +ARG POWERSHELL_PACKAGE=powershell_6.0.0-alpha.14-1ubuntu1.14.04.1_amd64.deb # Setup the locale ENV LANG en_US.UTF-8 diff --git a/docker/release/ubuntu16.04/Dockerfile b/docker/release/ubuntu16.04/Dockerfile index 1a6859bf0c..f52f6ef4ff 100644 --- a/docker/release/ubuntu16.04/Dockerfile +++ b/docker/release/ubuntu16.04/Dockerfile @@ -1,8 +1,8 @@ FROM ubuntu:xenial MAINTAINER Andrew Schwartzmeyer -ARG POWERSHELL_RELEASE=v6.0.0-alpha.13 -ARG POWERSHELL_PACKAGE=powershell_6.0.0-alpha.13-1ubuntu1.16.04.1_amd64.deb +ARG POWERSHELL_RELEASE=v6.0.0-alpha.14 +ARG POWERSHELL_PACKAGE=powershell_6.0.0-alpha.14-1ubuntu1.16.04.1_amd64.deb # Setup the locale ENV LANG en_US.UTF-8 diff --git a/docker/release/windowsservercore/Dockerfile b/docker/release/windowsservercore/Dockerfile index 33e0ba4ef5..fcb8c9fde7 100644 --- a/docker/release/windowsservercore/Dockerfile +++ b/docker/release/windowsservercore/Dockerfile @@ -4,7 +4,7 @@ MAINTAINER brycem@microsoft.com LABEL Readme.md="https://github.com/PowerShell/PowerShell/blob/master/docker/README.md" LABEL Description="This Dockerfile will install the latest release of PS." -ARG POWERSHELL_MSI=https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/PowerShell_6.0.0.13-alpha.13-win10-x64.msi +ARG POWERSHELL_MSI=https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/PowerShell_6.0.0.14-alpha.14-win10-x64.msi ARG POWERSHELL_SHA256=F3C3F3276462588E24BFE197DAA8795140E37557596861126D54462561C98671 # Setup PowerShell - Log-to > C:\Docker.log diff --git a/docs/installation/linux.md b/docs/installation/linux.md index c1cc6a791f..4041179261 100644 --- a/docs/installation/linux.md +++ b/docs/installation/linux.md @@ -11,7 +11,7 @@ You should *never* run a script without reading it first! Please **read the [download][] script first**, and then if you want to run it, use: ```sh -bash <(curl -fsSL https://raw.githubusercontent.com/PowerShell/PowerShell/v6.0.0-alpha.13/tools/download.sh) +bash <(curl -fsSL https://raw.githubusercontent.com/PowerShell/PowerShell/v6.0.0-alpha.14/tools/download.sh) ``` Once the package is installed, run `powershell` from a terminal. @@ -20,19 +20,19 @@ Once the package is installed, run `powershell` from a terminal. [u16]: #ubuntu-1604 [cos]: #centos-7 [osx]: #os-x-1011 -[download]: https://github.com/PowerShell/PowerShell/blob/v6.0.0-alpha.13/tools/download.sh +[download]: https://github.com/PowerShell/PowerShell/blob/v6.0.0-alpha.14/tools/download.sh Ubuntu 14.04 ============ Using [Ubuntu 14.04][], download the Debian package -`powershell_6.0.0-alpha.13-1ubuntu1.14.04.1_amd64.deb` +`powershell_6.0.0-alpha.14-1ubuntu1.14.04.1_amd64.deb` from the [releases][] page onto the Ubuntu machine. Then execute the following in the terminal: ```sh -sudo dpkg -i powershell_6.0.0-alpha.13-1ubuntu1.14.04.1_amd64.deb +sudo dpkg -i powershell_6.0.0-alpha.14-1ubuntu1.14.04.1_amd64.deb sudo apt-get install -f ``` @@ -52,13 +52,13 @@ Ubuntu 16.04 ============ Using [Ubuntu 16.04][], download the Debian package -`powershell_6.0.0-alpha.13-1ubuntu1.16.04.1_amd64.deb` +`powershell_6.0.0-alpha.14-1ubuntu1.16.04.1_amd64.deb` from the [releases][] page onto the Ubuntu machine. Then execute the following in the terminal: ```sh -sudo dpkg -i powershell_6.0.0-alpha.13-1ubuntu1.16.04.1_amd64.deb +sudo dpkg -i powershell_6.0.0-alpha.14-1ubuntu1.16.04.1_amd64.deb sudo apt-get install -f ``` @@ -80,19 +80,19 @@ CentOS 7 ======== Using [CentOS 7][], download the RPM package -`powershell-6.0.0_alpha.13-1.el7.centos.x86_64.rpm` +`powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm` from the [releases][] page onto the CentOS machine. Then execute the following in the terminal: ```sh -sudo yum install ./powershell-6.0.0_alpha.13-1.el7.centos.x86_64.rpm +sudo yum install ./powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm ``` You can also install the RPM without the intermediate step of downloading it: ```sh -sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.13/powershell-6.0.0_alpha.13-1.el7.centos.x86_64.rpm +sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.14/powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm ``` > This package works on Oracle Linux 7. It should work on Red Hat Enterprise Linux 7 too. @@ -109,14 +109,14 @@ macOS 10.11 =========== Using macOS 10.11, download the PKG package -`powershell-6.0.0-alpha.13.pkg` +`powershell-6.0.0-alpha.14.pkg` from the [releases][] page onto the macOS machine. Either double-click the file and follow the prompts, or install it from the terminal: ```sh -sudo installer -pkg powershell-6.0.0-alpha.13.pkg -target / +sudo installer -pkg powershell-6.0.0-alpha.14.pkg -target / ``` **Uninstallation** @@ -184,7 +184,7 @@ You *can* run this command manually if you're having trouble with .NET Core's cr Paths ===== -* `$PSHOME` is `/opt/microsoft/powershell/6.0.0-alpha.13/` +* `$PSHOME` is `/opt/microsoft/powershell/6.0.0-alpha.14/` * User profiles will be read from `~/.config/powershell/profile.ps1` * Default profiles will be read from `$PSHOME/profile.ps1` * User modules will be read from `~/.local/share/powershell/Modules` @@ -200,7 +200,7 @@ On Linux and macOS, the [XDG Base Directory Specification][xdg-bds] is respected Note that because macOS is a derivation of BSD, instead of `/opt`, the prefix used is `/usr/local`. -Thus, `$PSHOME` is `/usr/local/microsoft/powershell/6.0.0-alpha.13/`, +Thus, `$PSHOME` is `/usr/local/microsoft/powershell/6.0.0-alpha.14/`, and the symlink is placed at `/usr/local/bin/powershell`. [releases]: https://github.com/PowerShell/PowerShell/releases/latest diff --git a/tools/download.sh b/tools/download.sh index 1a08f30fc0..09b41b424b 100755 --- a/tools/download.sh +++ b/tools/download.sh @@ -8,7 +8,7 @@ trap ' ' INT get_url() { - release=v6.0.0-alpha.11 + release=v6.0.0-alpha.14 echo "https://github.com/PowerShell/PowerShell/releases/download/$release/$1" } @@ -24,7 +24,7 @@ case "$OSTYPE" in sudo yum install -y curl fi - package=powershell-6.0.0_alpha.11-1.el7.centos.x86_64.rpm + package=powershell-6.0.0_alpha.14-1.el7.centos.x86_64.rpm ;; ubuntu) if ! hash curl 2>/dev/null; then @@ -34,10 +34,10 @@ case "$OSTYPE" in case "$VERSION_ID" in 14.04) - package=powershell_6.0.0-alpha.11-1ubuntu1.14.04.1_amd64.deb + package=powershell_6.0.0-alpha.14-1ubuntu1.14.04.1_amd64.deb ;; 16.04) - package=powershell_6.0.0-alpha.11-1ubuntu1.16.04.1_amd64.deb + package=powershell_6.0.0-alpha.14-1ubuntu1.16.04.1_amd64.deb ;; *) echo "Ubuntu $VERSION_ID is not supported!" >&2 @@ -51,7 +51,7 @@ case "$OSTYPE" in ;; darwin*) # We don't check for curl as macOS should have a system version - package=powershell-6.0.0-alpha.11.pkg + package=powershell-6.0.0-alpha.14.pkg ;; *) echo "$OSTYPE is not supported!" >&2