posh-git v1.0.0-beta4 Release Notes

Release Date: 2020-03-14 // 12 months ago
  • βž• Added

    • 🚚 Branch name completion to the new Remove-GitBranch command. (PR #678) (PR #705)
    • $global:GitPromptValues with the following properties to enable users to have access to the information necessary to display error status in their prompt as well as debug their prompt customizations:
      • DollarQuestion
      • IsAdmin
      • LastExitCode
      • LastPrompt (PR #684)
    • βž• Added tab-completion for new git restore and git switch commands. (#691) (PR #702) (PR #743) Thanks @pinkfloydx33 for the direction and motivation to add this.
    • βž• Added tab-completion for git merge --allow-unrelated-histories (#632) (PR #633)
    • 0️⃣ Abbreviate path from git root with new setting DefaultPromptAbbreviateGitDirectory (#719) (PR #720) (PR #729) Thanks Philippe Elsass (@elsassph)
    • Two new properties have been added to $global:GitTabSettings
      • EnableLogging - default is $false but when set to $true, tab expansion functions log to a file.
      • LogPath - the path to the log file that is appended to (created if necessary) when EnableLogging is $true.

    πŸ”„ Changed

    • Module parameter changed from a [switch] that forced the posh-git prompt to be used to a bools. The use of this parameters during import is now simplified to: Import-Module posh-git -Args 1.
    • 🏁 Shortened up the Windows title text to work better with Windows Terminal tabs. Now only displays '32-bit' in 32-bit PowerShell, otherwise assumption is you're running 64-bit. Also display only PowerShell major.minor version number. (PR #707)
    • Switched from overriding TabExpansion function to using Register-ArgumentCompleter for tab-completion on PowerShell >= 6.0. posh-git can be configured to use the old TabExpansion function on PowerShell >= 6.0 by importing the module using the following arguments: Import-Module posh-git -ArgumentList 0,1 before importing posh-git. (#609) (PR #711) Thanks Andrew Bradley (@cspotcode)
      • (#733) (PR #741)
      • Fix conflict with TabExpansionPlusPlus module's Register-ArgumentCompleter command. (#715) (PR #714) Thanks Kris Borowinski (@kborowinski)
    • ⚑️ Update Ubuntu build system from 14.04 to 16.04 (PR #677) Thanks @ExE-Boss
    • $GitPromptSettings.BeforeIndex is always displayed even if there is nothing in the index. The intent of this separator setting is to provide a separator between the branch name / branch status and the following section of index/working/summary/stash indicators. (PR #723)
    • posh-git no longers sets missing HOME environment variable. (#718) (PR #722)
    • Get-GitStatus -Force now also overrides $GitPromptSettings.EnableFileStatus as well as $GitPromptSettings.EnablePromptStatus. (#657) (PR #721)

    πŸ›  Fixed

    • βœ‚ Remove .exe suffix from PowerTab integration to enable PowerTab integration to work with git, git.cmd or git.exe (#606)
    • BranchBehindAndAheadDisplay minimal/compact bug (#670) (PR #671)
    • πŸ›  Fix(status): Only reset changed colors (PR #673) Thanks @ExE-Boss
    • πŸ›  Fix rebase step count (PR #674) Thanks SaΕ‘a KajfeΕ‘ (@skajfes)
    • πŸ›  Fix typo in cherry-pick parameters - Β΄continue (PR #675) Thanks @KexyBiscuit
    • Prompt error in remote PSSession (#708) (PR #727
    • ✏️ Typos

Previous changes from v1.0.0-beta3

  • βœ‚ Removed

    • πŸ’₯ BREAKING: Removed SSH agent functionality from posh-git and put into another module focused solely on Git SSH support. See posh-sshell. (#338) (PR #585)
    • πŸ’₯ BREAKING: Removed PoshGitTextSpan.CustomAnsi property - now just put your custom VT sequences in the PoshGitTextSpan.Text property. Be sure to terminate your VT sequences with "$([char]27)[0m" or "`e[0m" on PowerShell Core. (PR #616)

    βž• Added

    • βž• Added Remove-GitBranch command. Partially addresses #79. These commands currently only delete local branches. (#79) (PR #663)
    • βž• Added support for vsts-cli Git integration. (#549) (PR #581) Thanks David Gardiner (@flcdrg)
    • ✨ Enhance prompt function to show username/hostname in SSH connection. Adds Get-PromptConnectionInfo command. (#591) (PR #595)
    • βͺ Show Rebase Progress (plus |REVERTING). (#102) (PR #599)
    • Set $Env:COLUMNS on prompt if necessary. (PR #607)
    • 🌲 Tab-completion for git log --stat, git log --patch and git diff --staged. (PR #620) Thanks Vasily Korytov (@chillum)
    • ⚑️ Tab-completion for git update-git-for-windows on Windows Git >= 2.16.2. (PR #642)
    • New-GitPromptSettings to provide an easy way to create a PoshGitPromptSettings object which can be used to reset to the default settings. (PR #659)

    πŸ”„ Changed

    • Eliminate traiing = on the tab-completion of --force-with-lease=. (PR #622) Thanks Chuck Lu (@chucklu)
    • Expand PathStatusSeparator string when composing prompt. This allows you to use string interpolation in the $GitPromptSettings.PathStatusSeparator.Text setting. (PR #630) Thanks Jason Shirk (@lzybkr)

    πŸ›  Fixed

    • ⚑️ WindowTitle set by user overwritten by module. No longer updates Window title if WindowTitle setting set to $null. (#594) (PR #597)
    • Write-VcsStatus behaving differently. When AnsiConsole -eq $false, Write-VcsStatus must not emit any strings. (#612) (PR #617)
    • 🏁 On Windows PowerShell, defer Add-Type until Set-ConsoleMode executed. This improves module load time. (#637) (PR #638) (PR #662)
    • πŸ‘― How do you manually install this? Added manual instructions for git clone of posh-git to README.md. (#648) (PR #649) Thanks Kyle Spier-Swenson (@MrStonedOne)