diff --git a/.github/workflows/_test.yml b/.github/workflows/_test.yml index 2465aa1ace..ebb0791737 100644 --- a/.github/workflows/_test.yml +++ b/.github/workflows/_test.yml @@ -46,7 +46,11 @@ jobs: elif [ "${{ matrix.test_type }}" == "core-pydantic-2" ]; then echo "Running core-pydantic-v2 tests, installing dependencies with poetry..." poetry install - poetry add pydantic@2.1 + + # Install via `pip` instead of `poetry add` to avoid changing lockfile, + # which would prevent caching from working: the cache would get saved + # to a different key than where it gets loaded from. + poetry run pip install 'pydantic>=2.1,<3' else echo "Running extended tests, installing dependencies with poetry..." poetry install -E extended_testing @@ -59,10 +63,10 @@ jobs: EXPECTED_VERSION=1 fi echo "Checking pydantic version... Expecting ${EXPECTED_VERSION}" - + # Determine the major part of pydantic version VERSION=$(poetry run python -c "import pydantic; print(pydantic.__version__)" | cut -d. -f1) - + # Check that the major part of pydantic version is as expected, if not # raise an error if [[ "$VERSION" -ne $EXPECTED_VERSION ]]; then