PowerShell/CHANGELOG/preview.md
Travis Plunk a3d5bfc401
Merge branch 'release/v7.1.0-preview.3' into master
# Conflicts:
#	.spelling
#	CHANGELOG/preview.md
2020-05-19 12:07:53 -07:00

19 KiB

Current preview release

7.1.0-preview.3 - 2020-05-14

Breaking Changes

  • Fix string parameter binding for BigInteger numeric literals (#11634) (Thanks @vexx32!)

Engine Updates and Fixes

  • Set correct PSProvider full name at module load time (#11813) (Thanks @iSazonov!)

Experimental Features

  • Support passing PSPath to native commands (#12386)

General Cmdlet Updates and Fixes

  • Fix incorrect index in format string in ParameterBinderBase (#12630) (Thanks @powercode!)
  • Copy the CommandInfo property in Command.Clone() (#12301) (Thanks @TylerLeonhardt!)
  • Apply -IncludeEqual in Compare-Object when -ExcludeDifferent is specified (#12317) (Thanks @davidseibel!)
  • Change Get-FileHash to close file handles before writing output (#12474) (Thanks @HumanEquivalentUnit!)
  • Fix inconsistent exception message in -replace operator (#12388) (Thanks @jackdcasey!)

Code Cleanup

We thank the following contributors!

@xtqqczze, @RDIL, @powercode, @xtqqczze, @xtqqczze

  • Replace Unicode non-breaking space character with space (#12576) (Thanks @xtqqczze!)
  • Remove unused New-DockerTestBuild.ps1 (#12610) (Thanks @RDIL!)
  • Annotate Assert methods for better code analysis (#12618) (Thanks @powercode!)
  • Use correct casing for cmdlet names and parameters in *.ps1 files throughout the codebase (#12584) (Thanks @xtqqczze!)
  • Document why PackageVersion is used in PowerShell.Common.props (#12523) (Thanks @xtqqczze!)

Tools

  • Update @PoshChan config to include SSH (#12526) (Thanks @vexx32!)
  • Update log message in Start-PSBootstrap (#12573) (Thanks @xtqqczze!)
  • Add the .NET SDK installation path to the current process path in tools/UpdateDotnetRuntime.ps1 (#12525)

Tests

  • Make CIM tab completion test case insensitive (#12636)
  • Mark ping tests as Pending due to stability issues in macOS (#12504)

Build and Packaging Improvements

We thank the following contributors!

@jcotton42, @iSazonov, @iSazonov, @iSazonov

  • Update build to use the new .NET SDK 5.0.100-preview.4.20258.7 (#12637)
  • Bump NJsonSchema from 10.1.14 to 10.1.15 (#12608)
  • Bump NJsonSchema from 10.1.13 to 10.1.14 (#12598)
  • Bump NJsonSchema from 10.1.12 to 10.1.13 (#12583)
  • Update the build to sign any unsigned files as 3rd party Dlls (#12581)
  • Update .NET SDK to 5.0.100-preview.4.20229.10 (#12538)
  • Add ability to Install-Dotnet to specify directory (#12469)
  • Allow / in relative paths for using module (#7424) (#12492) (Thanks @jcotton42!)
  • Update dotnet metadata for next channel for automated updates (#12502)
  • Bump .NET to 5.0.0-preview.4 (#12507)
  • Bump Microsoft.ApplicationInsights from 2.13.1 to 2.14.0 (#12479)
  • Bump PackageManagement from 1.4.6 to 1.4.7 in /src/Modules (#12506)
  • Bump Xunit.SkippableFact from 1.3.12 to 1.4.8 (#12480)
  • Fix quotes to allow variable expansion (#12512)
  • Use new TargetFramework as net5.0 in packaging scripts (#12503) (Thanks @iSazonov!)
  • Use new value for TargetFramework as net5.0 instead of netcoreapp5.0 (#12486) (Thanks @iSazonov!)
  • Disable PublishReadyToRun for framework dependent packages (#12450)
  • Add dependabot rules to ignore updates from .NET (#12466)
  • Update README.md and metadata.json for upcoming release (#12441)
  • Turn on ReadyToRun (#12361) (Thanks @iSazonov!)
  • Add summary to compressed sections of change log (#12429)

Documentation and Help Content

  • Add link to life cycle doc to distribution request template (#12638)
  • Update TFM reference in build docs (#12514) (Thanks @xtqqczze!)
  • Fix broken link for blogs in documents (#12471)

7.1.0-preview.2 - 2020-04-23

Breaking Changes

  • On Windows, Start-Process creates a process environment with all the environment variables from current session, using -UseNewEnvironment creates a new default process environment (#10830) (Thanks @iSazonov!)
  • Do not wrap return result to PSObject when converting ScriptBlock to delegate (#10619)

Engine Updates and Fixes

  • Allow case insensitive paths for determining PSModulePath (#12192)
  • Add PowerShell version 7.0 to compatible version list (#12184)
  • Discover assemblies loaded by Assembly.Load(byte[]) and Assembly.LoadFile (#12203)

General Cmdlet Updates and Fixes

  • Fix WinCompat module loading to treat PowerShell 7 modules with higher priority (#12269)
  • Implement ForEach-Object -Parallel runspace reuse (#12122)
  • Fix Get-Service to not modify collection while enumerating it (#11851) (Thanks @NextTurn!)
  • Clean up the IPC named pipe on PowerShell exit (#12187)
  • Fix <img /> detection regex in web cmdlets (#12099) (Thanks @vexx32!)
  • Allow shorter signed hex literals with appropriate type suffixes (#11844) (Thanks @vexx32!)
  • Update UseNewEnvironment parameter behavior of Start-Process cmdlet on Windows (#10830) (Thanks @iSazonov!)
  • Add -Shuffle switch to Get-Random command (#11093) (Thanks @eugenesmlv!)
  • Make GetWindowsPowerShellModulePath compatible with multiple PS installations (#12280)
  • Fix Start-Job to work on systems that don't have Windows PowerShell registered as default shell (#12296)
  • Specifying an alias and -Syntax to Get-Command returns the aliased commands syntax (#10784) (Thanks @ChrisLGardner!)
  • Make CSV cmdlets work when using -AsNeeded and there is an incomplete row (#12281) (Thanks @iSazonov!)
  • In local invocations, do not require -PowerShellVersion 5.1 for Get-FormatData in order to see all format data. (#11270) (Thanks @mklement0!)
  • Added Support For Big Endian UTF-32 (#11947) (Thanks @NoMoreFood!)
  • Fix possible race that leaks PowerShell object dispose in ForEach-Object -Parallel (#12227)
  • Add -FromUnixTime to Get-Date to allow Unix time input (#12179) (Thanks @jackdcasey!)
  • Change default progress foreground and background colors to provide improved contrast (#11455) (Thanks @rkeithhill!)
  • Fix foreach -parallel when current drive is not available (#12197)
  • Do not wrap return result to PSObject when converting ScriptBlock to delegate (#10619)
  • Don't write DNS resolution errors on Test-Connection -Quiet (#12204) (Thanks @vexx32!)
  • Use dedicated threads to read the redirected output and error streams from the child process for out-of-proc jobs (#11713)

Code Cleanup

We thank the following contributors!

@ShaydeNofziger, @RDIL

  • Fix erroneous comment in tokenizer.cs (#12206) (Thanks @ShaydeNofziger!)
  • Fix terms checker issues (#12189)
  • Update copyright notice to latest guidance (#12190)
  • CodeFactor cleanup (#12251) (Thanks @RDIL!)

Tools

  • Update .NET dependency update script to include test csproj files (#12372)
  • Scripts to update to .NET prerelease version (#12284)

Tests

  • Pin major Pester version to 4 to prevent breaking changes caused by upcoming release of v5 (#12262) (Thanks @bergmeister!)

Build and Packaging Improvements

We thank the following contributors!

@rkitover, @bergmeister

  • Add the nuget.config from root to the temporary build folder (#12394)
  • Bump System.IO.Packaging (#12365)
  • Bump Markdig.Signed from 0.18.3 to 0.20.0 (#12379)
  • Bump to .NET 5 Preview 3 pre-release (#12353)
  • Bump PowerShellGet from 2.2.3 to 2.2.4 (#12342)
  • Linux: Initial support for Gentoo installations. (#11429) (Thanks @rkitover!)
  • Upgrade to .NET 5 Preview 2 (#12250) (Thanks @bergmeister!)
  • Fix the Sync PSGalleryModules to Artifacts build (#12277)
  • Bump PSReadLine from 2.0.0 to 2.0.1 (#12243)
  • Bump NJsonSchema from 10.1.11 to 10.1.12 (#12230)
  • Update change log generation script to support collapsible sections (#12214)

Documentation and Help Content

  • Add documentation for WebResponseObject and BasicHtmlWebResponseObject properties (#11876) (Thanks @kevinoid!)
  • Add Windows 10 IoT Core reference in Adopters.md (#12266) (Thanks @parameshbabu!)
  • Update README.md and metadata.json for 7.1.0-preview.1 (#12211)

7.1.0-preview.1 - 2020-03-26

Breaking Changes

  • Use invariant culture string conversion for -replace operator (#10954) (Thanks @iSazonov!)

Engine Updates and Fixes

  • Revert the PRs that made DBNull.Value and NullString.Value treated as $null (#11648)

Experimental Features

  • Use invariant culture string conversion for -replace operator (#10954) (Thanks @iSazonov!)

General Cmdlet Updates and Fixes

  • Fix an operator preference order issue in binder code (#12075) (Thanks @DamirAinullin!)
  • Fix NullReferenceException when binding common parameters of type ActionPreference (#12124)
  • Fix default formatting for deserialized MatchInfo (#11728) (Thanks @iSazonov!)
  • Use asynchronous streams in Invoke-RestMethod (#11095) (Thanks @iSazonov!)
  • Address UTF-8 Detection In Get-Content -Tail (#11899) (Thanks @NoMoreFood!)
  • Handle the IOException in Get-FileHash (#11944) (Thanks @iSazonov!)
  • Change PowerShell Core to PowerShell in a resource string (#11928) (Thanks @alexandair!)
  • Bring back MainWindowTitle in PSHostProcessInfo (#11885) (Thanks @iSazonov!)
  • Miscellaneous minor updates to Windows Compatibility (#11980)
  • Fix ConciseView to split PositionMessage using [Environment]::NewLine (#12010)
  • Remove network hop restriction for interactive sessions (#11920)
  • Fix NullReferenceException in SuspendStoppingPipeline() and RestoreStoppingPipeline() (#11870) (Thanks @iSazonov!)
  • Generate GUID for FormatViewDefinition InstanceId if not provided (#11896)
  • Fix ConciseView where error message is wider than window width and doesn't have whitespace (#11880)
  • Allow cross-platform CAPI-compatible remote key exchange (#11185) (Thanks @silijon!)
  • Fix error message (#11862) (Thanks @NextTurn!)
  • Fix ConciseView to handle case where there isn't a console to obtain the width (#11784)
  • Update CmsCommands to use Store vs certificate provider (#11643) (Thanks @mikeTWC1984!)
  • Enable pwsh to work on Windows systems where mpr.dll and STA is not available (#11748)
  • Refactor and implement Restart-Computer for Un*x and macOS (#11319)
  • Add an implementation of Stop-Computer for Linux and macOS (#11151)
  • Fix help function to check if less is available before using (#11737)
  • Update PSPath in certificate_format_ps1.xml (#11603) (Thanks @xtqqczze!)
  • Change regular expression to match relation-types without quotes in Link header (#11711) (Thanks @Marusyk!)
  • Fix error message during symbolic link deletion (#11331)
  • Add custom Selected.* type to PSCustomObject in Select-Object only once (#11548) (Thanks @iSazonov!)
  • Add -AsUTC to the Get-Date cmdlet (#11611)
  • Fix grouping behavior with Boolean values in Format-Hex (#11587) (Thanks @vexx32!)
  • Make Test-Connection always use the default synchronization context for sending ping requests (#11517)
  • Correct startup error messages (#11473) (Thanks @iSazonov!)
  • Ignore headers with null values in web cmdlets (#11424) (Thanks @iSazonov!)
  • Re-add check for Invoke-Command job dispose. (#11388)
  • Revert "Update formatter to not write newlines if content is empty (#11193)" (#11342) (Thanks @iSazonov!)
  • Allow CompleteInput to return results from ArgumentCompleter when AST or Script has matching function definition (#10574) (Thanks @M1kep!)
  • Update formatter to not write new lines if content is empty (#11193)

Code Cleanup

  • Use span-based overloads (#11884) (Thanks @iSazonov!)
  • Use new string.Split() overloads (#11867) (Thanks @iSazonov!)
  • Remove unreachable DSC code (#12076) (Thanks @DamirAinullin!)
  • Remove old dead code from FullCLR (#11886) (Thanks @iSazonov!)
  • Use Dictionary.TryAdd() where possible (#11767) (Thanks @iSazonov!)
  • Use Environment.NewLine instead of hard-coded linefeed in ParseError.ToString (#11746)
  • Fix FileSystem provider error message (#11741) (Thanks @iSazonov!)
  • Reformat code according to EditorConfig rules (#11681) (Thanks @xtqqczze!)
  • Replace use of throw GetExceptionForHR with ThrowExceptionForHR (#11640) (Thanks @xtqqczze!)
  • Refactor delegate types to lambda expressions (#11690) (Thanks @xtqqczze!)
  • Remove Unicode BOM from text files (#11546) (Thanks @xtqqczze!)
  • Fix Typo in Get-ComputerInfo cmdlet description (#11321) (Thanks @doctordns!)
  • Fix typo in description for Get-ExperimentalFeature PSWindowsPowerShellCompatibility (#11282) (Thanks @alvarodelvalle!)
  • Cleanups in command discovery (#10815) (Thanks @iSazonov!)
  • Review CurrentCulture (#11044) (Thanks @iSazonov!)

Tools

  • Change recommended VS Code extension name from ms-vscode.csharp to ms-dotnettools.csharp (#12083) (Thanks @devlead!)
  • Specify csharp_preferred_modifier_order in EditorConfig (#11775) (Thanks @xtqqczze!)
  • Update .editorconfig (#11675) (Thanks @xtqqczze!)
  • Enable EditorConfig support in OmniSharp (#11627) (Thanks @xtqqczze!)
  • Specify charset in .editorconfig as utf-8 (no BOM) (#11654) (Thanks @xtqqczze!)
  • Configure the issue label bot (#11527)
  • Avoid variable names that conflict with automatic variables (#11392) (Thanks @xtqqczze!)

Tests

  • Add empty preview.md file to fix broken link (#12041)
  • Add helper functions for SSH remoting tests (#11955)
  • Add new tests for Get-ChildItem for FileSystemProvider (#11602) (Thanks @iSazonov!)
  • Ensure that types referenced by PowerShellStandard are present (#10634)
  • Check state and report reason if it's not "opened" (#11574)
  • Fixes for running tests on Raspbian (#11661)
  • Unify pester test syntax for the arguments of -BeOfType (#11558) (Thanks @xtqqczze!)
  • Correct casing for automatic variables (#11568) (Thanks @iSazonov!)
  • Avoid variable names that conflict with automatic variables part 2 (#11559) (Thanks @xtqqczze!)
  • Update pester syntax to v4 (#11544) (Thanks @xtqqczze!)
  • Allow error 504 (Gateway Timeout) in markdown-link tests (#11439) (Thanks @xtqqczze!)
  • Re-balance CI tests (#11420) (Thanks @iSazonov!)
  • Include URL in the markdown-links test error message (#11438) (Thanks @xtqqczze!)
  • Use CIM cmdlets instead of WMI cmdlets in tests (#11423) (Thanks @xtqqczze!)

Build and Packaging Improvements

  • Put symbols in separate package (#12169)
  • Disable x86 PDB generation (#12167)
  • Bump NJsonSchema from 10.1.5 to 10.1.11 (#12050) (#12088) (#12166)
  • Create crossgen symbols for Windows x64 and x86 (#12157)
  • Move to .NET 5 preview.1 (#12140)
  • Bump Microsoft.CodeAnalysis.CSharp from 3.4.0 to 3.5.0 (#12136)
  • Move to standard internal pool for building (#12119)
  • Fix package syncing to private Module Feed (#11841)
  • Add Ubuntu SSH remoting tests CI (#12033)
  • Bump Markdig.Signed from 0.18.1 to 0.18.3 (#12078)
  • Fix MSIX packaging to determine if a Preview release by inspecting the semantic version string (#11991)
  • Ignore last exit code in the build step as dotnet may return error when SDK is not installed (#11972)
  • Fix daily package build (#11882)
  • Fix package sorting for syncing to private Module Feed (#11838)
  • Set StrictMode version 3.0 (#11563) (Thanks @xtqqczze!)
  • Bump .devcontainer version to dotnet 3.1.101 (#11707) (Thanks @Jawz84!)
  • Move to version 3 of AzFileCopy (#11697)
  • Update README.md and metadata.json for next release (#11664)
  • Code Cleanup for environment data gathering in build.psm1 (#11572) (Thanks @xtqqczze!)
  • Update Debian Install Script To Support Debian 10 (#11540) (Thanks @RandomNoun7!)
  • Update ADOPTERS.md (#11261) (Thanks @edyoung!)
  • Change back to use powershell.exe in 'SetVersionVariables.yml' to unblock daily build (#11207)
  • Change to use pwsh to have consistent JSON conversion for DateTime (#11126)

Documentation and Help Content

  • Replace VSCode link in CONTRIBUTING.md (#11475) (Thanks @stevend811!)
  • Remove the version number of PowerShell from LICENSE (#12019)
  • Add the 7.0 change log link to CHANGELOG/README.md (#12062) (Thanks @LabhanshAgrawal!)
  • Improvements to the contribution guide (#12086) (Thanks @ShaydeNofziger!)
  • Update the doc about debugging dotnet core in VSCode (#11969)
  • Update README.md and metadata.json for the next release (#11918) (#11992)
  • Update Adopters.md to include info on Azure Pipelines and GitHub Actions (#11888) (Thanks @alepauly!)
  • Add information about how Amazon AWS uses PowerShell. (#11365) (Thanks @bpayette!)
  • Add link to .NET CLI version in build documentation (#11725) (Thanks @joeltankam!)
  • Added info about DeploymentScripts in ADOPTERS.md (#11703)
  • Update CHANGELOG.md for 6.2.4 release (#11699)
  • Update README.md and metadata.json for next release (#11597)
  • Update the breaking change definition (#11516)
  • Adding System Frontier to the PowerShell Core adopters list ADOPTERS.md (#11480) (Thanks @OneScripter!)
  • Update ChangeLog, README.md and metadata.json for 7.0.0-rc.1 release (#11363)
  • Add AzFunctions to ADOPTERS.md (#11311) (Thanks @Francisco-Gamino!)
  • Add Universal Dashboard to ADOPTERS.md (#11283) (Thanks @adamdriscoll!)
  • Add config.yml for ISSUE_TEMPLATE so that Doc, Security, Support, and Windows PowerShell issues go to URLs (#11153)
  • Add Adopters.md file (#11256)
  • Update Readme.md for preview.6 release (#11108)
  • Update SUPPORT.md (#11101) (Thanks @mklement0!)
  • Update README.md (#11100) (Thanks @mklement0!)