diff --git a/plugins/snmp/poller.py b/plugins/snmp/poller.py index 22599e9..0b24713 100644 --- a/plugins/snmp/poller.py +++ b/plugins/snmp/poller.py @@ -1,10 +1,11 @@ # plugins/snmp/poller.py """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 -asyncio API in different modules with different names; _api() finds whichever -is installed, so a dependency bump can't silently break polling. Without -pysnmp at all the poll reports that instead of raising. +pysnmp 7.x (what the image installs, #5470) and the deprecated +pysnmp-lextudio 6.x put the asyncio API in different modules with different +names; _api() finds whichever is installed, so a dependency change can't +silently break polling. Without pysnmp at all the poll reports that instead +of raising. """ from __future__ import annotations diff --git a/pyproject.toml b/pyproject.toml index de5781d..36b988b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,7 +28,10 @@ ldap = [ "ldap3>=2.9", ] 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 # playbook runner. Installed into the image via Dockerfile `pip install .[ansible]`.