summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/whatsnew/3.8.rst9
-rw-r--r--Lib/venv/scripts/common/Activate.ps1 (renamed from Lib/venv/scripts/nt/Activate.ps1)7
-rw-r--r--Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst2
3 files changed, 16 insertions, 2 deletions
diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst
index 1c129a7..26928fb 100644
--- a/Doc/whatsnew/3.8.rst
+++ b/Doc/whatsnew/3.8.rst
@@ -136,6 +136,13 @@ pathlib
contain characters unrepresentable at the OS level.
(Contributed by Serhiy Storchaka in :issue:`33721`.)
+venv
+----
+
+* :mod:`venv` now includes an ``Activate.ps1`` script on all platforms for
+ activating virtual environments under PowerShell Core 6.1.
+ (Contributed by Brett Cannon in :issue:`32718`.)
+
Optimizations
=============
@@ -321,7 +328,7 @@ CPython bytecode changes
* The interpreter loop has been simplified by moving the logic of unrolling
the stack of blocks into the compiler. The compiler emits now explicit
- instructions for adjusting the stack of values and calling the cleaning
+ instructions for adjusting the stack of values and calling the cleaning-
up code for :keyword:`break`, :keyword:`continue` and :keyword:`return`.
Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`,
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
diff --git a/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst b/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst
new file mode 100644
index 0000000..b60106a
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst
@@ -0,0 +1,2 @@
+The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now
+available under all operating systems.