epok-toolkit 1.12.2__tar.gz → 1.12.4__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 epok-toolkit might be problematic. Click here for more details.

Files changed (38) hide show
  1. {epok_toolkit-1.12.2/epok_toolkit.egg-info → epok_toolkit-1.12.4}/PKG-INFO +2 -2
  2. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/README.md +1 -1
  3. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/viewsets.py +35 -17
  4. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4/epok_toolkit.egg-info}/PKG-INFO +2 -2
  5. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/pyproject.toml +1 -1
  6. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/LICENSE +0 -0
  7. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/MANIFEST.in +0 -0
  8. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/__init__.py +0 -0
  9. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/apps.py +0 -0
  10. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/default_settings.py +0 -0
  11. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/__init__.py +0 -0
  12. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/cache.py +0 -0
  13. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/fields.py +0 -0
  14. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/manager.py +0 -0
  15. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/models.py +0 -0
  16. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/response.py +0 -0
  17. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/utils/__init__.py +0 -0
  18. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/django/utils/magic_link.py +0 -0
  19. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/email/__init__.py +0 -0
  20. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/email/email_async.py +0 -0
  21. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/email/engine.py +0 -0
  22. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/email/templates.py +0 -0
  23. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/messaging/__init__.py +0 -0
  24. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/messaging/whatsapp.py +0 -0
  25. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/messaging/whatsapp_instanced.py +0 -0
  26. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/__init__.py +0 -0
  27. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/fuentes/Kollektif-Bold.ttf +0 -0
  28. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/fuentes/Kollektif-BoldItalic.ttf +0 -0
  29. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/fuentes/Kollektif-Italic.ttf +0 -0
  30. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/fuentes/Kollektif.ttf +0 -0
  31. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/plantillas/Ticket_congrats.png +0 -0
  32. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/plantillas/Ticket_congrats2.png +0 -0
  33. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit/pdf/ticket_pdf.py +0 -0
  34. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit.egg-info/SOURCES.txt +0 -0
  35. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit.egg-info/dependency_links.txt +0 -0
  36. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit.egg-info/requires.txt +0 -0
  37. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/epok_toolkit.egg-info/top_level.txt +0 -0
  38. {epok_toolkit-1.12.2 → epok_toolkit-1.12.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: epok-toolkit
3
- Version: 1.12.2
3
+ Version: 1.12.4
4
4
  Summary: Una herramienta para la gestión de tareas y procesos en Django con Celery.
5
5
  Author-email: Fernando Leon Franco <fernanlee2131@gmail.com>
6
6
  License: MIT
@@ -23,7 +23,7 @@ Dynamic: license-file
23
23
 
24
24
 
25
25
 
26
- # EPOK Toolkit 'v1.11.2'
26
+ # EPOK Toolkit 'v1.12.4'
27
27
 
28
28
  EPOK Toolkit es una librería de utilidades para proyectos Django y Python, diseñada para facilitar tareas comunes como envío de emails, mensajería WhatsApp, generación de PDFs y manejo avanzado de caché en APIs.
29
29
 
@@ -1,6 +1,6 @@
1
1
 
2
2
 
3
- # EPOK Toolkit 'v1.11.2'
3
+ # EPOK Toolkit 'v1.12.4'
4
4
 
5
5
  EPOK Toolkit es una librería de utilidades para proyectos Django y Python, diseñada para facilitar tareas comunes como envío de emails, mensajería WhatsApp, generación de PDFs y manejo avanzado de caché en APIs.
6
6
 
@@ -16,12 +16,16 @@ class DefaultPagination(PageNumberPagination):
16
16
 
17
17
 
18
18
  class BaseOptimizedViewSet(viewsets.ModelViewSet):
19
+ """
20
+ Clase base para ViewSets optimizados.
21
+
22
+ """
19
23
  queryset = None
20
24
  write_serializer_class = None
21
25
  update_serializer_class = None
22
26
  simple_serializer_class = None
23
27
  full_serializer_class = None
24
- serializer_class = full_serializer_class
28
+ serializer_class = None
25
29
  extensions_auto_optimize = True
26
30
 
27
31
  permission_classes = [IsAuthenticated]
@@ -39,39 +43,53 @@ class BaseOptimizedViewSet(viewsets.ModelViewSet):
39
43
  manager = model_cls._default_manager
40
44
 
41
45
  if hasattr(manager, 'simple') and self.action == 'list':
42
- log.debug("| LIBRERIA |Usando sin simple sin filtros")
46
+ log.debug("| LIBRERIA | Usando QS simple")
43
47
  qs = manager.simple()
44
48
  elif hasattr(manager, 'full'):
45
- log.debug("Usando sin full sin filtros")
49
+ log.debug("| LIBRERIA | Usando QS full")
46
50
  qs = manager.full()
47
51
 
48
- if hasattr(manager, 'created_by'):
49
- log.debug("| LIBRERIA |Filtrando por created_by")
52
+ try:
53
+ log.debug("| LIBRERIA | Filtrando por created_by")
50
54
  return qs.filter(created_by=self.request.user)
51
-
52
- return qs
55
+ except Exception as e:
56
+ log.error(f"| LIBRERIA | Error al filtrar por created_by: {e}")
57
+ log.info("| LIBRERIA | Filtrado sin created_by")
58
+ return qs
59
+
53
60
 
54
61
  def get_serializer_class(self):
55
62
 
56
63
  match self.action:
57
- case 'create':
64
+ case 'create' if self.write_serializer_class is not None:
58
65
  return self.write_serializer_class
59
- case 'update' | 'partial_update':
66
+ case 'update' | 'partial_update' if self.update_serializer_class is not None and self.write_serializer_class is not None:
60
67
  return self.update_serializer_class
61
- case 'list':
68
+ case 'list' if self.simple_serializer_class is not None:
62
69
  return self.simple_serializer_class
63
- case 'retrieve':
70
+ case 'retrieve' if self.full_serializer_class is not None:
64
71
  return self.full_serializer_class
72
+ case _ if self.serializer_class is not None:
73
+ log.warning(f"| LIBRERIA | No se encontró serializer específico para la acción '{self.action}', usando el por defecto.")
74
+ return self.serializer_class
65
75
  case _:
66
- return super().get_serializer_class()
67
-
68
-
76
+ log.error("| LIBRERIA | No se encontró serializer por defecto")
77
+ raise ValueError("No se encontró serializer por defecto")
78
+
69
79
  def perform_create(self, serializer):
70
- if hasattr(serializer, 'created_by') and hasattr(serializer, 'updated_by'):
80
+ try:
71
81
  log.debug("| LIBRERIA |Guardando con created_by y updated_by")
72
82
  serializer.save(created_by=self.request.user, updated_by=self.request.user)
83
+ except Exception as e:
84
+ log.error(f"| LIBRERIA | Error al guardar: {e}")
85
+ log.info("| LIBRERIA | Guardando sin created_by y updated_by")
86
+ serializer.save()
73
87
 
74
88
  def perform_update(self, serializer):
75
- if hasattr(serializer, 'updated_by'):
76
- log.debug("| LIBRERIA |Guardando con updated_by")
89
+ try:
90
+ log.debug("| LIBRERIA | Guardando con updated_by")
77
91
  serializer.save(updated_by=self.request.user)
92
+ except Exception as e:
93
+ log.error(f"| LIBRERIA | Error al actualizar: {e}")
94
+ log.info("| LIBRERIA | Guardando sin updated_by")
95
+ serializer.save()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: epok-toolkit
3
- Version: 1.12.2
3
+ Version: 1.12.4
4
4
  Summary: Una herramienta para la gestión de tareas y procesos en Django con Celery.
5
5
  Author-email: Fernando Leon Franco <fernanlee2131@gmail.com>
6
6
  License: MIT
@@ -23,7 +23,7 @@ Dynamic: license-file
23
23
 
24
24
 
25
25
 
26
- # EPOK Toolkit 'v1.11.2'
26
+ # EPOK Toolkit 'v1.12.4'
27
27
 
28
28
  EPOK Toolkit es una librería de utilidades para proyectos Django y Python, diseñada para facilitar tareas comunes como envío de emails, mensajería WhatsApp, generación de PDFs y manejo avanzado de caché en APIs.
29
29
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "epok-toolkit"
7
- version = "1.12.2"
7
+ version = "1.12.4"
8
8
  description = "Una herramienta para la gestión de tareas y procesos en Django con Celery."
9
9
  authors = [
10
10
  { name="Fernando Leon Franco", email="fernanlee2131@gmail.com" }
File without changes
File without changes
File without changes