driver / standard (pull_request) Successful in 21s
driver / lint (pull_request) Successful in 14s
driver / types (pull_request) Successful in 1m5s
driver / test (3.12) (pull_request) Successful in 1m13s
driver / test (3.13) (pull_request) Successful in 55s
driver / lowest (pull_request) Successful in 28s
driver / build (pull_request) Successful in 29s
driver / security (pull_request) Successful in 1m1s
CI / driver (pull_request) Successful in 2m49s
driver / publish (pull_request) Skipped
napalm 5.0 and older import pkg_resources, which a Python 3.12 venv no longer has, so the lowest job failed on them.
2.6 KiB
2.6 KiB
Changelog
All notable changes to napalm-device-types. The format follows Keep a Changelog, versions follow Semantic Versioning. Versions up to 4.21.0 were not recorded here; their history is the git log.
[Unreleased]
Changed
- Python 3.12 is the floor (
requires-python = ">=3.12"): netOrk runs every driver on 3.12, so 3.10 and 3.11 are no longer tested (NAPALM/driver-standard#6). - The floor on napalm is 5.1: older releases import
pkg_resources, which a Python 3.12 venv no longer has.
Added
HostShutdownMixin.shutdown_host(), onDeviceTypeDriver: shut the device itself down cleanly through its own means; declared, sohasattrsays whether a driver can. No forced variant (NetOrk/netork#1636).VmStopRequestMixin.begin_stop_vm(name): ask for a VM's clean shutdown and return at once, for callers that wait on a timer instead of instop_vm. No role demands it (NetOrk/netork#1636).
[4.22.0] - 2026-10-23
Added
AptProxyMixin(napalm_device_types.apt_proxy): apt's proxy on a Debian-family host, for a driver to mix in (NetOrk/netork#1397).get_package_proxy()is the proxy apt really fetches through, asapt-config dumpsays, and no longer the content of one file. A proxy the Debian or Ubuntu installer set elsewhere wins over00proxy, and was missed.get_package_proxy_report()adds where it is set: every line of apt's configuration that sets it, in the order apt reads them, the per-host proxies, and the sources fetched over http and over https.check_package_proxy(url, expect)fetches a page from the host with apt's own downloader, past any proxy, and says whether the host reached it and whether the page says what you expected.configure_package_proxy(url)writes the proxy, comments out every other line that sets a different one, reads the result back and fetches one source through the proxy. It fails when apt still fetches elsewhere.same_proxy_url()compares two proxy URLs by scheme, host and port.
[4.21.1] - 2026-10-22
The first release on PyPI since 0.1.0.
Changed
- The package follows the NAPALM driver standard (https://git.netork.io/NAPALM/driver-standard): CI on Gitea runs ruff, strict mypy, the tests on Python 3.10–3.13 and at the lowest declared versions, bandit, pip-audit and a build check, and a release tag publishes to PyPI.
- Type annotations use builtin generics (
list[str],X | None) instead oftyping.ListandOptional. They mean the same to a type checker. - The project links point at git.netork.io instead of GitHub.