Changelog retention time not shown in UI when set to Indefinite #2929

Closed
opened 2025-12-29 18:23:42 +01:00 by adam · 0 comments
Owner

Originally created by @Grokzen on GitHub (Oct 7, 2019).

Environment

  • Python version: 3.7.x
  • NetBox version: 2.6.5

Steps to Reproduce

  1. Set django setting CHANGELOG_RETENTION = 0 in config
  2. View changelog list page http://localhost/extras/changelog/
  3. Scroll down to bottom

Expected Behavior

Text Changelog retention: Indefinite to be visible/seen

Observed Behavior

No text/div is rendered

Cause

When setting the variable to 0 to indicate Indefinite time, the if check that checks if the div and text should be rendered is done in sucha way that it evaluates to False if the value is 0 and the output is not rendered.

https://github.com/netbox-community/netbox/blob/develop/netbox/templates/extras/objectchange_list.html#L12

Possible solution is to change the if check to this, it is not good/optimal, but it does the job and the text is again rendered as the expected text.

{% if settings.CHANGELOG_RETENTION >= 0 %}

References

https://github.com/netbox-community/netbox/issues/3264
https://github.com/netbox-community/netbox/issues/3368

Originally created by @Grokzen on GitHub (Oct 7, 2019). <!-- NOTE: This form is only for reproducible bugs. If you need assistance with NetBox installation, or if you have a general question, DO NOT open an issue. Instead, post to our mailing list: https://groups.google.com/forum/#!forum/netbox-discuss Please describe the environment in which you are running NetBox. Be sure that you are running an unmodified instance of the latest stable release before submitting a bug report. --> ### Environment * Python version: 3.7.x <!-- Example: 3.5.4 --> * NetBox version: 2.6.5 <!-- Example: 2.5.2 --> <!-- Describe in detail the exact steps that someone else can take to reproduce this bug using the current stable release of NetBox (or the current beta release where applicable). Begin with the creation of any necessary database objects and call out every operation being performed explicitly. If reporting a bug in the REST API, be sure to reconstruct the raw HTTP request(s) being made: Don't rely on a wrapper like pynetbox. --> ### Steps to Reproduce 1. Set django setting `CHANGELOG_RETENTION = 0` in config 2. View changelog list page `http://localhost/extras/changelog/` 3. Scroll down to bottom <!-- What did you expect to happen? --> ### Expected Behavior Text `Changelog retention: Indefinite` to be visible/seen <!-- What happened instead? --> ### Observed Behavior No text/div is rendered ### Cause When setting the variable to `0` to indicate Indefinite time, the if check that checks if the div and text should be rendered is done in sucha way that it evaluates to `False` if the value is `0` and the output is not rendered. https://github.com/netbox-community/netbox/blob/develop/netbox/templates/extras/objectchange_list.html#L12 Possible solution is to change the if check to this, it is not good/optimal, but it does the job and the text is again rendered as the expected text. `{% if settings.CHANGELOG_RETENTION >= 0 %}` ### References https://github.com/netbox-community/netbox/issues/3264 https://github.com/netbox-community/netbox/issues/3368
adam added the type: bugstatus: accepted labels 2025-12-29 18:23:42 +01:00
adam closed this issue 2025-12-29 18:23:42 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#2929