build(deps): replace the deprecated pysnmp-lextudio with pysnmp>=7.1 (#5470)
#5470 "pysnmp-lextudio is deprecated: every startup logs a RuntimeWarning". Dependency change: the [snmp] extra now installs `pysnmp>=7.1` instead of `pysnmp-lextudio>=6.2`. pysnmp is the same lextudio lineage under its maintained name; the 7.1 floor is because below 7 the name is the abandoned 4.x line with no asyncio API. The poller already finds either API shape (_api(), the engine close probes), so no code changes; its docstring now names what the image ships. Approved by the operator 2026-10-09 ("yes please do the swap"). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,10 +1,11 @@
|
|||||||
# plugins/snmp/poller.py
|
# plugins/snmp/poller.py
|
||||||
"""Ask an SNMP device for its readings, and say in words why it didn't answer.
|
"""Ask an SNMP device for its readings, and say in words why it didn't answer.
|
||||||
|
|
||||||
pysnmp-lextudio 6.x (what the image installs) and canonical pysnmp 7.x put the
|
pysnmp 7.x (what the image installs, #5470) and the deprecated
|
||||||
asyncio API in different modules with different names; _api() finds whichever
|
pysnmp-lextudio 6.x put the asyncio API in different modules with different
|
||||||
is installed, so a dependency bump can't silently break polling. Without
|
names; _api() finds whichever is installed, so a dependency change can't
|
||||||
pysnmp at all the poll reports that instead of raising.
|
silently break polling. Without pysnmp at all the poll reports that instead
|
||||||
|
of raising.
|
||||||
"""
|
"""
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -28,7 +28,10 @@ ldap = [
|
|||||||
"ldap3>=2.9",
|
"ldap3>=2.9",
|
||||||
]
|
]
|
||||||
snmp = [
|
snmp = [
|
||||||
"pysnmp-lextudio>=6.2",
|
# The maintained pysnmp (lextudio's lineage, which took over the name).
|
||||||
|
# Floor 7.1: below 7 that name is the abandoned 4.x line, which has no
|
||||||
|
# asyncio API (#5470; the poller uses pysnmp.hlapi.v3arch.asyncio).
|
||||||
|
"pysnmp>=7.1",
|
||||||
]
|
]
|
||||||
# Batteries-included Ansible (bundles the common community collections) for the
|
# Batteries-included Ansible (bundles the common community collections) for the
|
||||||
# playbook runner. Installed into the image via Dockerfile `pip install .[ansible]`.
|
# playbook runner. Installed into the image via Dockerfile `pip install .[ansible]`.
|
||||||
|
|||||||
Reference in New Issue
Block a user