django-bulk-hooks 0.1.180__tar.gz → 0.1.181__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.

Potentially problematic release.


This version of django-bulk-hooks might be problematic. Click here for more details.

Files changed (17) hide show
  1. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/PKG-INFO +1 -1
  2. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/queryset.py +7 -9
  3. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/pyproject.toml +1 -1
  4. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/LICENSE +0 -0
  5. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/README.md +0 -0
  6. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/__init__.py +0 -0
  7. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/conditions.py +0 -0
  8. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/constants.py +0 -0
  9. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/context.py +0 -0
  10. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/decorators.py +0 -0
  11. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/engine.py +0 -0
  12. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/enums.py +0 -0
  13. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/handler.py +0 -0
  14. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/manager.py +0 -0
  15. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/models.py +0 -0
  16. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/priority.py +0 -0
  17. {django_bulk_hooks-0.1.180 → django_bulk_hooks-0.1.181}/django_bulk_hooks/registry.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-bulk-hooks
3
- Version: 0.1.180
3
+ Version: 0.1.181
4
4
  Summary: Hook-style hooks for Django bulk operations like bulk_create and bulk_update.
5
5
  License: MIT
6
6
  Keywords: django,bulk,hooks
@@ -17,8 +17,6 @@ from django_bulk_hooks.context import HookContext
17
17
 
18
18
 
19
19
  class HookQuerySet(models.QuerySet):
20
- CHUNK_SIZE = 200
21
-
22
20
  @transaction.atomic
23
21
  def delete(self):
24
22
  objs = list(self)
@@ -537,7 +535,7 @@ class HookQuerySet(models.QuerySet):
537
535
  """
538
536
  model_cls = self.model
539
537
  inheritance_chain = self._get_inheritance_chain()
540
-
538
+
541
539
  # Group fields by model in the inheritance chain
542
540
  field_groups = {}
543
541
  for field_name in fields:
@@ -549,31 +547,31 @@ class HookQuerySet(models.QuerySet):
549
547
  field_groups[model] = []
550
548
  field_groups[model].append(field_name)
551
549
  break
552
-
550
+
553
551
  # Update each table in the inheritance chain
554
552
  total_updated = 0
555
553
  for model, model_fields in field_groups.items():
556
554
  if not model_fields:
557
555
  continue
558
-
556
+
559
557
  # Get objects that have this model's fields
560
558
  model_objs = []
561
559
  for obj in objs:
562
560
  # Create a temporary object with just this model's fields
563
561
  temp_obj = model()
564
562
  temp_obj.pk = obj.pk # Set the primary key
565
-
563
+
566
564
  # Copy only the fields for this model
567
565
  for field_name in model_fields:
568
566
  if hasattr(obj, field_name):
569
567
  setattr(temp_obj, field_name, getattr(obj, field_name))
570
-
568
+
571
569
  model_objs.append(temp_obj)
572
-
570
+
573
571
  # Use Django's bulk_update for this model's table
574
572
  # This will automatically use batch_size from kwargs
575
573
  base_qs = model._base_manager.using(self.db)
576
574
  updated_count = base_qs.bulk_update(model_objs, model_fields, **kwargs)
577
575
  total_updated += updated_count
578
-
576
+
579
577
  return total_updated
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-bulk-hooks"
3
- version = "0.1.180"
3
+ version = "0.1.181"
4
4
  description = "Hook-style hooks for Django bulk operations like bulk_create and bulk_update."
5
5
  authors = ["Konrad Beck <konrad.beck@merchantcapital.co.za>"]
6
6
  readme = "README.md"