# Changelog All notable changes to napalm-device-types. The format follows [Keep a Changelog](https://keepachangelog.com/), versions follow [Semantic Versioning](https://semver.org/). Versions up to 4.21.0 were not recorded here; their history is the git log. ## [Unreleased] ## [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, as `apt-config dump` says, and no longer the content of one file. A proxy the Debian or Ubuntu installer set elsewhere wins over `00proxy`, 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 of `typing.List` and `Optional`. They mean the same to a type checker. - The project links point at git.netork.io instead of GitHub.