django-bulk-hooks 0.2.20__py3-none-any.whl → 0.2.22__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.

@@ -497,10 +497,17 @@ class BulkExecutor:
497
497
 
498
498
  logger.error(f"DEBUG FK VALUE AFTER: value={value!r}, type={type(value)}")
499
499
 
500
+ # Create the Value expression - don't use output_field for None values
501
+ # This prevents PostgreSQL type mismatch errors with NULL values
502
+ if value is not None:
503
+ value_expr = Value(value, output_field=target_field)
504
+ else:
505
+ value_expr = Value(None) # No output_field for None
506
+
500
507
  when_statements.append(
501
508
  When(
502
509
  **{field_group.filter_field: pk},
503
- then=Value(value, output_field=target_field),
510
+ then=value_expr,
504
511
  ),
505
512
  )
506
513
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: django-bulk-hooks
3
- Version: 0.2.20
3
+ Version: 0.2.22
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
@@ -13,14 +13,14 @@ django_bulk_hooks/manager.py,sha256=3mFzB0ZzHHeXWdKGObZD_H0NlskHJc8uYBF69KKdAXU,
13
13
  django_bulk_hooks/models.py,sha256=4Vvi2LiGP0g4j08a5liqBROfsO8Wd_ermBoyjKwfrPU,2512
14
14
  django_bulk_hooks/operations/__init__.py,sha256=BtJYjmRhe_sScivLsniDaZmBkm0ZLvcmzXFKL7QY2Xg,550
15
15
  django_bulk_hooks/operations/analyzer.py,sha256=8xNdsoeOCHsIIP7ztIuFHDewBR2dDSS6auOrSU8zmqE,9007
16
- django_bulk_hooks/operations/bulk_executor.py,sha256=4SyNzLOAAKpGwVo5HbbT1V3rHqU-2FxGCmzbbbcqF8M,23497
16
+ django_bulk_hooks/operations/bulk_executor.py,sha256=U0E47k-69Eq0fKAiRB43DohmluKeFSWGJhOy13jRdVI,23922
17
17
  django_bulk_hooks/operations/coordinator.py,sha256=iSi-x3fq6_3UygWGeQY8Fq_gZWIqq_8N7WddPhVeygk,23526
18
18
  django_bulk_hooks/operations/mti_handler.py,sha256=G-pxkzIqHqXGshRGksqmsN1J3rlzePUZrSv4wm7D3cQ,19162
19
19
  django_bulk_hooks/operations/mti_plans.py,sha256=YP7LcV9Z8UqNS_x74OswF9_5swqruRTdAu6z-J_R6C0,3377
20
20
  django_bulk_hooks/operations/record_classifier.py,sha256=KzUoAhfoqzFVrOabNZAby9Akb54h-fAQZmb8O-fIx_0,6221
21
21
  django_bulk_hooks/queryset.py,sha256=rvJgQLwtSJztwc68nkJ6xwCsnbXQvkvS6_dbGGj8TFo,5886
22
22
  django_bulk_hooks/registry.py,sha256=QyeA2OqNdMAMaLjFU9UF0YGhKiPKbZkmFQpLgof7uNs,9038
23
- django_bulk_hooks-0.2.20.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
24
- django_bulk_hooks-0.2.20.dist-info/METADATA,sha256=XBNiNl1f2ZKJnC7Gxm7mBtIl0IR-9olGzbs8rZpviPg,9265
25
- django_bulk_hooks-0.2.20.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
26
- django_bulk_hooks-0.2.20.dist-info/RECORD,,
23
+ django_bulk_hooks-0.2.22.dist-info/LICENSE,sha256=dguKIcbDGeZD-vXWdLyErPUALYOvtX_fO4Zjhq481uk,1088
24
+ django_bulk_hooks-0.2.22.dist-info/METADATA,sha256=0jXouvqa4ehgMTzDZnlAwHhPb9opqqLNZ_y80jn1Uc8,9265
25
+ django_bulk_hooks-0.2.22.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
26
+ django_bulk_hooks-0.2.22.dist-info/RECORD,,