django-bulk-hooks 0.1.63__tar.gz → 0.1.64__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.63 → django_bulk_hooks-0.1.64}/PKG-INFO +1 -1
  2. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/decorators.py +0 -1
  3. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/engine.py +1 -1
  4. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/registry.py +19 -0
  5. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/pyproject.toml +1 -1
  6. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/LICENSE +0 -0
  7. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/README.md +0 -0
  8. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/__init__.py +0 -0
  9. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/conditions.py +0 -0
  10. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/constants.py +0 -0
  11. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/context.py +0 -0
  12. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/enums.py +0 -0
  13. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/handler.py +0 -0
  14. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/manager.py +0 -0
  15. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/models.py +0 -0
  16. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/priority.py +0 -0
  17. {django_bulk_hooks-0.1.63 → django_bulk_hooks-0.1.64}/django_bulk_hooks/queryset.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-bulk-hooks
3
- Version: 0.1.63
3
+ Version: 0.1.64
4
4
  Summary: Lifecycle-style hooks for Django bulk operations like bulk_create and bulk_update.
5
5
  License: MIT
6
6
  Keywords: django,bulk,hooks
@@ -3,7 +3,6 @@ from functools import wraps
3
3
 
4
4
  from django.core.exceptions import FieldDoesNotExist
5
5
  from django_bulk_hooks.enums import DEFAULT_PRIORITY
6
- from django_bulk_hooks.constants import BEFORE_UPDATE
7
6
  from django_bulk_hooks.registry import register_hook
8
7
 
9
8
 
@@ -9,7 +9,7 @@ def run(model_cls, event, new_instances, original_instances=None, ctx=None):
9
9
  hooks = get_hooks(model_cls, event)
10
10
 
11
11
  logger.debug(
12
- "bulk_hooks.run: model=%s, event=%s, #new=%d, #original=%d",
12
+ "Executing engine.run: model=%s, event=%s, #new_instances=%d, #original_instances=%d",
13
13
  model_cls.__name__,
14
14
  event,
15
15
  len(new_instances),
@@ -3,6 +3,10 @@ from typing import Union
3
3
 
4
4
  from django_bulk_hooks.priority import Priority
5
5
 
6
+ import logging
7
+
8
+ logger = logging.getLogger(__name__)
9
+
6
10
  _hooks: dict[tuple[type, str], list[tuple[type, str, Callable, int]]] = {}
7
11
 
8
12
 
@@ -14,7 +18,22 @@ def register_hook(
14
18
  hooks.append((handler_cls, method_name, condition, priority))
15
19
  # keep sorted by priority
16
20
  hooks.sort(key=lambda x: x[3])
21
+ logger.debug(
22
+ "Registering hook: model=%s, event=%s, handler_cls=%s, method_name=%s, condition=%s, priority=%s",
23
+ model.__name__,
24
+ event,
25
+ handler_cls.__name__,
26
+ method_name,
27
+ condition,
28
+ priority,
29
+ )
17
30
 
18
31
 
19
32
  def get_hooks(model, event):
33
+ logger.debug(
34
+ "Retrieving hooks: model=%s, event=%s, hooks_found=%d",
35
+ model.__name__,
36
+ event,
37
+ len(_hooks.get((model, event), [])),
38
+ )
20
39
  return _hooks.get((model, event), [])
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-bulk-hooks"
3
- version = "0.1.63"
3
+ version = "0.1.64"
4
4
  description = "Lifecycle-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"