driver / standard (pull_request) Successful in 15s
driver / lint (pull_request) Successful in 12s
driver / types (pull_request) Successful in 1m38s
driver / test (3.10) (pull_request) Successful in 1m1s
driver / test (3.11) (pull_request) Successful in 52s
driver / test (3.12) (pull_request) Successful in 49s
driver / test (3.13) (pull_request) Successful in 45s
driver / lowest (pull_request) Successful in 29s
driver / security (pull_request) Successful in 47s
driver / build (pull_request) Successful in 22s
CI / driver (pull_request) Successful in 7m11s
driver / publish (pull_request) Skipped
- CI moves to .gitea/workflows/ci.yml and calls the shared driver workflow of NAPALM/driver-standard; .github/ is gone. - setuptools>=77 with the SPDX license string, no License classifier, Python 3.10-3.13 classifiers, napalm-device-types>=4.21.1, a dev extra with floors, links to git.netork.io, LICENSE file, py.typed. - CHANGELOG.md in Keep-a-Changelog form; README names Python 3.10, the Gitea clone URL and the new CI. - mypy strict for the package; exempt for now (52 errors): ha, listening, opnsense, ospf_mixin, ping_mixin, port_forwards, resolver_mixin. Recorded in the quality baseline with the long and complex functions, the 3100-line opnsense.py and one unannotated public method. - Coverage floor 79 % (measured 79.20 %).
44 lines
1.7 KiB
Markdown
44 lines
1.7 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to this driver. The format follows
|
||
[Keep a Changelog](https://keepachangelog.com/), versions follow
|
||
[Semantic Versioning](https://semver.org/).
|
||
|
||
## [Unreleased]
|
||
|
||
### Changed
|
||
- The driver follows the NAPALM driver standard
|
||
(https://git.netork.io/NAPALM/driver-standard): CI on Gitea runs ruff, 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. The package now ships `py.typed`
|
||
and a LICENSE file. Python 3.10 remains the floor. Requires napalm-device-types
|
||
4.21.1.
|
||
|
||
### Fixed
|
||
- `get_dhcp_leases()` raises when Kea, ISC DHCP and the ARP fallback all failed,
|
||
instead of returning an empty list that looks like a server without leases (#27).
|
||
- `create_dhcp_reservation()` leaves a reservation that already holds what was asked
|
||
alone, and does not reconfigure (restart) Kea for it.
|
||
|
||
## [0.4.0] - 2026-10-18
|
||
|
||
### Added
|
||
- napalm-device-types 4.17's public contracts: `apply_updates()` passes the packages it
|
||
is given and `get_update_progress()` reports the upgrade's state and log;
|
||
`get_dns_forwards()`, `set_dns_forward()` and `remove_dns_forward()` for Unbound;
|
||
`get_ospf()`. Requires napalm-device-types 4.17.0.
|
||
|
||
## [0.3.0] - 2026-10-17
|
||
|
||
### Removed
|
||
- **Breaking:** `get_device_warnings()`. The pending updates are in
|
||
`get_available_updates()`.
|
||
|
||
## [0.2.0] - 2026-10-17
|
||
|
||
### Changed
|
||
- **Breaking:** `run_device_action` is removed. The SNMP agent is set up through
|
||
napalm-device-types 4.13's `configure_snmp_agent` with the caller's community,
|
||
contact, location and listen address, and the firewall opens UDP/161 only to the
|
||
allowed sources (#13).
|