Skip to content

Fix Microsoft WinRM provider import failure under lowest dependencies#69333

Merged
shahar1 merged 1 commit into
apache:mainfrom
potiuk:winrm-pyspnego-lowest-deps-floor
Jul 3, 2026
Merged

Fix Microsoft WinRM provider import failure under lowest dependencies#69333
shahar1 merged 1 commit into
apache:mainfrom
potiuk:winrm-pyspnego-lowest-deps-floor

Conversation

@potiuk

@potiuk potiuk commented Jul 3, 2026

Copy link
Copy Markdown
Member

The Microsoft WinRM provider declared only pywinrm>=0.5.0 and left pyspnego
(a transitive dependency of pywinrm) unbounded. pywinrm imports
spnego.ContextProxy, which pyspnego only exposes from version 0.4.0
onwards, so lowest-dependency resolution selected a pre-0.4.0 pyspnego and
the provider failed at import time with
module 'spnego' has no attribute 'ContextProxy' — breaking the LowestDeps
providers CI job.

Flooring pyspnego>=0.4.0 directly in the provider keeps lowest-dependency
resolution on a version that actually provides the attribute pywinrm needs.
The gap is pre-existing on main (surfaced by the failing LowestDeps shard on
PR #64643, which is unrelated to that PR's Samba change).


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 4.8)

Generated-by: Claude Code (Opus 4.8) following the guidelines

pywinrm imports `spnego.ContextProxy`, which pyspnego only exposes from
version 0.4.0 onwards. The winrm provider only declared `pywinrm>=0.5.0` and
left pyspnego unbounded, so lowest-dependency resolution selected a pre-0.4.0
pyspnego and the provider failed at import time with
`module 'spnego' has no attribute 'ContextProxy'`, breaking the LowestDeps CI
job. Flooring pyspnego directly keeps the lowest-dependency resolution on a
version that actually provides the attribute pywinrm needs.
@shahar1 shahar1 merged commit 90d8fc8 into apache:main Jul 3, 2026
72 checks passed
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