Repository: pantsbuild/pants

Issue:
Trying to run pants 1.29.0 on Mac OS X Big Sur
I'm on Mac OSX 11.0.1 using Python 3.8.2. I don't know how to solve this error:

```
./pants --version
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   122  100   122    0     0    734      0 --:--:-- --:--:-- --:--:--   734
100   281  100   281    0     0    699      0 --:--:-- --:--:-- --:--:--   699
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 3626k  100 3626k    0     0  4074k      0 --:--:-- --:--:-- --:--:-- 10.4M
Using base prefix '/usr/local/Cellar/python@3.8/3.8.6_2/Frameworks/Python.framework/Versions/3.8'
New python executable in /Users/alfredo/.cache/pants/setup/bootstrap-Darwin-x86_64/pants.0eTYlW/install/bin/python3.8
Also creating executable in /Users/alfredo/.cache/pants/setup/bootstrap-Darwin-x86_64/pants.0eTYlW/install/bin/python
Installing setuptools, pip, wheel...
done.
Collecting pip
  Using cached https://files.pythonhosted.org/packages/ab/11/2dc62c5263d9eb322f2f028f7b56cd9d096bb8988fcf82d65fa2e4057afe/pip-20.3.1-py2.py3-none-any.whl
Installing collected packages: pip
  Found existing installation: pip 19.0.3
    Uninstalling pip-19.0.3:
      Successfully uninstalled pip-19.0.3
Successfully installed pip-20.3.1
Collecting pantsbuild.pants==1.29.0
  Using cached pantsbuild.pants-1.29.0-cp38-cp38-macosx_10_11_x86_64.whl (8.2 MB)
Collecting ansicolors==1.1.8
  Using cached ansicolors-1.1.8-py2.py3-none-any.whl (13 kB)
Collecting cffi==1.14.0
  Using cached cffi-1.14.0-cp38-cp38-macosx_10_9_x86_64.whl (175 kB)
Collecting dataclasses==0.6
  Using cached dataclasses-0.6-py3-none-any.whl (14 kB)
Collecting docutils<0.17,>=0.15
  Using cached docutils-0.16-py2.py3-none-any.whl (548 kB)
Collecting fasteners==0.15.0
  Using cached fasteners-0.15-py2.py3-none-any.whl (23 kB)
Collecting Markdown==2.1.1
  Using cached Markdown-2.1.1-py3-none-any.whl
Collecting monotonic>=0.1
  Using cached monotonic-1.5-py2.py3-none-any.whl (5.3 kB)
Collecting packaging==20.3
  Using cached packaging-20.3-py2.py3-none-any.whl (37 kB)
Collecting pathspec==0.8.0
  Using cached pathspec-0.8.0-py2.py3-none-any.whl (28 kB)
Collecting pex==2.1.11
  Using cached pex-2.1.11-py2.py3-none-any.whl (2.3 MB)
Collecting psutil==5.7.0
  Using cached psutil-5.7.0-cp38-cp38-macosx_11_0_x86_64.whl
Collecting py-zipkin==0.20.0
  Using cached py_zipkin-0.20.0-py2.py3-none-any.whl (52 kB)
Collecting pycparser
  Using cached pycparser-2.20-py2.py3-none-any.whl (112 kB)
Collecting Pygments==2.6.1
  Using cached Pygments-2.6.1-py3-none-any.whl (914 kB)
Collecting pyopenssl==19.1.0
  Using cached pyOpenSSL-19.1.0-py2.py3-none-any.whl (53 kB)
Collecting cryptography>=2.8
  Using cached cryptography-3.3.1-cp36-abi3-macosx_10_10_x86_64.whl (1.8 MB)
Collecting pyparsing>=2.0.2
  Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
Collecting pystache==0.5.3
  Using cached pystache-0.5.3-py3-none-any.whl
Collecting python-Levenshtein==0.12.0
  Using cached python_Levenshtein-0.12.0-cp38-cp38-macosx_11_0_x86_64.whl
Collecting pywatchman==1.4.1
  Using cached pywatchman-1.4.1-cp38-cp38-macosx_11_0_x86_64.whl
Collecting PyYAML<5.4,>=5.3.1
  Using cached PyYAML-5.3.1-cp38-cp38-macosx_11_0_x86_64.whl
Collecting requests[security]>=2.20.1
  Using cached requests-2.25.0-py2.py3-none-any.whl (61 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
Collecting chardet<4,>=3.0.2
  Using cached chardet-3.0.4-py2.py3-none-any.whl (133 kB)
Collecting idna<3,>=2.5
  Using cached idna-2.10-py2.py3-none-any.whl (58 kB)
Collecting setproctitle==1.1.10
  Using cached setproctitle-1.1.10-cp38-cp38-macosx_11_0_x86_64.whl
Collecting setuptools==44.0.0
  Using cached setuptools-44.0.0-py2.py3-none-any.whl (583 kB)
Collecting six
  Using cached six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting thriftpy2>=0.4.0
  Using cached thriftpy2-0.4.12-cp38-cp38-macosx_11_0_x86_64.whl
Collecting ply<4.0,>=3.4
  Using cached ply-3.11-py2.py3-none-any.whl (49 kB)
Collecting toml==0.10.1
  Using cached toml-0.10.1-py2.py3-none-any.whl (19 kB)
Collecting twitter.common.confluence<0.4,>=0.3.11
  Using cached twitter.common.confluence-0.3.11-py3-none-any.whl
Collecting twitter.common.dirutil<0.4,>=0.3.11
  Using cached twitter.common.dirutil-0.3.11-py3-none-any.whl
Collecting twitter.common.lang==0.3.11
  Using cached twitter.common.lang-0.3.11-py3-none-any.whl
Collecting twitter.common.log==0.3.11
  Using cached twitter.common.log-0.3.11-py3-none-any.whl
Collecting twitter.common.options==0.3.11
  Using cached twitter.common.options-0.3.11-py3-none-any.whl
Collecting typing-extensions==3.7.4
  Using cached typing_extensions-3.7.4-py3-none-any.whl (20 kB)
Collecting urllib3<1.27,>=1.21.1
  Using cached urllib3-1.26.2-py2.py3-none-any.whl (136 kB)
Collecting www-authenticate==0.9.2
  Using cached www_authenticate-0.9.2-py3-none-any.whl
Installing collected packages: pycparser, twitter.common.lang, six, cffi, urllib3, twitter.common.options, twitter.common.dirutil, ply, idna, cryptography, chardet, certifi, twitter.common.log, thriftpy2, setuptools, requests, pyparsing, pyopenssl, monotonic, www-authenticate, typing-extensions, twitter.common.confluence, toml, setproctitle, PyYAML, pywatchman, python-Levenshtein, pystache, Pygments, py-zipkin, psutil, pex, pathspec, packaging, Markdown, fasteners, docutils, dataclasses, ansicolors, pantsbuild.pants
  Attempting uninstall: setuptools
    Found existing installation: setuptools 40.8.0
    Uninstalling setuptools-40.8.0:
      Successfully uninstalled setuptools-40.8.0
Successfully installed Markdown-2.1.1 PyYAML-5.3.1 Pygments-2.6.1 ansicolors-1.1.8 certifi-2020.12.5 cffi-1.14.0 chardet-3.0.4 cryptography-3.3.1 dataclasses-0.6 docutils-0.16 fasteners-0.15 idna-2.10 monotonic-1.5 packaging-20.3 pantsbuild.pants-1.29.0 pathspec-0.8.0 pex-2.1.11 ply-3.11 psutil-5.7.0 py-zipkin-0.20.0 pycparser-2.20 pyopenssl-19.1.0 pyparsing-2.4.7 pystache-0.5.3 python-Levenshtein-0.12.0 pywatchman-1.4.1 requests-2.25.0 setproctitle-1.1.10 setuptools-44.0.0 six-1.15.0 thriftpy2-0.4.12 toml-0.10.1 twitter.common.confluence-0.3.11 twitter.common.dirutil-0.3.11 twitter.common.lang-0.3.11 twitter.common.log-0.3.11 twitter.common.options-0.3.11 typing-extensions-3.7.4 urllib3-1.26.2 www-authenticate-0.9.2
New virtual environment successfully created at /Users/alfredo/.cache/pants/setup/bootstrap-Darwin-x86_64/1.29.0_py38.
08:11:25:960 [INFO] Resolving new plugins...:
  pantsbuild.pants.contrib.node==1.29.0
  pantsbuild.pants.contrib.scrooge==1.29.0
ERROR: Could not find a version that satisfies the requirement pantsbuild.pants==1.29.0 (from pantsbuild.pants.contrib.node==1.29.0) (from versions: 0.0.17, 0.0.18, 0.0.20, 0.0.21, 0.0.22, 0.0.23, 0.0.24, 0.0.25, 0.0.26, 0.0.27, 0.0.28, 0.0.29, 0.0.30, 0.0.31, 0.0.32, 0.0.33, 0.0.34, 0.0.35, 0.0.36, 0.0.37, 0.0.38, 0.0.39, 0.0.40, 0.0.41, 0.0.42, 0.0.43, 0.0.44, 0.0.45, 0.0.46, 0.0.47, 0.0.48, 0.0.49, 0.0.50, 0.0.51, 0.0.52, 0.0.53, 0.0.54, 0.0.55, 0.0.56, 0.0.57, 0.0.58, 0.0.59, 0.0.60, 0.0.61, 0.0.62, 0.0.63, 0.0.64, 0.0.65, 0.0.66, 0.0.67, 0.0.68, 0.0.69, 0.0.70, 0.0.71, 0.0.72, 0.0.73, 0.0.74, 0.0.75, 0.0.76, 0.0.77, 0.0.79, 0.0.80, 0.0.81, 0.0.82, 1.0.0rc1, 1.0.0rc2, 1.0.0rc3, 1.0.0, 1.0.1rc0, 1.0.1, 1.1.0rc0, 1.1.0rc1, 1.1.0rc2, 1.1.0rc3, 1.1.0rc4, 1.1.0rc5, 1.1.0rc6, 1.1.0rc7, 1.1.0rc8, 1.1.0rc9, 1.1.0, 1.2.0.dev0, 1.2.0.dev1, 1.2.0.dev2, 1.2.0.dev3, 1.2.0.dev4, 1.2.0.dev5, 1.2.0.dev6, 1.2.0.dev8, 1.2.0.dev9, 1.2.0.dev10, 1.2.0.dev11, 1.2.0.dev12, 1.2.0rc0, 1.2.0rc1, 1.2.0rc2, 1.2.0rc3, 1.2.0rc4, 1.2.0, 1.2.1rc0, 1.2.1, 1.3.0.dev0, 1.3.0.dev1, 1.3.0.dev2, 1.3.0.dev3, 1.3.0.dev4, 1.3.0.dev5, 1.3.0.dev6, 1.3.0.dev7, 1.3.0.dev8, 1.3.0.dev9, 1.3.0.dev10, 1.3.0.dev11, 1.3.0.dev12, 1.3.0.dev13, 1.3.0.dev14, 1.3.0.dev15, 1.3.0.dev16, 1.3.0.dev17, 1.3.0.dev18, 1.3.0.dev19, 1.3.0rc0, 1.3.0rc1, 1.3.0rc2, 1.3.0rc3, 1.3.0rc4, 1.3.0, 1.3.1rc0, 1.3.1rc1, 1.3.1rc2, 1.4.0.dev0, 1.4.0.dev1, 1.4.0.dev3, 1.4.0.dev4, 1.4.0.dev5, 1.4.0.dev6, 1.4.0.dev7, 1.4.0.dev8, 1.4.0.dev9, 1.4.0.dev10, 1.4.0.dev11, 1.4.0.dev13, 1.4.0.dev14, 1.4.0.dev15, 1.4.0.dev16, 1.4.0.dev17, 1.4.0.dev18, 1.4.0.dev19, 1.4.0.dev20, 1.4.0.dev22, 1.4.0.dev23, 1.4.0.dev24, 1.4.0.dev25, 1.4.0.dev26, 1.4.0.dev27, 1.4.0rc0, 1.4.0rc1, 1.4.0rc2, 1.4.0rc3, 1.4.0rc4, 1.4.0rc5, 1.4.0, 1.5.0.dev0, 1.5.0.dev1, 1.5.0.dev2, 1.5.0.dev3, 1.5.0.dev4, 1.5.0.dev5, 1.5.0rc0, 1.5.0rc1, 1.5.0, 1.5.1rc0, 1.5.1rc1, 1.5.1rc2, 1.6.0.dev0, 1.6.0.dev1, 1.6.0.dev2, 1.6.0rc0, 1.6.0rc1, 1.6.0rc2, 1.6.0rc3, 1.6.0, 1.7.0.dev0, 1.7.0.dev1, 1.7.0.dev2, 1.7.0rc0, 1.7.0rc1, 1.7.0, 1.8.0.dev0, 1.8.0.dev1, 1.8.0.dev2)
ERROR: No matching distribution found for pantsbuild.pants==1.29.0 (from pantsbuild.pants.contrib.node==1.29.0)
08:11:27:331 [ERROR] pid: 31813 -> /Users/alfredo/.cache/pants/setup/bootstrap-Darwin-x86_64/pants.0eTYlW/install/bin/python3.8 /Users/alfredo/.pex/pip.pex/240b20f98d345b70b316f7e734d4cea20bde73b6 --disable-pip-version-check --isolated --no-python-version-warning -q --cache-dir /Users/alfredo/.cache/pants/plugins download --dest /var/folders/71/c95f05zn04vdb1vv2y2dhr740000gn/T/tmppakh4hjm/cp38-cp38 --index-url https://pypi.org/simple/ --header Cache-Control:max-age=3600 --retries 5 --timeout 15 pantsbuild.pants.contrib.node==1.29.0 pantsbuild.pants.contrib.scrooge==1.29.0 raised Executing /Users/alfredo/.cache/pants/setup/bootstrap-Darwin-x86_64/pants.0eTYlW/install/bin/python3.8 /Users/alfredo/.pex/pip.pex/240b20f98d345b70b316f7e734d4cea20bde73b6 --disable-pip-version-check --isolated --no-python-version-warning -q --cache-dir /Users/alfredo/.cache/pants/plugins download --dest /var/folders/71/c95f05zn04vdb1vv2y2dhr740000gn/T/tmppakh4hjm/cp38-cp38 --index-url https://pypi.org/simple/ --header Cache-Control:max-age=3600 --retries 5 --timeout 15 pantsbuild.pants.contrib.node==1.29.0 pantsbuild.pants.contrib.scrooge==1.29.0 failed with 1
```

### Using `pip` I can install pants 1.29.0 without any issue

```
pip3 --version
pip 20.3.1 from /Users/alfredo/Library/Python/3.8/lib/python/site-packages/pip (python 3.8)
```

```
pip3 install pantsbuild.pants==1.29.0
Requirement already satisfied: pantsbuild.pants==1.29.0 in /usr/local/lib/python3.8/site-packages (1.29.0)
Requirement already satisfied: pywatchman==1.4.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (1.4.1)
Requirement already satisfied: cffi==1.14.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (1.14.0)
Requirement already satisfied: pathspec==0.8.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.8.0)
Requirement already satisfied: toml==0.10.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.10.1)
Requirement already satisfied: twitter.common.confluence<0.4,>=0.3.11 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.3.11)
Requirement already satisfied: packaging==20.3 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (20.3)
Requirement already satisfied: www-authenticate==0.9.2 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.9.2)
Requirement already satisfied: Pygments==2.6.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (2.6.1)
Requirement already satisfied: twitter.common.dirutil<0.4,>=0.3.11 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.3.11)
Requirement already satisfied: docutils<0.17,>=0.15 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.16)
Requirement already satisfied: pystache==0.5.3 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.5.3)
Requirement already satisfied: PyYAML<5.4,>=5.3.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (5.3.1)
Requirement already satisfied: psutil==5.7.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (5.7.0)
Requirement already satisfied: dataclasses==0.6 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.6)
Requirement already satisfied: Markdown==2.1.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (2.1.1)
Requirement already satisfied: typing-extensions==3.7.4 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (3.7.4)
Requirement already satisfied: requests[security]>=2.20.1 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (2.25.0)
Requirement already satisfied: ansicolors==1.1.8 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (1.1.8)
Requirement already satisfied: py-zipkin==0.20.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.20.0)
Requirement already satisfied: python-Levenshtein==0.12.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.12.0)
Requirement already satisfied: setproctitle==1.1.10 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (1.1.10)
Requirement already satisfied: fasteners==0.15.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.15)
Requirement already satisfied: pyopenssl==19.1.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (19.1.0)
Requirement already satisfied: pycparser in /usr/local/lib/python3.8/site-packages (from cffi==1.14.0->pantsbuild.pants==1.29.0) (2.20)
Requirement already satisfied: monotonic>=0.1 in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.5)
Requirement already satisfied: six in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.15.0)
Requirement already satisfied: six in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.15.0)
Requirement already satisfied: pyparsing>=2.0.2 in /usr/local/lib/python3.8/site-packages (from packaging==20.3->pantsbuild.pants==1.29.0) (2.4.7)
Collecting pex==2.1.11
  Using cached pex-2.1.11-py2.py3-none-any.whl (2.3 MB)
Requirement already satisfied: thriftpy2>=0.4.0 in /usr/local/lib/python3.8/site-packages (from py-zipkin==0.20.0->pantsbuild.pants==1.29.0) (0.4.12)
Requirement already satisfied: six in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.15.0)
Requirement already satisfied: six in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.15.0)
Requirement already satisfied: cryptography>=2.8 in /usr/local/lib/python3.8/site-packages (from pyopenssl==19.1.0->pantsbuild.pants==1.29.0) (3.3.1)
Requirement already satisfied: six in /usr/local/lib/python3.8/site-packages (from fasteners==0.15.0->pantsbuild.pants==1.29.0) (1.15.0)
Requirement already satisfied: cffi==1.14.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (1.14.0)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (2020.12.5)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (1.26.2)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (2.10)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (3.0.4)
Requirement already satisfied: pyopenssl==19.1.0 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (19.1.0)
Requirement already satisfied: cryptography>=2.8 in /usr/local/lib/python3.8/site-packages (from pyopenssl==19.1.0->pantsbuild.pants==1.29.0) (3.3.1)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (2020.12.5)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (1.26.2)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (2.10)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.8/site-packages (from requests[security]>=2.20.1->pantsbuild.pants==1.29.0) (3.0.4)
Collecting setuptools==44.0.0
  Using cached setuptools-44.0.0-py2.py3-none-any.whl (583 kB)
Requirement already satisfied: ply<4.0,>=3.4 in /usr/local/lib/python3.8/site-packages (from thriftpy2>=0.4.0->py-zipkin==0.20.0->pantsbuild.pants==1.29.0) (3.11)
Requirement already satisfied: twitter.common.log==0.3.11 in /usr/local/lib/python3.8/site-packages (from twitter.common.confluence<0.4,>=0.3.11->pantsbuild.pants==1.29.0) (0.3.11)
Requirement already satisfied: twitter.common.lang==0.3.11 in /usr/local/lib/python3.8/site-packages (from twitter.common.dirutil<0.4,>=0.3.11->pantsbuild.pants==1.29.0) (0.3.11)
Requirement already satisfied: twitter.common.options==0.3.11 in /usr/local/lib/python3.8/site-packages (from twitter.common.log==0.3.11->twitter.common.confluence<0.4,>=0.3.11->pantsbuild.pants==1.29.0) (0.3.11)
Requirement already satisfied: twitter.common.dirutil<0.4,>=0.3.11 in /usr/local/lib/python3.8/site-packages (from pantsbuild.pants==1.29.0) (0.3.11)
Installing collected packages: setuptools, pex
  Attempting uninstall: setuptools
    Found existing installation: setuptools 50.3.2
    Uninstalling setuptools-50.3.2:
      Successfully uninstalled setuptools-50.3.2
  Attempting uninstall: pex
    Found existing installation: pex 2.1.21
    Uninstalling pex-2.1.21:
      Successfully uninstalled pex-2.1.21
Successfully installed pex-2.1.11 setuptools-44.0.0
```


Discussion:
@sentenza : Can you confirm that you are using the most recent version of the `pants` script from https://www.pantsbuild.org/docs/installation#creating-the-launch-script ?
Hi!
Confirming that I'm seeing the exact same behavior. (with python 3.6.8 which is (sadly) our default for now)

PS: I did take the opportunity to upgrade us to the latest launch script, didn't help.
Same question for you @Xaelias - are you using the latest pants script from: https://pantsbuild.github.io/setup/pants ? The latest `pants` setup script does a pip upgrade which should solve this: https://github.com/pantsbuild/setup/blob/gh-pages/pants#L264
> Same question for you @Xaelias - are you using the latest pants script from: https://pantsbuild.github.io/setup/pants ? The latest `pants` setup script does a pip upgrade which should solve this: https://github.com/pantsbuild/setup/blob/gh-pages/pants#L264

Yes sorry. I edited my comment after the fact but I did try to use an older version of the script which is our current default and the latest version of it.
Erm - the OP shows pip is upgraded to 20.3.1 ..., thinking of more useful debugging questions to ask here.
Ar right, its the plugin resolution that fails, not the pantsbuild.pants install. Unfortunately the plugin resolution is performed by Pex which is just now upgrading to latest Pip: https://github.com/pantsbuild/pex/pull/1133
I'm going to move up the Pex release schedule here so that we can un-break Big Sur users.
1st need to truncate the 2.1.22 release docket and get it out: https://github.com/pantsbuild/pex/issues/1111
Then need to release 2.1.23 with the Pip upgrade: https://github.com/pantsbuild/pex/issues/1134
Then I'll circle back here to upgrade Pants and see about backporting the Pex upgrade to the Pants release branches we still maintain.
Thanks! Yeah the diagnostic sounds about right.  
Anyway for us to manually update pip locally in the meantime? I've tried a few things but I'm getting weird errors.
@Xaelias unfortunately, no. Pex vendors Pip into itself: https://github.com/pantsbuild/pex/tree/master/pex/vendor
Yup that's what I was afraid of... Well thanks for the quick update :-)  
I'll keep an eye on this issue for the official fix then! Thanks!
If you really need to hack around this now, you should be able to remove your plugins list from pants.toml (or comment it out), and add that same list into your checked-in `pants` script for now as additional requirements for pip to install. In the most recent script, that would be an edit to this line: https://github.com/pantsbuild/setup/blob/69351495867bd555a76b4a523f816b66acb8506f/pants#L265
Thanks I might give this a try. Otherwise, the only reason I need to run pants locally right now is really for a functionality that one of our internal apps should have either way. So I might just update the code of our app, let the pipeline build the pex that will then work on my machine, and go from there :-D  
Thanks again!
@Xaelias and @sentenza hopefully an upgrade to Pants 1.30.2 will work for you all. We'd normally not support patching 1.29 since its 2 days shy of 6 months old. I'll be cherry-picking the Pex upgrade into the 1.30 series and doing a 1.30.2rc3 release along with similar for 2.0 and 2.1.
> I'm going to move up the Pex release schedule here so that we can un-break Big Sur users.
> 1st need to truncate the 2.1.22 release docket and get it out: [pantsbuild/pex#1111](https://github.com/pantsbuild/pex/issues/1111)
> Then need to release 2.1.23 with the Pip upgrade: [pantsbuild/pex#1134](https://github.com/pantsbuild/pex/issues/1134)
> Then I'll circle back here to upgrade Pants and see about backporting the Pex upgrade to the Pants release branches we still maintain.

So the problem was related to an outdated version of Pex shipped with pants. So far I tried using the latest version of pants with Python 3.7.9, 3.9.*, 3.8.*. 

> hopefully an upgrade to Pants 1.30.2 will work for you all

I'm going to try it out immediately. 🤞 
> If you really need to hack around this now, you should be able to remove your plugins list from pants.toml (or comment it out), and add that same list into your checked-in `pants` script for now as additional requirements for pip to install. In the most recent script, that would be an edit to this line: https://github.com/pantsbuild/setup/blob/69351495867bd555a76b4a523f816b66acb8506f/pants#L265

So, I removed these plugins from pants.toml:

```toml
plugins = [
 'pantsbuild.pants.contrib.scrooge==%(pants_version)s',
 'pantsbuild.pants.contrib.node==%(pants_version)s',
]
```

I moved them into pants executable but I don't know how to pass this configuration anymore:

```toml
[gen.scrooge]
service_deps = """{
  'scala': [
    '3rdparty/org/apache/thrift:libthrift',
    '3rdparty/com/twitter:finagle-thrift',
    '3rdparty/com/twitter:scrooge-core'
  ]
}"""

structs_deps = """{
  'scala': [
    '3rdparty/org/apache/thrift:libthrift',
    '3rdparty/com/twitter:scrooge-core'
  ]
}"""
```

@jsirois do you know how to keep using those scrroge config settings?
@sentenza you should be able to keep the [gen.scrooge] settings as-is. You will need to replace the `plugins = [ ... ]` with this though:
```toml
backend_packages.add = [
  "pants.contrib.node",
  "pants.contrib.scrooge",
]
```

Resolving patch:
diff --git a/src/python/pants/backend/python/util_rules/pex_cli.py b/src/python/pants/backend/python/util_rules/pex_cli.py
--- a/src/python/pants/backend/python/util_rules/pex_cli.py
+++ b/src/python/pants/backend/python/util_rules/pex_cli.py
@@ -37,7 +37,7 @@ class PexBinary(TemplatedExternalTool):
 
     options_scope = "download-pex-bin"
     name = "pex"
-    default_version = "v2.1.21"
+    default_version = "v2.1.24"
     default_url_template = "https://github.com/pantsbuild/pex/releases/download/{version}/pex"
 
     @classproperty
@@ -47,8 +47,8 @@ def default_known_versions(cls):
                 (
                     cls.default_version,
                     plat,
-                    "461cef14d92efba56572215fddf7dcd95560a4d2e8aa97a69e09db68d809dd87",
-                    "2712034",
+                    "561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133",
+                    "2936466",
                 )
             )
             for plat in ["darwin", "linux"]


Test patch: