orionis 0.432.0__tar.gz → 0.434.0__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.
Files changed (524) hide show
  1. {orionis-0.432.0/orionis.egg-info → orionis-0.434.0}/PKG-INFO +1 -1
  2. orionis-0.434.0/orionis/app.py +17 -0
  3. {orionis-0.432.0 → orionis-0.434.0}/orionis/metadata/framework.py +1 -1
  4. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/entities/base.py +18 -37
  5. orionis-0.434.0/orionis/support/facades/console.py +15 -0
  6. orionis-0.434.0/orionis/support/facades/dumper.py +15 -0
  7. orionis-0.434.0/orionis/support/facades/logger.py +16 -0
  8. orionis-0.434.0/orionis/support/facades/path_resolver.py +15 -0
  9. orionis-0.434.0/orionis/support/facades/progress_bar.py +15 -0
  10. orionis-0.434.0/orionis/support/facades/testing.py +16 -0
  11. orionis-0.434.0/orionis/support/facades/workers.py +17 -0
  12. orionis-0.434.0/orionis/support/formatter/exceptions/contracts/parser.py +41 -0
  13. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/formatter/exceptions/parser.py +28 -26
  14. orionis-0.434.0/orionis/support/formatter/serializer.py +22 -0
  15. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/patterns/singleton/meta.py +17 -21
  16. orionis-0.434.0/orionis/support/standard/contracts/std.py +128 -0
  17. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/standard/exceptions/value.py +2 -2
  18. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/standard/std.py +26 -24
  19. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/wrapper/dot_dict.py +16 -51
  20. orionis-0.434.0/orionis/test/cases/asynchronous.py +70 -0
  21. orionis-0.434.0/orionis/test/cases/synchronous.py +70 -0
  22. orionis-0.434.0/orionis/test/contracts/dumper.py +48 -0
  23. orionis-0.434.0/orionis/test/contracts/kernel.py +22 -0
  24. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/contracts/logs.py +16 -21
  25. orionis-0.434.0/orionis/test/contracts/printer.py +138 -0
  26. orionis-0.434.0/orionis/test/contracts/render.py +24 -0
  27. orionis-0.434.0/orionis/test/contracts/test_result.py +131 -0
  28. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/contracts/unit_test.py +18 -18
  29. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/core/unit_test.py +162 -519
  30. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/entities/result.py +49 -21
  31. orionis-0.434.0/orionis/test/enums/status.py +21 -0
  32. orionis-0.434.0/orionis/test/exceptions/config.py +23 -0
  33. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/exceptions/failure.py +2 -18
  34. orionis-0.434.0/orionis/test/exceptions/persistence.py +23 -0
  35. orionis-0.434.0/orionis/test/exceptions/runtime.py +23 -0
  36. orionis-0.434.0/orionis/test/exceptions/value.py +23 -0
  37. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/kernel.py +14 -42
  38. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/output/dumper.py +21 -43
  39. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/output/printer.py +6 -146
  40. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/records/logs.py +57 -121
  41. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/base_path.py +8 -6
  42. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/execution_mode.py +2 -3
  43. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/fail_fast.py +4 -8
  44. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/folder_path.py +5 -7
  45. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/module_name.py +3 -3
  46. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/name_pattern.py +4 -9
  47. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/pattern.py +4 -9
  48. orionis-0.434.0/orionis/test/validators/persistent.py +32 -0
  49. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/persistent_driver.py +7 -12
  50. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/print_result.py +4 -9
  51. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/tags.py +6 -7
  52. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/throw_exception.py +7 -14
  53. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/verbosity.py +15 -5
  54. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/web_report.py +6 -10
  55. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/workers.py +9 -4
  56. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/view/render.py +9 -26
  57. {orionis-0.432.0 → orionis-0.434.0/orionis.egg-info}/PKG-INFO +1 -1
  58. {orionis-0.432.0 → orionis-0.434.0}/orionis.egg-info/SOURCES.txt +1 -0
  59. orionis-0.434.0/tests/support/entities/mock_dataclass.py +40 -0
  60. {orionis-0.432.0 → orionis-0.434.0}/tests/support/entities/test_base.py +6 -14
  61. {orionis-0.432.0 → orionis-0.434.0}/tests/support/patterns/singleton/test_patterns_singleton.py +7 -8
  62. orionis-0.434.0/tests/support/standard/test_services_std.py +226 -0
  63. {orionis-0.432.0 → orionis-0.434.0}/tests/support/wrapper/test_services_wrapper_docdict.py +25 -40
  64. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/cases/test_testing_asynchronous.py +14 -14
  65. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/cases/test_testing_synchronous.py +12 -14
  66. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/entities/test_testing_result.py +12 -51
  67. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/enums/test_testing_status.py +8 -13
  68. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/output/test_testing_dumper.py +3 -6
  69. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/output/test_testing_printer.py +5 -5
  70. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/records/test_testing_records.py +16 -26
  71. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/test_testing_unit.py +8 -94
  72. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/validators/test_testing_validators.py +55 -112
  73. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/view/test_render.py +4 -5
  74. orionis-0.432.0/orionis/support/facades/console.py +0 -21
  75. orionis-0.432.0/orionis/support/facades/dumper.py +0 -21
  76. orionis-0.432.0/orionis/support/facades/logger.py +0 -22
  77. orionis-0.432.0/orionis/support/facades/path_resolver.py +0 -22
  78. orionis-0.432.0/orionis/support/facades/progress_bar.py +0 -22
  79. orionis-0.432.0/orionis/support/facades/testing.py +0 -22
  80. orionis-0.432.0/orionis/support/facades/workers.py +0 -22
  81. orionis-0.432.0/orionis/support/formatter/exceptions/contracts/parser.py +0 -38
  82. orionis-0.432.0/orionis/support/formatter/serializer.py +0 -15
  83. orionis-0.432.0/orionis/support/standard/contracts/std.py +0 -127
  84. orionis-0.432.0/orionis/test/cases/asynchronous.py +0 -134
  85. orionis-0.432.0/orionis/test/cases/synchronous.py +0 -126
  86. orionis-0.432.0/orionis/test/contracts/dumper.py +0 -52
  87. orionis-0.432.0/orionis/test/contracts/kernel.py +0 -29
  88. orionis-0.432.0/orionis/test/contracts/printer.py +0 -76
  89. orionis-0.432.0/orionis/test/contracts/render.py +0 -30
  90. orionis-0.432.0/orionis/test/contracts/test_result.py +0 -100
  91. orionis-0.432.0/orionis/test/enums/status.py +0 -27
  92. orionis-0.432.0/orionis/test/exceptions/config.py +0 -27
  93. orionis-0.432.0/orionis/test/exceptions/persistence.py +0 -27
  94. orionis-0.432.0/orionis/test/exceptions/runtime.py +0 -27
  95. orionis-0.432.0/orionis/test/exceptions/value.py +0 -31
  96. orionis-0.432.0/orionis/test/validators/persistent.py +0 -42
  97. orionis-0.432.0/tests/support/entities/mock_dataclass.py +0 -34
  98. orionis-0.432.0/tests/support/standard/test_services_std.py +0 -150
  99. {orionis-0.432.0 → orionis-0.434.0}/LICENCE +0 -0
  100. {orionis-0.432.0 → orionis-0.434.0}/MANIFEST.in +0 -0
  101. {orionis-0.432.0 → orionis-0.434.0}/README.md +0 -0
  102. {orionis-0.432.0 → orionis-0.434.0}/orionis/__init__.py +0 -0
  103. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/__init__.py +0 -0
  104. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/base/__init__.py +0 -0
  105. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/base/command.py +0 -0
  106. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/base/contracts/__init__.py +0 -0
  107. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/base/contracts/command.py +0 -0
  108. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/commands/version.py +0 -0
  109. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/contracts/kernel.py +0 -0
  110. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/core/reactor.py +0 -0
  111. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dumper/__init__.py +0 -0
  112. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dumper/contracts/__init__.py +0 -0
  113. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dumper/contracts/dump.py +0 -0
  114. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dumper/dump.py +0 -0
  115. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dynamic/__init__.py +0 -0
  116. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dynamic/contracts/__init__.py +0 -0
  117. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dynamic/contracts/progress_bar.py +0 -0
  118. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/dynamic/progress_bar.py +0 -0
  119. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/exceptions/__init__.py +0 -0
  120. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/exceptions/cli_exception.py +0 -0
  121. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/exceptions/cli_orionis_value_error.py +0 -0
  122. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/exceptions/cli_runtime_error.py +0 -0
  123. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/exceptions/cli_schedule_exception.py +0 -0
  124. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/kernel.py +0 -0
  125. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/__init__.py +0 -0
  126. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/console.py +0 -0
  127. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/contracts/__init__.py +0 -0
  128. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/contracts/console.py +0 -0
  129. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/enums/__init__.py +0 -0
  130. {orionis-0.432.0 → orionis-0.434.0}/orionis/console/output/enums/styles.py +0 -0
  131. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/__init__.py +0 -0
  132. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/container.py +0 -0
  133. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/context/__init__.py +0 -0
  134. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/context/manager.py +0 -0
  135. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/context/scope.py +0 -0
  136. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/contracts/__init__.py +0 -0
  137. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/contracts/container.py +0 -0
  138. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/contracts/resolver.py +0 -0
  139. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/contracts/service_provider.py +0 -0
  140. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/entities/__init__.py +0 -0
  141. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/entities/binding.py +0 -0
  142. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/enums/__init__.py +0 -0
  143. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/enums/lifetimes.py +0 -0
  144. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/exceptions/__init__.py +0 -0
  145. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/exceptions/attribute.py +0 -0
  146. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/exceptions/exception.py +0 -0
  147. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/exceptions/type.py +0 -0
  148. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/exceptions/value.py +0 -0
  149. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/facades/__init__.py +0 -0
  150. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/facades/facade.py +0 -0
  151. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/providers/__init__.py +0 -0
  152. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/providers/service_provider.py +0 -0
  153. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/resolver/__init__.py +0 -0
  154. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/resolver/resolver.py +0 -0
  155. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/__init__.py +0 -0
  156. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/implements.py +0 -0
  157. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_abstract_class.py +0 -0
  158. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_callable.py +0 -0
  159. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_concrete_class.py +0 -0
  160. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_instance.py +0 -0
  161. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_not_subclass.py +0 -0
  162. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_subclass.py +0 -0
  163. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/is_valid_alias.py +0 -0
  164. {orionis-0.432.0 → orionis-0.434.0}/orionis/container/validators/lifetime.py +0 -0
  165. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/__init__.py +0 -0
  166. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/application.py +0 -0
  167. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/__init__.py +0 -0
  168. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/__init__.py +0 -0
  169. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/entities/__init__.py +0 -0
  170. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/entities/app.py +0 -0
  171. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/enums/__init__.py +0 -0
  172. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/enums/ciphers.py +0 -0
  173. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/app/enums/environments.py +0 -0
  174. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/auth/__init__.py +0 -0
  175. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/auth/entities/__init__.py +0 -0
  176. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/auth/entities/auth.py +0 -0
  177. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/__init__.py +0 -0
  178. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/entities/__init__.py +0 -0
  179. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/entities/cache.py +0 -0
  180. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/entities/file.py +0 -0
  181. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/entities/stores.py +0 -0
  182. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/enums/__init__.py +0 -0
  183. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cache/enums/drivers.py +0 -0
  184. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cors/__init__.py +0 -0
  185. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cors/entities/__init__.py +0 -0
  186. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/cors/entities/cors.py +0 -0
  187. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/__init__.py +0 -0
  188. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/__init__.py +0 -0
  189. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/connections.py +0 -0
  190. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/database.py +0 -0
  191. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/mysql.py +0 -0
  192. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/oracle.py +0 -0
  193. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/pgsql.py +0 -0
  194. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/entities/sqlite.py +0 -0
  195. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/__init__.py +0 -0
  196. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/mysql_charsets.py +0 -0
  197. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/mysql_collations.py +0 -0
  198. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/mysql_engine.py +0 -0
  199. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/oracle_encoding.py +0 -0
  200. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/oracle_nencoding.py +0 -0
  201. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/pgsql_charsets.py +0 -0
  202. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/pgsql_collations.py +0 -0
  203. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/pgsql_mode.py +0 -0
  204. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/sqlite_foreign_key.py +0 -0
  205. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/sqlite_journal.py +0 -0
  206. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/database/enums/sqlite_synchronous.py +0 -0
  207. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/__init__.py +0 -0
  208. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/__init__.py +0 -0
  209. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/aws.py +0 -0
  210. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/disks.py +0 -0
  211. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/filesystems.py +0 -0
  212. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/local.py +0 -0
  213. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/filesystems/entitites/public.py +0 -0
  214. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/__init__.py +0 -0
  215. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/__init__.py +0 -0
  216. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/channels.py +0 -0
  217. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/chunked.py +0 -0
  218. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/daily.py +0 -0
  219. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/hourly.py +0 -0
  220. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/logging.py +0 -0
  221. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/monthly.py +0 -0
  222. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/stack.py +0 -0
  223. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/entities/weekly.py +0 -0
  224. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/enums/__init__.py +0 -0
  225. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/enums/levels.py +0 -0
  226. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/validators/__init__.py +0 -0
  227. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/validators/level.py +0 -0
  228. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/logging/validators/path.py +0 -0
  229. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/__init__.py +0 -0
  230. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/entities/__init__.py +0 -0
  231. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/entities/file.py +0 -0
  232. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/entities/mail.py +0 -0
  233. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/entities/mailers.py +0 -0
  234. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/mail/entities/smtp.py +0 -0
  235. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/__init__.py +0 -0
  236. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/entities/__init__.py +0 -0
  237. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/entities/brokers.py +0 -0
  238. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/entities/database.py +0 -0
  239. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/entities/queue.py +0 -0
  240. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/enums/__init__.py +0 -0
  241. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/queue/enums/strategy.py +0 -0
  242. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/roots/__init__.py +0 -0
  243. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/roots/paths.py +0 -0
  244. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/__init__.py +0 -0
  245. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/entities/__init__.py +0 -0
  246. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/entities/session.py +0 -0
  247. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/enums/__init__.py +0 -0
  248. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/enums/same_site_policy.py +0 -0
  249. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/helpers/__init__.py +0 -0
  250. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/session/helpers/secret_key.py +0 -0
  251. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/startup.py +0 -0
  252. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/__init__.py +0 -0
  253. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/entities/__init__.py +0 -0
  254. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/entities/testing.py +0 -0
  255. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/enums/__init__.py +0 -0
  256. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/enums/drivers.py +0 -0
  257. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/enums/mode.py +0 -0
  258. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/config/testing/enums/verbosity.py +0 -0
  259. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/contracts/__init__.py +0 -0
  260. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/contracts/application.py +0 -0
  261. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/contracts/config.py +0 -0
  262. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/exceptions/__init__.py +0 -0
  263. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/exceptions/integrity.py +0 -0
  264. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/exceptions/runtime.py +0 -0
  265. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/exceptions/type.py +0 -0
  266. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/exceptions/value.py +0 -0
  267. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/__init__.py +0 -0
  268. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/console_provider.py +0 -0
  269. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/dumper_provider.py +0 -0
  270. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/logger_provider.py +0 -0
  271. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/path_resolver_provider.py +0 -0
  272. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/progress_bar_provider.py +0 -0
  273. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/testing_provider.py +0 -0
  274. {orionis-0.432.0 → orionis-0.434.0}/orionis/foundation/providers/workers_provider.py +0 -0
  275. {orionis-0.432.0 → orionis-0.434.0}/orionis/metadata/__init__.py +0 -0
  276. {orionis-0.432.0 → orionis-0.434.0}/orionis/metadata/package.py +0 -0
  277. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/__init__.py +0 -0
  278. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/__init__.py +0 -0
  279. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/contracts/__init__.py +0 -0
  280. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/contracts/coroutines.py +0 -0
  281. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/coroutines.py +0 -0
  282. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/exceptions/__init__.py +0 -0
  283. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/asynchrony/exceptions/exception.py +0 -0
  284. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/__init__.py +0 -0
  285. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/contracts/__init__.py +0 -0
  286. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/contracts/caster.py +0 -0
  287. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/contracts/env.py +0 -0
  288. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/core/__init__.py +0 -0
  289. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/core/dot_env.py +0 -0
  290. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/dynamic/__init__.py +0 -0
  291. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/dynamic/caster.py +0 -0
  292. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/enums/__init__.py +0 -0
  293. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/enums/value_type.py +0 -0
  294. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/env.py +0 -0
  295. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/exceptions/__init__.py +0 -0
  296. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/exceptions/exception.py +0 -0
  297. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/exceptions/value.py +0 -0
  298. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/helpers/__init__.py +0 -0
  299. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/helpers/functions.py +0 -0
  300. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/key/__init__.py +0 -0
  301. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/key/key_generator.py +0 -0
  302. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/validators/__init__.py +0 -0
  303. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/validators/key_name.py +0 -0
  304. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/environment/validators/types.py +0 -0
  305. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/__init__.py +0 -0
  306. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/abstract/__init__.py +0 -0
  307. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/abstract/contracts/__init__.py +0 -0
  308. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/abstract/contracts/reflection.py +0 -0
  309. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/abstract/reflection.py +0 -0
  310. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/callables/__init__.py +0 -0
  311. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/callables/contracts/__init__.py +0 -0
  312. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/callables/contracts/reflection.py +0 -0
  313. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/callables/reflection.py +0 -0
  314. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/concretes/__init__.py +0 -0
  315. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/concretes/contracts/__init__.py +0 -0
  316. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/concretes/contracts/concrete.py +0 -0
  317. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/concretes/reflection.py +0 -0
  318. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/__init__.py +0 -0
  319. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/contracts/__init__.py +0 -0
  320. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/contracts/reflection.py +0 -0
  321. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/entities/__init__.py +0 -0
  322. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/entities/callable_dependencies.py +0 -0
  323. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/entities/class_dependencies.py +0 -0
  324. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/entities/known_dependencies.py +0 -0
  325. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/entities/method_dependencies.py +0 -0
  326. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/dependencies/reflection.py +0 -0
  327. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/exceptions/__init__.py +0 -0
  328. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/exceptions/attribute.py +0 -0
  329. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/exceptions/type.py +0 -0
  330. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/exceptions/value.py +0 -0
  331. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/instances/__init__.py +0 -0
  332. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/instances/contracts/__init__.py +0 -0
  333. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/instances/contracts/reflection.py +0 -0
  334. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/instances/reflection.py +0 -0
  335. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/modules/__init__.py +0 -0
  336. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/modules/contracts/__init__.py +0 -0
  337. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/modules/contracts/reflection.py +0 -0
  338. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/modules/reflection.py +0 -0
  339. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/objects/__init__.py +0 -0
  340. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/objects/types.py +0 -0
  341. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/introspection/reflection.py +0 -0
  342. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/__init__.py +0 -0
  343. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/contracts/__init__.py +0 -0
  344. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/contracts/log_service.py +0 -0
  345. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/exceptions/__init__.py +0 -0
  346. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/exceptions/runtime.py +0 -0
  347. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/handlers/__init__.py +0 -0
  348. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/handlers/filename.py +0 -0
  349. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/handlers/size_rotating.py +0 -0
  350. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/handlers/timed_rotating.py +0 -0
  351. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/log/log_service.py +0 -0
  352. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/__init__.py +0 -0
  353. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/contracts/__init__.py +0 -0
  354. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/contracts/resolver.py +0 -0
  355. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/exceptions/__init__.py +0 -0
  356. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/exceptions/exception.py +0 -0
  357. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/exceptions/file.py +0 -0
  358. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/paths/resolver.py +0 -0
  359. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/__init__.py +0 -0
  360. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/contracts/__init__.py +0 -0
  361. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/contracts/imports.py +0 -0
  362. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/contracts/workers.py +0 -0
  363. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/imports.py +0 -0
  364. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/runtime/__init__.py +0 -0
  365. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/runtime/imports.py +0 -0
  366. {orionis-0.432.0 → orionis-0.434.0}/orionis/services/system/workers.py +0 -0
  367. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/__init__.py +0 -0
  368. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/entities/__init__.py +0 -0
  369. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/facades/__init__.py +0 -0
  370. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/formatter/__init__.py +0 -0
  371. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/formatter/exceptions/__init__.py +0 -0
  372. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/formatter/exceptions/contracts/__init__.py +0 -0
  373. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/patterns/__init__.py +0 -0
  374. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/patterns/singleton/__init__.py +0 -0
  375. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/standard/__init__.py +0 -0
  376. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/standard/contracts/__init__.py +0 -0
  377. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/standard/exceptions/__init__.py +0 -0
  378. {orionis-0.432.0 → orionis-0.434.0}/orionis/support/wrapper/__init__.py +0 -0
  379. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/__init__.py +0 -0
  380. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/cases/__init__.py +0 -0
  381. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/contracts/__init__.py +0 -0
  382. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/core/__init__.py +0 -0
  383. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/entities/__init__.py +0 -0
  384. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/enums/__init__.py +0 -0
  385. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/exceptions/__init__.py +0 -0
  386. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/output/__init__.py +0 -0
  387. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/records/__init__.py +0 -0
  388. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/validators/__init__.py +0 -0
  389. {orionis-0.432.0 → orionis-0.434.0}/orionis/test/view/__init__.py +0 -0
  390. {orionis-0.432.0 → orionis-0.434.0}/orionis.egg-info/dependency_links.txt +0 -0
  391. {orionis-0.432.0 → orionis-0.434.0}/orionis.egg-info/requires.txt +0 -0
  392. {orionis-0.432.0 → orionis-0.434.0}/orionis.egg-info/top_level.txt +0 -0
  393. {orionis-0.432.0 → orionis-0.434.0}/orionis.egg-info/zip-safe +0 -0
  394. {orionis-0.432.0 → orionis-0.434.0}/setup.cfg +0 -0
  395. {orionis-0.432.0 → orionis-0.434.0}/setup.py +0 -0
  396. {orionis-0.432.0 → orionis-0.434.0}/tests/__init__.py +0 -0
  397. {orionis-0.432.0 → orionis-0.434.0}/tests/container/__init__.py +0 -0
  398. {orionis-0.432.0 → orionis-0.434.0}/tests/container/context/__init__.py +0 -0
  399. {orionis-0.432.0 → orionis-0.434.0}/tests/container/context/test_manager.py +0 -0
  400. {orionis-0.432.0 → orionis-0.434.0}/tests/container/context/test_scope.py +0 -0
  401. {orionis-0.432.0 → orionis-0.434.0}/tests/container/entities/__init__.py +0 -0
  402. {orionis-0.432.0 → orionis-0.434.0}/tests/container/entities/test_binding.py +0 -0
  403. {orionis-0.432.0 → orionis-0.434.0}/tests/container/enums/__init__.py +0 -0
  404. {orionis-0.432.0 → orionis-0.434.0}/tests/container/enums/test_lifetimes.py +0 -0
  405. {orionis-0.432.0 → orionis-0.434.0}/tests/container/facades/__init__.py +0 -0
  406. {orionis-0.432.0 → orionis-0.434.0}/tests/container/facades/test_facade.py +0 -0
  407. {orionis-0.432.0 → orionis-0.434.0}/tests/container/mocks/__init__.py +0 -0
  408. {orionis-0.432.0 → orionis-0.434.0}/tests/container/mocks/mock_complex_classes.py +0 -0
  409. {orionis-0.432.0 → orionis-0.434.0}/tests/container/mocks/mock_simple_classes.py +0 -0
  410. {orionis-0.432.0 → orionis-0.434.0}/tests/container/providers/__init__.py +0 -0
  411. {orionis-0.432.0 → orionis-0.434.0}/tests/container/providers/test_providers.py +0 -0
  412. {orionis-0.432.0 → orionis-0.434.0}/tests/container/resolver/__init__.py +0 -0
  413. {orionis-0.432.0 → orionis-0.434.0}/tests/container/resolver/test_resolver.py +0 -0
  414. {orionis-0.432.0 → orionis-0.434.0}/tests/container/test_container.py +0 -0
  415. {orionis-0.432.0 → orionis-0.434.0}/tests/container/test_singleton.py +0 -0
  416. {orionis-0.432.0 → orionis-0.434.0}/tests/container/test_thread_safety.py +0 -0
  417. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/__init__.py +0 -0
  418. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_implements.py +0 -0
  419. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_abstract_class.py +0 -0
  420. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_callable.py +0 -0
  421. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_concrete_class.py +0 -0
  422. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_instance.py +0 -0
  423. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_not_subclass.py +0 -0
  424. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_subclass.py +0 -0
  425. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_is_valid_alias.py +0 -0
  426. {orionis-0.432.0 → orionis-0.434.0}/tests/container/validators/test_lifetime.py +0 -0
  427. {orionis-0.432.0 → orionis-0.434.0}/tests/example/__init__.py +0 -0
  428. {orionis-0.432.0 → orionis-0.434.0}/tests/example/test_example.py +0 -0
  429. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/__init__.py +0 -0
  430. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/__init__.py +0 -0
  431. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/app/__init__.py +0 -0
  432. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/app/test_foundation_config_app.py +0 -0
  433. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/auth/__init__.py +0 -0
  434. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/auth/test_foundation_config_auth.py +0 -0
  435. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cache/__init__.py +0 -0
  436. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cache/test_foundation_config_cache.py +0 -0
  437. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cache/test_foundation_config_cache_file.py +0 -0
  438. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cache/test_foundation_config_cache_stores.py +0 -0
  439. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cors/__init__.py +0 -0
  440. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/cors/test_foundation_config_cors.py +0 -0
  441. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/__init__.py +0 -0
  442. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database.py +0 -0
  443. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database_connections.py +0 -0
  444. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database_mysql.py +0 -0
  445. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database_oracle.py +0 -0
  446. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database_pgsql.py +0 -0
  447. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/database/test_foundation_config_database_sqlite.py +0 -0
  448. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/__init__.py +0 -0
  449. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/test_foundation_config_filesystems.py +0 -0
  450. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/test_foundation_config_filesystems_aws.py +0 -0
  451. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/test_foundation_config_filesystems_disks.py +0 -0
  452. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/test_foundation_config_filesystems_local.py +0 -0
  453. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/filesystems/test_foundation_config_filesystems_public.py +0 -0
  454. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/__init__.py +0 -0
  455. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging.py +0 -0
  456. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_channels.py +0 -0
  457. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_chunked.py +0 -0
  458. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_daily.py +0 -0
  459. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_hourly.py +0 -0
  460. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_monthly.py +0 -0
  461. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_stack.py +0 -0
  462. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/logging/test_foundation_config_logging_weekly.py +0 -0
  463. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/mail/__init__.py +0 -0
  464. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/mail/test_foundation_config_mail.py +0 -0
  465. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/mail/test_foundation_config_mail_file.py +0 -0
  466. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/mail/test_foundation_config_mail_mailers.py +0 -0
  467. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/mail/test_foundation_config_mail_smtp.py +0 -0
  468. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/queue/__init__.py +0 -0
  469. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/queue/test_foundation_config_queue.py +0 -0
  470. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/queue/test_foundation_config_queue_brokers.py +0 -0
  471. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/queue/test_foundation_config_queue_database.py +0 -0
  472. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/root/__init__.py +0 -0
  473. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/root/test_foundation_config_root_paths.py +0 -0
  474. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/session/__init__.py +0 -0
  475. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/session/test_foundation_config_session.py +0 -0
  476. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/startup/__init__.py +0 -0
  477. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/startup/test_foundation_config_startup.py +0 -0
  478. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/testing/__init__.py +0 -0
  479. {orionis-0.432.0 → orionis-0.434.0}/tests/foundation/config/testing/test_foundation_config_testing.py +0 -0
  480. {orionis-0.432.0 → orionis-0.434.0}/tests/metadata/__init__.py +0 -0
  481. {orionis-0.432.0 → orionis-0.434.0}/tests/metadata/test_metadata_framework.py +0 -0
  482. {orionis-0.432.0 → orionis-0.434.0}/tests/metadata/test_metadata_package.py +0 -0
  483. {orionis-0.432.0 → orionis-0.434.0}/tests/services/__init__.py +0 -0
  484. {orionis-0.432.0 → orionis-0.434.0}/tests/services/asynchrony/__init__.py +0 -0
  485. {orionis-0.432.0 → orionis-0.434.0}/tests/services/asynchrony/test_services_asynchrony_coroutine.py +0 -0
  486. {orionis-0.432.0 → orionis-0.434.0}/tests/services/environment/__init__.py +0 -0
  487. {orionis-0.432.0 → orionis-0.434.0}/tests/services/environment/test_services_environment.py +0 -0
  488. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/__init__.py +0 -0
  489. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/__init__.py +0 -0
  490. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/mocks/__init__.py +0 -0
  491. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/mocks/mock_user.py +0 -0
  492. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/mocks/mock_user_controller.py +0 -0
  493. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/mocks/mock_users_permissions.py +0 -0
  494. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/dependencies/test_reflect_dependencies.py +0 -0
  495. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/__init__.py +0 -0
  496. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/mock/__init__.py +0 -0
  497. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/mock/fake_reflect_instance.py +0 -0
  498. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/test_reflection_abstract.py +0 -0
  499. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/test_reflection_callable.py +0 -0
  500. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/test_reflection_concrete.py +0 -0
  501. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/test_reflection_instance.py +0 -0
  502. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/reflection/test_reflection_module.py +0 -0
  503. {orionis-0.432.0 → orionis-0.434.0}/tests/services/introspection/test_reflection.py +0 -0
  504. {orionis-0.432.0 → orionis-0.434.0}/tests/services/log/__init__.py +0 -0
  505. {orionis-0.432.0 → orionis-0.434.0}/tests/services/log/test_log.py +0 -0
  506. {orionis-0.432.0 → orionis-0.434.0}/tests/services/path/__init__.py +0 -0
  507. {orionis-0.432.0 → orionis-0.434.0}/tests/services/path/test_services_resolver.py +0 -0
  508. {orionis-0.432.0 → orionis-0.434.0}/tests/services/system/__init__.py +0 -0
  509. {orionis-0.432.0 → orionis-0.434.0}/tests/services/system/test_services_system_imports.py +0 -0
  510. {orionis-0.432.0 → orionis-0.434.0}/tests/services/system/test_services_system_workers.py +0 -0
  511. {orionis-0.432.0 → orionis-0.434.0}/tests/support/__init__.py +0 -0
  512. {orionis-0.432.0 → orionis-0.434.0}/tests/support/entities/__init__.py +0 -0
  513. {orionis-0.432.0 → orionis-0.434.0}/tests/support/patterns/__init__.py +0 -0
  514. {orionis-0.432.0 → orionis-0.434.0}/tests/support/patterns/singleton/__init__.py +0 -0
  515. {orionis-0.432.0 → orionis-0.434.0}/tests/support/standard/__init__.py +0 -0
  516. {orionis-0.432.0 → orionis-0.434.0}/tests/support/wrapper/__init__.py +0 -0
  517. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/__init__.py +0 -0
  518. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/cases/__init__.py +0 -0
  519. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/entities/__init__.py +0 -0
  520. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/enums/__init__.py +0 -0
  521. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/output/__init__.py +0 -0
  522. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/records/__init__.py +0 -0
  523. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/validators/__init__.py +0 -0
  524. {orionis-0.432.0 → orionis-0.434.0}/tests/testing/view/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: orionis
3
- Version: 0.432.0
3
+ Version: 0.434.0
4
4
  Summary: Orionis Framework – Elegant, Fast, and Powerful.
5
5
  Home-page: https://github.com/orionis-framework/framework
6
6
  Author: Raul Mauricio Uñate Castro
@@ -0,0 +1,17 @@
1
+ from orionis.foundation.application import Application, IApplication
2
+
3
+ def Orionis() -> IApplication:
4
+ """
5
+ Initialize and return the main Orionis application instance.
6
+
7
+ Initializes the core application object that implements the `IApplication` interface.
8
+ This function acts as the entry point for creating and accessing the main application instance.
9
+
10
+ Returns
11
+ -------
12
+ IApplication
13
+ The initialized application instance implementing the `IApplication` interface.
14
+ """
15
+
16
+ # Instantiate and return the main application object
17
+ return Application()
@@ -5,7 +5,7 @@
5
5
  NAME = "orionis"
6
6
 
7
7
  # Current version of the framework
8
- VERSION = "0.432.0"
8
+ VERSION = "0.434.0"
9
9
 
10
10
  # Full name of the author or maintainer of the project
11
11
  AUTHOR = "Raul Mauricio Uñate Castro"
@@ -5,11 +5,10 @@ class BaseEntity:
5
5
 
6
6
  def __post_init__(self):
7
7
  """
8
- Post-initialization hook for dataclass instances.
8
+ Called automatically after the dataclass instance is initialized.
9
9
 
10
- This method is automatically called after the dataclass `__init__` method.
11
- It is intended to be overridden by subclasses to perform additional initialization
12
- or validation logic after all fields have been set.
10
+ This method is intended to be overridden by subclasses to perform additional
11
+ initialization or validation after all fields have been set.
13
12
 
14
13
  Parameters
15
14
  ----------
@@ -18,60 +17,42 @@ class BaseEntity:
18
17
  Returns
19
18
  -------
20
19
  None
21
- This method does not return any value.
22
-
23
- Notes
24
- -----
25
- By default, this method does nothing. Subclasses can override it to implement
26
- custom post-initialization behavior.
27
20
  """
28
-
29
21
  pass
30
22
 
31
23
  def toDict(self) -> dict:
32
24
  """
33
- Converts the current dataclass instance into a dictionary.
34
-
35
- Parameters
36
- ----------
37
- None
25
+ Convert the dataclass instance to a dictionary.
38
26
 
39
27
  Returns
40
28
  -------
41
29
  dict
42
- A dictionary containing all fields of the instance, with field names as keys and their corresponding values.
43
-
44
- Notes
45
- -----
46
- This method uses `dataclasses.asdict` to recursively convert the dataclass instance and any nested dataclasses into dictionaries.
47
- Enum values are preserved as their actual values.
30
+ Dictionary representation of the dataclass instance, including nested dataclasses.
48
31
  """
49
-
50
- # Use asdict to convert the dataclass instance to a dictionary, including nested dataclasses
51
32
  return asdict(self)
52
33
 
53
34
  def getFields(self):
54
35
  """
55
- Retrieves detailed information about each field in the current dataclass instance.
56
-
57
- Parameters
58
- ----------
59
- None
36
+ Get detailed information about each field in the dataclass instance.
60
37
 
61
38
  Returns
62
39
  -------
63
40
  list of dict
64
- Each dictionary in the returned list contains:
65
- - name (str): The name of the field.
66
- - types (list of str): The type(s) of the field, represented as a list of type names.
67
- - default: The default value of the field, resolved from the field definition, default factory, or metadata.
68
- - metadata (dict): The metadata associated with the field.
41
+ A list where each element is a dictionary containing:
42
+ - name : str
43
+ The name of the field.
44
+ - types : list of str
45
+ The type(s) of the field as a list of type names.
46
+ - default : Any
47
+ The default value of the field, resolved from the field definition, default factory, or metadata.
48
+ - metadata : dict
49
+ The metadata associated with the field.
69
50
 
70
51
  Notes
71
52
  -----
72
- - Handles complex field types, including unions and generics, by representing them as lists of type names.
73
- - Resolves default values from direct assignment, default factories, or metadata, and normalizes dataclass and Enum values.
74
- - Metadata defaults are normalized if present and callable or dataclass/Enum types.
53
+ Handles complex field types, including unions and generics, by representing them as lists of type names.
54
+ Resolves default values from direct assignment, default factories, or metadata, and normalizes dataclass and Enum values.
55
+ Metadata defaults are normalized if present and callable or dataclass/Enum types.
75
56
  """
76
57
 
77
58
  # List to hold field information dictionaries
@@ -0,0 +1,15 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class Console(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls) -> str:
7
+ """
8
+ Get the service container binding key for the console component.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The binding key used to resolve the console service from the container.
14
+ """
15
+ return "core.orionis.console"
@@ -0,0 +1,15 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class Dumper(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls) -> str:
7
+ """
8
+ Returns the service container binding key for the dumper component.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The binding key "core.orionis.dumper" used to resolve the dumper service from the container.
14
+ """
15
+ return "core.orionis.dumper"
@@ -0,0 +1,16 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class Log(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls) -> str:
7
+ """
8
+ Returns the binding key for the logger service in the service container.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The unique identifier used to resolve the logger service, specifically
14
+ "core.orionis.logger".
15
+ """
16
+ return "core.orionis.logger"
@@ -0,0 +1,15 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class PathResolver(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls):
7
+ """
8
+ Returns the binding key for the path resolver service in the container.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The unique string identifier for the path resolver service, used by the service container.
14
+ """
15
+ return "core.orionis.path_resolver"
@@ -0,0 +1,15 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class ProgressBar(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls):
7
+ """
8
+ Returns the binding key for the progress bar service.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The unique identifier used to retrieve the progress bar service from the service container.
14
+ """
15
+ return "core.orionis.progress_bar"
@@ -0,0 +1,16 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class Test(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls) -> str:
7
+ """
8
+ Returns the binding key for the testing component in the service container.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The unique string identifier for the testing component, used by the service
14
+ container to resolve the appropriate implementation.
15
+ """
16
+ return "core.orionis.testing"
@@ -0,0 +1,17 @@
1
+ from orionis.container.facades.facade import Facade
2
+
3
+ class Workers(Facade):
4
+
5
+ @classmethod
6
+ def getFacadeAccessor(cls):
7
+ """
8
+ Returns the binding key for the workers service in the service container.
9
+
10
+ Returns
11
+ -------
12
+ str
13
+ The identifier string for the workers service, used by the service container
14
+ to resolve the corresponding implementation.
15
+ """
16
+
17
+ return "core.orionis.workers"
@@ -0,0 +1,41 @@
1
+ from abc import ABC, abstractmethod
2
+ from typing import Any, Dict
3
+
4
+ class IExceptionParser(ABC):
5
+ """
6
+ Interface for parsing exceptions into structured dictionary representations.
7
+
8
+ This abstract base class defines the contract for classes that convert
9
+ exception objects into a standardized dictionary format, which may include
10
+ details such as error type, message, code, stack trace, and cause.
11
+ """
12
+
13
+ @property
14
+ @abstractmethod
15
+ def raw_exception(self) -> Exception:
16
+ """
17
+ Returns the original exception instance.
18
+
19
+ Returns
20
+ -------
21
+ Exception
22
+ The exception object to be parsed.
23
+ """
24
+ pass
25
+
26
+ @abstractmethod
27
+ def toDict(self) -> Dict[str, Any]:
28
+ """
29
+ Converts the exception into a structured dictionary.
30
+
31
+ Returns
32
+ -------
33
+ dict
34
+ A dictionary containing details about the exception, such as:
35
+ - error_type
36
+ - error_message
37
+ - error_code
38
+ - stack_trace
39
+ - cause (if present)
40
+ """
41
+ pass
@@ -4,24 +4,21 @@ from orionis.support.formatter.exceptions.contracts.parser import IExceptionPars
4
4
 
5
5
  class ExceptionParser(IExceptionParser):
6
6
  """
7
- A utility class to parse an exception and convert it into a structured dictionary.
7
+ Parses an exception and converts it into a structured dictionary representation.
8
+
9
+ Parameters
10
+ ----------
11
+ exception : Exception
12
+ The exception instance to be parsed.
8
13
  """
9
14
 
10
15
  def __init__(self, exception: Exception) -> None:
11
- """
12
- Initialize the ExceptionParser with the given exception.
13
-
14
- Parameters
15
- ----------
16
- exception : Exception
17
- The exception to be parsed.
18
- """
19
16
  self.__exception = exception
20
17
 
21
18
  @property
22
19
  def raw_exception(self) -> Exception:
23
20
  """
24
- Get the original exception object.
21
+ Returns the original exception object.
25
22
 
26
23
  Returns
27
24
  -------
@@ -32,21 +29,21 @@ class ExceptionParser(IExceptionParser):
32
29
 
33
30
  def toDict(self) -> Dict[str, Any]:
34
31
  """
35
- Serialize the exception into a dictionary format.
32
+ Serializes the exception into a dictionary containing detailed error information.
36
33
 
37
34
  Returns
38
35
  -------
39
36
  dict
40
- A dictionary containing:
41
- - 'error_type': The type of exception.
42
- - 'error_message': The complete traceback string.
43
- - 'error_code': Custom error code, if available.
44
- - 'stack_trace': A list of frames in the stack trace, each with:
45
- - 'filename': File where the error occurred.
46
- - 'lineno': Line number.
47
- - 'name': Function or method name.
48
- - 'line': The source line of code.
49
- - 'cause': A nested dictionary representing the original cause (if any).
37
+ Dictionary with the following keys:
38
+ - 'error_type': str, the type of the exception.
39
+ - 'error_message': str, the formatted traceback string.
40
+ - 'error_code': Any, custom error code if present on the exception.
41
+ - 'stack_trace': list of dict, each dict contains frame details:
42
+ - 'filename': str, file where the error occurred.
43
+ - 'lineno': int, line number in the file.
44
+ - 'name': str, function or method name.
45
+ - 'line': str or None, source line of code.
46
+ - 'cause': dict or None, nested dictionary for the original cause if present.
50
47
  """
51
48
  tb = traceback.TracebackException.from_exception(self.__exception, capture_locals=False)
52
49
 
@@ -60,17 +57,21 @@ class ExceptionParser(IExceptionParser):
60
57
 
61
58
  def __parse_stack(self, stack: traceback.StackSummary) -> List[Dict[str, Union[str, int, None]]]:
62
59
  """
63
- Helper method to parse the stack trace.
60
+ Parses the stack trace summary into a list of frame dictionaries.
64
61
 
65
62
  Parameters
66
63
  ----------
67
64
  stack : traceback.StackSummary
68
- The summary of the stack.
65
+ The summary of the stack trace.
69
66
 
70
67
  Returns
71
68
  -------
72
69
  list of dict
73
- A list of dictionaries with detailed frame information.
70
+ Each dictionary contains:
71
+ - 'filename': str, file where the frame is located.
72
+ - 'lineno': int, line number in the file.
73
+ - 'name': str, function or method name.
74
+ - 'line': str or None, source line of code.
74
75
  """
75
76
  return [
76
77
  {
@@ -84,7 +85,7 @@ class ExceptionParser(IExceptionParser):
84
85
 
85
86
  def __parse_cause(self, cause: Optional[BaseException]) -> Optional[Dict[str, Any]]:
86
87
  """
87
- Recursively parse the cause of an exception, if available.
88
+ Recursively parses the cause of an exception, if present.
88
89
 
89
90
  Parameters
90
91
  ----------
@@ -94,7 +95,8 @@ class ExceptionParser(IExceptionParser):
94
95
  Returns
95
96
  -------
96
97
  dict or None
97
- A dictionary with the cause information or None if no cause exists.
98
+ Dictionary with the cause's error type, message, and stack trace,
99
+ or None if no cause exists.
98
100
  """
99
101
  if not isinstance(cause, BaseException):
100
102
  return None
@@ -0,0 +1,22 @@
1
+ from orionis.support.formatter.exceptions.parser import ExceptionParser
2
+
3
+ class Parser:
4
+
5
+ @staticmethod
6
+ def exception(exception: Exception) -> ExceptionParser:
7
+ """
8
+ Create and return an ExceptionParser instance for the given exception.
9
+
10
+ Parameters
11
+ ----------
12
+ exception : Exception
13
+ The exception object to be parsed.
14
+
15
+ Returns
16
+ -------
17
+ ExceptionParser
18
+ An ExceptionParser instance initialized with the provided exception.
19
+ """
20
+
21
+ # Instantiate and return an ExceptionParser for the given exception
22
+ return ExceptionParser(exception)
@@ -6,25 +6,21 @@ T = TypeVar('T')
6
6
 
7
7
  class Singleton(type):
8
8
  """
9
- Thread-safe and async-safe singleton metaclass.
9
+ Metaclass for implementing thread-safe and async-safe singleton pattern.
10
10
 
11
- Ensures that only one instance of a class exists, regardless of whether the code is running in a synchronous or asynchronous context. This metaclass provides both a synchronous (`__call__`) and asynchronous (`__acall__`) method for instance creation, using appropriate locking mechanisms to prevent race conditions in multi-threaded or async environments.
11
+ This metaclass ensures that only one instance of a class exists, regardless of
12
+ whether the code is running in a synchronous or asynchronous context. It provides
13
+ both synchronous and asynchronous mechanisms for instance creation, using appropriate
14
+ locking to prevent race conditions in multi-threaded or async environments.
12
15
 
13
16
  Attributes
14
17
  ----------
15
18
  _instances : Dict[Type[T], T]
16
- Stores singleton instances for each class using this metaclass.
19
+ Dictionary storing singleton instances for each class using this metaclass.
17
20
  _lock : threading.Lock
18
21
  Thread lock for synchronizing instance creation in synchronous contexts.
19
22
  _async_lock : asyncio.Lock
20
23
  Async lock for synchronizing instance creation in asynchronous contexts.
21
-
22
- Methods
23
- -------
24
- __call__(cls, *args, **kwargs)
25
- Synchronously creates or retrieves the singleton instance.
26
- __acall__(cls, *args, **kwargs)
27
- Asynchronously creates or retrieves the singleton instance.
28
24
  """
29
25
 
30
26
  _instances: Dict[Type[T], T] = {}
@@ -33,12 +29,12 @@ class Singleton(type):
33
29
 
34
30
  def __call__(cls: Type[T], *args: Any, **kwargs: Any) -> T:
35
31
  """
36
- Synchronously creates or retrieves a singleton instance of the class.
32
+ Synchronously create or retrieve the singleton instance.
37
33
 
38
- This method ensures that only one instance of the class is created, even in multi-threaded environments.
39
- If the instance does not exist, it acquires a thread lock to prevent race conditions, creates the instance,
40
- and stores it in the class-level `_instances` dictionary. If the instance already exists, it simply returns
41
- the existing instance.
34
+ Ensures that only one instance of the class is created in a thread-safe manner.
35
+ If the instance does not exist, acquires a thread lock to prevent race conditions,
36
+ creates the instance, and stores it in the class-level `_instances` dictionary.
37
+ If the instance already exists, returns the existing instance.
42
38
 
43
39
  Parameters
44
40
  ----------
@@ -70,12 +66,12 @@ class Singleton(type):
70
66
 
71
67
  async def __acall__(cls: Type[T], *args: Any, **kwargs: Any) -> T:
72
68
  """
73
- Asynchronously creates or retrieves a singleton instance of the class.
69
+ Asynchronously create or retrieve the singleton instance.
74
70
 
75
- This method ensures that only one instance of the class is created, even in asynchronous contexts.
76
- If the instance does not exist, it acquires an asynchronous lock to prevent race conditions,
77
- creates the instance, and stores it in the class-level `_instances` dictionary. If the instance
78
- already exists, it simply returns the existing instance.
71
+ Ensures that only one instance of the class is created in an async-safe manner.
72
+ If the instance does not exist, acquires an asynchronous lock to prevent race
73
+ conditions, creates the instance, and stores it in the class-level `_instances`
74
+ dictionary. If the instance already exists, returns the existing instance.
79
75
 
80
76
  Parameters
81
77
  ----------
@@ -103,4 +99,4 @@ class Singleton(type):
103
99
  cls._instances[cls] = super().__call__(*args, **kwargs)
104
100
 
105
101
  # Return the singleton instance
106
- return cls._instances[cls]
102
+ return cls._instances[cls]
@@ -0,0 +1,128 @@
1
+ from abc import ABC, abstractmethod
2
+ from typing import Any, Dict
3
+
4
+ class IStdClass(ABC):
5
+ """
6
+ Abstract base class for a dynamic object that allows arbitrary attribute assignment,
7
+ similar to PHP's stdClass.
8
+
9
+ Implementations must support dynamic attribute management and provide methods for
10
+ representation, comparison, serialization, and attribute manipulation.
11
+ """
12
+
13
+ @abstractmethod
14
+ def __init__(self, **kwargs: Any) -> None:
15
+ """
16
+ Initialize the object with optional attributes.
17
+
18
+ Parameters
19
+ ----------
20
+ **kwargs : Any
21
+ Arbitrary keyword arguments to set as initial attributes.
22
+ """
23
+ pass
24
+
25
+ @abstractmethod
26
+ def __repr__(self) -> str:
27
+ """
28
+ Return an unambiguous string representation of the object.
29
+
30
+ Returns
31
+ -------
32
+ str
33
+ String representation suitable for debugging and object recreation.
34
+ """
35
+ pass
36
+
37
+ @abstractmethod
38
+ def __str__(self) -> str:
39
+ """
40
+ Return a readable string representation of the object.
41
+
42
+ Returns
43
+ -------
44
+ str
45
+ Human-readable string displaying the object's attributes.
46
+ """
47
+ pass
48
+
49
+ @abstractmethod
50
+ def __eq__(self, other: Any) -> bool:
51
+ """
52
+ Compare this object with another for equality based on attributes.
53
+
54
+ Parameters
55
+ ----------
56
+ other : Any
57
+ Object to compare against.
58
+
59
+ Returns
60
+ -------
61
+ bool
62
+ True if both objects have identical attributes and values, False otherwise.
63
+ """
64
+ pass
65
+
66
+ @abstractmethod
67
+ def toDict(self) -> Dict[str, Any]:
68
+ """
69
+ Convert the object's attributes to a dictionary.
70
+
71
+ Returns
72
+ -------
73
+ dict of str to Any
74
+ Dictionary containing the object's attribute names and values.
75
+ """
76
+ pass
77
+
78
+ @abstractmethod
79
+ def update(self, **kwargs: Any) -> None:
80
+ """
81
+ Update the object's attributes with the provided key-value pairs.
82
+
83
+ Parameters
84
+ ----------
85
+ **kwargs : Any
86
+ Arbitrary keyword arguments to update or add as attributes.
87
+
88
+ Raises
89
+ ------
90
+ ValueError
91
+ If an attribute name is invalid or conflicts with existing methods.
92
+ """
93
+ pass
94
+
95
+ @abstractmethod
96
+ def remove(self, *attributes: str) -> None:
97
+ """
98
+ Remove one or more attributes from the object.
99
+
100
+ Parameters
101
+ ----------
102
+ *attributes : str
103
+ Names of the attributes to remove.
104
+
105
+ Raises
106
+ ------
107
+ AttributeError
108
+ If any specified attribute does not exist.
109
+ """
110
+ pass
111
+
112
+ @classmethod
113
+ @abstractmethod
114
+ def fromDict(cls, dictionary: Dict[str, Any]) -> 'IStdClass':
115
+ """
116
+ Create an instance from a dictionary of attributes.
117
+
118
+ Parameters
119
+ ----------
120
+ dictionary : dict of str to Any
121
+ Dictionary containing attribute names and values.
122
+
123
+ Returns
124
+ -------
125
+ IStdClass
126
+ New instance with attributes set from the dictionary.
127
+ """
128
+ pass
@@ -5,7 +5,7 @@ class OrionisStdValueException(Exception):
5
5
  Parameters
6
6
  ----------
7
7
  msg : str
8
- Descriptive error message explaining the cause of the exception.
8
+ The error message that describes the reason for the exception.
9
9
  """
10
10
  super().__init__(msg)
11
11
 
@@ -14,6 +14,6 @@ class OrionisStdValueException(Exception):
14
14
  Returns
15
15
  -------
16
16
  str
17
- Formatted string describing the exception.
17
+ The error message associated with this exception.
18
18
  """
19
19
  return str(self.args[0])