Skip to content

Commit 7109f12

Browse files
authored
chore: pin virtualenv 20.30.0 in outer py env (#18263) (#18267)
virtualenv is what pipenv uses to make virtualenvs. pipenv doesn't pin this but sets a min version dependency. virtualenv 20.31.0 interns pip 25.1 which interns a version of setuptools recent enough that it doesnt support old-style static developer installs, which are still a problem for static analysis tools [3 years after somebody noticed it](pypa/setuptools#3518) which I think is pretty cool! ## testing - [x] can you run `make teardown-py` and then `pip install --upgrade virtualenv` and then `make setup-py` and then `make lint-py` - [x] can ci also do this As #18263 but for chore-release
1 parent 7a5385e commit 7109f12

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

.github/actions/python/setup/action.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,7 @@ runs:
3232
run: $OT_PYTHON -m pip install --upgrade pip
3333
- shell: bash
3434
run: $OT_PYTHON -m pip install --user pipenv==2023.12.1
35+
- shell: bash
36+
run: $OT_PYTHON -m pip install --user virtualenv==20.30.0
3537
- shell: bash
3638
run: 'make -C ${{ inputs.project }} setup || make -C ${{ inputs.project }} setup'

Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ setup: setup-js setup-py
5959
setup-py-toolchain:
6060
$(OT_PYTHON) -m pip install --upgrade pip
6161
$(OT_PYTHON) -m pip install pipenv==2023.12.1
62+
# this needs to be installed AFTER pipenv or pipenv will update this to the bad version
63+
$(OT_PYTHON) -m pip install virtualenv==20.30.0
6264

6365
# front-end dependecies handled by yarn
6466
.PHONY: setup-js

0 commit comments

Comments
 (0)