Skip to content

Tags: I90Runner/PowerShell

Tags

v6.0.1

Toggle v6.0.1's commit message
** v6.0.1 - 2018-01-25

*** Engine updates and fixes

- Update PowerShell to use `2.0.5` dotnet core runtime and packages. (PowerShell#5903, PowerShell#5961) (Thanks @iSazonov!)

*** Build and Packaging Improvements

- Re-release of `v6.0.0` as `v6.0.1` due to issues upgrading from pre-release versions

*** Test

- Update regular expression to validate `GitCommitId` in `$PSVersionTable` to not require a pre-release tag (PowerShell#5893)

v6.0.0

Toggle v6.0.0's commit message
v6.0.0 release of PowerShell Core

Here are the major changes:

* Breaking changes

- Remove `sc` alias which conflicts with `sc.exe` (PowerShell#5827)
- Separate group policy settings and enable policy controlled logging in PowerShell Core (PowerShell#5791)

* Engine updates and fixes

- Handle `DLLImport` failure of `libpsrpclient` in PowerShell Remoting on Unix platforms (PowerShell#5622)

* Test

- Replace `lee.io` Tests with `WebListener` (PowerShell#5709) (Thanks @markekraus!)
- Update the docker based release package tests due to the removal of `Pester` module and other issues (PowerShell#5692)
- Replace Remaining `HttpBin.org` Tests with `WebListener` (PowerShell#5665) (Thanks @markekraus!)

* Build and Packaging Improvements

- Update x86 and x64 `MSI` packages to not overwrite each other (PowerShell#5812) (Thanks @bergmeister!)
- Update `Restore-PSPester` to include the fix for nested describe errors (PowerShell#5771)
- Automate the generation of release change log draft (PowerShell#5712)

* Documentation and Help Content

- Updated help Uri to point to latest help content for `Microsoft.PowerShell.Core` module (PowerShell#5820)
- Update the installation doc for `Raspberry-Pi` about supported devices (PowerShell#5773)
- Fix a typo and a Markdown linting error in the Pull Request Template (PowerShell#5807) (Thanks @markekraus!)
- Update submodule documentation for pester removal (PowerShell#5786) (Thanks @bergmeister!)
- Change `Github` to `GitHub` in `CONTRIBUTING.md` (PowerShell#5697) (Thanks @stuntguy3000!)
- Fix incorrect release date on the changelog (PowerShell#5698) (Thanks @SwarfegaGit!)
- Add instructions to deploy `win-arm` build on Windows IoT (PowerShell#5682)

v6.0.0-rc.2

Toggle v6.0.0-rc.2's commit message
v6.0.0-rc.2 release of PowerShell Core

Here are the major changes:

* Breaking changes

- Skip null-element check for collections with a value-type element type (PowerShell#5432)
- Make `AllSigned` execution policy require modules under `$PSHome` to be signed (PowerShell#5511)

* Engine updates and fixes

- Update PowerShell to use `2.0.4` dotnet core runtime. (PowerShell#5677)
- Remove references to the old executable `powershell` or `powershell.exe` (PowerShell#5408)

* General cmdlet updates and fixes

- Remove unnecessary check for `Paths.count > 0`, in the `*-FileCatalog` CmdLets (PowerShell#5596)
- Use explicit `libpsl-native` binary name for `dllimport`. (PowerShell#5580)

* Build and Packaging Improvements

- Fix `Get-EnvironmentInformation` to properly check for CoreCLR (PowerShell#5592) (Thanks @markekraus!)
- Make Travis CI use `libcurl+openssl+gssapi` (PowerShell#5629) (Thanks @markekraus!)
- Disambiguate icon for daily builds on Windows (PowerShell#5467) (Thanks @bergmeister!)
- Fix `Import-CliXml` tests which still use `powershell` instead of `pwsh` and make sure it fails if it regresses (PowerShell#5521) (Thanks @markekraus!)
- Update port number used for WebCmdlets tests which broke due to a change in AppVeyor (PowerShell#5520) (Thanks @markekraus!)
- Clean up use of `Runspaceconfiguration` from comments and xUnit test code (PowerShell#5569) (Thanks @Bhaal22!)
- Replace `HttpListener` Response Tests with WebListener (PowerShell#5540, PowerShell#5605) (Thanks @markekraus!)
- Fix the path to `powershell_xxx.inc` in Start-Build (PowerShell#5538) (Thanks @iSazonov!)
- Remove Pester as a module include with the PowerShell Packages.
  You should be able to add it by running `Install-Module Pester`. (PowerShell#5623, PowerShell#5631)
- Refactor `New-UnixPackaging` into functions to make the large function more readable. (PowerShell#5625)
- Make the experience better when `Start-PSPester` doesn't find Pester (PowerShell#5673)
- Update packaging and release build scripts to produce zip packages for `win-arm` and `win-arm64` (PowerShell#5664)
- Enable `Install-Debian` to work with VSTS Hosted Linux Preview (PowerShell#5659)
- Add `linux-arm` tarball package to release build (PowerShell#5652, PowerShell#5660)
- Enable building for `win-arm` and `win-arm64` (PowerShell#5524)
- Make macOS package require 10.12 or newer (PowerShell#5649, PowerShell#5654)
- Update signing subjects to something meaningful (PowerShell#5650)
- Make `New-UnixPackage` more readable (PowerShell#5625)
- Update `PowerShellGet` tests to validate the new install location of `AllUsers` scope. (PowerShell#5633)
- Increase reliability of flaky test that fails intermittently in CI (PowerShell#5641)
- Exclude markdown files from `Pester` folder from the Markdown meta test (PowerShell#5636)
- Run tests for Windows installer only on Windows (PowerShell#5619)
- Suppress the expected errors from `Select-Xml` tests (PowerShell#5591)
- Add retry logic to prerequisite URL and output URL on failure so you can more easily troubleshoot (PowerShell#5601, PowerShell#5570)
- Make sure submodule are initialized when running Mac release build (PowerShell#5496)
- Remove duplicate files in Windows packages in a folder called `signed` (PowerShell#5527)
- Add PowerShell VSCode style settings (PowerShell#5529) (Thanks @bergmeister)
- Add Travis CI matrix for improved job tagging (PowerShell#5547)
- Remove community docker files from official docker image validation (PowerShell#5508)

* Documentation and Help Content

- XML documentation fix for `CompletionResult` (PowerShell#5550) (Thanks @bergmeister!)
- Change synopsis of `install-powershell.ps1` to reflect that it works cross-platform (PowerShell#5465) (Thanks @bergmeister!)
- Add more helpful message for `AmbiguousParameterSet` exception (PowerShell#5537) (Thanks @kvprasoon!)
- Update the contribution guideline to note that updating the changelog is required. (PowerShell#5586)
- Updated doc to build arm/arm64 versions of `psrp.windows` and `PowerShell.Core.Instrumentation.dll` libraries (PowerShell#5668)
- Update Contribution guidelines with work in progress guidance (PowerShell#5655)
- Update code coverage tests to get GitCommitId using the ProductVersion from Assembly (PowerShell#5651)
- Remove requirement to updating changelog update in PR (PowerShell#5644, PowerShell#5586)
- Minor refactoring of the release build scripts (PowerShell#5632)
- Update PowerShell executable name in `using-vscode.md` (PowerShell#5593)
- Fix xUnit test for PS (PowerShell#4780)
- Update install link and instructions for R-Pi (PowerShell#5495)

* Compliance Work

Compliance work is required for Microsoft to continue to sign and release packages from the project as official Microsoft packages.

- Remove `PerformWSManPluginReportCompletion`, which was not used, from `pwrshplugin.dll` (PowerShell#5498) (Thanks @bergmeister!)
- Remove exclusion for hang and add context exception for remaining instances (PowerShell#5595)
- Replace `strlen` with `strnlen` in native code (PowerShell#5510)

v6.0.0-rc

Toggle v6.0.0-rc's commit message
** v6.0.0-rc - 2017-11-16

*** Breaking changes

- Fix `-Verbose` to not override `$ErrorActionPreference`. (PowerShell#5113)
- Fix `Get-Item -LiteralPath a*b` to return error if `a*b` doesn't actually exist. (PowerShell#5197)
- Remove `AllScope` from most default aliases to reduce overhead on creating new scopes. (PowerShell#5268)
- Change `$OutputEncoding` default to be `UTF8` without `BOM` rather than `ASCII`. (PowerShell#5369)
- Add error on legacy credential over non-HTTPS for Web Cmdlets. (PowerShell#5402) (Thanks @markekraus!)
- Fix single value JSON `null` in `Invoke-RestMethod`. (PowerShell#5338) (Thanks @markekraus!)
- Add `PSTypeName` Support for `Import-Csv` and `ConvertFrom-Csv`. (PowerShell#5389) (Thanks @markekraus!)

*** Engine updates and fixes

- Add char range overload to the `..` operator, so `'a'..'z'` returns characters from 'a' to 'z'. (PowerShell#5026) (Thanks @IISResetMe!)
- Remove `CommandFactory` because it serves no real purpose. (PowerShell#5266)
- Change to not insert line breaks at console window width to output (except for tables). (PowerShell#5193)
- Use `Ast` for context in parameter binding and fix to glob the native command argument only when it's not quoted. (PowerShell#5188)
- Fix dynamic class assembly name. (PowerShell#5292)
- Update powershell to use `2.0.4-servicing` dotnet core runtime. (PowerShell#5295)
- Fix `ExecutionContext.LoadAssembly` to load with name when file cannot be found. (PowerShell#5161)
- Speed up the check for suspicious content in script texts. (PowerShell#5302)
- Use native `os_log` APIs on macOS for PowerShell Core logging. (PowerShell#5310)
- Redirect `ETW` logging to `Syslog` on Linux. (PowerShell#5144)
- Improve how we pass the array literal to native commands. (PowerShell#5301)
- Make `SemanticVersion` compatible with `SemVer 2.0`. (PowerShell#5037) (Thanks @iSazonov!)
- Revert refactoring changes that broke remoting to Windows PowerShell 5.1. (PowerShell#5321)
- Port some fixes in `Job` for an issue that causes PowerShell to not respond. (PowerShell#5258)
- Multiple improvements by `CodeRush` static analysis. (PowerShell#5132) (Thanks @Himura2la!)
- Fix the Runspace cleanup issue that causes PowerShell to not respond on exit. (PowerShell#5356)
- Update PowerShell to depend on new version of `psrp` and `libmi` nuget packages on Unix platforms. (PowerShell#5469)

*** General cmdlet updates and fixes

- Add `-AsHashtable` to `ConvertFrom-Json` to return a `Hashtable` instead. (PowerShell#5043) (Thanks @bergmeister!)
- Fix `Import-module` to not report a loaded module was not found. (PowerShell#5238)
- Fix performance issues in `Add-Type`. (PowerShell#5243) (Thanks @iSazonov!)
- Fix `PSUserAgent` generation for Web Cmdlets on Windows 7. (PowerShell#5256) (Thanks @markekraus!)
- Remove `DCOM` support from `*-Computer` cmdlets. (PowerShell#5277)
- Add multiple link header support to Web Cmdlets. (PowerShell#5265) (Thanks @markekraus!)
- Use wider columns for process id and user. (PowerShell#5303)
- Add `Remove-Alias` Command. (PowerShell#5143) (Thanks @PowershellNinja!)
- Update `installpsh-suse.sh` to work with the `tar.gz` package. (PowerShell#5309)
- Add `Jobject` serialization support to `ConvertTo-Json`. (PowerShell#5141)
- Display full help with 'help' function. (PowerShell#5195) (Thanks @rkeithhill!)
- Fix `help` function to not pipe to `more` if objects are returned instead of help text. (PowerShell#5395)
- Fix `Unblock-File` to not write an error if the file is already unblocked. (PowerShell#5362) (Thanks @iSazonov!)
- Clean up FullCLR code from Web Cmdlets. (PowerShell#5376) (Thanks @markekraus!)
- Exclude cmdlets that are not supported on Unix platforms. (PowerShell#5083)
- Make `Import-Csv` support `CR`, `LF` and `CRLF` as line delimiters. (PowerShell#5363) (Thanks @iSazonov!)
- Fix spelling in Web Cmdlet errors. (PowerShell#5427) (Thanks @markekraus!)
- Add `SslProtocol` support to Web Cmdlets. (PowerShell#5329) (Thanks @markekraus!)

*** Build and Packaging Improvements

- Use `RCEdit` to embed icon and version information into `pwsh.exe`. (PowerShell#5178)
- Update Docker file for Nano Server 1709 release. (PowerShell#5252)
- Change VSCode build task to use `pwsh`. (PowerShell#5255)
- Refactor building and packaging scripts for signing in release build workflow. (PowerShell#5300)
- Always build with `-CrossGen` in CI to verify a fix in `CrossGen` tool. (PowerShell#5315)
- Separate `Install-PowerShellRemoting.ps1` from `psrp.windows` nuget package. (PowerShell#5330)
- Include symbols folder an embedded zip when packaging symbols. (PowerShell#5333)
- Add Uniform Type Identifier conforming with Apple standards using a reverse DNS style prefix. (PowerShell#5323)
- Update `Wix` toolset download link to newer version 3.11 (PowerShell#5339) (Thanks @bergmeister!)
- Re-enable macOS launcher after fixing an issue that blocked macOS package generation. (PowerShell#5291) (Thanks @thezim!)
- Set expected binaries and variable name for folder for symbols build. (PowerShell#5357)
- Rename and update PowerShell `ETW` manifest to remove the Windows PowerShell dependency. (PowerShell#5360)
- Add ability to produce `tar.gz` package for Raspbian. (PowerShell#5387)
- Update `Find-Dotnet` to find dotnet with the compatible SDK. (PowerShell#5341) (Thanks @rkeithhill!)
- Add signing manifest and script to update it with production values. (PowerShell#5397)
- Add `install-powershell.ps1` to install PowerShell Core on windows. (PowerShell#5383)
- Make `-Name` a dynamic parameter in `Start-PSPackage`. (PowerShell#5415)
- Support `[package]` tag in PR CI and fix nightly build on macOS. (PowerShell#5410)
- Enhance `install-powershell.ps1` to work on Linux and macOS. (PowerShell#5411)
- Move the `RCEdit` step to the build phase rather than the packaging phase. (PowerShell#5404)
- Allow packaging from a zip package to allow for signing. (PowerShell#5418)
- Add automation to validate PowerShell Core packages using Docker containers. (PowerShell#5401)
- Fix the `brew update` issue in bootstrap script. (PowerShell#5400)
- Enable `install-powershell.ps1` to update the current running PowerShell Core. (PowerShell#5429)
- Add standard set of VSCode workspace setting files. (PowerShell#5457) (Thanks @rkeithhill!)
- Add support for installing PowerShell Core on Amazon Linux via `install-powershell.sh`. (PowerShell#5461) (Thanks @DarwinJS!)
- Get `PowerShellGet` and `PackageManagement` from the PowerShell Gallery. (PowerShell#5452)
- Fix `Start-PSBuild` on `WSL` if repository was already built on Windows. (PowerShell#5346) (Thanks @bergmeister!)
- Fix build in VSCode and use an improved version of `tasks.json` from @rkeithhill. (PowerShell#5453)
- Add scripts for signing packages in the release build workflow. (PowerShell#5463)

*** Documentation and Help Content

- Fix the codebase to use the consistent copyright string. (PowerShell#5210)
- Add documentation about how to create `libpsl` and `psrp.windows` nuget packages. (PowerShell#5278)
- Add help strings in PowerShell banner. (PowerShell#5275) (Thanks @iSazonov!)
- Change all links in `README.md` to absolute as they are being used in other places outside of GitHub. (PowerShell#5354)
- Update instructions to build on VSCode based on `pwsh`. (PowerShell#5368)
- Update `FAQ.md` about how to use PowerShell Core nuget packages. (PowerShell#5366)
- Correct the Fedora documentation (PowerShell#5384) (Thanks @offthewoll!)
- Add instructions about how to create the `PowerShell.Core.Instrumentation` nuget package. (PowerShell#5396)
- Updated PowerShell to use the latest help package. (PowerShell#5454)

*** Compliance Work

[Compliance](https://github.com/PowerShell/PowerShell/blob/master/docs/maintainers/issue-management.md#miscellaneous-labels)
work is required for Microsoft to continue to sign and release packages from the project as official Microsoft packages.

- Replace the word `hang` with something more appropriate and add rules about other terms. (PowerShell#5213, PowerShell#5297, PowerShell#5358)
- Use simplified names for compliance folders (PowerShell#5388)
- Add compliance label description (PowerShell#5355)
- Set `requestedExecutionLevel` to `asInvoker` for `pwsh.exe` on Windows. (PowerShell#5285)
- Add `HighEntropyVA` to building pwsh. (PowerShell#5455)

v6.0.0-beta.9

Toggle v6.0.0-beta.9's commit message
* Breaking changes

- Fix `ValueFromRemainingArguments` to have consistent behavior between script and C# cmdlets. (PowerShell#2038) (Thanks @dlwyatt)
- Remove parameters `-importsystemmodules` and `-psconsoleFile` from `powershell.exe`. (PowerShell#4995)
- Removed code to show a GUI prompt for credentials as PowerShell Core prompts in console. (PowerShell#4995)
- Remove `-ComputerName` from `Get/Set/Remove-Service`. (PowerShell#5094)
- Rename the executable name from `powershell` to `pwsh`. (PowerShell#5101)
- Remove `RunspaceConfiguration` support. (PowerShell#4942)
- Remove `-ComputerName` support since .NET Core `Process.GetProcesses(computer)` returns local processes. (PowerShell#4960)
- Make `-NoTypeInformation` the default on `Export-Csv` and `ConvertTo-Csv`. (PowerShell#5164) (Thanks @markekraus)
- Unify cmdlets with parameter `-Encoding` to be of type `System.Text.Encoding`. (PowerShell#5080)

* Engine updates and fixes

- Fix PowerShell to update the `PATH` environment variable only if `PATH` exists. (PowerShell#5021)
- Enable support of folders and files with colon in name on Unix. (PowerShell#4959)
- Fix detection of whether `-LiteralPath` was used to suppress wildcard expansion for navigation cmdlets. (PowerShell#5038)
- Enable using filesystem from a UNC location. (PowerShell#4998)
- Escape trailing backslash when dealing with native command arguments. (PowerShell#4965)
- Change location of `ModuleAnalysisCache` so it isn't shared with Windows PowerShell. (PowerShell#5133)
- Put command discovery before scripts for Unix. (PowerShell#5116)

* General cmdlet updates and fixes

- Correct comma position in `SecureStringCommands.resx`. (PowerShell#5033) (Thanks @markekraus)
- User Agent of Web Cmdlets now reports the OS platform (PowerShell#4937) (Thanks @LDSpits)
- Add the positional parameter attribute to `-InputObject` for `Set-Service`. (PowerShell#5017) (Thanks @travisty-)
- Add `ValidateNotNullOrEmpty` attribute to `-UFormat` for `Get-Date`. (PowerShell#5055) (Thanks @DDWR)
- Add `-NoNewLine` switch for `Out-String`. (PowerShell#5056) (Thanks @raghav710)
- Improve progress messages written by Web Cmdlets. (PowerShell#5078) (Thanks @markekraus)
- Add verb descriptions and alias prefixes for `Get-Verb`. (PowerShell#4746) (Thanks @Tadas)
- Fix `Get-Content -Raw` to not miss the last line feed character. (PowerShell#5076)
- Add authentication parameters to Web Cmdlets. (PowerShell#5052) (Thanks @markekraus)
    - Add `-Authentication` that provides three options: Basic, OAuth, and Bearer.
    - Add `-Token` to get the bearer token for OAuth and Bearer options.
    - Add `-AllowUnencryptedAuthentication` to bypass authentication that is provided for any transport scheme other than HTTPS.
- Fix `MatchInfoContext` clone implementation (PowerShell#5121) (Thanks @dee-see)
- Exclude `PSHostProcess` cmdlets from Unix platforms. (PowerShell#5105)
- Fix `Add-Member` to fetch resource string correctly. (PowerShell#5114)
- Enable `Import-Module` to be case insensitive. (PowerShell#5097)
- Add exports for `syslog` APIs in `libpsl-native`. (PowerShell#5149)
- Fix `Get-ChildItem` to not ignore `-Depth` parameter when using with `-Include` or `-Exclude`. (PowerShell#4985) (Thanks @Windos)
- Added properties `UserName`, `Description`, `DelayedAutoStart`, `BinaryPathName` and `StartupType` to the `ServiceController` objects returned by `Get-Service`. (PowerShell#4907) (Thanks @joandrsn)

* Build and Packaging Improvements

- Treat `.rtf` files as binary so EOL don't get changed. (PowerShell#5020)
- Improve the output of `tools/installpsh-osx.sh` and update Travis-CI to use Ruby 2.3.3. (PowerShell#5065)
- Improve `Start-PSBootstrap` to locate dotnet SDK before installing it. (PowerShell#5059) (Thanks @PetSerAl)
- Fix the prerequisite check of the MSI package. (PowerShell#5070)
- Support creating `tar.gz` package for Linux and macOS. (PowerShell#5085)
- Add release builds that produce symbols for compliance scans. (PowerShell#5086)
- Update existing Docker files for the Linux package changes. (PowerShell#5102)
- Add compiler switches and replace dangerous function with safer ones. (PowerShell#5089)
- Add macOS launcher. (PowerShell#5138) (Thanks @thezim)
- Replace `httpbin.org/response-headers` Tests with WebListener. (PowerShell#5058) (Thanks @markekraus)
- Update `appimage.sh` to reflect the new name `pwsh`. (PowerShell#5172)
- Update the man help file used in packaging. (PowerShell#5173)
- Update to use `pwsh` in macOS launcher. (PowerShell#5174) (Thanks @thezim)
- Add code to send web hook for Travis-CI daily build. (PowerShell#5183)
- Add `global.json` to pick correct SDK version. (PowerShell#5118) (Thanks @rkeithhill)
- Update packaging to only package PowerShell binaries when packaging symbols. (PowerShell#5145)
- Update Docker files and related due to the name change. (PowerShell#5156)

* Code Cleanup

- Clean up Json cmdlets. (PowerShell#5001) (Thanks @iSazonov)
- Remove code guarded by `RELATIONSHIP_SUPPORTED` and `SUPPORTS_IMULTIVALUEPROPERTYCMDLETPROVIDER`, which has never been used. (PowerShell#5066)
- Remove PSMI code that has never been used. (PowerShell#5075)
- Remove unreachable code for `Stop-Job`. (PowerShell#5091) (Thanks @travisty-)
- Removed font and codepage handling code that is only applicable to Windows PowerShell. (PowerShell#4995)

* Test

- Fix a race condition between `WebListener` and Web Cmdlets tests. (PowerShell#5035) (Thanks @markekraus)
- Add warning to `Start-PSPester` if Pester module is not found (PowerShell#5069) (Thanks @DDWR)
- Add tests for DSC configuration compilation on Windows. (PowerShell#5011)
- Test fixes and code coverage automation fixes. (PowerShell#5046)

* Documentation and Help Content

- Update Pi demo instructions about installing libunwind8. (PowerShell#4974)
- Add links on best practice guidelines in coding guideline. (PowerShell#4983) (Thanks @iSazonov)
- Reformat command line help for `powershell -help` (PowerShell#4989) (Thanks @iSazonov)
- Change logo in readme to current black icon. (PowerShell#5030)
- Fix RPM package name in `README.md`. (PowerShell#5044)
- Update `docs/building/linux.md` to reflect the current status of powershell build. (PowerShell#5068) (Thanks @dee-see)
- Add black version of `.icns` file for macOS. (PowerShell#5073) (Thanks @thezim)
- Update Arch Linux installation instructions. (PowerShell#5048) (Thanks @kylesferrazza)
- Add submodule reminder to `testing-guidelines.md`. (PowerShell#5061) (Thanks @DDWR)
- Update instructions in `docs/building/internals.md` for building from source. (PowerShell#5072) (Thanks @kylesferrazza)
- Add UserVoice link to Issue Template. (PowerShell#5100) (Thanks @markekraus)
- Add `Get-WebListenerUrl` Based Examples to WebListener `README.md`. (PowerShell#4981) (Thanks @markekraus)
- Add document about how to create cmdlet with dotnet CLI. (PowerShell#5117) (Thanks @rkeithhill)
- Update the help text for PowerShell executable with the new name `pwsh`. (PowerShell#5182)
- Add new forward links for PowerShell 6.0.0 help content. (PowerShell#4978)
- Fix VSCode `launch.json` to point to `pwsh`. (PowerShell#5189)
- Add example of how to create .NET Core cmdlet with Visual Studio. (PowerShell#5096)

v6.0.0-beta.8

Toggle v6.0.0-beta.8's commit message
v6.0.0-beta.8 release of PowerShellCore

Here are the major changes:

* Breaking changes

- Changed `New-Service` to return error when given unsupported `-StartupType` and fixed `Set-Service` icon failing test. (PowerShell#4802)
- Allow `*` to be used in registry path for `Remove-Item`. (PowerShell#4866)
- Remove unsupported `-ShowWindow` switch from `Get-Help`. (PowerShell#4903)
- Fix incorrect position of a parameter which resulted in the args passed as input instead of as args for `InvokeScript()`. (PowerShell#4963)

* Engine updates and fixes

- Make calls to `void CodeMethod` work. (PowerShell#4850) (Thanks @powercode)
- Get `PSVersion` and `GitCommitId` from the `ProductVersion` attribute of assembly (PowerShell#4863) (Thanks @iSazonov)
- Fix `powershell -version` and built-in help for `powershell.exe` to align with other native tools. (PowerShell#4958 & PowerShell#4931) (Thanks @iSazonov)
- Load assemblies with `Assembly.LoadFrom` before `Assembly.Load` when the file path is given. (PowerShell#4196)
- Add a generic file watcher function in `HelpersCommon.psm1`. (PowerShell#4775)
- Update old links and fix broken links in `docs/host-powershell/README.md`. (PowerShell#4877)
- Fix when importing remote modules using version filters (and added tests). (PowerShell#4900)
- Enable transcription of native commands on non-Windows platforms. (PowerShell#4871)
- Add a new line to `CommandNotFoundException` error string. (PowerShell#4934 & PowerShell#4991)
- Fix bug where PowerShell would exit with an error within an SSH remoting connection on Linux. (PowerShell#4993)
- Fix issues with expression redirected to file. (PowerShell#4847)

* General cmdlet updates and fixes

- Added `Remove-Service` to Management module. (PowerShell#4858) (Thanks @joandrsn)
- Added functionality to set credentials on `Set-Service` command. (PowerShell#4844) (Thanks @joandrsn)
- Fix `Select-String` to exclude directories (as opposed to individual files) discovered from `-Path`. (PowerShell#4829) (Thanks @iSazonov)
- `Get-Date` now supports more argument completion scenarios by adding `ArgumentCompletionsAttribute`. (PowerShell#4835) (Thanks @iSazonov)
- Exclude `-ComObject` parameter of `New-Object` on unsupported (currently non-Windows) platforms. (PowerShell#4922) (Thanks @iSazonov)
- Updated default `ModuleVersion` in `New-ModuleManifest` to `0.0.1` to align with SemVer. (PowerShell#4842) (Thanks @LDSpits)
- Add Multipart support to web cmdlets. (PowerShell#4782) (Thanks @markekraus)
- Add `-ResponseHeadersVariable` to `Invoke-RestMethod` to enable the capture of response headers. (PowerShell#4888) (Thanks @markekraus)
- Initialize web cmdlets headers dictionary only once. (PowerShell#4853) (Thanks @markekraus)
- Change web cmdlets `UserAgent` from `WindowsPowerShell` to `PowerShell`. (PowerShell#4914) (Thanks @markekraus)

* DSC Language

- Update version of `PSDesiredStateConfiguration` in project files to fix complication of MOF files with the `Configuration` keyword. (PowerShell#4979)

v6.0.0-beta.7

Toggle v6.0.0-beta.7's commit message
v6.0.0-beta.7 release of PowerShellCore

Here are the major changes:

* Breaking change

- Fix `Get-Content -Delimiter` to not include the delimiter in the array elements returned (PowerShell#3706) (Thanks @mklement0)
- Rename `$IsOSX` to `$IsMacOS` (PowerShell#4757)

* Engine updates and fixes

- Use stricter rules when unwrapping a PSObject that wraps a COM object (PowerShell#4614)
- Remove appended Windows PowerShell `PSModulePath` on Windows. (PowerShell#4656)
- Ensure `GetNetworkCredential()` returns null if PSCredential has null or empty user name (PowerShell#4697)
- Push locals of automatic variables to 'DottedScopes' when dotting script cmdlets (PowerShell#4709)
- Fix `using module` when module has non-terminating errors handled with `SilentlyContinue` (PowerShell#4711) (Thanks @iSazonov)
- Enable use of 'Singleline,Multiline' option in split operator (PowerShell#4721) (Thanks @iSazonov)
- Fix error message in `ValidateSetAttribute.ValidateElement()` (PowerShell#4722) (Thanks @iSazonov)

* General cmdlet updates and fixes

- Add Meta, Charset, and Transitional parameters to `ConvertTo-HTML` (PowerShell#4184) (Thanks @ergo3114)
- Prevent `Test-ModuleManifest` from loading unnecessary modules (PowerShell#4541)
- Remove AlternateStream code and `-Stream` from provider cmdlets on non-Windows (PowerShell#4567)
- Add explicit ContentType detection to `Invoke-RestMethod` (PowerShell#4692)
- Fix an error on `Enter-PSSession` exit (PowerShell#4693)
- Add `-WhatIf` switch to `Start-Process` cmdlet (PowerShell#4735) (Thanks @sarithsutha)
- Remove double spaces in .cs, .ps1, and .resx files (PowerShell#4741 & PowerShell#4743) (Thanks @korygill)
- Replace 'Windows PowerShell' with 'PowerShell' in resx files (PowerShell#4758) (Thanks @iSazonov)

* Build and Packaging Improvements

- Refactor MSBuild project files to get PowerShell version from git tag (PowerShell#4182) (Thanks @iSazonov)
- Create a single package for each Windows supported architecture (x86 and amd64) (PowerShell#4540)
- Set the default windows RID to win7-<arch> (PowerShell#4701)
- Enable cross-compiling for Raspberry-PI arm32 (PowerShell#4742)
- Fix macOS brew reinstall command (PowerShell#4627) (Thanks @TheNewStellW)
- Improvements to the Travis-CI script (PowerShell#4689, PowerShell#4731, PowerShell#4807)
- Update OpenSUSE docker image to 42.2 (PowerShell#4737)
- Confirm `Start-PSPackage` produces a package (PowerShell#4795)

* Test

- Add test WebListener module and tests for Web Cmdlet Certificate Authentication (PowerShell#4622) (Thanks @markekraus)
- Move WebCmdlets HTTPS tests to WebListener (PowerShell#4733) (Thanks @markekraus)
- Replace httpbin.org/get tests With WebListener (PowerShell#4738) (Thanks @markekraus)

* Documentation

- Clarify the Pull Request process, roles, and responsibilities (PowerShell#4710)
- Update coding guidelines to make it more concrete and useful in a review process (PowerShell#4754)

v6.0.0-beta.6

Toggle v6.0.0-beta.6's commit message
v6.0.0-beta.6 release of PowerShellCore

Here are the major changes:

* Breaking change

- Make invalid argument error messages for `-File` and `-Command` consistent and make exit codes consistent with Unix standards (PowerShell#4573)

* Engine updates and fixes

- Make resource loading to work with PowerShell SxS installation (PowerShell#4139)
- Add missing assemblies to TPA list to make Pwrshplughin.dll work (PowerShell#4502)
- Make sure running `powershell` starts instance of the current version of PowerShell. (PowerShell#4481)
- Make sure we only use Unicode output by default on Nano and IoT systems (PowerShell#4074)
- Enable `powershell -WindowStyle` to work on Windows. (PowerShell#4573)
- Enable enumeration of COM collections. (PowerShell#4553)

* General cmdlet updates and fixes

- Fix Web CmdLets `-SkipHeaderValidation` to work with non-standard User-Agent headers. (PowerShell#4479 & PowerShell#4512) (Thanks @markekraus)
- Add Certificate authentication support for Web CmdLets. (PowerShell#4646) (Thanks @markekraus)
- Add support for content headers to Web CmdLets. (PowerShell#4494 & PowerShell#4640) (Thanks @markekraus)
- Add support for converting enums to string (PowerShell#4318) (Thanks @KirkMunro)
- Ignore casing when binding PSReadline KeyHandler functions (PowerShell#4300) (Thanks @oising)
- Fix `Unblock-File` for the case of a read-only file. (PowerShell#4395) (Thanks @iSazonov)
- Use supported API to set Central Access Policy ID (CAPID) in SACL. (PowerShell#4496)
- Make `Start-Trace` support paths that require escaping in the underlying APIs (PowerShell#3863)
- Removing `#if CORECLR` enabled, `Enable-PSRemoting` and `Disable-PSRemoting` (PowerShell#2671)
- Enable WSManCredSSP cmdlets and add tests. (PowerShell#4336)
- Use .NET Core's implementation for ShellExecute. (PowerShell#4523)
- Fix SSH Remoting handling of KeyFileParameter when the path must be quoted. (PowerShell#4529)
- Make Web CmdLets use HTML meta charset attribute value, if present (PowerShell#4338)
- Move to .NET Core 2.0 final (PowerShell#4603)

* Build/test and code cleanup

- Add Amazon Linux Docker image and enable related tests. (PowerShell#4393) (Thanks @DarwinJS)
- Make MSI verify pre-requisites are installed. (PowerShell#4602) (Thank @bergmeister)
- Fixed formatting issues in build files. (PowerShell#4630) (Thanks @iSazonov)
- Make sure `install-powershell.sh` installs latest powershell on macOS, even if an old version is cached in brew. (PowerShell#4509) (Thanks @richardszalay for reporting.)
- Fixes install scripts issue for macOS. (PowerShell#4631) (Thanks @DarwinJS)
- Many stability improvements to our nightly code coverage automation. (PowerShell#4313 & PowerShell#4550)
- Remove hash validation from nanoserver-insider Docker file, due to frequent changes. (PowerShell#4498)
- Update to make Travis-CI daily build badge more reliable. (PowerShell#4522)
- Remove unused build files, build code, and product code. (PowerShell#4532, PowerShell#4580, PowerShell#4590, PowerShell#4589, PowerShell#4588, PowerShell#4587, PowerShell#4586, PowerShell#4583, PowerShell#4582, PowerShell#4581)
- Add additional acceptance tests for PowerShellGet. (PowerShell#4531)
- Only publish a NuGet of the full PowerShell core package on daily builds and not merge. (PowerShell#4517)
- Update nanoserver-insider Docker file due to breaking changes in the base image. (PowerShell#4555)
- Cleanup engine tests (PowerShell#4551)
- Fix intermittent failures in filesystem tests (PowerShell#4566)
- Add tests for
    - `New-WinEvent`. (PowerShell#4384)
    - tab completion.  (PowerShell#4560)
    - various types. (PowerShell#4503)
    - CDXML CmdLets. (PowerShell#4537)
- Only allow packaging of powershell, if it was built from a repo at the root of the file system named powershell. (PowerShell#4569 & PowerShell#4600)
- Update `Format-Hex` test cases to use -TestCase instead of foreach loops. (PowerShell#3800)
- Added functionality to get code coverage for a single file locally. (PowerShell#4556)

* Documentation

- Added Ilya (@iSazonov) as a Maintainer. (PowerShell#4365)
- Grammar fix to the Pull Request Guide. (PowerShell#4322)
- Add homebrew for macOS to install documentation. (PowerShell#3838)
- Added a CodeOwner file. (PowerShell#4565 & PowerShell#4597)

* Cleanup `#if CORECLR` code

PowerShell 6.0 will be exclusively built on top of CoreCLR, so we are removing a large amount of code that's built only for FullCLR.

v6.0.0-beta.5

Toggle v6.0.0-beta.5's commit message
v6.0.0-beta.5 release of PowerShellCore

Here are the major changes:

* Breaking changes

- Remove the `*-Counter` cmdlets in `Microsoft.PowerShell.Diagnostics` due to the use of unsupported APIs until a better solution is found. (PowerShell#4303)
- Remove the `Microsoft.PowerShell.LocalAccounts` due to the use of unsupported APIs until a better solution is found. (PowerShell#4302)

* Engine updates and fixes

- Fix the issue where PowerShell Core wasn't working on Windows 7 or Windows Server 2008 R2/2012 (non-R2). (PowerShell#4463)
- `ValidateSetAttribute` enhancement: support set values to be dynamically generated from a custom `ValidateSetValueGenerator`. (PowerShell#3784) (Thanks to @iSazonov!)
- Disable breaking into debugger on Ctrl+Break when running non-interactively. (PowerShell#4283) (Thanks to @mwrock!)
- Give error instead of crashing if WSMan client library is not available. (PowerShell#4387)
- Allow passing `$true`/`$false` as a parameter to scripts using `powershell.exe -File`. (PowerShell#4178)
- Enable `DataRow`/`DataRowView` adapters in PowerShell Core to fix an issue with `DataTable` usage. (PowerShell#4258)
- Fix an issue where PowerShell class static methods were being shared across `Runspace`s/`SessionState`s. (PowerShell#4209)
- Fix array expression to not return null or throw error. (PowerShell#4296)
- Fixes a CIM deserialization bug where corrupted CIM classes were instantiating non-CIM types. (PowerShell#4234)
- Improve error message when `HelpMessage` property of `ParameterAttribute` is set to empty string. (PowerShell#4334)
- Make `ShellExecuteEx` run in a STA thread. (PowerShell#4362)

* General cmdlet updates and fixes

- Add `-SkipHeaderValidation` switch to `Invoke-WebRequest` and `Invoke-RestMethod` to support adding headers without validating the header value. (PowerShell#4085)
- Add support for `Invoke-Item -Path <folder>`. (PowerShell#4262)
- Fix `ConvertTo-Html` output when using a single column header. (PowerShell#4276)
- Fix output of `Length` for `FileInfo` when using `Format-List`. (PowerShell#4437)
- Fix an issue in implicit remoting where restricted sessions couldn't use `Get-FormatData –PowerShellVersion`. (PowerShell#4222)
- Fix an issue where `Register-PSSessionConfiguration` fails if `SessionConfig` folder doesn't exist. (PowerShell#4271)

* Installer updates

- Create script to install latest PowerShell from Microsoft package repositories (or Homebrew) on non-Windows platforms. (PowerShell#3608) (Thanks to @DarwinJS!)
- Enable MSI upgrades rather than a side-by-side install. (PowerShell#4259)
- Add a checkbox to open PowerShell after the Windows MSI installer has finished. (PowerShell#4203) (Thanks to @bergmeister!)
- Add Amazon Linux compatibility to `install-powershell.sh`. (PowerShell#4360) (Thanks to @DarwinJS!)
- Add ability to package PowerShell Core as a NuGet package. (PowerShell#4363)

* Build/test and code cleanup

- Add build check for MFC for Visual C++ during Windows builds.
  This fixes a long-standing (and very frustrating!) issue with missing build dependencies! (PowerShell#4185) (Thanks to @KirkMunro!)
- Move building Windows PSRP binary out of `Start-PSBuild`.
  Now `Start-PSBuild` doesn't build PSRP binary on windows. Instead, we consume the PSRP binary from a NuGet package. (PowerShell#4335)
- Add tests for built-in type accelerators. (PowerShell#4230) (Thanks to @dchristian3188!)
- Increase code coverage of `Get-ChildItem` on file system. (PowerShell#4342) (Thanks to @jeffbi!)
- Increase test coverage for `Rename-Item` and `Move-Item`. (PowerShell#4329) (Thanks to @jeffbi!)
- Add test coverage for Registry provider. (PowerShell#4354) (Thanks to @jeffbi!)
- Fix warnings and errors thrown by PSScriptAnalyzer. (PowerShell#4261) (Thanks to @bergmeister!)
- Fix regressions that cause implicit remoting tests to fail. (PowerShell#4326)
- Disable legacy UTC and SQM Windows telemetry by enclosing the code in '#if LEGACYTELEMETRY'. (PowerShell#4190)

* Cleanup `#if CORECLR` code

PowerShell 6.0 will be exclusively built on top of CoreCLR,
so we are removing a large amount of code that's built only for FullCLR.
To read more about this, check out [this blog post](https://blogs.msdn.microsoft.com/powershell/2017/07/14/powershell-6-0-roadmap-coreclr-backwards-compatibility-and-more/).

v6.0.0-beta.4

Toggle v6.0.0-beta.4's commit message
** v6.0.0-beta.4 - 2017-07-12

- Add Windows PowerShell `PSModulePath` by default on Windows. (PowerShell#4132)
- Move PowerShell to `2.0.0-preview3-25426-01` and using the .NET CLI version `2.0.0-preview2-006502`. (PowerShell#4144)

*** Engine updates and fixes

- Performance improvement in PSReadline by minimizing writing ANSI escape sequences. (PowerShell#4110)
- Implement Unicode escape parsing so that users can use Unicode characters as arguments, strings or variable names. (PowerShell#3958) (Thanks to @rkeithhill!)
- Script names or full paths can have commas. (PowerShell#4136) (Thanks to @TimCurwick!)
- Added `semver` as a type accelerator for `System.Management.Automation.SemanticVersion`. (PowerShell#4142) (Thanks to @oising!)
- Close `eventLogSession` and `EventLogReader` to unlock an ETL log. (PowerShell#4034) (Thanks to @iSazonov!)

*** General cmdlet updates and fixes

- `Move-Item` cmdlet honors `-Include`, `-Exclude`, and `-Filter` parameters. (PowerShell#3878)
- Add a parameter to `Get-ChildItem` called `-FollowSymlink` that traverses symlinks on demand, with checks for link loops. (PowerShell#4020)
- Change `New-ModuleManifest` encoding to UTF8NoBOM on non-Windows platforms. (PowerShell#3940)
- `Get-AuthenticodeSignature` cmdlets can now get file signature timestamp. (PowerShell#4061)
- Add tab completion for `Export-Counter` `-FileFormat` parameter. (PowerShell#3856)
- Fixed `Import-Module` on non-Windows platforms so that users can import modules with `NestedModules` and `RootModules`. (PowerShell#4010)
- Close `FileStream` opened by `Get-FileHash`. (PowerShell#4175) (Thanks to @rkeithhill!)

*** Remoting

- Fixed hang when the SSH client abruptly terminates. (PowerShell#4123)

*** Documentation

- Added recommended settings for VS Code. (PowerShell#4054) (Thanks to @iSazonov!)