orionis 0.371.0__py3-none-any.whl → 0.372.0__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.
orionis/__init__.py CHANGED
@@ -0,0 +1,7 @@
1
+ from orionis.foundation.application import Application as Orionis
2
+ from orionis.foundation.contracts.application import IApplication as IOrionis
3
+
4
+ __all__ = [
5
+ "Orionis",
6
+ "IOrionis"
7
+ ]
@@ -3,7 +3,7 @@ from orionis.container.container import Container
3
3
  from orionis.container.contracts.service_provider import IServiceProvider
4
4
  from orionis.foundation.contracts.application import IApplication
5
5
 
6
- class Orionis(Container, IApplication):
6
+ class Application(Container, IApplication):
7
7
  """
8
8
  Application container that manages service providers.
9
9
 
@@ -42,7 +42,7 @@ class Orionis(Container, IApplication):
42
42
  super().__init__()
43
43
 
44
44
  # Check if this specific instance has already been initialized
45
- if not hasattr(self, '_Orionis__initialized'):
45
+ if not hasattr(self, '_Application__initialized'):
46
46
 
47
47
  # Initialize provider-specific attributes
48
48
  self.__providers: List[IServiceProvider] = []
@@ -51,6 +51,44 @@ class Orionis(Container, IApplication):
51
51
  # Mark this instance as initialized
52
52
  self.__initialized = True
53
53
 
54
+ # Bootstrap core services
55
+ self.__bootFramework()
56
+
57
+ def __bootFramework(self) -> None:
58
+ """
59
+ Bootstrap the application by loading internal framework providers.
60
+
61
+ This method should be called once to ensure that core services
62
+ required by the framework are registered before user-defined
63
+ providers are loaded.
64
+ """
65
+ if not self.__booted:
66
+ self.__loadFrameworkProviders()
67
+
68
+ def __loadFrameworkProviders(self) -> None:
69
+ """
70
+ Load internal framework service providers.
71
+
72
+ This method should register core services required by the framework
73
+ before user-defined providers are loaded.
74
+ """
75
+ from orionis.foundation.providers.console_provider import ConsoleProvider
76
+ from orionis.foundation.providers.dumper_provider import DumperProvider
77
+ from orionis.foundation.providers.path_resolver_provider import PathResolverProvider
78
+ from orionis.foundation.providers.progress_bar_provider import ProgressBarProvider
79
+ from orionis.foundation.providers.workers_provider import WorkersProvider
80
+
81
+ core_providers = [
82
+ ConsoleProvider,
83
+ DumperProvider,
84
+ PathResolverProvider,
85
+ ProgressBarProvider,
86
+ WorkersProvider
87
+ ]
88
+
89
+ for provider_cls in core_providers:
90
+ self.__registerProvider(provider_cls)
91
+
54
92
  def __registerProvider(
55
93
  self,
56
94
  provider_cls: Type[IServiceProvider]
@@ -103,32 +141,7 @@ class Orionis(Container, IApplication):
103
141
 
104
142
  self.__booted = True
105
143
 
106
- def __loadFrameworkProviders(self) -> None:
107
- """
108
- Load internal framework service providers.
109
-
110
- This method should register core services required by the framework
111
- before user-defined providers are loaded.
112
- """
113
- from orionis.foundation.providers.console_provider import ConsoleProvider
114
- from orionis.foundation.providers.dumper_provider import DumperProvider
115
- from orionis.foundation.providers.path_resolver_provider import PathResolverProvider
116
- from orionis.foundation.providers.progress_bar_provider import ProgressBarProvider
117
- from orionis.foundation.providers.workers_provider import WorkersProvider
118
-
119
- core_providers = [
120
- ConsoleProvider,
121
- DumperProvider,
122
- PathResolverProvider,
123
- ProgressBarProvider,
124
- WorkersProvider
125
- ]
126
-
127
- for provider_cls in core_providers:
128
- self.__registerProvider(provider_cls)
129
-
130
-
131
- def load(self, providers: List[Type[IServiceProvider]]) -> None:
144
+ def load(self, providers: List[Type[IServiceProvider]] = []) -> None:
132
145
  """
133
146
  Load and boot a list of service providers.
134
147
 
@@ -144,9 +157,6 @@ class Orionis(Container, IApplication):
144
157
  None
145
158
  """
146
159
 
147
- # Load internal framework providers first
148
- self.__loadFrameworkProviders()
149
-
150
160
  # Register and boot each provided service provider
151
161
  for provider_cls in providers:
152
162
  self.__registerProvider(provider_cls)
@@ -28,7 +28,7 @@ class IApplication(IContainer):
28
28
  pass
29
29
 
30
30
  @abstractmethod
31
- def load(self, providers: List[Type[IServiceProvider]]) -> None:
31
+ def load(self, providers: List[Type[IServiceProvider]] = []) -> None:
32
32
  """
33
33
  Load and boot a list of service providers.
34
34
 
@@ -5,7 +5,7 @@
5
5
  NAME = "orionis"
6
6
 
7
7
  # Current version of the framework
8
- VERSION = "0.371.0"
8
+ VERSION = "0.372.0"
9
9
 
10
10
  # Full name of the author or maintainer of the project
11
11
  AUTHOR = "Raul Mauricio Uñate Castro"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: orionis
3
- Version: 0.371.0
3
+ Version: 0.372.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
@@ -1,4 +1,4 @@
1
- orionis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1
+ orionis/__init__.py,sha256=dtNpLau0gNc-o1gLiwsQiI0-XAK7EGGV70OaQSsdICU,194
2
2
  orionis/unittesting.py,sha256=_ukXPOOQTaaBxmWScsCO0FdlEC0uYFIxlytBXQpl1Bk,2030
3
3
  orionis/_console/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  orionis/_console/command_filter.py,sha256=bn0fcWfQg13DrQBaV4NopNxdP-6up0G54Qmhg7r_BKA,1211
@@ -147,7 +147,7 @@ orionis/container/validators/is_subclass.py,sha256=4sBaGLoRs8nUhuWjlP0VJqyTwVHYq
147
147
  orionis/container/validators/is_valid_alias.py,sha256=4uAYcq8xov7jZbXnpKpjNkxcZtlTNnL5RRctVPMwJes,1424
148
148
  orionis/container/validators/lifetime.py,sha256=IQ43fDNrxYHMlZH2zlYDJnlkLO_eS4U7Fs3UJgQBidI,1844
149
149
  orionis/foundation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
- orionis/foundation/application.py,sha256=wYt664l8v95_B3ny0i83aq07OUTsp-uwF3sqYD-PtaY,5331
150
+ orionis/foundation/application.py,sha256=XQzYpmPg6yvKct24E71jcgFsEBaKt3dktWH_bs-xZZw,5720
151
151
  orionis/foundation/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
152
152
  orionis/foundation/config/startup.py,sha256=zutF-34DkW68bpiTxH9xrmIe1iJdXCF9Y6wueXS6qys,8265
153
153
  orionis/foundation/config/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -236,7 +236,7 @@ orionis/foundation/config/testing/entities/testing.py,sha256=keU7dSuRv0rgaG-T4Vo
236
236
  orionis/foundation/config/testing/enums/__init__.py,sha256=tCHed6wBzqHx8o3kWBGm8tZYkYOKdSAx8TvgC-Eauv0,75
237
237
  orionis/foundation/config/testing/enums/test_mode.py,sha256=IbFpauu7J-iSAfmC8jDbmTEYl8eZr-AexL-lyOh8_74,337
238
238
  orionis/foundation/contracts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
239
- orionis/foundation/contracts/application.py,sha256=Zr10-f7p8QKhKwGJMscX9-euuUlN8sq2BTShjSqczX4,1688
239
+ orionis/foundation/contracts/application.py,sha256=vgvUnzQAQlpzkfOBDR-H4Y7mL9cPZuy5QduFayx__FQ,1693
240
240
  orionis/foundation/contracts/config.py,sha256=Rpz6U6t8OXHO9JJKSTnCimytXE-tfCB-1ithP2nG8MQ,628
241
241
  orionis/foundation/exceptions/__init__.py,sha256=XtG3MJ_MFNY_dU5mmTyz_N_4QG1jYrcv5RegBso7wuY,163
242
242
  orionis/foundation/exceptions/integrity.py,sha256=mc4pL1UMoYRHEmphnpW2oGk5URhu7DJRREyzHaV-cs8,472
@@ -248,7 +248,7 @@ orionis/foundation/providers/path_resolver_provider.py,sha256=rXvaVc5sSqmDgRzWJo
248
248
  orionis/foundation/providers/progress_bar_provider.py,sha256=75Jr4iEgUOUGl8Di1DioeP5_HRQlR-1lVzPmS96sWjA,737
249
249
  orionis/foundation/providers/workers_provider.py,sha256=WWlji3C69_-Y0c42aZDbR_bmcE_qZEh2SaA_cNkCivI,702
250
250
  orionis/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
251
- orionis/metadata/framework.py,sha256=ELLE9bftoocsTWd1mXjuTK3xa3mgdzsQ9BRkRihfQ5g,4960
251
+ orionis/metadata/framework.py,sha256=8ADjfPeSm8Z1yby-YerBK9JuHdcFjHbH4lp1fqPYgcs,4960
252
252
  orionis/metadata/package.py,sha256=tqLfBRo-w1j_GN4xvzUNFyweWYFS-qhSgAEc-AmCH1M,5452
253
253
  orionis/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
254
254
  orionis/services/asynchrony/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -380,7 +380,7 @@ orionis/test/output/dumper.py,sha256=3EV-G3KgEV4O0M4yl-4klPKc1etWOPZvPAcYhUQyXnI
380
380
  orionis/test/output/printer.py,sha256=WGjGW2lgu_l5wWJ6Z8qTTV7NAObhoTBcvhM1TcNvwU4,16938
381
381
  orionis/test/view/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
382
382
  orionis/test/view/render.py,sha256=jXZkbITBknbUwm_mD8bcTiwLDvsFkrO9qrf0ZgPwqxc,4903
383
- orionis-0.371.0.dist-info/licenses/LICENCE,sha256=-_4cF2EBKuYVS_SQpy1uapq0oJPUU1vl_RUWSy2jJTo,1111
383
+ orionis-0.372.0.dist-info/licenses/LICENCE,sha256=-_4cF2EBKuYVS_SQpy1uapq0oJPUU1vl_RUWSy2jJTo,1111
384
384
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
385
385
  tests/example/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
386
386
  tests/example/test_example.py,sha256=kvWgiW3ADEZf718dGsMPtDh_rmOSx1ypEInKm7_6ZPQ,601
@@ -481,8 +481,8 @@ tests/support/wrapper/test_services_wrapper_docdict.py,sha256=hIVqGt19vbW22xPjQS
481
481
  tests/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
482
482
  tests/testing/test_testing_result.py,sha256=1O_8xjsFPnzwZOpLT6ImqjO9HY5_jIgP7DTVBsgHvQA,4335
483
483
  tests/testing/test_testing_unit.py,sha256=S3anwYcF2DBWYh_UfqKcZq2FgNpQjP0SfYVRd5sD5rI,7442
484
- orionis-0.371.0.dist-info/METADATA,sha256=R3PbjmUDx3DhHzBDS9GdFoa-PHUZ45PgXWXiPB5jHh8,4772
485
- orionis-0.371.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
486
- orionis-0.371.0.dist-info/top_level.txt,sha256=2bdoHgyGZhOtLAXS6Om8OCTmL24dUMC_L1quMe_ETbk,14
487
- orionis-0.371.0.dist-info/zip-safe,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
488
- orionis-0.371.0.dist-info/RECORD,,
484
+ orionis-0.372.0.dist-info/METADATA,sha256=VBCV-xWsB9MHdjLDwJTFMwA8s0RFg_X9p5c1tFfHhSM,4772
485
+ orionis-0.372.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
486
+ orionis-0.372.0.dist-info/top_level.txt,sha256=2bdoHgyGZhOtLAXS6Om8OCTmL24dUMC_L1quMe_ETbk,14
487
+ orionis-0.372.0.dist-info/zip-safe,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
488
+ orionis-0.372.0.dist-info/RECORD,,