django-bulk-hooks 0.1.74__py3-none-any.whl → 0.1.75__py3-none-any.whl

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.

@@ -178,13 +178,9 @@ class BulkHookManager(models.Manager):
178
178
 
179
179
  pks = [obj.pk for obj in objs if obj.pk is not None]
180
180
 
181
- # Set flag to prevent recursion during the actual deletion
182
- set_bulk_operation_flag(True)
183
- try:
184
- # Use the custom manager - hooks won't fire again due to the flag
185
- model_cls.objects.filter(pk__in=pks).delete()
186
- finally:
187
- set_bulk_operation_flag(False)
181
+ # Use base manager for the actual deletion to prevent recursion
182
+ # The hooks have already been fired above, so we don't need them again
183
+ model_cls._base_manager.filter(pk__in=pks).delete()
188
184
 
189
185
  if not bypass_hooks:
190
186
  engine.run(model_cls, AFTER_DELETE, objs, ctx=ctx)
@@ -8,15 +8,7 @@ class HookQuerySet(models.QuerySet):
8
8
  objs = list(self)
9
9
  if not objs:
10
10
  return 0
11
-
12
- # If we're already in a bulk operation, use base manager to prevent recursion
13
- if is_in_bulk_operation():
14
- # Use standard Django delete method on base manager
15
- pks = [obj.pk for obj in objs if obj.pk is not None]
16
- return self.model._base_manager.filter(pk__in=pks).delete()[0]
17
- else:
18
- # Normal case - use custom manager to ensure hooks fire
19
- return self.model.objects.bulk_delete(objs)
11
+ return self.model.objects.bulk_delete(objs)
20
12
 
21
13
  @transaction.atomic
22
14
  def update(self, **kwargs):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-bulk-hooks
3
- Version: 0.1.74
3
+ Version: 0.1.75
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
@@ -6,12 +6,12 @@ django_bulk_hooks/decorators.py,sha256=tckDcxtOzKCbgvS9QydgeIAWTFDEl-ch3_Q--ruEG
6
6
  django_bulk_hooks/engine.py,sha256=3HbgV12JRYIy9IlygHPxZiHnFXj7EwzLyTuJNQeVIoI,1402
7
7
  django_bulk_hooks/enums.py,sha256=Zo8_tJzuzZ2IKfVc7gZ-0tWPT8q1QhqZbAyoh9ZVJbs,381
8
8
  django_bulk_hooks/handler.py,sha256=xZt8iNdYF-ACz-MnKMY0co6scWINU5V5wC1lyDn844k,4854
9
- django_bulk_hooks/manager.py,sha256=PYPq0incwM16tULpCfbR93GrGHcPtGyj4w6s0w1HCn0,7788
9
+ django_bulk_hooks/manager.py,sha256=JFysEnWGkhUVk-j-b9eqE-hBEQ3YZi9pqQYzrjsRYi8,7681
10
10
  django_bulk_hooks/models.py,sha256=7RG7GrOdHXFjGVPV4FPRZVNMIHHW-hMCi6hn9LH_hVI,3331
11
11
  django_bulk_hooks/priority.py,sha256=HG_2D35nga68lBCZmSXTcplXrjFoRgZFRDOy4ROKonY,376
12
- django_bulk_hooks/queryset.py,sha256=vC00-LnXefpjzfz8k2qwPJ4c_Pd4baZzslzMk-ggLg4,2140
12
+ django_bulk_hooks/queryset.py,sha256=A-FVN7zMU3G9o4dAgpN5Ut_U1mOPF6VKStUqh7LO9Bo,1712
13
13
  django_bulk_hooks/registry.py,sha256=-mQBizJ06nz_tajZBinViKx_uP2Tbc1tIpTEMv7lwKA,705
14
- django_bulk_hooks-0.1.74.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
15
- django_bulk_hooks-0.1.74.dist-info/METADATA,sha256=jlNy6giclDB1tQKvBYxcZ72WJ5TlnzlSJy3YP-GyyGs,5930
16
- django_bulk_hooks-0.1.74.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
17
- django_bulk_hooks-0.1.74.dist-info/RECORD,,
14
+ django_bulk_hooks-0.1.75.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
15
+ django_bulk_hooks-0.1.75.dist-info/METADATA,sha256=eRa7Wrk2WX88DYOJWJjDNtRkecgmRH8nwd58YZ1QN98,5930
16
+ django_bulk_hooks-0.1.75.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
17
+ django_bulk_hooks-0.1.75.dist-info/RECORD,,