Skip to content

fix: move sniffio from test to runtime dependencies#298

Merged
ArzelaAscoIi merged 2 commits into
mainfrom
fix/sniffio-runtime-dependency
Feb 25, 2026
Merged

fix: move sniffio from test to runtime dependencies#298
ArzelaAscoIi merged 2 commits into
mainfrom
fix/sniffio-runtime-dependency

Conversation

@ArzelaAscoIi
Copy link
Copy Markdown
Member

@ArzelaAscoIi ArzelaAscoIi commented Feb 24, 2026

Summary

  • Moved sniffio>=1.3.1 from [dependency-groups] test to [project] dependencies in pyproject.toml
  • sniffio is imported in production code (deepset_cloud_sdk/workflows/async_client/files.py) to catch AsyncLibraryNotFoundError, making it a runtime requirement
  • The previous fix (fix: missing sniffio dependency #287) incorrectly placed it in the test group only
  • anyio 4.0+ dropped sniffio as a transitive dependency, so it's no longer pulled in via httpx -> anyio

Test plan

  • Verified uv run python -c "from deepset_cloud_sdk.workflows.async_client.files import list_files" succeeds
  • Confirmed sniffio appears as a runtime dep in uv.lock
  • CI passes

Resolves BUIG-13

sniffio is imported in production code
(deepset_cloud_sdk/workflows/async_client/files.py) to catch
AsyncLibraryNotFoundError, but was only listed as a test dependency.
This broke at runtime when anyio 4.0+ dropped sniffio as a transitive
dependency.

Resolves BUIG-13

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Feb 24, 2026

Coverage report

This PR does not seem to contain any modification to coverable code.

@deep-rloebbert
Copy link
Copy Markdown

looks good to me - do you also look into pyrate-limiter?

@ArzelaAscoIi
Copy link
Copy Markdown
Member Author

#296

@ArzelaAscoIi ArzelaAscoIi merged commit 4516e46 into main Feb 25, 2026
7 of 8 checks passed
@ArzelaAscoIi ArzelaAscoIi deleted the fix/sniffio-runtime-dependency branch February 25, 2026 16:28
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.

2 participants