Skip to content

Write a test to check if dependencies are in sync between pyproject.toml and setup.py #5964

@patelchaitany

Description

@patelchaitany

Is your feature request related to a problem? Please describe.

  • Feast defines its Python dependencies in two separate files — pyproject.toml and setup.py. Both are maintained by hand. When a contributor updates a dependency version or adds a new package in one file but forgets to update the other, the two files silently go out of sync. There is no automated check to catch this, so these drifts only get noticed when something breaks downstream.

Describe the solution you'd like

  • A unit test (placed in sdk/python/tests/unit/, e.g. test_dependency_sync.py) that: Parses the core dependency list from pyproject.toml (under [project] dependencies) and from setup.py (the REQUIRED list).

  • Parses each optional dependency group from pyproject.toml (under [project.optional-dependencies]) and from setup.py (the extras_require dictionary).

  • Compares them and fails with a clear, human-readable message identifying exactly which package or group is out of sync.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
https://docs.google.com/document/d/1F2GeBsoWNUFGAd8PqKTnjwxsixSX3U-joMIb9oZHalc/edit?usp=sharing

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions