orionis 0.139.0__tar.gz → 0.152.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.
- {orionis-0.139.0/orionis.egg-info → orionis-0.152.0}/PKG-INFO +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/framework.py +1 -1
- orionis-0.152.0/orionis/luminate/application.py +254 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/base/command.py +6 -3
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/command_filter.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/cache_clear.py +4 -3
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/schedule_work.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/kernel.py +1 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/output/console.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/output/executor.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/output/progress_bar.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/parser.py +1 -1
- orionis-0.152.0/orionis/luminate/container/container.py +547 -0
- orionis-0.152.0/orionis/luminate/container/container_integrity.py +235 -0
- orionis-0.152.0/orionis/luminate/container/lifetimes.py +13 -0
- orionis-0.152.0/orionis/luminate/container/resolve.py +74 -0
- orionis-0.152.0/orionis/luminate/contracts/application.py +41 -0
- orionis-0.139.0/orionis/luminate/contracts/console/i_parser.py → orionis-0.152.0/orionis/luminate/contracts/console/parser.py +0 -1
- orionis-0.152.0/orionis/luminate/contracts/container/container.py +346 -0
- orionis-0.152.0/orionis/luminate/contracts/container/container_integrity.py +168 -0
- orionis-0.139.0/orionis/luminate/contracts/foundation/providers/i_service_providers_bootstrapper.py → orionis-0.152.0/orionis/luminate/contracts/foundation/providers/service_providers_bootstrapper.py +4 -3
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/commands/commands_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/commands/scheduler_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/config/config_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/environment/environment_facade.py +1 -26
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/files/path_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/log/log_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/tests/tests_facade.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/config/config_bootstrapper.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/console/command_bootstrapper.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/environment/environment_bootstrapper.py +1 -1
- orionis-0.152.0/orionis/luminate/foundation/exceptions/exception_providers.py +54 -0
- orionis-0.152.0/orionis/luminate/foundation/providers/service_providers_bootstrapper.py +106 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/commands/reactor_commands_service_provider.py +4 -3
- orionis-0.152.0/orionis/luminate/providers/commands/scheduler_provider.py +11 -0
- orionis-0.152.0/orionis/luminate/providers/config/config_service_provider.py +11 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/environment/environment__service_provider.py +3 -4
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/files/paths_provider.py +3 -4
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/log/log_service_provider.py +3 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/service_provider.py +2 -6
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/commands/reactor_commands_service.py +6 -16
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/commands/scheduler_service.py +1 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/config/config_service.py +4 -5
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/environment/environment_service.py +25 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/files/path_resolver_service.py +1 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/log/log_service.py +1 -2
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/support/exception_to_dict.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/support/reflection.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/support/std.py +1 -1
- {orionis-0.139.0 → orionis-0.152.0/orionis.egg-info}/PKG-INFO +1 -1
- {orionis-0.139.0 → orionis-0.152.0}/orionis.egg-info/SOURCES.txt +37 -33
- orionis-0.139.0/orionis/luminate/application.py +0 -404
- orionis-0.139.0/orionis/luminate/container/container.py +0 -458
- orionis-0.139.0/orionis/luminate/container/types.py +0 -51
- orionis-0.139.0/orionis/luminate/contracts/container/i_container.py +0 -239
- orionis-0.139.0/orionis/luminate/contracts/container/i_types.py +0 -16
- orionis-0.139.0/orionis/luminate/foundation/providers/service_providers_bootstrapper.py +0 -98
- orionis-0.139.0/orionis/luminate/providers/commands/scheduler_provider.py +0 -19
- orionis-0.139.0/orionis/luminate/providers/config/config_service_provider.py +0 -19
- {orionis-0.139.0 → orionis-0.152.0}/LICENCE +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/MANIFEST.in +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/README.md +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/cli_manager.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/contracts/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/contracts/i_installer_manager.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/contracts/i_installer_output.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/contracts/i_installer_setup.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/manager.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/output/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/output/output.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/setup/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/installer/setup/setup.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/app.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/auth.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/cache.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/cors.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/database.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/filesystems.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/logging.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/mail.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/queue.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/config/session.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/base/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/help.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/tests.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/commands/version.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/exceptions/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/exceptions/cli_exception.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/output/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/console/output/styles.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/container/exception.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/config/i_config.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/console/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/console/base/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/base/i_command.py → /orionis-0.152.0/orionis/luminate/contracts/console/base/command.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/i_command_filter.py → /orionis-0.152.0/orionis/luminate/contracts/console/command_filter.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/i_kernel.py → /orionis-0.152.0/orionis/luminate/contracts/console/kernel.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/console/output/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/output/i_console.py → /orionis-0.152.0/orionis/luminate/contracts/console/output/console.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/output/i_executor.py → /orionis-0.152.0/orionis/luminate/contracts/console/output/executor.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/output/i_progress_bar.py → /orionis-0.152.0/orionis/luminate/contracts/console/output/progress_bar.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/console/i_task_manager.py → /orionis-0.152.0/orionis/luminate/contracts/console/task_manager.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/commands/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/commands/i_commands_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/commands/commands_facade.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/commands/i_scheduler_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/commands/scheduler_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/config/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/config/i_config_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/config/config_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/environment/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/environment/i_environment_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/environment/environment_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/files/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/files/i_path_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/files/path_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/log/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/log/i_log_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/log/log_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/facades/tests/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/facades/tests/i_tests_facade.py → /orionis-0.152.0/orionis/luminate/contracts/facades/tests/tests_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/foundation/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/foundation/i_bootstraper.py → /orionis-0.152.0/orionis/luminate/contracts/foundation/bootstraper.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/foundation/config/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/foundation/config/i_config_bootstrapper.py → /orionis-0.152.0/orionis/luminate/contracts/foundation/config/config_bootstrapper.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/foundation/console/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/foundation/console/i_command_bootstrapper.py → /orionis-0.152.0/orionis/luminate/contracts/foundation/console/command_bootstrapper.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/foundation/environment/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/foundation/environment/i_environment_bootstrapper.py → /orionis-0.152.0/orionis/luminate/contracts/foundation/environment/environment_bootstrapper.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/foundation/providers/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/providers/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/providers/i_service_provider.py → /orionis-0.152.0/orionis/luminate/contracts/providers/service_provider.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/commands/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/commands/i_reactor_commands_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/commands/reactor_commands_service.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/commands/i_schedule_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/commands/schedule_service.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/config/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/config/i_config_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/config/config_service.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/environment/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/environment/i_environment_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/environment/environment_service.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/files/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/files/i_path_resolver_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/files/path_resolver_service.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/contracts/services/log/__init__.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/services/log/i_log_service.py → /orionis-0.152.0/orionis/luminate/contracts/services/log/log_service.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/support/i_exception_to_dict.py → /orionis-0.152.0/orionis/luminate/contracts/support/exception_to_dict.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/support/i_reflection.py → /orionis-0.152.0/orionis/luminate/contracts/support/reflection.py +0 -0
- /orionis-0.139.0/orionis/luminate/contracts/support/i_std.py → /orionis-0.152.0/orionis/luminate/contracts/support/std.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/app_facade.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/commands/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/environment/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/files/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/log/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/facades/tests/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/console/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/environment/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/exceptions/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/exceptions/exception_bootstrapper.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/foundation/providers/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/patterns/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/patterns/singleton.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/commands/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/environment/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/files/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/providers/log/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/commands/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/config/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/environment/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/files/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/services/log/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/support/dot_dict.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/test/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/test/exception.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/luminate/test/unit_test.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/ascii/icon.ascii +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/ascii/info.ascii +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/bg/galaxy.jpg +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/favicon/OrionisFrameworkFavicon.png +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/logos/OrionisFramework.jpg +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/logos/OrionisFramework.png +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/logos/OrionisFramework.psd +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/logos/OrionisFramework2.png +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis/static/logos/OrionisFramework3.png +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis.egg-info/dependency_links.txt +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis.egg-info/entry_points.txt +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis.egg-info/requires.txt +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/orionis.egg-info/top_level.txt +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/setup.cfg +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/setup.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/tests/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/tests/tools/__init__.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/tests/tools/class_example.py +0 -0
- {orionis-0.139.0 → orionis-0.152.0}/tests/tools/test_reflection.py +0 -0
@@ -0,0 +1,254 @@
|
|
1
|
+
import asyncio
|
2
|
+
import inspect
|
3
|
+
from typing import Dict, List, Type
|
4
|
+
from contextlib import contextmanager
|
5
|
+
from orionis.luminate.contracts.application import IApplication
|
6
|
+
from orionis.luminate.contracts.container.container import IContainer
|
7
|
+
from orionis.luminate.contracts.foundation.bootstraper import IBootstrapper
|
8
|
+
from orionis.luminate.container.container import Container
|
9
|
+
from orionis.luminate.contracts.providers.service_provider import IServiceProvider
|
10
|
+
from orionis.luminate.foundation.config.config_bootstrapper import ConfigBootstrapper
|
11
|
+
from orionis.luminate.foundation.console.command_bootstrapper import CommandsBootstrapper
|
12
|
+
from orionis.luminate.foundation.environment.environment_bootstrapper import EnvironmentBootstrapper
|
13
|
+
from orionis.luminate.foundation.exceptions.exception_bootstrapper import BootstrapRuntimeError
|
14
|
+
from orionis.luminate.foundation.providers.service_providers_bootstrapper import ServiceProvidersBootstrapper
|
15
|
+
from orionis.luminate.patterns.singleton import SingletonMeta
|
16
|
+
|
17
|
+
class Application(metaclass=SingletonMeta):
|
18
|
+
"""
|
19
|
+
Main application class that follows the Singleton pattern.
|
20
|
+
|
21
|
+
This class manages service providers, environment variables, configurations,
|
22
|
+
and commands for the application lifecycle.
|
23
|
+
|
24
|
+
Attributes
|
25
|
+
----------
|
26
|
+
_booted : bool
|
27
|
+
Indicates whether the application has been booted.
|
28
|
+
_custom_providers : List[Type[ServiceProvider]]
|
29
|
+
Custom service providers defined by the developer.
|
30
|
+
_service_providers : List[Type[ServiceProvider]]
|
31
|
+
Core application service providers.
|
32
|
+
_config : dict
|
33
|
+
Configuration settings of the application.
|
34
|
+
_commands : dict
|
35
|
+
Registered console commands.
|
36
|
+
_env : dict
|
37
|
+
Environment variables.
|
38
|
+
_container : IContainer
|
39
|
+
The service container instance.
|
40
|
+
"""
|
41
|
+
|
42
|
+
_booted: bool = False
|
43
|
+
|
44
|
+
def __init__(self):
|
45
|
+
"""
|
46
|
+
Initializes the application by setting up service providers, environment variables,
|
47
|
+
configuration, and the service container.
|
48
|
+
"""
|
49
|
+
self._custom_providers: List[Type[IServiceProvider]] = []
|
50
|
+
self._service_providers: List[Type[IServiceProvider]] = []
|
51
|
+
self._config: Dict = {}
|
52
|
+
self._commands: Dict = {}
|
53
|
+
self._env: Dict = {}
|
54
|
+
self._container: IContainer = Container()
|
55
|
+
|
56
|
+
# Register the application instance in the service container
|
57
|
+
self._container.instance(IApplication, self)
|
58
|
+
|
59
|
+
@classmethod
|
60
|
+
def boot(cls) -> None:
|
61
|
+
"""
|
62
|
+
Marks the application as booted.
|
63
|
+
"""
|
64
|
+
cls._booted = True
|
65
|
+
|
66
|
+
@classmethod
|
67
|
+
def isRunning(cls) -> bool:
|
68
|
+
"""
|
69
|
+
Checks if the application has been booted.
|
70
|
+
|
71
|
+
Returns
|
72
|
+
-------
|
73
|
+
bool
|
74
|
+
True if the application is running, otherwise False.
|
75
|
+
"""
|
76
|
+
return cls._booted
|
77
|
+
|
78
|
+
@classmethod
|
79
|
+
def getInstance(cls) -> "Application":
|
80
|
+
"""
|
81
|
+
Retrieves the singleton instance of the Application.
|
82
|
+
|
83
|
+
Returns
|
84
|
+
-------
|
85
|
+
Application
|
86
|
+
The current application instance.
|
87
|
+
|
88
|
+
Raises
|
89
|
+
------
|
90
|
+
RuntimeError
|
91
|
+
If the application has not been initialized yet.
|
92
|
+
"""
|
93
|
+
if cls not in SingletonMeta._instances:
|
94
|
+
raise RuntimeError("Application has not been initialized yet. Please create an instance first.")
|
95
|
+
return SingletonMeta._instances[cls]
|
96
|
+
|
97
|
+
@classmethod
|
98
|
+
def destroy(cls) -> None:
|
99
|
+
"""
|
100
|
+
Destroys the singleton instance of the Application.
|
101
|
+
"""
|
102
|
+
if cls in SingletonMeta._instances:
|
103
|
+
del SingletonMeta._instances[cls]
|
104
|
+
|
105
|
+
def withProviders(self, providers: List[Type[IServiceProvider]] = None) -> None:
|
106
|
+
"""
|
107
|
+
Sets custom service providers.
|
108
|
+
|
109
|
+
Parameters
|
110
|
+
----------
|
111
|
+
providers : List[Type[IServiceProvider]], optional
|
112
|
+
List of service providers, by default None.
|
113
|
+
"""
|
114
|
+
self._custom_providers = providers or []
|
115
|
+
|
116
|
+
def container(self) -> IContainer:
|
117
|
+
"""
|
118
|
+
Returns the service container instance.
|
119
|
+
|
120
|
+
Returns
|
121
|
+
-------
|
122
|
+
IContainer
|
123
|
+
The service container.
|
124
|
+
"""
|
125
|
+
return self._container
|
126
|
+
|
127
|
+
def create(self) -> None:
|
128
|
+
"""
|
129
|
+
Initializes and boots the application, including loading commands
|
130
|
+
and service providers.
|
131
|
+
"""
|
132
|
+
|
133
|
+
# Boot the application
|
134
|
+
self._bootstrapping()
|
135
|
+
|
136
|
+
# Load commands and service providers
|
137
|
+
self._loadCommands()
|
138
|
+
|
139
|
+
# Boot service providers
|
140
|
+
asyncio.run(self._bootServiceProviders())
|
141
|
+
|
142
|
+
# Change the application status to booted
|
143
|
+
Application.boot()
|
144
|
+
|
145
|
+
async def _bootServiceProviders(self) -> None:
|
146
|
+
"""
|
147
|
+
Boots all registered service providers.
|
148
|
+
"""
|
149
|
+
for service in self._service_providers:
|
150
|
+
provider: IServiceProvider = service(app=self._container)
|
151
|
+
provider.register()
|
152
|
+
|
153
|
+
# If the provider has a boot method, execute it (sync or async)
|
154
|
+
if hasattr(provider, 'boot') and callable(provider.boot):
|
155
|
+
if inspect.iscoroutinefunction(provider.boot):
|
156
|
+
await provider.boot()
|
157
|
+
else:
|
158
|
+
provider.boot()
|
159
|
+
|
160
|
+
def _bootstrapping(self) -> None:
|
161
|
+
"""
|
162
|
+
Loads essential components such as environment variables,
|
163
|
+
configurations, commands, and service providers.
|
164
|
+
"""
|
165
|
+
bootstrappers = [
|
166
|
+
{'property': self._env, 'instance': EnvironmentBootstrapper()},
|
167
|
+
{'property': self._config, 'instance': ConfigBootstrapper()},
|
168
|
+
{'property': self._commands, 'instance': CommandsBootstrapper()},
|
169
|
+
{'property': self._service_providers, 'instance': ServiceProvidersBootstrapper(self._custom_providers)},
|
170
|
+
]
|
171
|
+
|
172
|
+
for bootstrapper in bootstrappers:
|
173
|
+
try:
|
174
|
+
property_ref: Dict = bootstrapper["property"]
|
175
|
+
bootstrapper_instance: IBootstrapper = bootstrapper["instance"]
|
176
|
+
property_ref.update(bootstrapper_instance.get())
|
177
|
+
except Exception as e:
|
178
|
+
raise BootstrapRuntimeError(f"Error bootstrapping {type(bootstrapper_instance).__name__}: {str(e)}") from e
|
179
|
+
|
180
|
+
def _loadCommands(self) -> None:
|
181
|
+
"""
|
182
|
+
Registers application commands in the service container.
|
183
|
+
"""
|
184
|
+
for command, data_command in self._commands.items():
|
185
|
+
self._container.transient(data_command.get('signature'), data_command.get('concrete'))
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
# @contextmanager
|
197
|
+
# def app_context():
|
198
|
+
# """
|
199
|
+
# Context manager for creating an instance of the Orionis application.
|
200
|
+
|
201
|
+
# This function initializes the Orionis application with a new container,
|
202
|
+
# ensuring that the application is properly set up before use.
|
203
|
+
|
204
|
+
# Yields
|
205
|
+
# ------
|
206
|
+
# Application
|
207
|
+
# The initialized Orionis application instance.
|
208
|
+
|
209
|
+
# Raises
|
210
|
+
# ------
|
211
|
+
# RuntimeError
|
212
|
+
# If the application has not been properly initialized.
|
213
|
+
# """
|
214
|
+
# try:
|
215
|
+
|
216
|
+
# # Check if the application has been booted
|
217
|
+
# if not Application.booted:
|
218
|
+
# app = Application(Container()).boot()
|
219
|
+
# else:
|
220
|
+
# app = Application.getCurrentInstance()
|
221
|
+
|
222
|
+
# # Yield the application instance
|
223
|
+
# yield app
|
224
|
+
|
225
|
+
# finally:
|
226
|
+
|
227
|
+
# # Close Context Manager
|
228
|
+
# pass
|
229
|
+
|
230
|
+
# def app_booted():
|
231
|
+
# """
|
232
|
+
# Check if the application has been booted.
|
233
|
+
|
234
|
+
# Returns:
|
235
|
+
# bool: True if the application has been booted, False otherwise.
|
236
|
+
# """
|
237
|
+
# return Application.booted
|
238
|
+
|
239
|
+
# def orionis():
|
240
|
+
# """
|
241
|
+
# Creates a new instance of the Orionis application.
|
242
|
+
|
243
|
+
# Ensures that any existing singleton instance of `Application` is removed before
|
244
|
+
# creating a fresh instance. It resets the singleton instances stored in `SingletonMeta`
|
245
|
+
# and `Container`.
|
246
|
+
|
247
|
+
# Returns
|
248
|
+
# -------
|
249
|
+
# Application
|
250
|
+
# A new instance of the Orionis application.
|
251
|
+
# """
|
252
|
+
# Application.reset()
|
253
|
+
|
254
|
+
# return Application()
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from orionis.luminate.contracts.console.base.
|
1
|
+
from orionis.luminate.contracts.console.base.command import IBaseCommand
|
2
2
|
from orionis.luminate.console.output.console import Console
|
3
3
|
from orionis.luminate.console.output.progress_bar import ProgressBar
|
4
4
|
|
@@ -8,9 +8,12 @@ class BaseCommand(IBaseCommand):
|
|
8
8
|
various types (success, info, warning, etc.) in different styles (e.g., text, bold, colored).
|
9
9
|
|
10
10
|
This class acts as a foundation for command classes, offering utility methods to interact with the console.
|
11
|
-
"""
|
12
11
|
|
13
|
-
|
12
|
+
Parameters
|
13
|
+
----------
|
14
|
+
args : dict, optional
|
15
|
+
A dictionary containing the command arguments (default is an empty dictionary).
|
16
|
+
"""
|
14
17
|
args = {}
|
15
18
|
|
16
19
|
def success(self, message: str = '', timestamp: bool = True):
|
@@ -44,9 +44,10 @@ class CacheClearCommand(BaseCommand):
|
|
44
44
|
# Recursively traverse directories starting from the base path
|
45
45
|
for root, dirs, files in os.walk(base_path, topdown=True):
|
46
46
|
|
47
|
-
# Skip
|
48
|
-
|
49
|
-
dirs
|
47
|
+
# Skip common environment directories (e.g., venv, env, vendor, node_modules)
|
48
|
+
for env_dir in ['venv', 'env', 'virtualenv', 'venv3', 'env3', 'venv2', 'env2', 'vendor', 'node_modules', 'environment']:
|
49
|
+
if env_dir in dirs:
|
50
|
+
dirs.remove(env_dir)
|
50
51
|
|
51
52
|
# Check for __pycache__ directories
|
52
53
|
if '__pycache__' in dirs:
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import importlib
|
2
2
|
from orionis.luminate.console.base.command import BaseCommand
|
3
3
|
from orionis.luminate.console.exceptions.cli_exception import CLIOrionisRuntimeError
|
4
|
-
from orionis.luminate.contracts.console.
|
4
|
+
from orionis.luminate.contracts.console.task_manager import ITaskManager
|
5
5
|
from orionis.luminate.facades.commands.scheduler_facade import Schedule
|
6
6
|
|
7
7
|
|
@@ -2,7 +2,7 @@ import os
|
|
2
2
|
import sys
|
3
3
|
import getpass
|
4
4
|
import datetime
|
5
|
-
from orionis.luminate.contracts.console.output.
|
5
|
+
from orionis.luminate.contracts.console.output.console import IConsole
|
6
6
|
from orionis.luminate.console.output.styles import ANSIColors
|
7
7
|
from orionis.luminate.support.exception_to_dict import ExceptionsToDict
|
8
8
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from datetime import datetime
|
2
|
-
from orionis.luminate.contracts.console.output.
|
2
|
+
from orionis.luminate.contracts.console.output.executor import IExecutor
|
3
3
|
from orionis.luminate.console.output.styles import ANSIColors
|
4
4
|
|
5
5
|
class Executor(IExecutor):
|