diff --git a/.spelling b/.spelling index 7af78c5bde..e134730864 100644 --- a/.spelling +++ b/.spelling @@ -1269,7 +1269,7 @@ package.json jcotton42 RPMs PSDesiredStateConfiguration - - CHANGELOG/preview.md + - CHANGELOG/7.2.md Gimly jborean93 mkswd @@ -1391,6 +1391,14 @@ tar.gz psoptions.json manifest.spdx.json vPack +kondratyev-nv +v7.2.0 +cgmanifest.json +pwsh.exe +6.0.100-rtm.21527.11 +6.0.100-rc.2.21505.57 +ThirdPartyNotices.txt +rtm.21527.11 - CHANGELOG/7.0.md codesign release-BuildJson diff --git a/CHANGELOG/7.2.md b/CHANGELOG/7.2.md new file mode 100644 index 0000000000..0a57084784 --- /dev/null +++ b/CHANGELOG/7.2.md @@ -0,0 +1,1122 @@ +# 7.2 Changelog + +## [7.2.0] - 2021-11-08 + +### General Cmdlet Updates and Fixes + +- Handle exception when trying to resolve a possible link path (#16310) + +### Tests + +- Fix global tool and SDK tests in release pipeline (#16342) + +### Build and Packaging Improvements + +
+ + + +

We thank the following contributors!

+

@kondratyev-nv

+ +
+ + + +
+ +[7.2.0]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-rc.1...v7.2.0 + +## [7.2.0-rc.1] - 2021-10-21 + +### General Cmdlet Updates and Fixes + +- Disallow COM calls for AppLocker system lockdown (#16268) +- Configure `Microsoft.ApplicationInsights` to not send cloud role name (#16246) +- Disallow `Add-Type` in NoLanguage mode on a locked down machine (#16245) +- Make property names for color VT100 sequences consistent with documentation (#16212) +- Make moving a directory into itself with `Move-Item` an error (#16198) +- Change `FileSystemInfo.Target` from a `CodeProperty` to an `AliasProperty` that points to `FileSystemInfo.LinkTarget` (#16165) + +### Tests + +- Removed deprecated docker-based tests for PowerShell release packages (#16224) + +### Build and Packaging Improvements + +
+ + +

Bump .NET SDK to 6.0.100-rc.2

+
+ + + +
+ +[7.2.0-rc.1]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.10...v7.2.0-rc.1 + +## [7.2.0-preview.10] - 2021-09-28 + +### Engine Updates and Fixes + +- Remove duplicate remote server mediator code (#16027) + +### General Cmdlet Updates and Fixes + +- Use `PlainText` when writing to a host that doesn't support VT (#16092) +- Remove support for `AppExecLinks` to retrieve target (#16044) +- Move `GetOuputString()` and `GetFormatStyleString()` to `PSHostUserInterface` as public API (#16075) +- Add `isOutputRedirected` parameter to `GetFormatStyleString()` method (#14397) +- Fix `ConvertTo-SecureString` with key regression due to .NET breaking change (#16068) +- Fix regression in `Move-Item` to only fallback to `CopyAndDelete` in specific cases (#16029) +- Set `$?` correctly for command expression with redirection (#16046) +- Use `CurrentCulture` when handling conversions to `DateTime` in `Add-History` (#16005) (Thanks @vexx32!) +- Fix `NullReferenceException` in `Format-Wide` (#15990) (Thanks @DarylGraves!) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze!

+ +
+ + + +
+ +### Tools + +- Fix typo in build.psm1 (#16038) (Thanks @eltociear!) +- Add `.stylecop` to `filetypexml` and format it (#16025) +- Enable sending Teams notification when workflow fails (#15982) + +### Tests + +- Enable two previously disabled `Get-Process` tests (#15845) (Thanks @iSazonov!) + +### Build and Packaging Improvements + +
+ + +Details + + + + +
+ +[7.2.0-preview.10]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.9...v7.2.0-preview.10 + +## [7.2.0-preview.9] - 2021-08-23 + +### Breaking Changes + +- Change the default value of `$PSStyle.OutputRendering` to `OutputRendering.Host` and remove `OutputRendering.Automatic` (#15882) +- Fix `CA1052` for public API to make classes static when they only have static methods (#15775) (Thanks @xtqqczze!) +- Update `pwsh.exe -File` to only accept `.ps1` script files on Windows (#15859) + +### Engine Updates and Fixes + +- Update .NET adapter to handle interface static members properly (#15908) +- Catch and handle unauthorized access exception when removing AppLocker test files (#15881) + +### General Cmdlet Updates and Fixes + +- Add `-PassThru` parameter to `Set-Clipboard` (#13713) (Thanks @ThomasNieto!) +- Add `-Encoding` parameter for `Tee-Object` (#12135) (Thanks @Peter-Schneider!) +- Update `ConvertTo-Csv` and `Export-Csv` to handle `IDictionary` objects (#11029) (Thanks @vexx32!) +- Update the parameters `-Exception` and `-ErrorRecord` for `Write-Error` to be position 0 (#13813) (Thanks @ThomasNieto!) +- Don't use `ArgumentList` when creating COM object with `New-Object` as it's not applicable to the COM parameter set (#15915) +- Fix `$PSStyle` list output to correctly show `TableHeader` (#15928) +- Remove the `PSImplicitRemotingBatching` experimental feature (#15863) +- Fix issue with `Get-Process -Module` failing to stop when it's piped to `Select-Object` (#15682) (Thanks @ArmaanMcleod!) +- Make the experimental features `PSUnixFileStat`, `PSCultureInvariantReplaceOperator`, `PSNotApplyErrorActionToStderr`, `PSAnsiRendering`, `PSAnsiProgressFeatureName` stable (#15864) +- Enhance `Remove-Item` to work with OneDrive (#15571) (Thanks @iSazonov!) +- Make global tool entrypoint class static (#15880) +- Update `ServerRemoteHost` version to be same as `PSVersion` (#15809) +- Make the initialization of `HttpKnownHeaderNames` thread safe (#15519) (Thanks @iSazonov!) +- `ConvertTo-Csv`: Quote fields with quotes and newlines when using `-UseQuotes AsNeeded` (#15765) (Thanks @lselden!) +- Forwarding progress stream changes from `Foreach-Object -Parallel` runspaces (#14271) (Thanks @powercode!) +- Add validation to `$PSStyle` to reject printable text when setting a property that only expects ANSI escape sequence (#15825) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze

+ +
+ + + +
+ +### Tools + +- Enable `/rebase` to automatically rebase a PR (#15808) +- Update `.editorconfig` to not replace tabs with spaces in `.tsv` files (#15815) (Thanks @SethFalco!) +- Update PowerShell team members in the change log generation script (#15817) + +### Tests + +- Add more tests to validate the current command error handling behaviors (#15919) +- Make `Measure-Object` property test independent of the file system (#15879) +- Add more information when a `syslog` parsing error occurs (#15857) +- Harden logic when looking for `syslog` entries to be sure that we select based on the process id (#15841) + +### Build and Packaging Improvements + +
+ + + +

We thank the following contributors!

+

@xtqqczze

+ +
+ + + +
+ +### Documentation and Help Content + +- Update `README` and `metadata files` for release `v7.2.0-preview.8` (#15819) +- Update change logs for 7.0.7 and 7.1.4 (#15921) +- Fix spelling in XML docs (#15939) (Thanks @slowy07!) +- Update PowerShell Committee members (#15837) + +[7.2.0-preview.9]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.8...v7.2.0-preview.9 + +## [7.2.0-preview.8] - 2021-07-22 + +### Engine Updates and Fixes + +- Add a Windows mode to `$PSNativeCommandArgumentPassing` that allows some commands to use legacy argument passing (#15408) +- Use `nameof` to get parameter names when creating `ArgumentNullException` (#15604) (Thanks @gukoff!) +- Test if a command is 'Out-Default' more thoroughly for transcribing scenarios (#15653) +- Add `Microsoft.PowerShell.Crescendo` to telemetry allow list (#15372) + +### General Cmdlet Updates and Fixes + +- Use `$PSStyle.Formatting.FormatAccent` for `Format-List` and `$PSStyle.Formatting.TableHeader` for `Format-Table` output (#14406) +- Highlight using error color the exception `Message` and underline in `PositionMessage` for `Get-Error` (#15786) +- Implement a completion for View parameter of format cmdlets (#14513) (Thanks @iSazonov!) +- Add support to colorize `FileInfo` file names (#14403) +- Don't serialize to JSON ETS properties for `DateTime` and `string` types (#15665) +- Fix `HyperVSocketEndPoint.ServiceId` setter (#15704) (Thanks @xtqqczze!) +- Add `DetailedView` to `$ErrorView` (#15609) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@iSazonov, @xtqqczze

+ +
+ + + +
+ +### Tools + +- Add `SkipRoslynAnalyzers` parameter to `Start-PSBuild` (#15640) (Thanks @xtqqczze!) +- Create issue template for issues updating PowerShell through Windows update. (#15700) +- Add `DocumentationAnalyzers` to build (#14336) (Thanks @xtqqczze!) +- Convert GitHub issue templates to modern forms (#15645) + +### Tests + +- Add more tests for `ConvertFrom-Json` (#15706) (Thanks @strawgate!) +- Update `glob-parent` and `hosted-git-info` test dependencies (#15643) + +### Build and Packaging Improvements + +
+ + +Update .NET to version v6.0.0-preview.6 + + + + +
+ +### Documentation and Help Content + +- Fix broken RFC links (#15807) +- Add to bug report template getting details from `Get-Error` (#15737) +- Update issue templates to link to new docs (#15711) +- Add @jborean93 to Remoting Working Group (#15683) + +[7.2.0-preview.8]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.7...v7.2.0-preview.8 + +## [7.2.0-preview.7] - 2021-06-17 + +### Breaking Changes + +- Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery (#15536) + +### Engine Updates and Fixes + +- Fix splatting being treated as positional parameter in completions (#14623) (Thanks @MartinGC94!) +- Prevent PowerShell from crashing when a telemetry mutex can't be created (#15574) (Thanks @gukoff!) +- Ignore all exceptions when disposing an instance of a subsystem implementation (#15511) +- Wait for SSH exit when closing remote connection (#14635) (Thanks @dinhngtu!) + +### Performance + +- Retrieve `ProductVersion` using informational version attribute in `AmsiUtils.Init()` (#15527) (Thanks @Fs00!) + +### General Cmdlet Updates and Fixes + +- Fix retrieving dynamic parameters from provider even if globbed path returns no results (#15525) +- Revert "Enhance Remove-Item to work with OneDrive (#15260)" due to long path issue (#15546) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@octos4murai, @iSazonov, @Fs00

+ +
+ + + +
+ +### Tests + +- Fix `Start-Benchmarking` to put `TargetPSVersion` and `TargetFramework` in separate parameter sets (#15508) +- Add `win-x86` test package to the build (#15517) + +### Build and Packaging Improvements + +
+ + + +

We thank the following contributors!

+

@schuelermine

+ +
+ + + +
+ +### Documentation and Help Content + +- Add new members to Engine and Cmdlet Working Groups document (#15560) +- Update the `mdspell` command to exclude the folder that should be ignored (#15576) +- Replace 'User Voice' with 'Feedback Hub' in `README.md` (#15557) +- Update Virtual User Group chat links (#15505) (Thanks @Jaykul!) +- Fix typo in `FileSystemProvider.cs` (#15445) (Thanks @eltociear!) +- Add `PipelineStoppedException` notes to PowerShell API (#15324) +- Updated governance on Working Groups (WGs) (#14603) +- Correct and improve XML documentation comments on `PSCommand` (#15568) (Thanks @octos4murai!) + +[7.2.0-preview.7]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.6...v7.2.0-preview.7 + +## [7.2.0-preview.6] - 2021-05-27 + +### Experimental Features + +- [Breaking Change] Update prediction interface to provide additional feedback to a predictor plugin (#15421) + +### Performance + +- Avoid collecting logs in buffer if a pipeline execution event is not going to be logged (#15350) +- Avoid allocation in `LanguagePrimitives.UpdateTypeConvertFromTypeTable` (#15168) (Thanks @xtqqczze!) +- Replace `Directory.GetDirectories` with `Directory.EnumerateDirectories` to avoid array allocations (#15167) (Thanks @xtqqczze!) +- Use `List.ConvertAll` instead of `LINQ` (#15140) (Thanks @xtqqczze!) + +### General Cmdlet Updates and Fixes + +- Use `AllocConsole` before initializing CLR to ensure codepage is correct for WinRM remoting (PowerShell/PowerShell-Native#70) (Thanks @jborean93!) +- Add completions for `#requires` statements (#14596) (Thanks @MartinGC94!) +- Add completions for comment-based help keywords (#15337) (Thanks @MartinGC94!) +- Move cross platform DSC code to a PowerShell engine subsystem (#15127) +- Fix `Minimal` progress view to handle activity that is longer than console width (#15264) +- Handle exception if ConsoleHost tries to set cursor out of bounds because screen buffer changed (#15380) +- Fix `NullReferenceException` in DSC `ClearCache()` (#15373) +- Update `ControlSequenceLength` to handle colon as a virtual terminal parameter separator (#14942) +- Update the summary comment for `StopTranscriptCmdlet.cs` (#15349) (Thanks @dbaileyut!) +- Remove the unusable alias `d` for the `-Directory` parameter from `Get-ChildItem` (#15171) (Thanks @kvprasoon!) +- Fix tab completion for un-localized `about` topics (#15265) (Thanks @MartinGC94!) +- Remove the unneeded SSH stdio handle workaround (#15308) +- Add `LoadAssemblyFromNativeMemory` API to load assemblies from memory in a native PowerShell host (#14652) (Thanks @awakecoding!) +- Re-implement `Remove-Item` OneDrive support (#15260) (Thanks @iSazonov!) +- Kill native processes in pipeline when pipeline is disposed on Unix (#15287) +- Default to MTA on Windows platforms where STA is not supported (#15106) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze, @powercode, @bcwood

+ +
+ + + +
+ +### Tools + +- Add `winget` release script (#15050) + +### Tests + +- Enable cross-runtime benchmarking to compare different .NET runtimes (#15387) (Thanks @adamsitnik!) +- Add the performance benchmark project for PowerShell performance testing (#15242) + +### Build and Packaging Improvements + +
+ + +Update .NET to version v6.0.0-preview.4 + + + + +
+ +### Documentation and Help Content + +- Add documentation comments section to coding guidelines (#14316) (Thanks @xtqqczze!) + +[7.2.0-preview.6]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.5...v7.2.0-preview.6 + +## [7.2.0-preview.5] - 2021-04-14 + +### Breaking Changes + +- Make PowerShell Linux deb and RPM packages universal (#15109) +- Enforce AppLocker Deny configuration before Execution Policy Bypass configuration (#15035) +- Disallow mixed dash and slash in command line parameter prefix (#15142) (Thanks @davidBar-On!) + +### Experimental Features + +- `PSNativeCommandArgumentPassing`: Use `ArgumentList` for native executable invocation (breaking change) (#14692) + +### Engine Updates and Fixes + +- Add `IArgumentCompleterFactory` for parameterized `ArgumentCompleters` (#12605) (Thanks @powercode!) + +### General Cmdlet Updates and Fixes + +- Fix SSH remoting connection never finishing with misconfigured endpoint (#15175) +- Respect `TERM` and `NO_COLOR` environment variables for `$PSStyle` rendering (#14969) +- Use `ProgressView.Classic` when Virtual Terminal is not supported (#15048) +- Fix `Get-Counter` issue with `-Computer` parameter (#15166) (Thanks @krishnayalavarthi!) +- Fix redundant iteration while splitting lines (#14851) (Thanks @hez2010!) +- Enhance `Remove-Item -Recurse` to work with OneDrive (#14902) (Thanks @iSazonov!) +- Change minimum depth to 0 for `ConvertTo-Json` (#14830) (Thanks @kvprasoon!) +- Allow `Set-Clipboard` to accept empty string (#14579) +- Turn on and off `DECCKM` to modify keyboard mode for Unix native commands to work correctly (#14943) +- Fall back to `CopyAndDelete()` when `MoveTo()` fails due to an `IOException` (#15077) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze, @iSazonov, @ZhiZe-ZG

+ +
+ + + +
+ +### Tools + +- Use Unix line endings for shell scripts (#15180) (Thanks @xtqqczze!) + +### Tests + +- Add the missing tag in Host Utilities tests (#14983) +- Update `copy-props` version in `package.json` (#15124) + +### Build and Packaging Improvements + +
+ + + +

We thank the following contributors!

+

@JustinGrote

+ +
+ + + +
+ +### Documentation and Help Content + +- Merge `7.2.0-preview.4` changes to master (#15056) +- Update `README` and `metadata.json` (#15046) +- Fix broken links for `dotnet` CLI (#14937) + +[7.2.0-preview.5]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.4...v7.2.0-preview.5 + +## [7.2.0-preview.4] - 2021-03-16 + +### Breaking Changes + +- Fix `Get-Date -UFormat` `%G` and `%g` behavior (#14555) (Thanks @brianary!) + +### Engine Updates and Fixes + +- Update engine script signature validation to match `Get-AuthenticodeSignature` logic (#14849) +- Avoid array allocations from `GetDirectories` and `GetFiles` (#14327) (Thanks @xtqqczze!) + +### General Cmdlet Updates and Fixes + +- Add `UseOSCIndicator` setting to enable progress indicator in terminal (#14927) +- Re-enable VT mode on Windows after running command in `ConsoleHost` (#14413) +- Fix `Move-Item` for `FileSystemProvider` to use copy-delete instead of move for DFS paths (#14913) +- Fix `PromptForCredential()` to add `targetName` as domain (#14504) +- Update `Concise` `ErrorView` to not show line information for errors from script module functions (#14912) +- Remove the 32,767 character limit on the environment block for `Start-Process` (#14111) (Thanks @hbuckle!) +- Don't write possible secrets to verbose stream for web cmdlets (#14788) + +### Tools + +- Update `dependabot` configuration to V2 format (#14882) +- Add tooling issue slots in PR template (#14697) + +### Tests + +- Move misplaced test file to tests directory (#14908) (Thanks @MarianoAlipi!) +- Refactor MSI CI (#14753) + +### Build and Packaging Improvements + +
+ + +Update .NET to version 6.0.100-preview.2.21155.3 + + + + +
+ +### Documentation and Help Content + +- Update `README.md` and `metadata.json` for upcoming releases (#14755) +- Merge 7.1.3 and 7.0.6 Change log to master (#15009) +- Update `README` and `metadata.json` for releases (#14997) +- Update ChangeLog for `v7.1.2` release (#14783) +- Update ChangeLog for `v7.0.5` release (#14782) (Internal 14479) + +[7.2.0-preview.4]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.3...v7.2.0-preview.4 + +## [7.2.0-preview.3] - 2021-02-11 + +### Breaking Changes + +- Fix `Get-Date -UFormat %u` behavior to comply with ISO 8601 (#14549) (Thanks @brianary!) + +### Engine Updates and Fixes + +- Together with `PSDesiredStateConfiguration` `v3` module allows `Get-DscResource`, `Invoke-DscResource` and DSC configuration compilation on all platforms, supported by PowerShell (using class-based DSC resources). + +### Performance + +- Avoid array allocations from `Directory.GetDirectories` and `Directory.GetFiles`. (#14326) (Thanks @xtqqczze!) +- Avoid `string.ToLowerInvariant()` from `GetEnvironmentVariableAsBool()` to avoid loading libicu at startup (#14323) (Thanks @iSazonov!) +- Get PowerShell version in `PSVersionInfo` using assembly attribute instead of `FileVersionInfo` (#14332) (Thanks @Fs00!) + +### General Cmdlet Updates and Fixes + +- Suppress `Write-Progress` in `ConsoleHost` if output is redirected and fix tests (#14716) +- Experimental feature `PSAnsiProgress`: Add minimal progress bar using ANSI rendering (#14414) +- Fix web cmdlets to properly construct URI from body when using `-NoProxy` (#14673) +- Update the `ICommandPredictor` to provide more feedback and also make feedback easier to be correlated (#14649) +- Reset color after writing `Verbose`, `Debug`, and `Warning` messages (#14698) +- Fix using variable for nested `ForEach-Object -Parallel` calls (#14548) +- When formatting, if collection is modified, don't fail the entire pipeline (#14438) +- Improve completion of parameters for attributes (#14525) (Thanks @MartinGC94!) +- Write proper error messages for `Get-Command ' '` (#13564) (Thanks @jakekerr!) +- Fix typo in the resource string `ProxyURINotSupplied` (#14526) (Thanks @romero126!) +- Add support to `$PSStyle` for strikethrough and hyperlinks (#14461) +- Fix `$PSStyle` blink codes (#14447) (Thanks @iSazonov!) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze, @powercode

+ +
+ + + +
+ +### Tools + +- Update script to use .NET 6 build resources (#14705) +- Fix the daily GitHub action (#14711) (Thanks @imba-tjd!) +- GitHub Actions: fix deprecated `::set-env` (#14629) (Thanks @imba-tjd!) +- Update markdown test tools (#14325) (Thanks @RDIL!) +- Upgrade `StyleCopAnalyzers` to `v1.2.0-beta.312` (#14354) (Thanks @xtqqczze!) + +### Tests + +- Remove packaging from daily Windows build (#14749) +- Update link to the Manning book (#14750) +- A separate Windows packaging CI (#14670) +- Update `ini` component version in test `package.json` (#14454) +- Disable `libmi` dependent tests for macOS. (#14446) + +### Build and Packaging Improvements + +
+ + + +
+ +### Documentation and Help Content + +- Update distribution support request template to point to .NET 5.0 support document (#14578) +- Remove security GitHub issue template (#14453) +- Add intent for using the Discussions feature in repo (#14399) +- Fix Universal Dashboard to refer to PowerShell Universal (#14437) +- Update document link because of HTTP 301 redirect (#14431) (Thanks @xtqqczze!) + +[7.2.0-preview.3]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.2...v7.2.0-preview.3 + +## [7.2.0-preview.2] - 2020-12-15 + +### Breaking Changes + +- Improve detection of mutable value types (#12495) (Thanks @vexx32!) +- Ensure `-PipelineVariable` is set for all output from script cmdlets (#12766) (Thanks @vexx32!) + +### Experimental Features + +- `PSAnsiRendering`: Enable ANSI formatting via `$PSStyle` and support suppressing ANSI output (#13758) + +### Performance + +- Optimize `IEnumerable` variant of replace operator (#14221) (Thanks @iSazonov!) +- Refactor multiply operation for better performance in two `Microsoft.PowerShell.Commands.Utility` methods (#14148) (Thanks @xtqqczze!) +- Use `Environment.TickCount64` instead of `Datetime.Now` as the random seed for AppLocker test file content (#14283) (Thanks @iSazonov!) +- Avoid unnecessary array allocations when searching in GAC (#14291) (Thanks @xtqqczze!) +- Use `OrdinalIgnoreCase` in `CommandLineParser` (#14303) (Thanks @iSazonov!) +- Use `StringComparison.Ordinal` instead of `StringComparison.CurrentCulture` (#14298) (Thanks @iSazonov!) +- Avoid creating instances of the generated delegate helper class in `-replace` implementation (#14128) + +### General Cmdlet Updates and Fixes + +- Write better error message if config file is broken (#13496) (Thanks @iSazonov!) +- Make AppLocker Enforce mode take precedence over UMCI Audit mode (#14353) +- Add `-SkipLimitCheck` switch to `Import-PowerShellDataFile` (#13672) +- Restrict `New-Object` in NoLanguage mode under lock down (#14140) (Thanks @krishnayalavarthi!) +- The `-Stream` parameter now works with directories (#13941) (Thanks @kyanha!) +- Avoid an exception if file system does not support reparse points (#13634) (Thanks @iSazonov!) +- Enable `CA1012`: Abstract types should not have public constructors (#13940) (Thanks @xtqqczze!) +- Enable `SA1212`: Property accessors should follow order (#14051) (Thanks @xtqqczze!) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze, @matthewjdegarmo, @powercode, @Gimly

+ +
+ + + +
+ +### Tools + +- Fixing formatting in `Reset-PWSHSystemPath.ps1` (#13689) (Thanks @dgoldman-msft!) + +### Tests + +- Reinstate `Test-Connection` tests (#13324) +- Update markdown test packages with security fixes (#14145) + +### Build and Packaging Improvements + +
+ + + +
+ +### Documentation and Help Content + +- Fix example `nuget.config` (#14349) +- Fix a broken link in Code Guidelines doc (#14314) (Thanks @iSazonov!) + +[7.2.0-preview.2]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.1...v7.2.0-preview.2 + +## [7.2.0-preview.1] - 2020-11-17 + +### Engine Updates and Fixes + +- Change the default fallback encoding for `GetEncoding` in `Start-Transcript` to be `UTF8` without a BOM (#13732) (Thanks @Gimly!) + +### General Cmdlet Updates and Fixes + +- Update `pwsh -?` output to match docs (#13748) +- Fix `NullReferenceException` in `Test-Json` (#12942) (Thanks @iSazonov!) +- Make `Dispose` in `TranscriptionOption` idempotent (#13839) (Thanks @krishnayalavarthi!) +- Add additional Microsoft PowerShell modules to the tracked modules list (#12183) +- Relax further `SSL` verification checks for `WSMan` on non-Windows hosts with verification available (#13786) (Thanks @jborean93!) +- Add the `OutputTypeAttribute` to `Get-ExperimentalFeature` (#13738) (Thanks @ThomasNieto!) +- Fix blocking wait when starting file associated with a Windows application (#13750) +- Emit warning if `ConvertTo-Json` exceeds `-Depth` value (#13692) + +### Code Cleanup + +
+ + + +

We thank the following contributors!

+

@xtqqczze, @mkswd, @ThomasNieto, @PatLeong, @paul-cheung, @georgettica

+ +
+ + + +
+ +### Tools + +- Enable `CodeQL` Security scanning (#13894) +- Add global `AnalyzerConfig` with default configuration (#13835) (Thanks @xtqqczze!) + +### Build and Packaging Improvements + +
+ + + +

We thank the following contributors!

+

@mkswd, @xtqqczze

+ +
+ + + +
+ +### Documentation and Help Content + +- Fix links to LTS versions for Windows (#14070) +- Fix `crontab` formatting in example doc (#13712) (Thanks @dgoldman-msft!) + +[7.2.0-preview.1]: https://github.com/PowerShell/PowerShell/compare/v7.1.0...v7.2.0-preview.1 diff --git a/CHANGELOG/preview.md b/CHANGELOG/preview.md index 9086cdd566..035db72138 100644 --- a/CHANGELOG/preview.md +++ b/CHANGELOG/preview.md @@ -1,1083 +1 @@ # Current preview release - -## [7.2.0-rc.1] - 2021-10-21 - -### General Cmdlet Updates and Fixes - -- Disallow COM calls for AppLocker system lockdown (#16268) -- Configure `Microsoft.ApplicationInsights` to not send cloud role name (#16246) -- Disallow `Add-Type` in NoLanguage mode on a locked down machine (#16245) -- Make property names for color VT100 sequences consistent with documentation (#16212) -- Make moving a directory into itself with `Move-Item` an error (#16198) -- Change `FileSystemInfo.Target` from a `CodeProperty` to an `AliasProperty` that points to `FileSystemInfo.LinkTarget` (#16165) - -### Tests - -- Removed deprecated docker-based tests for PowerShell release packages (#16224) - -### Build and Packaging Improvements - -
- - -

Bump .NET SDK to 6.0.100-rc.2

-
- - - -
- -[7.2.0-rc.1]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.10...v7.2.0-rc.1 - -## [7.2.0-preview.10] - 2021-09-28 - -### Engine Updates and Fixes - -- Remove duplicate remote server mediator code (#16027) - -### General Cmdlet Updates and Fixes - -- Use `PlainText` when writing to a host that doesn't support VT (#16092) -- Remove support for `AppExecLinks` to retrieve target (#16044) -- Move `GetOuputString()` and `GetFormatStyleString()` to `PSHostUserInterface` as public API (#16075) -- Add `isOutputRedirected` parameter to `GetFormatStyleString()` method (#14397) -- Fix `ConvertTo-SecureString` with key regression due to .NET breaking change (#16068) -- Fix regression in `Move-Item` to only fallback to `CopyAndDelete` in specific cases (#16029) -- Set `$?` correctly for command expression with redirection (#16046) -- Use `CurrentCulture` when handling conversions to `DateTime` in `Add-History` (#16005) (Thanks @vexx32!) -- Fix `NullReferenceException` in `Format-Wide` (#15990) (Thanks @DarylGraves!) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze!

- -
- - - -
- -### Tools - -- Fix typo in build.psm1 (#16038) (Thanks @eltociear!) -- Add `.stylecop` to `filetypexml` and format it (#16025) -- Enable sending Teams notification when workflow fails (#15982) - -### Tests - -- Enable two previously disabled `Get-Process` tests (#15845) (Thanks @iSazonov!) - -### Build and Packaging Improvements - -
- - -Details - - - - -
- -[7.2.0-preview.10]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.9...v7.2.0-preview.10 - -## [7.2.0-preview.9] - 2021-08-23 - -### Breaking Changes - -- Change the default value of `$PSStyle.OutputRendering` to `OutputRendering.Host` and remove `OutputRendering.Automatic` (#15882) -- Fix `CA1052` for public API to make classes static when they only have static methods (#15775) (Thanks @xtqqczze!) -- Update `pwsh.exe -File` to only accept `.ps1` script files on Windows (#15859) - -### Engine Updates and Fixes - -- Update .NET adapter to handle interface static members properly (#15908) -- Catch and handle unauthorized access exception when removing AppLocker test files (#15881) - -### General Cmdlet Updates and Fixes - -- Add `-PassThru` parameter to `Set-Clipboard` (#13713) (Thanks @ThomasNieto!) -- Add `-Encoding` parameter for `Tee-Object` (#12135) (Thanks @Peter-Schneider!) -- Update `ConvertTo-Csv` and `Export-Csv` to handle `IDictionary` objects (#11029) (Thanks @vexx32!) -- Update the parameters `-Exception` and `-ErrorRecord` for `Write-Error` to be position 0 (#13813) (Thanks @ThomasNieto!) -- Don't use `ArgumentList` when creating COM object with `New-Object` as it's not applicable to the COM parameter set (#15915) -- Fix `$PSStyle` list output to correctly show `TableHeader` (#15928) -- Remove the `PSImplicitRemotingBatching` experimental feature (#15863) -- Fix issue with `Get-Process -Module` failing to stop when it's piped to `Select-Object` (#15682) (Thanks @ArmaanMcleod!) -- Make the experimental features `PSUnixFileStat`, `PSCultureInvariantReplaceOperator`, `PSNotApplyErrorActionToStderr`, `PSAnsiRendering`, `PSAnsiProgressFeatureName` stable (#15864) -- Enhance `Remove-Item` to work with OneDrive (#15571) (Thanks @iSazonov!) -- Make global tool entrypoint class static (#15880) -- Update `ServerRemoteHost` version to be same as `PSVersion` (#15809) -- Make the initialization of `HttpKnownHeaderNames` thread safe (#15519) (Thanks @iSazonov!) -- `ConvertTo-Csv`: Quote fields with quotes and newlines when using `-UseQuotes AsNeeded` (#15765) (Thanks @lselden!) -- Forwarding progress stream changes from `Foreach-Object -Parallel` runspaces (#14271) (Thanks @powercode!) -- Add validation to `$PSStyle` to reject printable text when setting a property that only expects ANSI escape sequence (#15825) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze

- -
- - - -
- -### Tools - -- Enable `/rebase` to automatically rebase a PR (#15808) -- Update `.editorconfig` to not replace tabs with spaces in `.tsv` files (#15815) (Thanks @SethFalco!) -- Update PowerShell team members in the change log generation script (#15817) - -### Tests - -- Add more tests to validate the current command error handling behaviors (#15919) -- Make `Measure-Object` property test independent of the file system (#15879) -- Add more information when a `syslog` parsing error occurs (#15857) -- Harden logic when looking for `syslog` entries to be sure that we select based on the process id (#15841) - -### Build and Packaging Improvements - -
- - - -

We thank the following contributors!

-

@xtqqczze

- -
- - - -
- -### Documentation and Help Content - -- Update `README` and `metadata files` for release `v7.2.0-preview.8` (#15819) -- Update change logs for 7.0.7 and 7.1.4 (#15921) -- Fix spelling in XML docs (#15939) (Thanks @slowy07!) -- Update PowerShell Committee members (#15837) - -[7.2.0-preview.9]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.8...v7.2.0-preview.9 - -## [7.2.0-preview.8] - 2021-07-22 - -### Engine Updates and Fixes - -- Add a Windows mode to `$PSNativeCommandArgumentPassing` that allows some commands to use legacy argument passing (#15408) -- Use `nameof` to get parameter names when creating `ArgumentNullException` (#15604) (Thanks @gukoff!) -- Test if a command is 'Out-Default' more thoroughly for transcribing scenarios (#15653) -- Add `Microsoft.PowerShell.Crescendo` to telemetry allow list (#15372) - -### General Cmdlet Updates and Fixes - -- Use `$PSStyle.Formatting.FormatAccent` for `Format-List` and `$PSStyle.Formatting.TableHeader` for `Format-Table` output (#14406) -- Highlight using error color the exception `Message` and underline in `PositionMessage` for `Get-Error` (#15786) -- Implement a completion for View parameter of format cmdlets (#14513) (Thanks @iSazonov!) -- Add support to colorize `FileInfo` file names (#14403) -- Don't serialize to JSON ETS properties for `DateTime` and `string` types (#15665) -- Fix `HyperVSocketEndPoint.ServiceId` setter (#15704) (Thanks @xtqqczze!) -- Add `DetailedView` to `$ErrorView` (#15609) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@iSazonov, @xtqqczze

- -
- - - -
- -### Tools - -- Add `SkipRoslynAnalyzers` parameter to `Start-PSBuild` (#15640) (Thanks @xtqqczze!) -- Create issue template for issues updating PowerShell through Windows update. (#15700) -- Add `DocumentationAnalyzers` to build (#14336) (Thanks @xtqqczze!) -- Convert GitHub issue templates to modern forms (#15645) - -### Tests - -- Add more tests for `ConvertFrom-Json` (#15706) (Thanks @strawgate!) -- Update `glob-parent` and `hosted-git-info` test dependencies (#15643) - -### Build and Packaging Improvements - -
- - -Update .NET to version v6.0.0-preview.6 - - - - -
- -### Documentation and Help Content - -- Fix broken RFC links (#15807) -- Add to bug report template getting details from `Get-Error` (#15737) -- Update issue templates to link to new docs (#15711) -- Add @jborean93 to Remoting Working Group (#15683) - -[7.2.0-preview.8]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.7...v7.2.0-preview.8 - -## [7.2.0-preview.7] - 2021-06-17 - -### Breaking Changes - -- Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery (#15536) - -### Engine Updates and Fixes - -- Fix splatting being treated as positional parameter in completions (#14623) (Thanks @MartinGC94!) -- Prevent PowerShell from crashing when a telemetry mutex can't be created (#15574) (Thanks @gukoff!) -- Ignore all exceptions when disposing an instance of a subsystem implementation (#15511) -- Wait for SSH exit when closing remote connection (#14635) (Thanks @dinhngtu!) - -### Performance - -- Retrieve `ProductVersion` using informational version attribute in `AmsiUtils.Init()` (#15527) (Thanks @Fs00!) - -### General Cmdlet Updates and Fixes - -- Fix retrieving dynamic parameters from provider even if globbed path returns no results (#15525) -- Revert "Enhance Remove-Item to work with OneDrive (#15260)" due to long path issue (#15546) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@octos4murai, @iSazonov, @Fs00

- -
- - - -
- -### Tests - -- Fix `Start-Benchmarking` to put `TargetPSVersion` and `TargetFramework` in separate parameter sets (#15508) -- Add `win-x86` test package to the build (#15517) - -### Build and Packaging Improvements - -
- - - -

We thank the following contributors!

-

@schuelermine

- -
- - - -
- -### Documentation and Help Content - -- Add new members to Engine and Cmdlet Working Groups document (#15560) -- Update the `mdspell` command to exclude the folder that should be ignored (#15576) -- Replace 'User Voice' with 'Feedback Hub' in `README.md` (#15557) -- Update Virtual User Group chat links (#15505) (Thanks @Jaykul!) -- Fix typo in `FileSystemProvider.cs` (#15445) (Thanks @eltociear!) -- Add `PipelineStoppedException` notes to PowerShell API (#15324) -- Updated governance on Working Groups (WGs) (#14603) -- Correct and improve XML documentation comments on `PSCommand` (#15568) (Thanks @octos4murai!) - -[7.2.0-preview.7]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.6...v7.2.0-preview.7 - -## [7.2.0-preview.6] - 2021-05-27 - -### Experimental Features - -- [Breaking Change] Update prediction interface to provide additional feedback to a predictor plugin (#15421) - -### Performance - -- Avoid collecting logs in buffer if a pipeline execution event is not going to be logged (#15350) -- Avoid allocation in `LanguagePrimitives.UpdateTypeConvertFromTypeTable` (#15168) (Thanks @xtqqczze!) -- Replace `Directory.GetDirectories` with `Directory.EnumerateDirectories` to avoid array allocations (#15167) (Thanks @xtqqczze!) -- Use `List.ConvertAll` instead of `LINQ` (#15140) (Thanks @xtqqczze!) - -### General Cmdlet Updates and Fixes - -- Use `AllocConsole` before initializing CLR to ensure codepage is correct for WinRM remoting (PowerShell/PowerShell-Native#70) (Thanks @jborean93!) -- Add completions for `#requires` statements (#14596) (Thanks @MartinGC94!) -- Add completions for comment-based help keywords (#15337) (Thanks @MartinGC94!) -- Move cross platform DSC code to a PowerShell engine subsystem (#15127) -- Fix `Minimal` progress view to handle activity that is longer than console width (#15264) -- Handle exception if ConsoleHost tries to set cursor out of bounds because screen buffer changed (#15380) -- Fix `NullReferenceException` in DSC `ClearCache()` (#15373) -- Update `ControlSequenceLength` to handle colon as a virtual terminal parameter separator (#14942) -- Update the summary comment for `StopTranscriptCmdlet.cs` (#15349) (Thanks @dbaileyut!) -- Remove the unusable alias `d` for the `-Directory` parameter from `Get-ChildItem` (#15171) (Thanks @kvprasoon!) -- Fix tab completion for un-localized `about` topics (#15265) (Thanks @MartinGC94!) -- Remove the unneeded SSH stdio handle workaround (#15308) -- Add `LoadAssemblyFromNativeMemory` API to load assemblies from memory in a native PowerShell host (#14652) (Thanks @awakecoding!) -- Re-implement `Remove-Item` OneDrive support (#15260) (Thanks @iSazonov!) -- Kill native processes in pipeline when pipeline is disposed on Unix (#15287) -- Default to MTA on Windows platforms where STA is not supported (#15106) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze, @powercode, @bcwood

- -
- - - -
- -### Tools - -- Add `winget` release script (#15050) - -### Tests - -- Enable cross-runtime benchmarking to compare different .NET runtimes (#15387) (Thanks @adamsitnik!) -- Add the performance benchmark project for PowerShell performance testing (#15242) - -### Build and Packaging Improvements - -
- - -Update .NET to version v6.0.0-preview.4 - - - - -
- -### Documentation and Help Content - -- Add documentation comments section to coding guidelines (#14316) (Thanks @xtqqczze!) - -[7.2.0-preview.6]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.5...v7.2.0-preview.6 - -## [7.2.0-preview.5] - 2021-04-14 - -### Breaking Changes - -- Make PowerShell Linux deb and RPM packages universal (#15109) -- Enforce AppLocker Deny configuration before Execution Policy Bypass configuration (#15035) -- Disallow mixed dash and slash in command line parameter prefix (#15142) (Thanks @davidBar-On!) - -### Experimental Features - -- `PSNativeCommandArgumentPassing`: Use `ArgumentList` for native executable invocation (breaking change) (#14692) - -### Engine Updates and Fixes - -- Add `IArgumentCompleterFactory` for parameterized `ArgumentCompleters` (#12605) (Thanks @powercode!) - -### General Cmdlet Updates and Fixes - -- Fix SSH remoting connection never finishing with misconfigured endpoint (#15175) -- Respect `TERM` and `NO_COLOR` environment variables for `$PSStyle` rendering (#14969) -- Use `ProgressView.Classic` when Virtual Terminal is not supported (#15048) -- Fix `Get-Counter` issue with `-Computer` parameter (#15166) (Thanks @krishnayalavarthi!) -- Fix redundant iteration while splitting lines (#14851) (Thanks @hez2010!) -- Enhance `Remove-Item -Recurse` to work with OneDrive (#14902) (Thanks @iSazonov!) -- Change minimum depth to 0 for `ConvertTo-Json` (#14830) (Thanks @kvprasoon!) -- Allow `Set-Clipboard` to accept empty string (#14579) -- Turn on and off `DECCKM` to modify keyboard mode for Unix native commands to work correctly (#14943) -- Fall back to `CopyAndDelete()` when `MoveTo()` fails due to an `IOException` (#15077) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze, @iSazonov, @ZhiZe-ZG

- -
- - - -
- -### Tools - -- Use Unix line endings for shell scripts (#15180) (Thanks @xtqqczze!) - -### Tests - -- Add the missing tag in Host Utilities tests (#14983) -- Update `copy-props` version in `package.json` (#15124) - -### Build and Packaging Improvements - -
- - - -

We thank the following contributors!

-

@JustinGrote

- -
- - - -
- -### Documentation and Help Content - -- Merge `7.2.0-preview.4` changes to master (#15056) -- Update `README` and `metadata.json` (#15046) -- Fix broken links for `dotnet` CLI (#14937) - -[7.2.0-preview.5]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.4...v7.2.0-preview.5 - -## [7.2.0-preview.4] - 2021-03-16 - -### Breaking Changes - -- Fix `Get-Date -UFormat` `%G` and `%g` behavior (#14555) (Thanks @brianary!) - -### Engine Updates and Fixes - -- Update engine script signature validation to match `Get-AuthenticodeSignature` logic (#14849) -- Avoid array allocations from `GetDirectories` and `GetFiles` (#14327) (Thanks @xtqqczze!) - -### General Cmdlet Updates and Fixes - -- Add `UseOSCIndicator` setting to enable progress indicator in terminal (#14927) -- Re-enable VT mode on Windows after running command in `ConsoleHost` (#14413) -- Fix `Move-Item` for `FileSystemProvider` to use copy-delete instead of move for DFS paths (#14913) -- Fix `PromptForCredential()` to add `targetName` as domain (#14504) -- Update `Concise` `ErrorView` to not show line information for errors from script module functions (#14912) -- Remove the 32,767 character limit on the environment block for `Start-Process` (#14111) (Thanks @hbuckle!) -- Don't write possible secrets to verbose stream for web cmdlets (#14788) - -### Tools - -- Update `dependabot` configuration to V2 format (#14882) -- Add tooling issue slots in PR template (#14697) - -### Tests - -- Move misplaced test file to tests directory (#14908) (Thanks @MarianoAlipi!) -- Refactor MSI CI (#14753) - -### Build and Packaging Improvements - -
- - -Update .NET to version 6.0.100-preview.2.21155.3 - - - - -
- -### Documentation and Help Content - -- Update `README.md` and `metadata.json` for upcoming releases (#14755) -- Merge 7.1.3 and 7.0.6 Change log to master (#15009) -- Update `README` and `metadata.json` for releases (#14997) -- Update ChangeLog for `v7.1.2` release (#14783) -- Update ChangeLog for `v7.0.5` release (#14782) (Internal 14479) - -[7.2.0-preview.4]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.3...v7.2.0-preview.4 - -## [7.2.0-preview.3] - 2021-02-11 - -### Breaking Changes - -- Fix `Get-Date -UFormat %u` behavior to comply with ISO 8601 (#14549) (Thanks @brianary!) - -### Engine Updates and Fixes - -- Together with `PSDesiredStateConfiguration` `v3` module allows `Get-DscResource`, `Invoke-DscResource` and DSC configuration compilation on all platforms, supported by PowerShell (using class-based DSC resources). - -### Performance - -- Avoid array allocations from `Directory.GetDirectories` and `Directory.GetFiles`. (#14326) (Thanks @xtqqczze!) -- Avoid `string.ToLowerInvariant()` from `GetEnvironmentVariableAsBool()` to avoid loading libicu at startup (#14323) (Thanks @iSazonov!) -- Get PowerShell version in `PSVersionInfo` using assembly attribute instead of `FileVersionInfo` (#14332) (Thanks @Fs00!) - -### General Cmdlet Updates and Fixes - -- Suppress `Write-Progress` in `ConsoleHost` if output is redirected and fix tests (#14716) -- Experimental feature `PSAnsiProgress`: Add minimal progress bar using ANSI rendering (#14414) -- Fix web cmdlets to properly construct URI from body when using `-NoProxy` (#14673) -- Update the `ICommandPredictor` to provide more feedback and also make feedback easier to be correlated (#14649) -- Reset color after writing `Verbose`, `Debug`, and `Warning` messages (#14698) -- Fix using variable for nested `ForEach-Object -Parallel` calls (#14548) -- When formatting, if collection is modified, don't fail the entire pipeline (#14438) -- Improve completion of parameters for attributes (#14525) (Thanks @MartinGC94!) -- Write proper error messages for `Get-Command ' '` (#13564) (Thanks @jakekerr!) -- Fix typo in the resource string `ProxyURINotSupplied` (#14526) (Thanks @romero126!) -- Add support to `$PSStyle` for strikethrough and hyperlinks (#14461) -- Fix `$PSStyle` blink codes (#14447) (Thanks @iSazonov!) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze, @powercode

- -
- - - -
- -### Tools - -- Update script to use .NET 6 build resources (#14705) -- Fix the daily GitHub action (#14711) (Thanks @imba-tjd!) -- GitHub Actions: fix deprecated `::set-env` (#14629) (Thanks @imba-tjd!) -- Update markdown test tools (#14325) (Thanks @RDIL!) -- Upgrade `StyleCopAnalyzers` to `v1.2.0-beta.312` (#14354) (Thanks @xtqqczze!) - -### Tests - -- Remove packaging from daily Windows build (#14749) -- Update link to the Manning book (#14750) -- A separate Windows packaging CI (#14670) -- Update `ini` component version in test `package.json` (#14454) -- Disable `libmi` dependent tests for macOS. (#14446) - -### Build and Packaging Improvements - -
- - - -
- -### Documentation and Help Content - -- Update distribution support request template to point to .NET 5.0 support document (#14578) -- Remove security GitHub issue template (#14453) -- Add intent for using the Discussions feature in repo (#14399) -- Fix Universal Dashboard to refer to PowerShell Universal (#14437) -- Update document link because of HTTP 301 redirect (#14431) (Thanks @xtqqczze!) - -[7.2.0-preview.3]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.2...v7.2.0-preview.3 - -## [7.2.0-preview.2] - 2020-12-15 - -### Breaking Changes - -- Improve detection of mutable value types (#12495) (Thanks @vexx32!) -- Ensure `-PipelineVariable` is set for all output from script cmdlets (#12766) (Thanks @vexx32!) - -### Experimental Features - -- `PSAnsiRendering`: Enable ANSI formatting via `$PSStyle` and support suppressing ANSI output (#13758) - -### Performance - -- Optimize `IEnumerable` variant of replace operator (#14221) (Thanks @iSazonov!) -- Refactor multiply operation for better performance in two `Microsoft.PowerShell.Commands.Utility` methods (#14148) (Thanks @xtqqczze!) -- Use `Environment.TickCount64` instead of `Datetime.Now` as the random seed for AppLocker test file content (#14283) (Thanks @iSazonov!) -- Avoid unnecessary array allocations when searching in GAC (#14291) (Thanks @xtqqczze!) -- Use `OrdinalIgnoreCase` in `CommandLineParser` (#14303) (Thanks @iSazonov!) -- Use `StringComparison.Ordinal` instead of `StringComparison.CurrentCulture` (#14298) (Thanks @iSazonov!) -- Avoid creating instances of the generated delegate helper class in `-replace` implementation (#14128) - -### General Cmdlet Updates and Fixes - -- Write better error message if config file is broken (#13496) (Thanks @iSazonov!) -- Make AppLocker Enforce mode take precedence over UMCI Audit mode (#14353) -- Add `-SkipLimitCheck` switch to `Import-PowerShellDataFile` (#13672) -- Restrict `New-Object` in NoLanguage mode under lock down (#14140) (Thanks @krishnayalavarthi!) -- The `-Stream` parameter now works with directories (#13941) (Thanks @kyanha!) -- Avoid an exception if file system does not support reparse points (#13634) (Thanks @iSazonov!) -- Enable `CA1012`: Abstract types should not have public constructors (#13940) (Thanks @xtqqczze!) -- Enable `SA1212`: Property accessors should follow order (#14051) (Thanks @xtqqczze!) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze, @matthewjdegarmo, @powercode, @Gimly

- -
- - - -
- -### Tools - -- Fixing formatting in `Reset-PWSHSystemPath.ps1` (#13689) (Thanks @dgoldman-msft!) - -### Tests - -- Reinstate `Test-Connection` tests (#13324) -- Update markdown test packages with security fixes (#14145) - -### Build and Packaging Improvements - -
- - - -
- -### Documentation and Help Content - -- Fix example `nuget.config` (#14349) -- Fix a broken link in Code Guidelines doc (#14314) (Thanks @iSazonov!) - -[7.2.0-preview.2]: https://github.com/PowerShell/PowerShell/compare/v7.2.0-preview.1...v7.2.0-preview.2 - -## [7.2.0-preview.1] - 2020-11-17 - -### Engine Updates and Fixes - -- Change the default fallback encoding for `GetEncoding` in `Start-Transcript` to be `UTF8` without a BOM (#13732) (Thanks @Gimly!) - -### General Cmdlet Updates and Fixes - -- Update `pwsh -?` output to match docs (#13748) -- Fix `NullReferenceException` in `Test-Json` (#12942) (Thanks @iSazonov!) -- Make `Dispose` in `TranscriptionOption` idempotent (#13839) (Thanks @krishnayalavarthi!) -- Add additional Microsoft PowerShell modules to the tracked modules list (#12183) -- Relax further `SSL` verification checks for `WSMan` on non-Windows hosts with verification available (#13786) (Thanks @jborean93!) -- Add the `OutputTypeAttribute` to `Get-ExperimentalFeature` (#13738) (Thanks @ThomasNieto!) -- Fix blocking wait when starting file associated with a Windows application (#13750) -- Emit warning if `ConvertTo-Json` exceeds `-Depth` value (#13692) - -### Code Cleanup - -
- - - -

We thank the following contributors!

-

@xtqqczze, @mkswd, @ThomasNieto, @PatLeong, @paul-cheung, @georgettica

- -
- - - -
- -### Tools - -- Enable `CodeQL` Security scanning (#13894) -- Add global `AnalyzerConfig` with default configuration (#13835) (Thanks @xtqqczze!) - -### Build and Packaging Improvements - -
- - - -

We thank the following contributors!

-

@mkswd, @xtqqczze

- -
- - - -
- -### Documentation and Help Content - -- Fix links to LTS versions for Windows (#14070) -- Fix `crontab` formatting in example doc (#13712) (Thanks @dgoldman-msft!) - -[7.2.0-preview.1]: https://github.com/PowerShell/PowerShell/compare/v7.1.0...v7.2.0-preview.1