Improve diff display of configuration context changelog entries #7233

Closed
opened 2025-12-29 20:20:42 +01:00 by adam · 5 comments
Owner

Originally created by @ggidofalvy-tc on GitHub (Nov 15, 2022).

NetBox version

v3.3.7

Feature type

Change to existing functionality

Proposed functionality

The proposed change would make the Changelog functionality intelligently display only the altered parts of the Configuration Context JSONs.

See below for an example, a single-line change to a Configuration Context.

20221115_19h02m04s_grim

The side-by-side "Pre-Change Data" and "Post-Change Data" section of the page could be used by NetBox users to compare two versions of the configuration context JSON by only highlighting the changed lines. A mockup of this can be seen below.

20221115_19h06m48s_grim

The "Difference" section, at least when it comes to separate Configuration Contexts, is not very useful at the moment. See below for an example.

20221115_19h07m31s_grim

If one were to make changes to the Changelog item page specifically for Configuration Contexts to implement this improvement, doing away with the "Differences" field and integrating the "Previous/Next" toggles to the side-by-side comparison would also probably make more sense.

Use case

At the moment, an external application is required to figure out the differences between Configuration Contexts, and the current NetBox UI does not allow for easy tracking of changes made to Configuration Contexts. This is especially evident when handling multiple Configuration Contexts.

The same issue occurs when handling Local Configuration Contexts. If the improvements made to the Configuration Context Changelog pages can be extended to Changelog entries that involve the Local Configuration Context, that would be quite helpful in tracking changes made to these as well.

Database changes

No response

External dependencies

No response

Originally created by @ggidofalvy-tc on GitHub (Nov 15, 2022). ### NetBox version v3.3.7 ### Feature type Change to existing functionality ### Proposed functionality The proposed change would make the Changelog functionality intelligently display only the altered parts of the Configuration Context JSONs. See below for an example, a single-line change to a Configuration Context. ![20221115_19h02m04s_grim](https://user-images.githubusercontent.com/69459847/201996691-633f6acf-1b9a-4d0c-8010-50c038bc0f05.png) The side-by-side "Pre-Change Data" and "Post-Change Data" section of the page could be used by NetBox users to compare two versions of the configuration context JSON by only highlighting the changed lines. A mockup of this can be seen below. ![20221115_19h06m48s_grim](https://user-images.githubusercontent.com/69459847/201995094-acfd3bfd-d9cd-4d08-814d-fca1a4649331.png) The "Difference" section, at least when it comes to separate Configuration Contexts, is not very useful at the moment. See below for an example. ![20221115_19h07m31s_grim](https://user-images.githubusercontent.com/69459847/201995644-ff0abdd8-912d-4dba-95ff-b8c518c38f60.png) If one were to make changes to the Changelog item page specifically for Configuration Contexts to implement this improvement, doing away with the "Differences" field and integrating the "Previous/Next" toggles to the side-by-side comparison would also probably make more sense. ### Use case At the moment, an external application is required to figure out the differences between Configuration Contexts, and the current NetBox UI does not allow for easy tracking of changes made to Configuration Contexts. This is especially evident when handling multiple Configuration Contexts. The same issue occurs when handling Local Configuration Contexts. If the improvements made to the Configuration Context Changelog pages can be extended to Changelog entries that involve the Local Configuration Context, that would be quite helpful in tracking changes made to these as well. ### Database changes _No response_ ### External dependencies _No response_
adam added the type: featurestatus: needs ownerpending closure labels 2025-12-29 20:20:42 +01:00
adam closed this issue 2025-12-29 20:20:42 +01:00
Author
Owner

@jeremystretch commented on GitHub (Dec 9, 2022):

Related: #10703

@jeremystretch commented on GitHub (Dec 9, 2022): Related: #10703
Author
Owner

@github-actions[bot] commented on GitHub (Feb 8, 2023):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Do not attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our contributing guide.

@github-actions[bot] commented on GitHub (Feb 8, 2023): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. **Do not** attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@jeremystretch commented on GitHub (Feb 27, 2023):

I've done a bit of work in 83679ecb8 to optimize shallow_compare_dict(), however we'll need to devise a solution for processing nested values.

@jeremystretch commented on GitHub (Feb 27, 2023): I've done a bit of work in 83679ecb8 to optimize `shallow_compare_dict()`, however we'll need to devise a solution for processing nested values.
Author
Owner

@github-actions[bot] commented on GitHub (May 29, 2023):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Do not attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our contributing guide.

@github-actions[bot] commented on GitHub (May 29, 2023): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. **Do not** attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@github-actions[bot] commented on GitHub (Jun 29, 2023):

This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.

@github-actions[bot] commented on GitHub (Jun 29, 2023): This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#7233