Skip to content

Conversation

@nnshah1
Copy link
Contributor

@nnshah1 nnshah1 commented Nov 11, 2025

Summary

  • Consolidate Python requirements into pyproject.toml from separate requirements files
  • Fix container build dependency resolution for ai-dynamo-runtime
  • Verify container build and testing functionality works with consolidated dependencies

Background

This PR consolidates Python requirements management by moving all dependencies to pyproject.toml, eliminating the need for separate requirements files. During this consolidation, a container build issue was discovered and fixed.

Changes

Requirements Consolidation

  • Moved all Python dependencies to pyproject.toml
  • Organized dependencies into logical groups (test, standard, deploy, docs, etc.)
  • Maintained framework-specific optional dependencies (vllm, trtllm, sglang)

Container Build Fix

  • Fixed dependency installation order in Dockerfile
  • Install ai-dynamo-runtime wheel before main package dependencies
  • This ensures runtime dependency is available during pyproject.toml resolution

Test Results

Container Environment: Successfully tested with VLLM framework
Unit Tests: All tests pass (5/5 including mypy checks)
GPU Integration: Confirmed CUDA availability and functionality
Build Process: Container build works with consolidated requirements

Benefits

  • Single source of truth for Python dependencies
  • Simplified dependency management
  • Better integration with modern Python packaging tools
  • Maintains backward compatibility with existing container builds

🤖 Generated with Claude Code

nnshah1 and others added 2 commits November 10, 2025 19:05
- Merged all dependencies from container/deps/requirements*.txt into pyproject.toml
- Added dependency groups for test, standard, and deploy dependencies
- Updated Dockerfiles and Earthfile to use pyproject.toml instead of requirements files
- This centralizes all Python dependency management in one place

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
The container build was failing because the main pyproject.toml depends
on ai-dynamo-runtime==0.7.0, but this package wasn't available during
the dependency installation phase.

The issue was in the build order:
1. Main package dependencies were being installed first
2. Runtime wheel was built but not yet installed
3. Dependency resolution failed for ai-dynamo-runtime==0.7.0

Fixed by:
1. Installing ai-dynamo-runtime wheel first from wheel_builder stage
2. Then installing main package dependencies from pyproject.toml
3. This ensures runtime is available when resolving main dependencies

This addresses the pyproject.toml consolidation work and enables
successful container builds.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants