Skip to content

Rename Circuit Maintenance navigation menu group and list item - #390

Open
jvanderaa wants to merge 1 commit into
developfrom
389_rename_nav_menu_group
Open

Rename Circuit Maintenance navigation menu group and list item#390
jvanderaa wants to merge 1 commit into
developfrom
389_rename_nav_menu_group

Conversation

@jvanderaa

@jvanderaa jvanderaa commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

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:

  • Menu group: Circuit Maintenance AppCircuit Maintenances
  • List menu item: Circuit MaintenancesMaintenances

Renaming 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

Before After
drop before image here drop after image here

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

  • Explanation of Change(s)
  • Added change log fragment(s)
  • Attached Screenshots, Payload Example
  • Unit, Integration Tests
  • Documentation Updates (when adding/changing features)
  • Outline Remaining Work, Constraints from Design

Images

Before

circuit_maintenance_nav_before

After

circuit_maintenance_nav_after

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.
@github-actions

Copy link
Copy Markdown

Coverage report

This PR does not seem to contain any modification to coverable code.

NavMenuItem(
link="plugins:nautobot_circuit_maintenance:circuitmaintenance_list",
name="Circuit Maintenances",
name="Maintenances",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rename navigation menu group from "Circuit Maintenance App" to "Circuit Maintenances"

2 participants