-
-
Notifications
You must be signed in to change notification settings - Fork 215
Description
Background
PySNMP ecosystem has been idle ever since 2020, and while many repos were forked by different parties, none of the authors showed a plan to completely take over the ecosystem as a whole and bring the repos forward,
- https://github.com/pysnmp has forked several key components (Community Fork #416) and published several new releases mainly for a Splunk project. No documentation site was planned for this.
- https://github.com/inexio has forked most of the components to maintain a documentation mirror (The sample address is not accessible #389) at https://snmplabs.thola.io/. However, contents on this site do not map to released versions of the packages, so you might hit breaking pieces here and there.
Note that inexio GmbH was once the sponsor of Ilya.
- https://github.com/pyasn1 has forked two ASN.1 related repos ([PSA] Transfer of ownership pyasn1#214) and taken over the PyPI packages
pyasn1*
. https://pyasn1.readthedocs.io/ was set up and matches the new releases. - Simon Fagerholm used his fork to create https://pysnmp.readthedocs.io/ but he made no other commits. For a long period, this doc site was highest in search engine results but contained out-of-date information. Kudos to Simon who helped forward visitors to https://pysnmp.com when we reached out to him for assistance.
- Other forks didn't show significant progress.
- The primary domain name (snmplabs.com) was lost and fell into the hands of unknown. The current owner(s) never reveals the identity, so any connection to that domain can be risky for general public.
- New Python releases (3.11 and 3.12 for example) introduced breaking changes that impact PySNMP 4.x users significantly (for example, changes related to asyncio and asyncore).
As Ilya passed away (#427), I think it is more important than ever to regroup all parties under the same banner.
My company LeXtudio Inc. has been active in SNMP field for more than a decade now, mainly focusing on its .NET ecosystem. But some clients asked if we can support PySNMP for them, so we asked ourselves why not take the lead to revive PySNMP.
Migration Plan
-
Forked all related repos under a single place (currently all under https://github.com/lextudio)
-
Set up a new documentation site (https://www.pysnmp.com) with up-to-date information.
-
Published new releases of the Python packages with postfix. (Don't use them now, and switch to PySNMP packages without postfix.)
Name Downloads -
Set up a new SNMP Simulator instance (demo.pysnmp.com) as documented here
-
Set up MIB site (https://mibs.pysnmp.com) based on this
-
Integrated with https://github.com/pyasn1.
-
Added unit test coverage to help reveal new/known bugs and ensure patches work as expected.
-
Added compatibility test to support all major Python releases (3.8+, in Feb 2024)
-
(in-progress) Help downstream projects upgrade to 6.0 releases (OpenStack, Home Assistant, etc).
-
PEP 541 request was fired to take over the remaining 11 PyPI packages (
pysnmp*
/pysmi
/snmp*
) from Ilya. -
(in-progress) Review and cherry pick all existing patches (2020-2022)
-
(in-progress) Review and close most existing issues reported (2020-2022), tracked in Tracker of etingof/pysnmp opened issues lextudio/pysnmp#4
-
Updated the PyPI packages created by Ilya after the PEP 541 request approval. (These are the recommended packages to use)
Name Downloads
In the long run, LeXtudio Inc. plans to work with key stakeholders (projects that depend on pysnmp) and sponsors to set up the governing rules around the repos. Ideally there should be a PySNMP organization that supervises the development.
Known Projects Switched to LeXtudio Fork
This is not a complete list but can show you the momentum.
Name | Comment |
---|---|
OpenStack | |
Checkmk | |
Arch Linux | |
Glances | |
Home Assistant | |
Genie libs | |
brother | |
Proliantutils | |
labgrid | |
snimpy |
You Can Help
What help is needed from you?
- Spread the words.
- Open new issues at https://github.com/lextudio/pysnmp/issues so that we can track what are needed to address.
- Sponsor this initiative to revive the ecosystem by contacting support@lextudio.com if you like to offer financial support to speed up the process.
- Write to support@lextudio.com if you want to offer other kind of assistance (code review, documentation, and others).