Closes #18479: Changed venv Activate.ps1 to make deactivate a function, and removed Deactivate.ps1.
This commit is contained in:
parent
ced1226cce
commit
9007dd7274
|
@ -1,25 +1,40 @@
|
||||||
|
function global:deactivate ([switch]$NonDestructive) {
|
||||||
|
# Revert to original values
|
||||||
|
if (Test-Path function:_OLD_VIRTUAL_PROMPT) {
|
||||||
|
copy-item function:_OLD_VIRTUAL_PROMPT function:prompt
|
||||||
|
remove-item function:_OLD_VIRTUAL_PROMPT
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Test-Path env:_OLD_VIRTUAL_PYTHONHOME) {
|
||||||
|
copy-item env:_OLD_VIRTUAL_PYTHONHOME env:PYTHONHOME
|
||||||
|
remove-item env:_OLD_VIRTUAL_PYTHONHOME
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Test-Path env:_OLD_VIRTUAL_PATH) {
|
||||||
|
copy-item env:_OLD_VIRTUAL_PATH env:PATH
|
||||||
|
remove-item env:_OLD_VIRTUAL_PATH
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Test-Path env:VIRTUAL_ENV) {
|
||||||
|
remove-item env:VIRTUAL_ENV
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$NonDestructive) {
|
||||||
|
# Self destruct!
|
||||||
|
remove-item function:deactivate
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
deactivate -nondestructive
|
||||||
|
|
||||||
$env:VIRTUAL_ENV="__VENV_DIR__"
|
$env:VIRTUAL_ENV="__VENV_DIR__"
|
||||||
|
|
||||||
# Revert to original values
|
|
||||||
if (Test-Path function:_OLD_VIRTUAL_PROMPT) {
|
|
||||||
copy-item function:_OLD_VIRTUAL_PROMPT function:prompt
|
|
||||||
remove-item function:_OLD_VIRTUAL_PROMPT
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Test-Path env:_OLD_VIRTUAL_PYTHONHOME) {
|
|
||||||
copy-item env:_OLD_VIRTUAL_PYTHONHOME env:PYTHONHOME
|
|
||||||
remove-item env:_OLD_VIRTUAL_PYTHONHOME
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Test-Path env:_OLD_VIRTUAL_PATH) {
|
|
||||||
copy-item env:_OLD_VIRTUAL_PATH env:PATH
|
|
||||||
remove-item env:_OLD_VIRTUAL_PATH
|
|
||||||
}
|
|
||||||
|
|
||||||
# Set the prompt to include the env name
|
# Set the prompt to include the env name
|
||||||
|
# Make sure _OLD_VIRTUAL_PROMPT is global
|
||||||
|
function global:_OLD_VIRTUAL_PROMPT {""}
|
||||||
copy-item function:prompt function:_OLD_VIRTUAL_PROMPT
|
copy-item function:prompt function:_OLD_VIRTUAL_PROMPT
|
||||||
function prompt {
|
function global:prompt {
|
||||||
Write-Host -NoNewline -ForegroundColor Green '[__VENV_NAME__]'
|
Write-Host -NoNewline -ForegroundColor Green '__VENV_NAME__'
|
||||||
_OLD_VIRTUAL_PROMPT
|
_OLD_VIRTUAL_PROMPT
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
# Revert to original values
|
|
||||||
if (Test-Path function:_OLD_VIRTUAL_PROMPT) {
|
|
||||||
copy-item function:_OLD_VIRTUAL_PROMPT function:prompt
|
|
||||||
remove-item function:_OLD_VIRTUAL_PROMPT
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Test-Path env:_OLD_VIRTUAL_PYTHONHOME) {
|
|
||||||
copy-item env:_OLD_VIRTUAL_PYTHONHOME env:PYTHONHOME
|
|
||||||
remove-item env:_OLD_VIRTUAL_PYTHONHOME
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Test-Path env:_OLD_VIRTUAL_PATH) {
|
|
||||||
copy-item env:_OLD_VIRTUAL_PATH env:PATH
|
|
||||||
remove-item env:_OLD_VIRTUAL_PATH
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Test-Path env:VIRTUAL_ENV) {
|
|
||||||
remove-item env:VIRTUAL_ENV
|
|
||||||
}
|
|
|
@ -159,6 +159,9 @@ Core and Builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #18479: Changed venv Activate.ps1 to make deactivate a function, and
|
||||||
|
removed Deactivate.ps1.
|
||||||
|
|
||||||
- Issue #18480: Add missing call to PyType_Ready to the _elementtree extension.
|
- Issue #18480: Add missing call to PyType_Ready to the _elementtree extension.
|
||||||
|
|
||||||
- Issue #17778: Fix test discovery for test_multiprocessing. (Patch by
|
- Issue #17778: Fix test discovery for test_multiprocessing. (Patch by
|
||||||
|
|
Loading…
Reference in New Issue