Skip to content

🌱 Unify launcher unit testing#368

Merged
MikeSpreitzer merged 1 commit intomainfrom
unify-launcher-unit-test
Mar 20, 2026
Merged

🌱 Unify launcher unit testing#368
MikeSpreitzer merged 1 commit intomainfrom
unify-launcher-unit-test

Conversation

@MikeSpreitzer
Copy link
Copy Markdown
Collaborator

Make the GHA workflow use the requirements file.

Update the requirements file to versions that are more recent AND work on MacOS.

Make all the instructions about running the tests consistent.

Fixes #366

Copilot AI review requested due to automatic review settings March 20, 2026 17:16
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates launcher unit-test dependency management and documentation so local runs and GitHub Actions install a consistent set of Python packages.

Changes:

  • Pin launcher Python dependencies in inference_server/launcher/requirements.txt (and add httpx).
  • Update launcher unit-test instructions to use the tests/ paths.
  • Update the Python code-quality GitHub Actions workflow to install dependencies via the launcher requirements.txt.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
inference_server/launcher/requirements.txt Pins launcher dependencies and adds httpx; still includes vllm behind a macOS arm64-only exclusion marker.
inference_server/launcher/howto.md Makes unit-test commands match the tests/ layout and references installing deps via requirements.
.github/workflows/python-code-quality.yml Switches CI dependency installation from an explicit package list to -r inference_server/launcher/requirements.txt.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated no new comments.

Make the GHA workflow use the requirements file.

Update the requirements file to versions that are more recent AND
work on MacOS.

Make all the instructions about running the tests consistent.

Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
@MikeSpreitzer MikeSpreitzer force-pushed the unify-launcher-unit-test branch from a8ff0a7 to e2908b4 Compare March 20, 2026 17:41
Copy link
Copy Markdown
Collaborator

@rubambiza rubambiza left a comment

Choose a reason for hiding this comment

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

Clarifying question, otherwise LGTM.

Install all the necessary packages (feel free to use a later version of pytest if you prefer):
```bash
pip install -r requirements.txt
pip install pytest==9.0.2 -r requirements-sans-vllm.txt
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Is there a reason we're making an exception for pytest? That is, why not pin it as-is and put it in the requirements file?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Same comment applies to the python-code-quality file.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

As far as I know, requirements.txt is typically used to state only the dependencies of the base software, not also the extra dependencies of the tests.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Because pytest is a dev/testing-only dependency, not a runtime dependency of the launcher. The requirements-sans-vllm.txt file lists runtime deps

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

The requirements.txt file is the one that lists the full dependencies of the launcher; requirements-sans-vllm.txt lists the subset of requirements.txt that is needed for testing the launcher. There is a difference because when being tested, we want to use the test's mocks of vllm rather than the real vllm.

Copy link
Copy Markdown
Collaborator

@diegocastanibm diegocastanibm left a comment

Choose a reason for hiding this comment

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

/lgtm

Install all the necessary packages (feel free to use a later version of pytest if you prefer):
```bash
pip install -r requirements.txt
pip install pytest==9.0.2 -r requirements-sans-vllm.txt
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Because pytest is a dev/testing-only dependency, not a runtime dependency of the launcher. The requirements-sans-vllm.txt file lists runtime deps

@MikeSpreitzer MikeSpreitzer merged commit b7df209 into main Mar 20, 2026
28 checks passed
@MikeSpreitzer MikeSpreitzer deleted the unify-launcher-unit-test branch March 20, 2026 18:51
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.

[Bug]: Outdated instructions for launcher unit test

4 participants