chore: adopt the NAPALM driver standard #5

Closed
opened 2026-10-22 17:32:27 +00:00 by christianmanivong · 0 comments
Owner

Adopt the NAPALM driver standard (https://git.netork.io/NAPALM/driver-standard, STANDARDS.md). Epic: NAPALM/driver-standard#2.

Measured on 2026-10-22 (default branch)

  • napalm-standard check: CI is not in .gitea/workflows/, or a .github/ is left over
  • napalm-standard check: no dependency on napalm-device-types, or one without a floor
  • napalm-standard check: LICENSE, README or CHANGELOG is missing
  • napalm-standard check: requires-python allows Python below 3.10
  • napalm-standard check: py.typed is missing
  • napalm-standard check: no strict mypy, coverage source or coverage floor
  • ruff (E, F, I, UP, B): 0 (fixable 0), ruff format: 0 files
  • mypy strict: Found 4 errors in 1 file
  • bandit: clean
  • coverage: 92% (51 passed in 0.42s)

Notes

  • Does not declare napalm-device-types, although the standard requires it.

To do

Three commits, as in the pilot:

  • style: ruff format and ruff check --fix with the standard's rule set.
  • fix: the remaining lint and bandit findings by hand. bandit has no ratchet.
  • chore: .gitea/workflows/ci.yml calling the shared workflow; LICENSE, README, CHANGELOG, py.typed; SPDX license, Python >= 3.10, links to git.netork.io; strict mypy with today's failing modules exempt; coverage floor at today's value; napalm-standard ratchet --write.
  • First release by tag, once its dependencies are on PyPI.
Adopt the NAPALM driver standard (https://git.netork.io/NAPALM/driver-standard, STANDARDS.md). Epic: NAPALM/driver-standard#2. ## Measured on 2026-10-22 (default branch) - `napalm-standard check`: CI is not in `.gitea/workflows/`, or a `.github/` is left over - `napalm-standard check`: no dependency on napalm-device-types, or one without a floor - `napalm-standard check`: LICENSE, README or CHANGELOG is missing - `napalm-standard check`: `requires-python` allows Python below 3.10 - `napalm-standard check`: `py.typed` is missing - `napalm-standard check`: no strict mypy, coverage source or coverage floor - ruff (E, F, I, UP, B): 0 (fixable 0), ruff format: 0 files - mypy strict: Found 4 errors in 1 file - bandit: clean - coverage: 92% (51 passed in 0.42s) ## Notes - Does not declare napalm-device-types, although the standard requires it. ## To do Three commits, as in the pilot: - [ ] **style:** `ruff format` and `ruff check --fix` with the standard's rule set. - [ ] **fix:** the remaining lint and bandit findings by hand. bandit has no ratchet. - [ ] **chore:** `.gitea/workflows/ci.yml` calling the shared workflow; LICENSE, README, CHANGELOG, `py.typed`; SPDX license, Python >= 3.10, links to git.netork.io; strict mypy with today's failing modules exempt; coverage floor at today's value; `napalm-standard ratchet --write`. - [ ] First release by tag, once its dependencies are on PyPI.
christianmanivong added the
prio
P3
tech-debt
labels 2026-10-22 17:32:27 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: NAPALM/napalm-hpe-officeconnect#5