summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorRui Xue <r-xue@users.noreply.github.com>2020-09-02 02:15:39 -0500
committerGitHub <noreply@github.com>2020-09-02 00:15:39 -0700
commitd9b945f663d815273590e21e1f4caed61fc11453 (patch)
treeaf7c645ac738f3f6c434e5a6db4a43590841e597 /.github
parent0740a4ac7e5dd0ba1256ab081f8529a4792a00de (diff)
downloadspack-d9b945f663d815273590e21e1f4caed61fc11453.tar.gz
spack-d9b945f663d815273590e21e1f4caed61fc11453.tar.bz2
spack-d9b945f663d815273590e21e1f4caed61fc11453.tar.xz
spack-d9b945f663d815273590e21e1f4caed61fc11453.zip
Mac OS: support Python >= 3.8 by using fork-based multiprocessing (#18124)
As detailed in https://bugs.python.org/issue33725, starting new processes with 'fork' on Mac OS is not guaranteed to work in general. As of Python 3.8 the default process spawning mechanism was changed to avoid this issue. Spack depends on the fork-based method to preserve file descriptors transparently, to preserve global state, and to avoid pickling some objects. An effort is underway to remove dependence on fork-based process spawning (see #18205). In the meantime, this allows Spack to run with Python 3.8 on Mac OS by explicitly choosing to use 'fork'. Co-authored-by: Peter Josef Scheibel <scheibel1@llnl.gov> Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/macos_python.yml8
-rw-r--r--.github/workflows/macos_unit_tests.yaml2
-rw-r--r--.github/workflows/style_and_docs.yaml2
3 files changed, 6 insertions, 6 deletions
diff --git a/.github/workflows/macos_python.yml b/.github/workflows/macos_python.yml
index feb9dcef04..856d850cc8 100644
--- a/.github/workflows/macos_python.yml
+++ b/.github/workflows/macos_python.yml
@@ -27,7 +27,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: spack install
run: |
. .github/workflows/install_spack.sh
@@ -42,7 +42,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: spack install
run: |
. .github/workflows/install_spack.sh
@@ -56,7 +56,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: spack install
run: |
. .github/workflows/install_spack.sh
@@ -71,7 +71,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: spack install
run: |
. .github/workflows/install_spack.sh
diff --git a/.github/workflows/macos_unit_tests.yaml b/.github/workflows/macos_unit_tests.yaml
index 1e60f76918..24affa8327 100644
--- a/.github/workflows/macos_unit_tests.yaml
+++ b/.github/workflows/macos_unit_tests.yaml
@@ -18,7 +18,7 @@ jobs:
fetch-depth: 0
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: Install Python packages
run: |
pip install --upgrade pip six setuptools
diff --git a/.github/workflows/style_and_docs.yaml b/.github/workflows/style_and_docs.yaml
index 2277d5598f..84eb0efeab 100644
--- a/.github/workflows/style_and_docs.yaml
+++ b/.github/workflows/style_and_docs.yaml
@@ -16,7 +16,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
- python-version: 3.7
+ python-version: 3.8
- name: Install Python Packages
run: |
pip install --upgrade pip