argus-server 2.5.0__tar.gz → 2.7.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {argus_server-2.5.0 → argus_server-2.7.0}/.pre-commit-config.yaml +3 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/CHANGELOG.md +122 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/CONTRIBUTING.rst +18 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/NOTES.md +59 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/PKG-INFO +3 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/customization/htmx-frontend.rst +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/customizing-filtering.rst +14 -9
- argus_server-2.7.0/docs/development/howtos/htmx-frontend/column_for_specific_ack_group.rst +51 -0
- argus_server-2.7.0/docs/development/howtos/htmx-frontend/column_for_specific_tag.rst +19 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/sonarqube.rst +9 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/management-commands.rst +25 -0
- argus_server-2.7.0/docs/img/incidents_filter.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/htmx-frontend.rst +136 -4
- argus_server-2.7.0/docs/reference/img/ER_model.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/ack.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/ack_icon.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/age.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/color_status.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/combined_status.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/combined_status_icons.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/compact_level.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/compact_select_levels.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/description.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/end_time.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/has_ticket_url.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/id.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/level.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/narrow_end_time.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/narrow_start_time.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/row_select.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/search_description.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/search_id.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/search_ticket_url.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/select_levels.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/source.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/start_time.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/start_time_and_age.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/status.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/status_icon.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/tags.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/ticket.png +0 -0
- argus_server-2.7.0/docs/reference/img/columns/under_maintenance.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/user-manual.rst +163 -196
- argus_server-2.7.0/htmlcov/.gitignore +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/pyproject.toml +2 -1
- argus_server-2.7.0/requirements/django52.txt +1 -0
- argus_server-2.7.0/requirements/django60.txt +1 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/requirements-django52.txt +3 -3
- argus_server-2.7.0/requirements-django60.txt +169 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/requirements.txt +3 -3
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/utils.py +0 -3
- argus_server-2.7.0/src/argus/dev/management/commands/check_ended_maintenance.py +26 -0
- argus_server-2.7.0/src/argus/dev/management/commands/check_started_maintenance.py +26 -0
- argus_server-2.7.0/src/argus/filter/checks.py +25 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/default.py +1 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/filterwrapper.py +28 -19
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/queryset_filters.py +27 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/serializers.py +1 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/context_processors.py +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/defaults.py +19 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/columns.py +95 -17
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/filter.py +75 -12
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/forms/incident_filters.py +84 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/views.py +37 -11
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/middleware.py +5 -11
- argus_server-2.7.0/src/argus/htmx/plannedmaintenance/urls.py +16 -0
- argus_server-2.7.0/src/argus/htmx/plannedmaintenance/views.py +184 -0
- argus_server-2.7.0/src/argus/htmx/static/flatpickr-4.6.13.min.css +13 -0
- argus_server-2.7.0/src/argus/htmx/static/flatpickr-4.6.13.min.js +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/static/styles.css +590 -81
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/30-incident-table.css +4 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/tailwind.config.js +6 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/datetime.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/base.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_delete_form.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_edit_form.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/forms/badge_dropdown_select_multiple.html +1 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/forms/checkbox_select_multiple.html +1 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/forms/dropdown_select_multiple.html +5 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/forms/input_field.html +8 -3
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/forms/search_select_multiple.html +2 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_base_incident_table.html +5 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_filter_delete_dropdown.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_filter_update_dropdown.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_filterbox.html +4 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_footer.html +1 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_ack_icon.html +4 -2
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_compact_severity_filter.html +55 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_compact_severity_header.html +21 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_end_time.html +4 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_events.html +9 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_filterable_column_header_content.html +63 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_level.html +5 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_level_compact.html +6 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_maintenance.html +4 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_sort_button.html +20 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_sort_button_element.html +15 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_sortable_column_header.html +5 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_status_icon.html +3 -2
- argus_server-2.7.0/src/argus/htmx/templates/htmx/incident/cells/_incident_tags.html +11 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/search_fields/input_search.html +13 -3
- argus_server-2.7.0/src/argus/htmx/templates/htmx/plannedmaintenance/_cancel_confirm_dialog.html +22 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/plannedmaintenance/_delete_confirm_dialog.html +25 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/plannedmaintenance/base.html +13 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/plannedmaintenance/plannedmaintenance_form.html +183 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/plannedmaintenance/plannedmaintenance_list.html +93 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/timeslot/_timeslot_form.html +40 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/timerecurrence_div.html +1 -1
- argus_server-2.7.0/src/argus/htmx/templates/htmx/timeslot/timeslot_form.html +4 -0
- argus_server-2.7.0/src/argus/htmx/templates/htmx/timeslot/timeslot_list.html +12 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_preference_choice_preview_theme.html +4 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_user_menu.html +3 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preference_form/_base_form.html +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preference_form/_incident_table_form.html +6 -3
- argus_server-2.7.0/src/argus/htmx/templates/htmx/user/preference_form/_incident_table_preview.html +30 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx_base.html +0 -12
- argus_server-2.7.0/src/argus/htmx/templates/messages/_banner.html +31 -0
- argus_server-2.7.0/src/argus/htmx/templates/messages/_notification_message.html +29 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/messages/_notification_messages.html +2 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/timeslot/views.py +44 -20
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/urls.py +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/preferences/forms.py +22 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/preferences/models.py +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/urls.py +1 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/views.py +35 -2
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/utils.py +14 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/widgets.py +7 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/apps.py +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/signals.py +8 -1
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/validators.py +2 -1
- argus_server-2.7.0/src/argus/notificationprofile/filterwrapper.py +47 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/media/__init__.py +7 -5
- argus_server-2.7.0/src/argus/notificationprofile/migrations/0002_filter_public.py +18 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/models.py +18 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/views.py +22 -2
- argus_server-2.7.0/src/argus/plannedmaintenance/migrations/0002_incidents_connection.py +23 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/models.py +59 -3
- argus_server-2.7.0/src/argus/plannedmaintenance/utils.py +111 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/base.py +2 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/test_CI.py +14 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/util/testing.py +4 -1
- argus_server-2.7.0/src/argus/version.py +1 -0
- argus_server-2.7.0/tests/filter/test_filter_model.py +43 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/filter/test_filterwrapper.py +39 -40
- argus_server-2.7.0/tests/filter/test_queryset_filters.py +175 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/incident/test_filter.py +73 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/incident/test_forms_incident_filters.py +49 -1
- argus_server-2.7.0/tests/htmx/plannedmaintenance/test_views.py +286 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/test_middleware.py +62 -2
- argus_server-2.7.0/tests/htmx/timeslot/test_views.py +181 -0
- argus_server-2.7.0/tests/htmx/user/test_views.py +34 -0
- argus_server-2.7.0/tests/notificationprofile/migrations/__init__.py +0 -0
- argus_server-2.7.0/tests/notificationprofile/test_filterwrapper.py +84 -0
- argus_server-2.7.0/tests/plannedmaintenance/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/plannedmaintenance/test_models.py +45 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/plannedmaintenance/test_utils.py +46 -0
- argus_server-2.7.0/tests/site/__init__.py +0 -0
- argus_server-2.7.0/tests/util/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tox.ini +18 -2
- argus_server-2.5.0/docs/development/howtos/htmx-frontend/column_for_specific_ack_group.rst +0 -21
- argus_server-2.5.0/docs/development/howtos/htmx-frontend/column_for_specific_tag.rst +0 -16
- argus_server-2.5.0/docs/img/incidents_filter.png +0 -0
- argus_server-2.5.0/docs/reference/img/ER_model.png +0 -0
- argus_server-2.5.0/requirements/django52.txt +0 -1
- argus_server-2.5.0/src/argus/filter/checks.py +0 -22
- argus_server-2.5.0/src/argus/htmx/templates/htmx/incident/cells/_incident_filterable_column_header_content.html +0 -47
- argus_server-2.5.0/src/argus/htmx/templates/htmx/incident/cells/_incident_level.html +0 -5
- argus_server-2.5.0/src/argus/htmx/templates/htmx/timeslot/_timeslot_form.html +0 -25
- argus_server-2.5.0/src/argus/htmx/templates/htmx/timeslot/timeslot_form.html +0 -6
- argus_server-2.5.0/src/argus/htmx/templates/htmx/timeslot/timeslot_list.html +0 -13
- argus_server-2.5.0/src/argus/htmx/templates/messages/_notification_message.html +0 -21
- argus_server-2.5.0/src/argus/plannedmaintenance/utils.py +0 -52
- argus_server-2.5.0/src/argus/version.py +0 -1
- argus_server-2.5.0/tests/filter/test_queryset_filters.py +0 -96
- {argus_server-2.5.0 → argus_server-2.7.0}/.git-blame-ignore-revs +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/.gitattributes +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/.gitignore +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/.mailmap +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/.readthedocs.yaml +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/.sonarcloud.properties +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/CONTRIBUTORS.md +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/Dockerfile +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/LICENSE +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/MAINTAINING.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/Makefile +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/README.md +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/UPGRADING.md +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/changelog.d/.gitkeep +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/cmd.sh-template +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/codecov.yml +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/constraints.txt +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docker/Dockerfile +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docker/README.md +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docker/docker-entrypoint.sh +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docker/dockersettings.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docker-compose.yml +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/Makefile +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/_exts/djangodocs.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/_static/.gitkeep +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/_templates/.gitkeep +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/about-argus.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/conf.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/customization.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/add-more-preferences.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/change-settings.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/changelog-entry.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/commit-messages.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/federated-logins.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/howtos-for-git.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/howtos-for-github.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend/custom-incident-actions.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend/customize-filtering.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend/dependencies.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend/font_awesome.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend/override_templates.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/htmx-frontend.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/notification-system-testing.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/recover-from-migration-trouble.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/regenerate-the-ER-diagram.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/release-checklist.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/toggle-django-debug-toolbar.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/trigger-test-error-pages.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/update-contributors.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos/vendor-a-repo.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/howtos.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/makefile-rules.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/notes.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/styleguide.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development/troubleshooting.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/development.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/django_settings.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/default_timeslot.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/destinations_view.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/example_timeslot.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/filter_selector.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/incident_details_view.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/incidents_page.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/new_notification_profile.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/notification_profiles.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/synced_destination_delete_error.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/timeslots_view.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/unsaved_recurrence.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/img/user_menu.png +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/index.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/_note.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/glue-services/index.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/glue-services/writing-glueservices.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/index.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/notifications/email-plugin.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/notifications/index.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/notifications/sms-plugin.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/notifications/writing-notification-plugins.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/ticket-systems/index.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/integrations/ticket-systems/writing-ticket-system-plugins.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/make.bat +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/admin.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/api/v2.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/api.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/authentication.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/glossary.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/models.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/planned-maintenance.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference/site-specific-settings.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/docs/reference.rst +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/requirements/dev.txt +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/requirements/please-pip-sync.txt +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/requirements/test.txt +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/admin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/authentication.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/context_processors.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/drftoken/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/drftoken/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/drftoken/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/drftoken/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/factories.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/knox/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/knox/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/knox/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/knox/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/changeuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/createuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/grantsuperuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/revokesuperuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/management/commands/setpassword.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/0001_initial.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/0002_alter_user_first_name.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/0002_squashed_auth_20250512_add_preferences_model.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/0003_delete_phonenumber.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/0004_add_preferences_model.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/migrations/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/auth/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/base/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/base/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/base/static/favicon.svg +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/base/templates/base.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/base/templates/index.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/compat.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/bulk_incidents.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/check_token_expiry.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/close_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/create_fake_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/create_source.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/gen_secret_key.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/initial_setup.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/list_filters.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/stresstest.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/management/commands/toggle_profile_activation.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/dev/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/drf/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/drf/permissions.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/factories.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/filters.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/primitive_serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/swappable/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/swappable/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/filter/validators.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/appconfig.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/auth/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/auth/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/checks.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/constants.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/dateformat/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/dateformat/constants.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/destination/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/destination/forms.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/destination/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/destination/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/forms.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/htmx_urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/constants.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/forms/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/forms/base.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/forms/incident_actions.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/incident/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/management/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/management/commands/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/management/commands/tailwind_config.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/migrations/0001_initial.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/migrations/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/modals.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/notificationprofile/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/notificationprofile/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/notificationprofile/views.py +0 -0
- {argus_server-2.5.0/src/argus/htmx/tailwindtheme → argus_server-2.7.0/src/argus/htmx/plannedmaintenance}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/request.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/root_urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/settings.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/static/choices-11.1.0.min.js +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/static/htmx-2.0.2.min.js +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/static/hyperscript-0.9.13.min.js +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/static/logo_white.svg +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/README.md +0 -0
- {argus_server-2.5.0/src/argus/htmx/templatetags → argus_server-2.7.0/src/argus/htmx/tailwindtheme}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/config.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/get_tailwind.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/10-tailwind.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/15-alert-message.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/20-loading-box.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/25-choices.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/snippets/35-cards.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/styles.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/tailwindtheme/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/400.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/401.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/403.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/404.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/410.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/500.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/errors/dict/ul.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/errors/list/ul.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/field.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/label.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/attrs.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/checkbox.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/checkbox_option.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/classless_attrs.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/date.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/input.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/radio_option.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/range.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/select.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/django/forms/widgets/time.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/_base_confirm_dialog.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/_base_form_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/_base_form_modal_button.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/_base_form_modal_experimental.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/components/_page_title.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/components/incident_list_refresh_info_select.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_collapse_with_forms.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_content.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_create_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/_form_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/destination/destination_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_base.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_base_incident_update_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_delete_filter_confirm_dialog.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_existing_filters.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_filter_controls.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_filter_create_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_filter_select.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_acknowledge_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_close_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_list_menubar.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_list_refresh_info.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_list_update_menu.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_reopen_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_autorefresh.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_cell_wrapper_default.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_cell_wrapper_link_to_details.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_paginator.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_paginator_pageitem.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_row.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_table_rows.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_ticket_autocreate_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_ticket_edit_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_incident_ticket_manual_create_modal.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_unpaged_incident_table.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/_update_filter_confirm_dialog.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_ack.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_actions.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_age.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_checkbox.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_color_status.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_combined_status.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_combined_status_icons.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_description.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_filterable_column_header.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_list_select_all_checkbox_header.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_pk.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_source.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_source_type.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_start_time.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_start_time_and_age.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_start_time_header.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_status.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_tag.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/cells/_incident_ticket.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/filter_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/incident_detail.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/incident_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/responses/_incident_list_refresh.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/incident/responses/empty_list_item.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/_notificationprofile_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/_notificationprofile_form_div.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/base.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/notificationprofile_confirm_delete.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/notificationprofile_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/notificationprofile/notificationprofile_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/styleguide.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/_delete_timeslot_confirm_dialog.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/_timeslot_detail.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/base.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/checkbox_option.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/timeslot/timeslot_confirm_delete.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_current_theme.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_dateformat_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_incidents_table_columns_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_incidents_table_layout_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_page_size_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_preference_choice_nopreview.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_preference_choice_preview_datetime.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_theme_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_update_interval_dropdown.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_user_menu_logout.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/_user_menu_notification_config.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preference_field_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preference_form/_preference_form_script.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preference_form/_theme_and_format_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/preferences_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/htmx/user/radio_option.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/messages/_notification_messages_htmx_append.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/registration/login.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/tailwind/styles.css +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/tailwind/tailwind.config.js +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templates/tailwind_whitelist.html +0 -0
- {argus_server-2.5.0/src/argus/htmx/themes → argus_server-2.7.0/src/argus/htmx/templatetags}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/templatetags/argus_htmx.py +0 -0
- {argus_server-2.5.0/src/argus/htmx/timeslot → argus_server-2.7.0/src/argus/htmx/themes}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/themes/utils.py +0 -0
- {argus_server-2.5.0/src/argus/htmx/user/preferences → argus_server-2.7.0/src/argus/htmx/timeslot}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/timeslot/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/factories.py +0 -0
- {argus_server-2.5.0/src/argus/incident/migrations → argus_server-2.7.0/src/argus/htmx/user/preferences}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/user/preferences/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/htmx/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/admin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/constants.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/factories.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/fields.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/forms.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0001_initial.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0001_squashed_incident_20250514.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0002_empty_source_incident_id.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0003_incident_level.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0004_add_ChangeEvent_proxy.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0005_alter_event_type.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0006_incident_search_text.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0007_alter_event_type.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0008_incident_metadata.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/migrations/0009_use_bigautofield_on_quickly_growing_tables.py +0 -0
- {argus_server-2.5.0/src/argus/incident/ticket → argus_server-2.7.0/src/argus/incident/migrations}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/templates/incident/admin/fake_incident_add_form.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/templates/incident/admin/incident_change_list.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/templates/incident/admin/widgets/split_datetime_infinity.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/templates/incident/ticket/default_ticket_body.html +0 -0
- {argus_server-2.5.0/src/argus/notificationprofile/migrations → argus_server-2.7.0/src/argus/incident/ticket}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/ticket/base.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/ticket/dummy.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/ticket/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/incident/widgets.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/admin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/checks.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/factories.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/media/base.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/media/email.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/media/sms_as_email.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/migrations/0001_squashed_0015_remove_days_alter_days_array.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/migrations/0001_squashed_notificationprofile_20250512.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/migrations/0016_noop.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/migrations/0017_change_event_type_to_event_types.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/migrations/0018_remove_closed_and_unacked_from_filterblob.py +0 -0
- {argus_server-2.5.0/src/argus/plannedmaintenance → argus_server-2.7.0/src/argus/notificationprofile/migrations}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/signals.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/templates/notificationprofile/email.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/templates/notificationprofile/email.txt +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/templates/schemawrapper.html +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/notificationprofile/urls.py +0 -0
- {argus_server-2.5.0/src/argus/plannedmaintenance/migrations → argus_server-2.7.0/src/argus/plannedmaintenance}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/admin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/apps.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/factories.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/migrations/0001_initial.py +0 -0
- {argus_server-2.5.0/src/argus/site → argus_server-2.7.0/src/argus/plannedmaintenance/migrations}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/plannedmaintenance/templates/plannedmaintenance/admin/planned_maintenance_change_form.html +0 -0
- {argus_server-2.5.0/src/argus/util → argus_server-2.7.0/src/argus/site}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/api_v2_urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/logging.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/_serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/backend.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/dev.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/dockerdev.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/settings/prod.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/urls.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/site/wsgi.py +0 -0
- {argus_server-2.5.0/tests → argus_server-2.7.0/src/argus/util}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/util/admin_utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/util/datetime_utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/src/argus/util/utils.py +0 -0
- {argus_server-2.5.0/tests/auth/management_commands → argus_server-2.7.0/tests}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/__init__.py +0 -0
- {argus_server-2.5.0/tests/dev → argus_server-2.7.0/tests/auth/management_commands}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/management_commands/test_changeuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/management_commands/test_createuser.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/test_auth.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/test_knox_views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/test_models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/test_utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/auth/test_views.py +0 -0
- {argus_server-2.5.0/tests/filter → argus_server-2.7.0/tests/dev}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_bulk_incidents.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_check_token_expiry.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_close_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_create_fake_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_create_source.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_gen_secret_key.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_initial_setup.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_list_filters.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_toggle_profile_activation.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/dev/test_utils.py +0 -0
- {argus_server-2.5.0/tests/htmx → argus_server-2.7.0/tests/filter}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/filter/dummyplugin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/filter/test_filterplugin.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/helpers.py +0 -0
- {argus_server-2.5.0/tests/htmx/incident → argus_server-2.7.0/tests/htmx}/__init__.py +0 -0
- {argus_server-2.5.0/tests/htmx/notificationprofile → argus_server-2.7.0/tests/htmx/incident}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/incident/test_customization.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/incident/test_utils.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/incident/test_views.py +0 -0
- {argus_server-2.5.0/tests/incident/fixtures → argus_server-2.7.0/tests/htmx/notificationprofile}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/notificationprofile/test_forms.py +0 -0
- {argus_server-2.5.0/tests/incident/ticket_plugins → argus_server-2.7.0/tests/htmx/plannedmaintenance}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/test_context_processors.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/test_incident_columns_rendering.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/test_templatetags.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/htmx/test_utils.py +0 -0
- {argus_server-2.5.0/tests/incident/unit → argus_server-2.7.0/tests/htmx/timeslot}/__init__.py +0 -0
- {argus_server-2.5.0/tests/notificationprofile/destinations → argus_server-2.7.0/tests/htmx/user}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/__init__.py +0 -0
- {argus_server-2.5.0/tests/notificationprofile/migrations → argus_server-2.7.0/tests/incident/fixtures}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_change_event.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_create_fake_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_event.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_filters.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_incident.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_incident_fields.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_queryset.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_source_system.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_source_system_type.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/test_views.py +0 -0
- {argus_server-2.5.0/tests/plannedmaintenance → argus_server-2.7.0/tests/incident/ticket_plugins}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/ticket_plugins/test_base.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/ticket_plugins/test_dummy.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/ticket_plugins/test_utils.py +0 -0
- {argus_server-2.5.0/tests/site → argus_server-2.7.0/tests/incident/unit}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/incident/unit/test_incident_details_url.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/migration_example.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/__init__.py +0 -0
- {argus_server-2.5.0/tests/util → argus_server-2.7.0/tests/notificationprofile/destinations}/__init__.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/destinations/test_email.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/destinations/test_sms.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/test_github236.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/test_media.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/test_models.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/test_serializers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/notificationprofile/test_views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/site/test_misc.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/site/test_settings_helpers.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/site/test_settings_validators.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/site/test_views.py +0 -0
- {argus_server-2.5.0 → argus_server-2.7.0}/tests/util/test_utils.py +0 -0
|
@@ -8,7 +8,7 @@ repos:
|
|
|
8
8
|
exclude: &exclude_pattern '^changelog.d/'
|
|
9
9
|
- id: debug-statements
|
|
10
10
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
11
|
-
rev: v0.
|
|
11
|
+
rev: v0.14.13
|
|
12
12
|
hooks:
|
|
13
13
|
# Run the linter
|
|
14
14
|
- id: ruff
|
|
@@ -20,4 +20,6 @@ repos:
|
|
|
20
20
|
rev: v1.36.4
|
|
21
21
|
hooks:
|
|
22
22
|
- id: djlint-reformat-django
|
|
23
|
+
args: [--configuration, pyproject.toml]
|
|
23
24
|
- id: djlint-django
|
|
25
|
+
args: [--configuration, pyproject.toml]
|
|
@@ -8,6 +8,128 @@ This project uses [*towncrier*](https://towncrier.readthedocs.io/) and the chang
|
|
|
8
8
|
|
|
9
9
|
<!-- towncrier release notes start -->
|
|
10
10
|
|
|
11
|
+
## [2.7.0] - 2026-01-23
|
|
12
|
+
|
|
13
|
+
This release improves the UX for creating planned maintenance tasks, by having
|
|
14
|
+
dedicated pages for it and allowing all logged in users to see the list of
|
|
15
|
+
future, ongoing and past planned maintenance periods. To take full advantage of
|
|
16
|
+
thisi column, see NOTES.md.
|
|
17
|
+
|
|
18
|
+
Furthermore, admins can create filters that can be used (but not edited) by
|
|
19
|
+
everyone.
|
|
20
|
+
|
|
21
|
+
The sorting of the incident list can now be controlled via relevant columns,
|
|
22
|
+
but only one column at a time.
|
|
23
|
+
|
|
24
|
+
There are lots and lots of new columns! See NOTES.md
|
|
25
|
+
|
|
26
|
+
There are two new column presets, one for making notification filters and
|
|
27
|
+
another for making planned maintenance tasks.
|
|
28
|
+
|
|
29
|
+
A long-standing bug has been fixed that prevented the sending of notifications,
|
|
30
|
+
see NOTES.md.
|
|
31
|
+
|
|
32
|
+
### Added
|
|
33
|
+
|
|
34
|
+
- Added searchable `id` column
|
|
35
|
+
([#1288](https://github.com/Uninett/Argus/issues/1288))
|
|
36
|
+
- Made it possible to filter on event types
|
|
37
|
+
([#1455](https://github.com/Uninett/Argus/issues/1455))
|
|
38
|
+
- Added column for marking incidents as under maintenance
|
|
39
|
+
([#1589](https://github.com/Uninett/Argus/issues/1589))
|
|
40
|
+
- Prohibited editing planned maintenance task closed for longer than 12 hours
|
|
41
|
+
([#1648](https://github.com/Uninett/Argus/issues/1648))
|
|
42
|
+
- Added pictures of each column type to docs
|
|
43
|
+
([#1653](https://github.com/Uninett/Argus/issues/1653))
|
|
44
|
+
- Save current incident filters as a user preference and restore on page load
|
|
45
|
+
([#1682](https://github.com/Uninett/Argus/issues/1682))
|
|
46
|
+
- Added a new column showing all tags of an incident.
|
|
47
|
+
([#1698](https://github.com/Uninett/Argus/issues/1698))
|
|
48
|
+
- Add new `end_time` and `narrow_end_time` columns to display the `end_time` of
|
|
49
|
+
an incident ([#1715](https://github.com/Uninett/Argus/issues/1715))
|
|
50
|
+
- Add compact severity columns with filtering and sorting
|
|
51
|
+
([#1717](https://github.com/Uninett/Argus/issues/1717))
|
|
52
|
+
- Added management command to connect incidents to new planned maintenance
|
|
53
|
+
tasks ([#1734](https://github.com/Uninett/Argus/issues/1734))
|
|
54
|
+
- Added first version of pages for CRUD-ing planned maintenance tasks. Everyone
|
|
55
|
+
can see them but only admins can alter anything
|
|
56
|
+
([#1735](https://github.com/Uninett/Argus/issues/1735))
|
|
57
|
+
- Added management command to remove incidents from ended planned maintenance
|
|
58
|
+
tasks ([#1736](https://github.com/Uninett/Argus/issues/1736))
|
|
59
|
+
- Made it possible to mark a filter as "public". This means that anyone can use
|
|
60
|
+
it in the incident list, for notification profiles or for making planned
|
|
61
|
+
maintenance tasks. The flag can currently only be set via the admin
|
|
62
|
+
interface, and is thus limited to administrators.
|
|
63
|
+
([#1742](https://github.com/Uninett/Argus/issues/1742))
|
|
64
|
+
- Add sortable columns to incident table
|
|
65
|
+
([#1980](https://github.com/Uninett/Argus/issues/1980))
|
|
66
|
+
- Added a very rough and ready column to show an incident's events.
|
|
67
|
+
- Added two new column presets:
|
|
68
|
+
|
|
69
|
+
* "notifications" with columns useful for making notification profiles
|
|
70
|
+
* "on maintenance" with columns useful for finding things that will be on
|
|
71
|
+
planned maintenance
|
|
72
|
+
- Argus now supports Django 6.0
|
|
73
|
+
|
|
74
|
+
### Changed
|
|
75
|
+
|
|
76
|
+
- Implemented a Contributor License Agreement for Argus, based on the Free
|
|
77
|
+
Software Foundation's Fiduciary License Agreement
|
|
78
|
+
([#956](https://github.com/Uninett/Argus/issues/956))
|
|
79
|
+
- Replace column filter button with debounced auto-submit
|
|
80
|
+
([#1575](https://github.com/Uninett/Argus/issues/1575))
|
|
81
|
+
- Improve toast notification accessibility with ARIA attributes and screen
|
|
82
|
+
reader support ([#1711](https://github.com/Uninett/Argus/issues/1711))
|
|
83
|
+
- Changed label of start time column to 'Start time'
|
|
84
|
+
([#1718](https://github.com/Uninett/Argus/issues/1718))
|
|
85
|
+
- Renamed column `start_time_and_age` to `narrow_start_time_and_age` and added
|
|
86
|
+
wider column named `start_time_and_age`
|
|
87
|
+
([#1719](https://github.com/Uninett/Argus/issues/1719))
|
|
88
|
+
- The buttons in the column layout preview were disabled.
|
|
89
|
+
- The theme chooser on the user preferences page now shows the text color for
|
|
90
|
+
each color palette in addition to the background color.
|
|
91
|
+
|
|
92
|
+
### Fixed
|
|
93
|
+
|
|
94
|
+
- Added key requirements to error message in tag validation
|
|
95
|
+
([#511](https://github.com/Uninett/Argus/issues/511))
|
|
96
|
+
- Fixed dropdown multi-select fields (e.g. Source Types) selecting first item
|
|
97
|
+
when clicked ([#1697](https://github.com/Uninett/Argus/issues/1697))
|
|
98
|
+
- Show meaningful error messages in UI and log full tracebacks for HTMX errors
|
|
99
|
+
instead of generic "500 Internal Server Error" and HTML content
|
|
100
|
+
([#1702](https://github.com/Uninett/Argus/issues/1702))
|
|
101
|
+
- Fixed page size preference being reset to default when visiting the incidents
|
|
102
|
+
page without a `page_size` URL parameter
|
|
103
|
+
([#1704](https://github.com/Uninett/Argus/issues/1704))
|
|
104
|
+
- Fix bug where multiselect is not cleared when de-selecting all options
|
|
105
|
+
([#1751](https://github.com/Uninett/Argus/issues/1751))
|
|
106
|
+
- Fixed longstanding bug that led to fewer notifications than expected. Instead
|
|
107
|
+
of checking when an *event* happened in order to decide whether to send
|
|
108
|
+
a notification, we only checked when the incident *started*. So, no
|
|
109
|
+
notifications could be sent for long-lasting incidents if they started
|
|
110
|
+
outside of all active timeslots.
|
|
111
|
+
- Missing filters are now handled better. If a filter was deleted while it was
|
|
112
|
+
in use by the incident list page, the page would get stuck with a "500 Server
|
|
113
|
+
Error" until the filter was manually removed from the session.
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
## [2.6.0] - 2026-01-06
|
|
117
|
+
|
|
118
|
+
This is a tiny release to finish up what was started at the end of 2025.
|
|
119
|
+
|
|
120
|
+
### Added
|
|
121
|
+
|
|
122
|
+
- Add preview for incident table preferences
|
|
123
|
+
([#1658](https://github.com/Uninett/Argus/issues/1658))
|
|
124
|
+
|
|
125
|
+
### Fixed
|
|
126
|
+
|
|
127
|
+
- Filter on source type in dashboard. The previous release made it work for
|
|
128
|
+
notifications but not in the incident list in the frontend.
|
|
129
|
+
- Fix bug where the incident table overlaps filter dropdowns
|
|
130
|
+
([#1669](https://github.com/Uninett/Argus/issues/1669))
|
|
131
|
+
|
|
132
|
+
|
|
11
133
|
## [2.5.0] - 2025-12-04
|
|
12
134
|
|
|
13
135
|
The big new thing this time around is a way to prevent notifications from
|
|
@@ -54,3 +54,21 @@ Nuts and bolts
|
|
|
54
54
|
|
|
55
55
|
* How to write a changelog, and when `(local copy) <./docs/development/howtos/changelog-entry.rst>`_, `RTD <https://argus-server.readthedocs.io/en/latest/development/howtos/changelog-entry.html>`_
|
|
56
56
|
* What we want to see in a commit message `(local copy) <./docs/development/howtos/commit-messages.rst>`_, `RTD <https://argus-server.readthedocs.io/en/latest/development/howtos/commit-messages.html>`_
|
|
57
|
+
|
|
58
|
+
Contributor License Agreement
|
|
59
|
+
=============================
|
|
60
|
+
|
|
61
|
+
To contribute code to Argus, you need to sign our contributor license
|
|
62
|
+
agreement, based on The Free Software Foundation's `Fiduciary License
|
|
63
|
+
Agreement 2.0 <https://fsfe.org/activities/ftf/fla.en.html>`_.
|
|
64
|
+
|
|
65
|
+
We use `CLA assistant`_ to streamline the process. When you create a pull
|
|
66
|
+
request against the Argus repository and have not previously signed our
|
|
67
|
+
agreement, the assistant will automatically post a comment on your pull
|
|
68
|
+
request with instructions on how to sign it digitally using your GitHub
|
|
69
|
+
account.
|
|
70
|
+
|
|
71
|
+
`The full agreement text can be read at the CLA Assistant site.
|
|
72
|
+
<https://cla-assistant.io/Uninett/Argus>`_
|
|
73
|
+
|
|
74
|
+
.. _CLA assistant: https://cla-assistant.io/
|
|
@@ -3,6 +3,65 @@
|
|
|
3
3
|
This file documents changes to Argus that are relevant for operations,
|
|
4
4
|
customizers and end-users.
|
|
5
5
|
|
|
6
|
+
## [2.7.0] - 2026-01-23
|
|
7
|
+
|
|
8
|
+
### Planned maintenance
|
|
9
|
+
|
|
10
|
+
This release improves the UX for creating planned maintenance tasks, by having
|
|
11
|
+
dedicated pages for it and allowing all logged in users to see the list of
|
|
12
|
+
future, ongoing and past planned maintenance periods. There is also a new
|
|
13
|
+
column `under_plannedmaintenance`. This column depends on two new management commands:
|
|
14
|
+
|
|
15
|
+
- `check_started_maintenance`
|
|
16
|
+
- `check_ended_maintenance`
|
|
17
|
+
|
|
18
|
+
Both takes an argument `--minutes` which defaults to 5. These commands connects
|
|
19
|
+
and disconnects incidents to a planned maintenance task if they fit the
|
|
20
|
+
criteria set in the filter(s).
|
|
21
|
+
|
|
22
|
+
The commands are designed to be run via cron or similar repetitive scheduler.
|
|
23
|
+
|
|
24
|
+
### Public filters
|
|
25
|
+
|
|
26
|
+
Filters can now be public. At the moment they can only be created by admins in
|
|
27
|
+
the admin. The idea is to make it easy to have a little library of the most
|
|
28
|
+
useful, most used or just default filters, allowing you to get started quicker.
|
|
29
|
+
|
|
30
|
+
### New columns
|
|
31
|
+
|
|
32
|
+
- `id` and `search_id`
|
|
33
|
+
- `under_maintenance`
|
|
34
|
+
- `end_time` and `narrow_end_time`
|
|
35
|
+
- `narrow_start_time_and_age` is the old `start_time_and_age`, a new
|
|
36
|
+
`start_time_and_age` is wider.
|
|
37
|
+
- `compact_level` and `compact_select_levels`, only showing the number.
|
|
38
|
+
- `events`, to help with making filters for sending notifications
|
|
39
|
+
|
|
40
|
+
### New column layouts
|
|
41
|
+
|
|
42
|
+
There are two new column presets, one for making notification filters and
|
|
43
|
+
another for making planned maintenance tasks. With the classic built-in layout
|
|
44
|
+
that means there are always a minimum of three column layouts available.
|
|
45
|
+
|
|
46
|
+
### Expect more notification sent
|
|
47
|
+
|
|
48
|
+
A long-standing bug has been fixed that prevented the sending of notifications
|
|
49
|
+
of events that happened if the start of the incident was not covered by
|
|
50
|
+
a notification timeslot. This might mean more notifications! Please set the
|
|
51
|
+
`event types` filter to only the types of events desired.
|
|
52
|
+
|
|
53
|
+
## [2.6.0] - 2026-01-06
|
|
54
|
+
|
|
55
|
+
This is a tiny release to finish up what was started at the end of 2025.
|
|
56
|
+
|
|
57
|
+
The feature for having mutiple column presets for the incident list is now
|
|
58
|
+
finished. Please make add issue if you have a column-type you would like
|
|
59
|
+
added.
|
|
60
|
+
|
|
61
|
+
Also, there were some bugs with the typeahead for the tag filter and the new
|
|
62
|
+
source system type filter that was introduced in 2.4.0, the ones we know of
|
|
63
|
+
have been fixed.
|
|
64
|
+
|
|
6
65
|
## [2.5.0] - 2025-12-04
|
|
7
66
|
|
|
8
67
|
This release adds a new app, "argus.plannedmaintenance", which uses a new
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: argus-server
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.7.0
|
|
4
4
|
Summary: Argus is an alert aggregator for monitoring systems
|
|
5
5
|
Project-URL: Homepage, https://github.com/Uninett/Argus
|
|
6
6
|
Author-email: Uninett Opensource <opensource@uninett.no>
|
|
@@ -8,6 +8,7 @@ License: GPL-3.0-or-later
|
|
|
8
8
|
License-File: LICENSE
|
|
9
9
|
Classifier: Framework :: Django
|
|
10
10
|
Classifier: Framework :: Django :: 5.2
|
|
11
|
+
Classifier: Framework :: Django :: 6.0
|
|
11
12
|
Classifier: Intended Audience :: Information Technology
|
|
12
13
|
Classifier: Intended Audience :: System Administrators
|
|
13
14
|
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
|
@@ -25,7 +26,7 @@ Requires-Dist: django-htmx
|
|
|
25
26
|
Requires-Dist: django-phonenumber-field[phonenumberslite]
|
|
26
27
|
Requires-Dist: django-rest-knox
|
|
27
28
|
Requires-Dist: django-widget-tweaks==1.5.0
|
|
28
|
-
Requires-Dist: django<6.
|
|
29
|
+
Requires-Dist: django<6.1,>=5.2.8
|
|
29
30
|
Requires-Dist: djangorestframework>=3.14
|
|
30
31
|
Requires-Dist: drf-rw-serializers>=1.1
|
|
31
32
|
Requires-Dist: drf-spectacular>=0.17
|
|
@@ -127,7 +127,7 @@ given a ``str``, this key must be available in the
|
|
|
127
127
|
``argus.htmx.incidents.customization.BUILTIN_COLUMNS`` dictionary. For
|
|
128
128
|
example::
|
|
129
129
|
|
|
130
|
-
from argus.htmx.
|
|
130
|
+
from argus.htmx.incident.columns import BUILTIN_COLUMNS, IncidentTableColumn
|
|
131
131
|
|
|
132
132
|
INCIDENT_TABLE_COLUMN_LAYOUTS = {
|
|
133
133
|
"default": [
|
|
@@ -27,24 +27,29 @@ changed incidents.
|
|
|
27
27
|
FilterWrapper
|
|
28
28
|
-------------
|
|
29
29
|
|
|
30
|
-
Base class, the important methods are ``incident_fits`` and
|
|
30
|
+
Base class, the important methods are ``incident_fits``, ``event_fits`` and
|
|
31
|
+
``filter_fits``. The latter two take a single event. ``filter_fits`` checks
|
|
32
|
+
both ``event_fits`` and ``incident_fits``, in that order.
|
|
31
33
|
|
|
32
34
|
FallbackFilterWrapper
|
|
33
35
|
---------------------
|
|
34
36
|
|
|
35
37
|
Subclass of ``FilterWrapper``. Merges a filter with the filter in the setting
|
|
36
|
-
|
|
38
|
+
:setting:`ARGUS_FALLBACK_FILTER`.
|
|
37
39
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
+
PrecisionFilterWrapper
|
|
41
|
+
----------------------
|
|
40
42
|
|
|
41
|
-
|
|
43
|
+
AND's together multiple simple filters, using ``FilterWrapper`` by default. Not
|
|
44
|
+
used directly.
|
|
42
45
|
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
Has the methods ``incident_fits`` and ``event_fits``, and ``filter_fits`` which
|
|
47
|
+
takes an event and checks both ``event_fits`` and ``incident_fits``, in that
|
|
48
|
+
order.
|
|
45
49
|
|
|
46
|
-
|
|
47
|
-
|
|
50
|
+
``NotificationProfile`` has the subclass ``NotificationProfileFilterWrapper``,
|
|
51
|
+
which combines a ``PrecisionFilterWrapper`` with a ``FallbackFilterWrapper``.
|
|
52
|
+
It is thus affected by the setting :setting:`ARGUS_FALLBACK_FILTER`.
|
|
48
53
|
|
|
49
54
|
---------------------------------------
|
|
50
55
|
Matching a filter to multiple incidents
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
==================================================
|
|
2
|
+
How to make a column for an ack with a known group
|
|
3
|
+
==================================================
|
|
4
|
+
|
|
5
|
+
You need a new template for the cell, for instance containing::
|
|
6
|
+
|
|
7
|
+
{% load argus_htmx %}
|
|
8
|
+
{% if incident|is_acked_by:column.context.group %}X{% endif %}
|
|
9
|
+
|
|
10
|
+
Our recommended filename for the template file is::
|
|
11
|
+
|
|
12
|
+
``htmx/incident/cells/_incident_ack_by_group.html``
|
|
13
|
+
|
|
14
|
+
It is *necessary* to use a specialized settings-file for this, since you
|
|
15
|
+
need to both set where to look for the additional template, and to set
|
|
16
|
+
up the actual column.
|
|
17
|
+
|
|
18
|
+
Tell Argus where the template is
|
|
19
|
+
================================
|
|
20
|
+
|
|
21
|
+
There are two available methods to tell Argus where the template is. They can
|
|
22
|
+
be combined, but then the template in the hardcoded directory name (option 2)
|
|
23
|
+
always takes precedence.
|
|
24
|
+
|
|
25
|
+
1. Add a Django app at the start of :setting:`INSTALLED_APPS` that has
|
|
26
|
+
a directory ``templates/`` that contains the new template file. You can use
|
|
27
|
+
the same app for any other overrides.
|
|
28
|
+
2. Add a directory to the :setting:`DIRS` list in the :setting:`TEMPLATES`
|
|
29
|
+
setting, see `Django settings: TEMPLATES
|
|
30
|
+
<https://docs.djangoproject.com/en/5.2/ref/settings/#templates>`_ in the
|
|
31
|
+
official Django documentation. Templates here will override any template
|
|
32
|
+
from any app, provided the relative path matches.
|
|
33
|
+
|
|
34
|
+
Set up the column
|
|
35
|
+
=================
|
|
36
|
+
|
|
37
|
+
You need to add the column to a column config::
|
|
38
|
+
|
|
39
|
+
INCIDENT_TABLE_COLUMN_LAYOUTS = {
|
|
40
|
+
"mylayout":[
|
|
41
|
+
..
|
|
42
|
+
IncidentTableColumn(
|
|
43
|
+
"mygroup_ack",
|
|
44
|
+
"MYGROUP",
|
|
45
|
+
"htmx/incident/cells/_incident_ack_by_group.html",
|
|
46
|
+
context={"group": "MYGROUP"},
|
|
47
|
+
)
|
|
48
|
+
..
|
|
49
|
+
],
|
|
50
|
+
..
|
|
51
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
=======================================
|
|
2
|
+
How to make a column for a specific tag
|
|
3
|
+
=======================================
|
|
4
|
+
|
|
5
|
+
You can add the column to a named column config::
|
|
6
|
+
|
|
7
|
+
INCIDENT_TABLE_COLUMN_LAYOUTS = {
|
|
8
|
+
"mylayout": [
|
|
9
|
+
..
|
|
10
|
+
IncidentTableColumn(
|
|
11
|
+
"mytag",
|
|
12
|
+
"MYTAG",
|
|
13
|
+
"htmx/incidents/cells/_incident_tag.html",
|
|
14
|
+
context={"tag": "MYTAG"},
|
|
15
|
+
)
|
|
16
|
+
..
|
|
17
|
+
]
|
|
18
|
+
..
|
|
19
|
+
}
|
|
@@ -16,4 +16,13 @@ python:S1192 - String literals should not be duplicated
|
|
|
16
16
|
If it makes it more readable, for example if configuration is happening within the
|
|
17
17
|
Python code, then we accept it with "This is better for readability".
|
|
18
18
|
|
|
19
|
+
python:S2208 - Wildcard imports should not be used
|
|
20
|
+
--------------------------------------------------
|
|
21
|
+
|
|
22
|
+
This is okay in settings files. Mark as false positive with "Django standard
|
|
23
|
+
practice for settings files". Notice that `sonarqube`_ ignores all ``#noqa``
|
|
24
|
+
so "#noqa: `F401`_, `F403`_" won't help.
|
|
25
|
+
|
|
19
26
|
.. _sonarqube: https://www.sonarsource.com/products/sonarcloud/
|
|
27
|
+
.. _F401: https://www.flake8rules.com/rules/F401.html
|
|
28
|
+
.. _F403: https://www.flake8rules.com/rules/F403.html
|
|
@@ -466,6 +466,31 @@ whether the user is a superuser (superuser) or not (nosuperuser). Superusers
|
|
|
466
466
|
have by default access to the admin, but this can be turned off with
|
|
467
467
|
``--nostaff``.
|
|
468
468
|
|
|
469
|
+
Planned maintenance handling
|
|
470
|
+
============================
|
|
471
|
+
Connect new planned maintenance tasks with their covered incidents
|
|
472
|
+
------------------------------------------------------------------
|
|
473
|
+
|
|
474
|
+
There is a command ``check_started_maintenance``. It takes an argument ``--minutes``
|
|
475
|
+
(default 5 min) and will find all planned maintenance tasks that have started within
|
|
476
|
+
the last x minutes. For each of these tasks it finds all open incidents that are
|
|
477
|
+
covered by it and adds them to the ``incidents`` list of that task if it isn't already
|
|
478
|
+
there.
|
|
479
|
+
|
|
480
|
+
This field will be used to show in the dashboard which incidents are covered by an
|
|
481
|
+
ongoing planned maintenance task.
|
|
482
|
+
|
|
483
|
+
Remove covered incidents from recently closed planned maintenance tasks
|
|
484
|
+
-----------------------------------------------------------------------
|
|
485
|
+
|
|
486
|
+
There is a command ``check_ended_maintenance``. It takes an argument ``--minutes``
|
|
487
|
+
(default 5 min) and will find all planned maintenance tasks that have ended within the
|
|
488
|
+
last x minutes. For each of these tasks it clears the ``incidents`` field of that task.
|
|
489
|
+
|
|
490
|
+
This field is be used to show in the dashboard which incidents are covered by an
|
|
491
|
+
ongoing planned maintenance task. Since the task has ended these incidents are not
|
|
492
|
+
covered by it anymore.
|
|
493
|
+
|
|
469
494
|
Deprecated/overlapping commands
|
|
470
495
|
===============================
|
|
471
496
|
|
|
Binary file
|