Releases: Uninett/Argus
[1.19.2] - 2024-05-28
Added
- There is now a commented line in
argus.site.urls.urlpatterns
that if
uncommented will allow logging into the API with username/password. This
allows the use of the DRF HTML api to change records. This partially works
with django-debug-toolbar and should ease some debugging sessions.
Changed
- Optimized PUT/PATCH of incidents in API v2. Mainly by no longer replacing
Incident.search_text
on every Incident save, thereby avoiding looking up
all events for that incident. The old behavior was fine when there was only
a handful of events per incident but we can no longer assume that.
[1.19.1] - 2024-05-16
Fixed
- Fixed bug preventing naive printing of TimeRecurrences, triggering a traceback
[1.19.0] - 2024-05-15
Backwards-incompatible change: Because it is now possible to filter on
multiple event types instead of just one, both API V1 and API V2 has changed
its schema for Filter.filter. See NOTES.md for details.
Removed
- Removed
"event_type"
from the V1 Filter API, it should only have been
available in V2 (since it was new) and it has never been in use by the
frontend. (#699)
Added
- Add filtering of events by a list of event types
(#699) - Add howto about how to set up and test federated login, using GitHub as an
example. (#803) - Extend the usefulness of
OVERRIDE_APPS
andEXTRA_APPS
by adding support
for Django template engine context processors. Any context processors are
added to the end of the list.
(#810)
Changed
- Change how the description of a change event is formatted so that it is
always consistent (not to mention DRY).
(#809)
[1.18.0] - 2024-05-07
[1.17.0] - 2024-05-03
Added
- Add a possibility to filter incidents by start time in incident admin list
(#739) - Added an optional JSONField "metadata" to incident. This can be used for any
additional info the glue-service would like to store on the incident that
needs more structure than tags. The field has been added to the V2
IncidentSerializer but we do not plan to expose it in the frontend. - Added documentation on how to safely test notifications.
- Added simple support for pluggable django-apps. The setting
OVERRIDING_APPS
is loaded first inINSTALLED_APPS
andurls.py
, and can override templates
and views. The settingEXTRA_APPS
is safer, it is loaded last in
INSTALLED_APPS
andurls.py
and can therefore only add additional
templates and views.
Changed
- When editing a notification profile in the admin UI, only the profile owner's
own filters are now listed as available for selection.
(#735) - Linked up the second column in the admin incident list to the details view in
addition to the default first column because the first column is currently an
optional field. If the field has no value there can also not be a link. - Update the release checklist in
docs/
to current practices and turn it into
a howto.
Fixed
[1.16.0] - 2024-04-23
Added
- Added development dependency on django-debug-toolbar to make it easy to use.
- Adds more capability to the stresstest command, including incident creation
verification, bulk ACKing and timeout configuration.
(#641) - Add possibility to set fields when creating fake incidents in Django admin
(#669) - Show user and filter by user in notification profile admin
(#734) - Add cli command to toggle notification profile activation
(#747) - Add admin action to change activation of profiles
(#748) - Add API documentation for GET responses
(#752) - Added an informational page on /, with favicon, in order to cut down on some
common 404 log messages and set up the static files system properly.
Changed
- Switched official Docker image to serve using gunicorn+uvicorn
(#766) - Changed how tristates (open, acked, stateful) are logged in order to improve
debuggability. - Return False and log if sms-to-email has trouble with the email server.
- To improve debugability: Change how sending notifications are logged so that
there's a log both when sending succeds and when it fails.
Fixed
[1.15.0] - 2024-04-10
Due to the removal of the django-multiselectfield dependency it is vitally
important to upgrade to this version after correctly having upgraded to
1.14.3 (the previous version).
Be sure to migrate the database:
$ python manage.py migrate
This version supports Django 4.2 and newer.
Changed
- Drop all support for Django 3.2. No version-specific requirements for 3.2 are
included anymore, and we no longer test on 3.2.
Removed
- Remove django-multiselectfield dependency (#707)
[1.14.3] - 2024-04-09
This release changes the database in order to get rid of a dead dependency,
make sure to run migrations.
This version can run on Django 5.0 if necessary. Install the dependencies in
requirements-django50.txt
if so.
Added
-
Add filtering of incident list by notificationprofile
This returns all incidents that are included in filters that are connected to
that notificationprofile -
Added support for running and testing on Django 5.0
Changed
- Change TimeRecurrence.days from MultiSelectField to ArrayField
(#707) - Updated lots of depenendcies in order to run on Django 5.0
v1.14.2 - 2024-02-15
This version can run on Django 4.2. In production, ensure that the list of
entries in CSRF_TRUSTED_ORIGINS
are absolute urls, all starting with
https://
.
Added
-
Add filtering of incident list by filter
This returns all incidents that are included in the filter
(#244) -
Allow running and testing on Python 3.12
-
Added towncrier to automatically produce changelog
-
Add two development dependencies
While
tox
doesn't need to be in the venv, it DOES currently need to be less
than version 4.build
is useful for debugging pip errors and pip-compile trouble.
Whenever pip-compile (viatox -e upgrade-deps
for instance) fails withBackend subprocess exited when trying to invoke get_requires_for_build_wheel Failed to parse /PATH/pyproject.toml
run
python -m build -w
to see whatbuild
is actually complaining about.See also pypa/build#553
-
Add the "admin_url" field to the user serializer. This is so that the
frontend can show a link to the Django admin. -
Added the possibility to filter incident by a given list of ids
Fixed
- Fixed posting/updating notification profiles without name
Changed
- Updated a lot of (sub)dependencies to allow running on newer pythons and
newer Djangos, and to quiet dependency bots
v1.14.1 - 2023-12-05
Changed
- Restructured documentation about integrations