Python 3.12 is the floor for every driver #6

Closed
opened 2026-10-27 09:10:07 +00:00 by christianmanivong · 0 comments
Owner

Priority: P3 — decided 2026-10-27; drops CI work on versions nothing runs on.

netOrk runs every driver in its own containers on Python 3.12, so 3.10 and 3.11 are no longer supported or tested anywhere in the netOrk ecosystem.

Order, so no repo goes red in between:

  1. This repo, part A: the shared workflow tests on 3.12/3.13 by default, lowest runs on 3.12; template, STANDARDS and the tool itself move to 3.12. check still accepts a 3.10 floor.
  2. Every standard driver: requires-python = ">=3.12", mypy python_version = "3.12", ruff target-version = "py312" (and what UP then fixes), CHANGELOG entry under Unreleased. amt, bsd, device-types, fritzbox, hpe-aruba-procurve, hpe-officeconnect, linux, netgear, openmediavault, openwrt, opnsense, proxmox, qnap-qts, redfish, sonos, tplink-jetstream, vmware, windows, yealink, zyxel.
  3. This repo, part B: MIN_PYTHON = 3.12 in check.

Not affected: the upstream forks without a pyproject at the root (fortios, s350, vyos, lancom). On the NetOrk side everything is at 3.12 already except NetOrk/image-tools (3.11).

Priority: P3 — decided 2026-10-27; drops CI work on versions nothing runs on. netOrk runs every driver in its own containers on Python 3.12, so 3.10 and 3.11 are no longer supported or tested anywhere in the netOrk ecosystem. Order, so no repo goes red in between: 1. **This repo, part A:** the shared workflow tests on 3.12/3.13 by default, `lowest` runs on 3.12; template, STANDARDS and the tool itself move to 3.12. `check` still accepts a 3.10 floor. 2. **Every standard driver:** `requires-python = ">=3.12"`, mypy `python_version = "3.12"`, ruff `target-version = "py312"` (and what `UP` then fixes), CHANGELOG entry under Unreleased. amt, bsd, device-types, fritzbox, hpe-aruba-procurve, hpe-officeconnect, linux, netgear, openmediavault, openwrt, opnsense, proxmox, qnap-qts, redfish, sonos, tplink-jetstream, vmware, windows, yealink, zyxel. 3. **This repo, part B:** `MIN_PYTHON = 3.12` in `check`. Not affected: the upstream forks without a pyproject at the root (fortios, s350, vyos, lancom). On the NetOrk side everything is at 3.12 already except NetOrk/image-tools (3.11).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: NAPALM/driver-standard#6