Skip to content

Conversation

@hotwa
Copy link

@hotwa hotwa commented Apr 26, 2025

  • define project metadata (name, version, requires-python) and dependencies in pyproject.toml
  • configure setuptools.build_meta as build-backend for PEP 660 editable installs
  • replace setup.py install_requires & entry_points with PEP 621 fields
  • include package-data and optional-dependencies for apple_silicon, nvidia-gpu, etc.

Background
The project currently relies solely on setup.py to declare its dependencies and entry points. This prevents full compatibility with PEP 660 editable installs and modern tooling like uv sync and pip install -e ., causing some dependencies to be skipped. We need a pyproject.toml so that build back-ends and dependency managers can understand our metadata natively.

Changes
Add pyproject.toml using PEP 621 to declare:

Project metadata: name, version, description, requires-python

dependencies: migrated from install_requires

optional-dependencies: migrated from extras_require

scripts: replaces entry_points for the exo console script

package-data: includes tinychat assets under exo

Retain the existing setup.py for backward compatibility; it can be removed once downstream consumers have migrated.

Update CI workflows (if any) to run pip install -e . and/or uv sync against both setup.py and pyproject.toml flows.

- define project metadata (name, version, requires-python) and dependencies in pyproject.toml
- configure setuptools.build_meta as build-backend for PEP 660 editable installs
- replace setup.py install_requires & entry_points with PEP 621 fields
- include package-data and optional-dependencies for apple_silicon, nvidia-gpu, etc.
@AlexCheema AlexCheema force-pushed the main branch 2 times, most recently from a39f85b to 56f783b Compare October 21, 2025 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant