Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions sdk/python/requirements/py3.10-ci-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4160,9 +4160,9 @@ pyproject-hooks==1.2.0 \
pyspark==4.1.1 \
--hash=sha256:77f78984aa84fbe865c717dd37b49913b4e5c97d76ef6824f932f1aefa6621ec
# via feast (pyproject.toml)
pytest==7.4.4 \
--hash=sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280 \
--hash=sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8
pytest==9.0.3 \
--hash=sha256:2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 \
--hash=sha256:b86ada508af81d19edeb213c681b1d48246c1a91d304c6c81a427674c17eb91c
Comment on lines +4163 to +4165
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 pytest 9.0.3 in lock files violates pyproject.toml constraint of pytest<8

The lock files are updated to pytest==9.0.3, but pyproject.toml:139 specifies "pytest>=6.0.0,<8". This means the lock files are inconsistent with the declared dependency constraint. Installing from the lock file will install pytest 9.0.3, which the project explicitly excludes.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

# via
# feast (pyproject.toml)
# pytest-asyncio
Expand Down
6 changes: 3 additions & 3 deletions sdk/python/requirements/py3.11-ci-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4360,9 +4360,9 @@ pyproject-hooks==1.2.0 \
pyspark==4.1.1 \
--hash=sha256:77f78984aa84fbe865c717dd37b49913b4e5c97d76ef6824f932f1aefa6621ec
# via feast (pyproject.toml)
pytest==7.4.4 \
--hash=sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280 \
--hash=sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8
pytest==9.0.3 \
--hash=sha256:2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 \
--hash=sha256:b86ada508af81d19edeb213c681b1d48246c1a91d304c6c81a427674c17eb91c
Comment on lines +4363 to +4365
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 pytest 9.0.3 is incompatible with pytest-lazy-fixture 0.6.3

pytest-lazy-fixture==0.6.3 is known to be broken with pytest 8+ (it uses removed internal APIs). The project actively uses lazy_fixture in test files (sdk/python/tests/unit/local_feast_tests/test_local_feature_store.py, sdk/python/tests/integration/registration/test_universal_registry.py, sdk/python/tests/integration/registration/test_feature_store.py) with dozens of usages. Upgrading to pytest 9.0.3 while keeping pytest-lazy-fixture==0.6.3 (pinned in pyproject.toml:142) will cause test collection failures.

Prompt for agents
The PR upgrades pytest from 7.4.4 to 9.0.3, but pytest-lazy-fixture==0.6.3 is incompatible with pytest 8+. It uses internal pytest APIs (like SubRequest) that were removed. The project has dozens of lazy_fixture() calls across test files.

To fix this, either:
1. Keep pytest<8 (revert this change), or
2. Replace pytest-lazy-fixture with pytest-lazy-fixtures (note the plural 's') which is a maintained fork compatible with pytest 8+, and update the imports from `from pytest_lazyfixture import lazy_fixture` to `from pytest_lazy_fixtures import lf` across test files, or
3. Use pytest's built-in indirect parametrize feature to replace lazy_fixture usage.

Also update the constraint in pyproject.toml:139 which currently says pytest<8.
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

# via
# feast (pyproject.toml)
# pytest-asyncio
Expand Down
6 changes: 3 additions & 3 deletions sdk/python/requirements/py3.12-ci-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4350,9 +4350,9 @@ pyproject-hooks==1.2.0 \
pyspark==4.1.1 \
--hash=sha256:77f78984aa84fbe865c717dd37b49913b4e5c97d76ef6824f932f1aefa6621ec
# via feast (pyproject.toml)
pytest==7.4.4 \
--hash=sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280 \
--hash=sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8
pytest==9.0.3 \
--hash=sha256:2c5efc453d45394fdd706ade797c0a81091eccd1d6e4bccfcd476e2b8e0ab5d9 \
--hash=sha256:b86ada508af81d19edeb213c681b1d48246c1a91d304c6c81a427674c17eb91c
# via
# feast (pyproject.toml)
# pytest-asyncio
Expand Down
Loading