exonware-xwlazy 0.1.0.1__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.
Files changed (93) hide show
  1. exonware/__init__.py +42 -0
  2. exonware/xwlazy/__init__.py +379 -0
  3. exonware/xwlazy/common/__init__.py +55 -0
  4. exonware/xwlazy/common/base.py +65 -0
  5. exonware/xwlazy/common/cache.py +504 -0
  6. exonware/xwlazy/common/logger.py +257 -0
  7. exonware/xwlazy/common/services/__init__.py +72 -0
  8. exonware/xwlazy/common/services/dependency_mapper.py +250 -0
  9. exonware/xwlazy/common/services/install_async_utils.py +170 -0
  10. exonware/xwlazy/common/services/install_cache_utils.py +245 -0
  11. exonware/xwlazy/common/services/keyword_detection.py +283 -0
  12. exonware/xwlazy/common/services/spec_cache.py +165 -0
  13. exonware/xwlazy/common/services/state_manager.py +84 -0
  14. exonware/xwlazy/common/strategies/__init__.py +28 -0
  15. exonware/xwlazy/common/strategies/caching_dict.py +44 -0
  16. exonware/xwlazy/common/strategies/caching_installation.py +88 -0
  17. exonware/xwlazy/common/strategies/caching_lfu.py +66 -0
  18. exonware/xwlazy/common/strategies/caching_lru.py +63 -0
  19. exonware/xwlazy/common/strategies/caching_multitier.py +59 -0
  20. exonware/xwlazy/common/strategies/caching_ttl.py +59 -0
  21. exonware/xwlazy/common/utils.py +142 -0
  22. exonware/xwlazy/config.py +193 -0
  23. exonware/xwlazy/contracts.py +1533 -0
  24. exonware/xwlazy/defs.py +378 -0
  25. exonware/xwlazy/errors.py +276 -0
  26. exonware/xwlazy/facade.py +1137 -0
  27. exonware/xwlazy/host/__init__.py +8 -0
  28. exonware/xwlazy/host/conf.py +16 -0
  29. exonware/xwlazy/module/__init__.py +18 -0
  30. exonware/xwlazy/module/base.py +643 -0
  31. exonware/xwlazy/module/data.py +17 -0
  32. exonware/xwlazy/module/facade.py +246 -0
  33. exonware/xwlazy/module/importer_engine.py +2964 -0
  34. exonware/xwlazy/module/partial_module_detector.py +275 -0
  35. exonware/xwlazy/module/strategies/__init__.py +22 -0
  36. exonware/xwlazy/module/strategies/module_helper_lazy.py +93 -0
  37. exonware/xwlazy/module/strategies/module_helper_simple.py +65 -0
  38. exonware/xwlazy/module/strategies/module_manager_advanced.py +111 -0
  39. exonware/xwlazy/module/strategies/module_manager_simple.py +95 -0
  40. exonware/xwlazy/package/__init__.py +18 -0
  41. exonware/xwlazy/package/base.py +877 -0
  42. exonware/xwlazy/package/conf.py +324 -0
  43. exonware/xwlazy/package/data.py +17 -0
  44. exonware/xwlazy/package/facade.py +480 -0
  45. exonware/xwlazy/package/services/__init__.py +84 -0
  46. exonware/xwlazy/package/services/async_install_handle.py +87 -0
  47. exonware/xwlazy/package/services/config_manager.py +249 -0
  48. exonware/xwlazy/package/services/discovery.py +435 -0
  49. exonware/xwlazy/package/services/host_packages.py +180 -0
  50. exonware/xwlazy/package/services/install_async.py +291 -0
  51. exonware/xwlazy/package/services/install_cache.py +145 -0
  52. exonware/xwlazy/package/services/install_interactive.py +59 -0
  53. exonware/xwlazy/package/services/install_policy.py +156 -0
  54. exonware/xwlazy/package/services/install_registry.py +54 -0
  55. exonware/xwlazy/package/services/install_result.py +17 -0
  56. exonware/xwlazy/package/services/install_sbom.py +153 -0
  57. exonware/xwlazy/package/services/install_utils.py +79 -0
  58. exonware/xwlazy/package/services/installer_engine.py +406 -0
  59. exonware/xwlazy/package/services/lazy_installer.py +803 -0
  60. exonware/xwlazy/package/services/manifest.py +503 -0
  61. exonware/xwlazy/package/services/strategy_registry.py +324 -0
  62. exonware/xwlazy/package/strategies/__init__.py +57 -0
  63. exonware/xwlazy/package/strategies/package_discovery_file.py +129 -0
  64. exonware/xwlazy/package/strategies/package_discovery_hybrid.py +84 -0
  65. exonware/xwlazy/package/strategies/package_discovery_manifest.py +101 -0
  66. exonware/xwlazy/package/strategies/package_execution_async.py +113 -0
  67. exonware/xwlazy/package/strategies/package_execution_cached.py +90 -0
  68. exonware/xwlazy/package/strategies/package_execution_pip.py +99 -0
  69. exonware/xwlazy/package/strategies/package_execution_wheel.py +106 -0
  70. exonware/xwlazy/package/strategies/package_mapping_discovery_first.py +100 -0
  71. exonware/xwlazy/package/strategies/package_mapping_hybrid.py +105 -0
  72. exonware/xwlazy/package/strategies/package_mapping_manifest_first.py +100 -0
  73. exonware/xwlazy/package/strategies/package_policy_allow_list.py +57 -0
  74. exonware/xwlazy/package/strategies/package_policy_deny_list.py +57 -0
  75. exonware/xwlazy/package/strategies/package_policy_permissive.py +46 -0
  76. exonware/xwlazy/package/strategies/package_timing_clean.py +67 -0
  77. exonware/xwlazy/package/strategies/package_timing_full.py +66 -0
  78. exonware/xwlazy/package/strategies/package_timing_smart.py +68 -0
  79. exonware/xwlazy/package/strategies/package_timing_temporary.py +66 -0
  80. exonware/xwlazy/runtime/__init__.py +18 -0
  81. exonware/xwlazy/runtime/adaptive_learner.py +129 -0
  82. exonware/xwlazy/runtime/base.py +274 -0
  83. exonware/xwlazy/runtime/facade.py +94 -0
  84. exonware/xwlazy/runtime/intelligent_selector.py +170 -0
  85. exonware/xwlazy/runtime/metrics.py +60 -0
  86. exonware/xwlazy/runtime/performance.py +37 -0
  87. exonware/xwlazy/version.py +77 -0
  88. exonware_xwlazy-0.1.0.1.dist-info/METADATA +454 -0
  89. exonware_xwlazy-0.1.0.1.dist-info/RECORD +93 -0
  90. exonware_xwlazy-0.1.0.1.dist-info/WHEEL +4 -0
  91. exonware_xwlazy-0.1.0.1.dist-info/licenses/LICENSE +21 -0
  92. xwlazy/__init__.py +14 -0
  93. xwlazy/lazy.py +30 -0
xwlazy/lazy.py ADDED
@@ -0,0 +1,30 @@
1
+ """
2
+ Compatibility module for xwlazy.lazy imports.
3
+
4
+ This module provides backward compatibility for packages that import
5
+ from xwlazy.lazy instead of exonware.xwlazy.
6
+
7
+ Company: eXonware.com
8
+ Author: Eng. Muhammad AlShehri
9
+ Email: connect@exonware.com
10
+ """
11
+
12
+ # Re-export commonly used functions from the main package
13
+ from exonware.xwlazy import (
14
+ xwimport,
15
+ config_package_lazy_install_enabled,
16
+ config_module_lazy_load_enabled,
17
+ enable_lazy_mode,
18
+ disable_lazy_mode,
19
+ is_lazy_mode_enabled,
20
+ )
21
+
22
+ __all__ = [
23
+ 'xwimport',
24
+ 'config_package_lazy_install_enabled',
25
+ 'config_module_lazy_load_enabled',
26
+ 'enable_lazy_mode',
27
+ 'disable_lazy_mode',
28
+ 'is_lazy_mode_enabled',
29
+ ]
30
+