Skip to content

Conversation

@lc525
Copy link
Member

@lc525 lc525 commented Dec 3, 2025

PR fixing MLServer custom image builds (and future MLServer images) for uvloop >= 0.22.1.

This also positions MLServer to be resilient to all the async API changes coming into future python versions (3.14 - 3.16), mostly caused by the deprecation of the async loop policy APIs.

Notes for reviewer

  • Most important changes in mlserver/utils.py and mlserver/parallel/worker.py. Everything else is related to necessary adjustments to testing
  • CI tests for the alibi-detect, alibi-explain and huggingface runtimes fail due to lack of disk space. I've run the tests locally and most unit tests pass, but there are a small number of failures.
  • CI tests for mlserver fail with 3 errors related to building custom environments and running models using those environments on top of the MLServer code from the current PR -- however, those failures only happen because the custom environments are built based on MLServer from master. Once this PR is merged, those tests should pass (and do so locally)

@lc525 lc525 marked this pull request as draft December 3, 2025 03:40
- Updates required for uvloop >= 0.22.1, following deprecations in the python API
regarding async loop policies.

- Updates to pytest to run tests using async correctly

- Updates to runtimes so that pytest doesn't load the same module (conftest.py)
multiple times. This involves adding __init__.py files in intermediate
directories to explicitly define python packages.
@lc525 lc525 marked this pull request as ready for review December 15, 2025 01:34
Copy link

@domsolutions domsolutions left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link

@MiguelAAe MiguelAAe left a comment

Choose a reason for hiding this comment

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

Looks good to me

@lc525 lc525 merged commit 5f28474 into SeldonIO:master Dec 15, 2025
35 of 51 checks passed
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.

3 participants