jararaca 0.3.8__tar.gz → 0.3.9__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 jararaca might be problematic. Click here for more details.

Files changed (82) hide show
  1. {jararaca-0.3.8 → jararaca-0.3.9}/PKG-INFO +1 -1
  2. {jararaca-0.3.8 → jararaca-0.3.9}/pyproject.toml +1 -1
  3. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/tools/typescript/interface_parser.py +14 -4
  4. {jararaca-0.3.8 → jararaca-0.3.9}/LICENSE +0 -0
  5. {jararaca-0.3.8 → jararaca-0.3.9}/README.md +0 -0
  6. {jararaca-0.3.8 → jararaca-0.3.9}/docs/CNAME +0 -0
  7. {jararaca-0.3.8 → jararaca-0.3.9}/docs/architecture.md +0 -0
  8. {jararaca-0.3.8 → jararaca-0.3.9}/docs/assets/_f04774c9-7e05-4da4-8b17-8be23f6a1475.jpeg +0 -0
  9. {jararaca-0.3.8 → jararaca-0.3.9}/docs/assets/_f04774c9-7e05-4da4-8b17-8be23f6a1475.webp +0 -0
  10. {jararaca-0.3.8 → jararaca-0.3.9}/docs/assets/tracing_example.png +0 -0
  11. {jararaca-0.3.8 → jararaca-0.3.9}/docs/index.md +0 -0
  12. {jararaca-0.3.8 → jararaca-0.3.9}/docs/messagebus.md +0 -0
  13. {jararaca-0.3.8 → jararaca-0.3.9}/docs/scheduler.md +0 -0
  14. {jararaca-0.3.8 → jararaca-0.3.9}/docs/stylesheets/custom.css +0 -0
  15. {jararaca-0.3.8 → jararaca-0.3.9}/docs/websocket.md +0 -0
  16. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/__init__.py +0 -0
  17. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/__main__.py +0 -0
  18. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/broker_backend/__init__.py +0 -0
  19. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/broker_backend/mapper.py +0 -0
  20. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/broker_backend/redis_broker_backend.py +0 -0
  21. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/cli.py +0 -0
  22. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/common/__init__.py +0 -0
  23. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/core/__init__.py +0 -0
  24. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/core/providers.py +0 -0
  25. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/core/uow.py +0 -0
  26. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/di.py +0 -0
  27. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/files/entity.py.mako +0 -0
  28. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/lifecycle.py +0 -0
  29. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/__init__.py +0 -0
  30. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/bus_message_controller.py +0 -0
  31. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/consumers/__init__.py +0 -0
  32. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/decorators.py +0 -0
  33. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/interceptors/__init__.py +0 -0
  34. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/interceptors/aiopika_publisher_interceptor.py +0 -0
  35. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/interceptors/publisher_interceptor.py +0 -0
  36. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/message.py +0 -0
  37. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/publisher.py +0 -0
  38. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/worker.py +0 -0
  39. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/messagebus/worker_v2.py +0 -0
  40. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/microservice.py +0 -0
  41. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/observability/decorators.py +0 -0
  42. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/observability/interceptor.py +0 -0
  43. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/observability/providers/__init__.py +0 -0
  44. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/observability/providers/otel.py +0 -0
  45. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/base.py +0 -0
  46. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/exports.py +0 -0
  47. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/interceptors/__init__.py +0 -0
  48. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/interceptors/aiosqa_interceptor.py +0 -0
  49. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/session.py +0 -0
  50. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/sort_filter.py +0 -0
  51. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/persistence/utilities.py +0 -0
  52. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/__init__.py +0 -0
  53. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/decorators.py +0 -0
  54. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/hooks.py +0 -0
  55. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/http_microservice.py +0 -0
  56. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/server.py +0 -0
  57. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/__init__.py +0 -0
  58. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/base_types.py +0 -0
  59. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/context.py +0 -0
  60. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/decorators.py +0 -0
  61. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/redis.py +0 -0
  62. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/types.py +0 -0
  63. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/presentation/websocket/websocket_interceptor.py +0 -0
  64. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/py.typed +0 -0
  65. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/__init__.py +0 -0
  66. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/__init__.py +0 -0
  67. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/backends/__init__.py +0 -0
  68. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/backends/httpx.py +0 -0
  69. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/backends/otel.py +0 -0
  70. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/decorators.py +0 -0
  71. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/rpc/http/httpx.py +0 -0
  72. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/scheduler/__init__.py +0 -0
  73. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/scheduler/decorators.py +0 -0
  74. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/scheduler/scheduler.py +0 -0
  75. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/scheduler/scheduler_v2.py +0 -0
  76. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/scheduler/types.py +0 -0
  77. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/tools/app_config/__init__.py +0 -0
  78. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/tools/app_config/decorators.py +0 -0
  79. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/tools/app_config/interceptor.py +0 -0
  80. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/tools/metadata.py +0 -0
  81. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/utils/__init__.py +0 -0
  82. {jararaca-0.3.8 → jararaca-0.3.9}/src/jararaca/utils/rabbitmq_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: jararaca
3
- Version: 0.3.8
3
+ Version: 0.3.9
4
4
  Summary: A simple and fast API framework for Python
5
5
  Author: Lucas S
6
6
  Author-email: me@luscasleo.dev
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "jararaca"
3
- version = "0.3.8"
3
+ version = "0.3.9"
4
4
  description = "A simple and fast API framework for Python"
5
5
  authors = ["Lucas S <me@luscasleo.dev>"]
6
6
  readme = "README.md"
@@ -74,13 +74,23 @@ def parse_literal_value(value: Any) -> str:
74
74
  use_parse_context().mapped_types.add(value.__class__)
75
75
  return f"{value.__class__.__name__}.{value.name}"
76
76
  if isinstance(value, str):
77
- return f'"{value}"'
78
- if isinstance(value, int):
79
- return str(value)
77
+ # Properly escape quotes for TypeScript string literals
78
+ escaped_value = value.replace("\\", "\\\\").replace('"', '\\"')
79
+ return f'"{escaped_value}"'
80
80
  if isinstance(value, float):
81
81
  return str(value)
82
82
  if isinstance(value, bool):
83
- return str(value).lower()
83
+ # Ensure Python's True/False are properly converted to JavaScript's true/false
84
+ return "true" if value else "false"
85
+ # Special handling for Python symbols that might appear in literal types
86
+ if value is True:
87
+ return "true"
88
+ if value is False:
89
+ return "false"
90
+ if value is None:
91
+ return "null"
92
+ if isinstance(value, int):
93
+ return str(value)
84
94
  return "unknown"
85
95
 
86
96
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes