django-bulk-hooks 0.1.151__tar.gz → 0.1.152__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.151 → django_bulk_hooks-0.1.152}/PKG-INFO +1 -1
  2. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/queryset.py +13 -12
  3. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/pyproject.toml +1 -1
  4. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/LICENSE +0 -0
  5. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/README.md +0 -0
  6. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/__init__.py +0 -0
  7. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/conditions.py +0 -0
  8. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/constants.py +0 -0
  9. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/context.py +0 -0
  10. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/decorators.py +0 -0
  11. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/engine.py +0 -0
  12. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/enums.py +0 -0
  13. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/handler.py +0 -0
  14. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/manager.py +0 -0
  15. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/models.py +0 -0
  16. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/django_bulk_hooks/priority.py +0 -0
  17. {django_bulk_hooks-0.1.151 → django_bulk_hooks-0.1.152}/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.151
3
+ Version: 0.1.152
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
@@ -120,26 +120,27 @@ class HookQuerySet(models.QuerySet):
120
120
  # For MTI models, we need to handle them specially
121
121
  if is_mti:
122
122
  # Use our MTI-specific logic
123
+ # Filter out custom parameters that Django's bulk_create doesn't accept
124
+ mti_kwargs = {
125
+ 'batch_size': batch_size,
126
+ 'ignore_conflicts': ignore_conflicts,
127
+ 'update_conflicts': update_conflicts,
128
+ 'update_fields': update_fields,
129
+ 'unique_fields': unique_fields,
130
+ }
123
131
  result = self._mti_bulk_create(
124
132
  objs,
125
- batch_size=batch_size,
126
- ignore_conflicts=ignore_conflicts,
127
- update_conflicts=update_conflicts,
128
- update_fields=update_fields,
129
- unique_fields=unique_fields,
133
+ **mti_kwargs
130
134
  )
131
135
  else:
132
136
  # For single-table models, use Django's built-in bulk_create
133
137
  # but we need to call it on the base manager to avoid recursion
134
138
  # Filter out custom parameters that Django's bulk_create doesn't accept
135
139
 
136
- # Use Django's original manager to avoid recursive calls
137
- # Get the original manager class (not our BulkHookManager)
138
- from django.db.models import Manager
139
- original_manager = Manager()
140
- original_manager.model = model_cls
141
- original_manager._db = self.db
142
- result = original_manager.bulk_create(
140
+ # Use Django's original QuerySet to avoid recursive calls
141
+ from django.db.models import QuerySet
142
+ original_qs = QuerySet(model_cls, using=self.db)
143
+ result = original_qs.bulk_create(
143
144
  objs,
144
145
  batch_size=batch_size,
145
146
  ignore_conflicts=ignore_conflicts,
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-bulk-hooks"
3
- version = "0.1.151"
3
+ version = "0.1.152"
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"