diff options
author | Brett Cannon <brettcannon@users.noreply.github.com> | 2018-09-21 22:27:26 (GMT) |
---|---|---|
committer | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2018-09-21 22:27:26 (GMT) |
commit | d64ee1a5ba2007ae5fe085dd3495013d940a51bb (patch) | |
tree | cb0a2cb25675bbc938ed79d91670e5b07ba34640 /Lib/venv/scripts | |
parent | db1a80e97aa7217c561fb3627f70be1882de9534 (diff) | |
download | cpython-d64ee1a5ba2007ae5fe085dd3495013d940a51bb.zip cpython-d64ee1a5ba2007ae5fe085dd3495013d940a51bb.tar.gz cpython-d64ee1a5ba2007ae5fe085dd3495013d940a51bb.tar.bz2 |
bpo-32718: Make Activate.ps1 for venv cross-platform and available on all platforms (GH-9321)
PowerShell Core 6.1 is the cross-platform port of Windows PowerShell. This change updates Activate.ps1 to not make Windows assumptions as well as installing it into the bin/Scripts directory on all operating systems.
Requires PowerShell Core 6.1 for proper readline support once the shell has been activated for the virtual environment.
Diffstat (limited to 'Lib/venv/scripts')
-rw-r--r-- | Lib/venv/scripts/common/Activate.ps1 (renamed from Lib/venv/scripts/nt/Activate.ps1) | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Lib/venv/scripts/nt/Activate.ps1 b/Lib/venv/scripts/common/Activate.ps1 index bf60869..de22962 100644 --- a/Lib/venv/scripts/nt/Activate.ps1 +++ b/Lib/venv/scripts/common/Activate.ps1 @@ -1,3 +1,8 @@ +function Script:add-bin([string]$envPath) { + $binPath = Join-Path -Path $env:VIRTUAL_ENV -ChildPath '__VENV_BIN_NAME__' + return ($binPath, $envPath) -join [IO.Path]::PathSeparator +} + function global:deactivate ([switch]$NonDestructive) { # Revert to original values if (Test-Path function:_OLD_VIRTUAL_PROMPT) { @@ -48,4 +53,4 @@ if (Test-Path env:PYTHONHOME) { # Add the venv to the PATH copy-item env:PATH env:_OLD_VIRTUAL_PATH -$env:PATH = "$env:VIRTUAL_ENV\__VENV_BIN_NAME__;$env:PATH" +$env:PATH = add-bin $env:PATH |