Rename Circuit Maintenance navigation menu group and list item - #390
Open
jvanderaa wants to merge 1 commit into
Open
Rename Circuit Maintenance navigation menu group and list item#390jvanderaa wants to merge 1 commit into
jvanderaa wants to merge 1 commit into
Conversation
Rename the navigation menu group from "Circuit Maintenance App" to "Circuit Maintenances" and the maintenance list item from "Circuit Maintenances" to "Maintenances", so the menu describes the objects it exposes and avoids a duplicate group/item label. Add tests covering the full navigation structure (tab, group, and every item's link, name, weight, and permissions) with regression guards against the old names.
jvanderaa
requested review from
glennmatthews,
pke11y and
scetron
as code owners
July 20, 2026 17:59
| NavMenuItem( | ||
| link="plugins:nautobot_circuit_maintenance:circuitmaintenance_list", | ||
| name="Circuit Maintenances", | ||
| name="Maintenances", |
Contributor
There was a problem hiding this comment.
Personally I'm on the fence about this change - it feels unnecessary to me.
nautobot-bot
pushed a commit
that referenced
this pull request
Aug 7, 2026
…r Tool ## What's Changed ## [nautobot-app-v3.1.4 (2026-08-07)](https://github.com/nautobot/cookiecutter-nautobot-app/releases/tag/nautobot-app-v3.1.4) ### Added - [#376](nautobot/cookiecutter-nautobot-app#376) - Added support for `--no-input` option to `invoke unittest` and `invoke tests` tasks. - [#378](nautobot/cookiecutter-nautobot-app#378) - Added `invoke generate-test-data` task and a boilerplate `generate_<app_name>_test_data` management command to the `nautobot-app` cookie. - [#380](nautobot/cookiecutter-nautobot-app#380) - Added previous_version to the Prepare Release workflow to allow overriding the previous_version. - [#386](nautobot/cookiecutter-nautobot-app#386) - Added opt-in ephemeral Docker host ports for generated app development environments. - [#388](nautobot/cookiecutter-nautobot-app#388) - Added `nautobot-app-commercial` template for creating commercial (licensed) Nautobot Apps distributed through NTC's private Artifactory repository. - [#393](nautobot/cookiecutter-nautobot-app#393) - Added a `--missing` option to the `unittest-coverage` invoke target to show missing coverage lines. ### Changed - [#318](nautobot/cookiecutter-nautobot-app#318) - Added a `--diff` option to the `invoke ruff` tasks. - [#370](nautobot/cookiecutter-nautobot-app#370) - Changed the minimum version of Nautobot to 3.1.0. - [#371](nautobot/cookiecutter-nautobot-app#371) - Added various AI agent files to the gitignore. - [#372](nautobot/cookiecutter-nautobot-app#372) - Updated ruff target python version to 3.10. - [#373](nautobot/cookiecutter-nautobot-app#373) - Added `target` and `recursive` options to `invoke pylint` tasks. - [#386](nautobot/cookiecutter-nautobot-app#386) - Aligned the generated app `docs` container to serve and publish on port 8001, matching `mkdocs.yml` and Nautobot core. - [#407](nautobot/cookiecutter-nautobot-app#407) - Changed the minimum supported Nautobot version to 3.2.0 for apps baked from the `nautobot-app-commercial` cookie, updating both the baked `pyproject.toml` constraint and the CI test matrix. ### Fixed - [#381](nautobot/cookiecutter-nautobot-app#381) - Updated the CI pipeline so that we auto increment post-release versions when creating a release from main, develop, next, and ltm-*. - [#383](nautobot/cookiecutter-nautobot-app#383) - Fixed the prepare release workflow bumping the version on prereleases resulting in a version number that is 2 ahead of the last release. - [#387](nautobot/cookiecutter-nautobot-app#387) - Fixed github actions not running on pull requests when using automated releases. - [#405](nautobot/cookiecutter-nautobot-app#405) - Changed `.gitignore` to allow committing shared Claude Code configuration, ignoring only per-user local files. ### Housekeeping - [#385](nautobot/cookiecutter-nautobot-app#385) - Added a release workflow job to sync release notes from `ltm` branches back to `develop` via an automated pull request. - [#389](nautobot/cookiecutter-nautobot-app#389) - Replaced the unmaintained `toml` dev dependency with stdlib `tomllib` (Python 3.11+) and `tomli` (Python 3.10 fallback). - [#390](nautobot/cookiecutter-nautobot-app#390) - Bumped CI workflow matrix to test against Python 3.14. - [#402](nautobot/cookiecutter-nautobot-app#402) - Fixed djlint CI failure for apps with no Django templates - [#403](nautobot/cookiecutter-nautobot-app#403) - Changed the release workflow to define the Python and Poetry versions as workflow-level environment variables. - [#404](nautobot/cookiecutter-nautobot-app#404) - Added a release workflow job that opens a pull request from `main` into `next` after a release is published from `main`. - [#406](nautobot/cookiecutter-nautobot-app#406) - Excluded the templated `development/docker-compose.base.yml` and `.github/workflows/ci.yml` files from `yamllint`.
Defiantearth
pushed a commit
that referenced
this pull request
Aug 12, 2026
…r Tool (#396) * Cookie updated targeting develop by NetworkToCode Cookie Drift Manager Tool - [#376](nautobot/cookiecutter-nautobot-app#376) - Added support for `--no-input` option to `invoke unittest` and `invoke tests` tasks. - [#378](nautobot/cookiecutter-nautobot-app#378) - Added `invoke generate-test-data` task and a boilerplate `generate_<app_name>_test_data` management command to the `nautobot-app` cookie. - [#380](nautobot/cookiecutter-nautobot-app#380) - Added previous_version to the Prepare Release workflow to allow overriding the previous_version. - [#386](nautobot/cookiecutter-nautobot-app#386) - Added opt-in ephemeral Docker host ports for generated app development environments. - [#388](nautobot/cookiecutter-nautobot-app#388) - Added `nautobot-app-commercial` template for creating commercial (licensed) Nautobot Apps distributed through NTC's private Artifactory repository. - [#393](nautobot/cookiecutter-nautobot-app#393) - Added a `--missing` option to the `unittest-coverage` invoke target to show missing coverage lines. - [#318](nautobot/cookiecutter-nautobot-app#318) - Added a `--diff` option to the `invoke ruff` tasks. - [#370](nautobot/cookiecutter-nautobot-app#370) - Changed the minimum version of Nautobot to 3.1.0. - [#371](nautobot/cookiecutter-nautobot-app#371) - Added various AI agent files to the gitignore. - [#372](nautobot/cookiecutter-nautobot-app#372) - Updated ruff target python version to 3.10. - [#373](nautobot/cookiecutter-nautobot-app#373) - Added `target` and `recursive` options to `invoke pylint` tasks. - [#386](nautobot/cookiecutter-nautobot-app#386) - Aligned the generated app `docs` container to serve and publish on port 8001, matching `mkdocs.yml` and Nautobot core. - [#407](nautobot/cookiecutter-nautobot-app#407) - Changed the minimum supported Nautobot version to 3.2.0 for apps baked from the `nautobot-app-commercial` cookie, updating both the baked `pyproject.toml` constraint and the CI test matrix. - [#381](nautobot/cookiecutter-nautobot-app#381) - Updated the CI pipeline so that we auto increment post-release versions when creating a release from main, develop, next, and ltm-*. - [#383](nautobot/cookiecutter-nautobot-app#383) - Fixed the prepare release workflow bumping the version on prereleases resulting in a version number that is 2 ahead of the last release. - [#387](nautobot/cookiecutter-nautobot-app#387) - Fixed github actions not running on pull requests when using automated releases. - [#405](nautobot/cookiecutter-nautobot-app#405) - Changed `.gitignore` to allow committing shared Claude Code configuration, ignoring only per-user local files. - [#385](nautobot/cookiecutter-nautobot-app#385) - Added a release workflow job to sync release notes from `ltm` branches back to `develop` via an automated pull request. - [#389](nautobot/cookiecutter-nautobot-app#389) - Replaced the unmaintained `toml` dev dependency with stdlib `tomllib` (Python 3.11+) and `tomli` (Python 3.10 fallback). - [#390](nautobot/cookiecutter-nautobot-app#390) - Bumped CI workflow matrix to test against Python 3.14. - [#402](nautobot/cookiecutter-nautobot-app#402) - Fixed djlint CI failure for apps with no Django templates - [#403](nautobot/cookiecutter-nautobot-app#403) - Changed the release workflow to define the Python and Poetry versions as workflow-level environment variables. - [#404](nautobot/cookiecutter-nautobot-app#404) - Added a release workflow job that opens a pull request from `main` into `next` after a release is published from `main`. - [#406](nautobot/cookiecutter-nautobot-app#406) - Excluded the templated `development/docker-compose.base.yml` and `.github/workflows/ci.yml` files from `yamllint`. * Resolve cookiecutter drift merge conflicts The drift manager committed unresolved conflict markers to this branch. Resolved as follows: - .cookiecutter.json: took the newly baked commit ref - docs/admin/compatibility_matrix.md: kept the app's real matrix over the template placeholder - pyproject.toml: kept the app's dependencies with the template's Nautobot >=3.1.0 floor * Fix ruff format and lint fallout from the drift merge - ran `invoke ruff --action format`; the template's line wrapping does not match this repo's rendered name lengths * Regenerate poetry.lock for the updated dependencies The drift manager changed pyproject.toml without relocking, so CI failed at "Setup environment" with "pyproject.toml changed significantly since poetry.lock was last generated" before any lint or test job could run. Relocked with poetry 2.3.1 (lock-version 2.1); nautobot resolves to 3.1.1. --------- Co-authored-by: bakebot <info@networktocode.com> Co-authored-by: Gary Snider <75227981+gsnider2195@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes: #389
What's Changed
Renames the app's navigation entries under the Circuits tab so they describe the
objects they expose rather than the plugin itself, matching Nautobot's navigation
conventions:
Circuit Maintenance App→Circuit MaintenancesCircuit Maintenances→MaintenancesRenaming the list item alongside the group also removes the redundancy that would
otherwise result in a group header and child item reading identically.
No functional changes — links, weights, and permissions are unchanged.
Screenshots
Tests
Adds
tests/test_navigation.py, which characterizes the full navigation structure(tab, group, and every item's link/name/weight/permissions) and guards against
regression of both old names.
To Do
Images
Before
After