diff -Naur admin.old/actions.py admin/actions.py
--- admin.old/actions.py	2023-08-29 13:05:51.094478414 +0100
+++ admin/actions.py	2023-08-29 11:35:59.617218995 +0100
@@ -48,7 +48,9 @@
             for obj in queryset:
                 obj_display = str(obj)
                 modeladmin.log_deletion(request, obj, obj_display)
-            modeladmin.delete_queryset(request, queryset)
+            actually_deleted_count = modeladmin.delete_queryset(request, queryset)
+            if actually_deleted_count is not None:
+                n = actually_deleted_count
             modeladmin.message_user(
                 request,
                 _("Successfully deleted %(count)d %(items)s.")
diff -Naur admin.old/options.py admin/options.py
--- admin.old/options.py	2023-08-29 13:10:16.396612682 +0100
+++ admin/options.py	2023-08-29 11:35:04.586069565 +0100
@@ -1233,8 +1233,12 @@
         obj.delete()
 
     def delete_queryset(self, request, queryset):
-        """Given a queryset, delete it from the database."""
-        queryset.delete()
+        """
+        Given a queryset, delete it from the database.
+        Optionally return the number of items deleted.
+        """
+        actually_deleted_count, _objecttypes = queryset.delete()
+        return actually_deleted_count
 
     def save_formset(self, request, form, formset, change):
         """
