exonware-xwsystem 0.1.0.1__py3-none-any.whl → 0.1.0.4__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 (341) hide show
  1. exonware/__init__.py +2 -1
  2. exonware/conf.py +2 -2
  3. exonware/xwsystem/__init__.py +115 -43
  4. exonware/xwsystem/base.py +30 -0
  5. exonware/xwsystem/caching/__init__.py +39 -13
  6. exonware/xwsystem/caching/base.py +24 -6
  7. exonware/xwsystem/caching/bloom_cache.py +2 -2
  8. exonware/xwsystem/caching/cache_manager.py +2 -1
  9. exonware/xwsystem/caching/conditional.py +2 -2
  10. exonware/xwsystem/caching/contracts.py +85 -139
  11. exonware/xwsystem/caching/decorators.py +6 -19
  12. exonware/xwsystem/caching/defs.py +2 -1
  13. exonware/xwsystem/caching/disk_cache.py +2 -1
  14. exonware/xwsystem/caching/distributed.py +2 -1
  15. exonware/xwsystem/caching/errors.py +2 -1
  16. exonware/xwsystem/caching/events.py +110 -27
  17. exonware/xwsystem/caching/eviction_strategies.py +2 -2
  18. exonware/xwsystem/caching/external_caching_python.py +701 -0
  19. exonware/xwsystem/caching/facade.py +253 -0
  20. exonware/xwsystem/caching/factory.py +300 -0
  21. exonware/xwsystem/caching/fluent.py +14 -12
  22. exonware/xwsystem/caching/integrity.py +21 -6
  23. exonware/xwsystem/caching/lfu_cache.py +2 -1
  24. exonware/xwsystem/caching/lfu_optimized.py +18 -6
  25. exonware/xwsystem/caching/lru_cache.py +7 -4
  26. exonware/xwsystem/caching/memory_bounded.py +2 -2
  27. exonware/xwsystem/caching/metrics_exporter.py +2 -2
  28. exonware/xwsystem/caching/observable_cache.py +2 -2
  29. exonware/xwsystem/caching/pluggable_cache.py +2 -2
  30. exonware/xwsystem/caching/rate_limiter.py +2 -2
  31. exonware/xwsystem/caching/read_through.py +2 -2
  32. exonware/xwsystem/caching/secure_cache.py +81 -28
  33. exonware/xwsystem/caching/serializable.py +9 -7
  34. exonware/xwsystem/caching/stats.py +2 -2
  35. exonware/xwsystem/caching/tagging.py +2 -2
  36. exonware/xwsystem/caching/ttl_cache.py +4 -3
  37. exonware/xwsystem/caching/two_tier_cache.py +6 -3
  38. exonware/xwsystem/caching/utils.py +30 -12
  39. exonware/xwsystem/caching/validation.py +2 -2
  40. exonware/xwsystem/caching/warming.py +6 -3
  41. exonware/xwsystem/caching/write_behind.py +15 -6
  42. exonware/xwsystem/config/__init__.py +11 -17
  43. exonware/xwsystem/config/base.py +5 -5
  44. exonware/xwsystem/config/contracts.py +93 -153
  45. exonware/xwsystem/config/defaults.py +3 -2
  46. exonware/xwsystem/config/defs.py +3 -2
  47. exonware/xwsystem/config/errors.py +2 -5
  48. exonware/xwsystem/config/logging.py +12 -8
  49. exonware/xwsystem/config/logging_setup.py +3 -2
  50. exonware/xwsystem/config/performance.py +1 -46
  51. exonware/xwsystem/config/performance_modes.py +9 -8
  52. exonware/xwsystem/config/version_manager.py +1 -0
  53. exonware/xwsystem/config.py +27 -0
  54. exonware/xwsystem/console/__init__.py +53 -0
  55. exonware/xwsystem/console/base.py +133 -0
  56. exonware/xwsystem/console/cli/__init__.py +61 -0
  57. exonware/xwsystem/{cli → console/cli}/args.py +27 -24
  58. exonware/xwsystem/{cli → console/cli}/base.py +18 -87
  59. exonware/xwsystem/{cli → console/cli}/colors.py +15 -13
  60. exonware/xwsystem/console/cli/console.py +98 -0
  61. exonware/xwsystem/{cli → console/cli}/contracts.py +51 -69
  62. exonware/xwsystem/console/cli/defs.py +87 -0
  63. exonware/xwsystem/console/cli/encoding.py +69 -0
  64. exonware/xwsystem/{cli → console/cli}/errors.py +8 -3
  65. exonware/xwsystem/console/cli/event_logger.py +166 -0
  66. exonware/xwsystem/{cli → console/cli}/progress.py +25 -21
  67. exonware/xwsystem/{cli → console/cli}/prompts.py +3 -2
  68. exonware/xwsystem/{cli → console/cli}/tables.py +27 -24
  69. exonware/xwsystem/console/contracts.py +113 -0
  70. exonware/xwsystem/console/defs.py +154 -0
  71. exonware/xwsystem/console/errors.py +34 -0
  72. exonware/xwsystem/console/event_logger.py +385 -0
  73. exonware/xwsystem/console/writer.py +132 -0
  74. exonware/xwsystem/contracts.py +28 -0
  75. exonware/xwsystem/data_structures/__init__.py +23 -0
  76. exonware/xwsystem/data_structures/trie.py +34 -0
  77. exonware/xwsystem/data_structures/union_find.py +144 -0
  78. exonware/xwsystem/defs.py +17 -0
  79. exonware/xwsystem/errors.py +23 -0
  80. exonware/xwsystem/facade.py +62 -0
  81. exonware/xwsystem/http_client/__init__.py +22 -1
  82. exonware/xwsystem/http_client/advanced_client.py +8 -5
  83. exonware/xwsystem/http_client/base.py +3 -2
  84. exonware/xwsystem/http_client/client.py +7 -4
  85. exonware/xwsystem/http_client/contracts.py +42 -56
  86. exonware/xwsystem/http_client/defs.py +2 -1
  87. exonware/xwsystem/http_client/errors.py +2 -1
  88. exonware/xwsystem/http_client/facade.py +156 -0
  89. exonware/xwsystem/io/__init__.py +22 -3
  90. exonware/xwsystem/io/archive/__init__.py +8 -2
  91. exonware/xwsystem/io/archive/archive.py +1 -1
  92. exonware/xwsystem/io/archive/archive_files.py +4 -7
  93. exonware/xwsystem/io/archive/archivers.py +120 -10
  94. exonware/xwsystem/io/archive/base.py +4 -5
  95. exonware/xwsystem/io/archive/codec_integration.py +1 -2
  96. exonware/xwsystem/io/archive/compression.py +1 -2
  97. exonware/xwsystem/io/archive/facade.py +263 -0
  98. exonware/xwsystem/io/archive/formats/__init__.py +2 -3
  99. exonware/xwsystem/io/archive/formats/brotli_format.py +20 -7
  100. exonware/xwsystem/io/archive/formats/lz4_format.py +20 -7
  101. exonware/xwsystem/io/archive/formats/rar.py +11 -5
  102. exonware/xwsystem/io/archive/formats/sevenzip.py +12 -6
  103. exonware/xwsystem/io/archive/formats/squashfs_format.py +1 -2
  104. exonware/xwsystem/io/archive/formats/tar.py +52 -7
  105. exonware/xwsystem/io/archive/formats/wim_format.py +11 -5
  106. exonware/xwsystem/io/archive/formats/zip.py +1 -2
  107. exonware/xwsystem/io/archive/formats/zpaq_format.py +1 -2
  108. exonware/xwsystem/io/archive/formats/zstandard.py +20 -7
  109. exonware/xwsystem/io/base.py +119 -115
  110. exonware/xwsystem/io/codec/__init__.py +4 -2
  111. exonware/xwsystem/io/codec/base.py +19 -13
  112. exonware/xwsystem/io/codec/contracts.py +59 -2
  113. exonware/xwsystem/io/codec/registry.py +67 -21
  114. exonware/xwsystem/io/common/__init__.py +1 -1
  115. exonware/xwsystem/io/common/atomic.py +29 -16
  116. exonware/xwsystem/io/common/base.py +11 -10
  117. exonware/xwsystem/io/common/lock.py +6 -5
  118. exonware/xwsystem/io/common/path_manager.py +2 -1
  119. exonware/xwsystem/io/common/watcher.py +1 -2
  120. exonware/xwsystem/io/contracts.py +301 -433
  121. exonware/xwsystem/io/contracts_1.py +1180 -0
  122. exonware/xwsystem/io/data_operations.py +19 -20
  123. exonware/xwsystem/io/defs.py +4 -3
  124. exonware/xwsystem/io/errors.py +3 -2
  125. exonware/xwsystem/io/facade.py +87 -61
  126. exonware/xwsystem/io/file/__init__.py +1 -1
  127. exonware/xwsystem/io/file/base.py +8 -9
  128. exonware/xwsystem/io/file/conversion.py +2 -3
  129. exonware/xwsystem/io/file/file.py +61 -18
  130. exonware/xwsystem/io/file/paged_source.py +8 -8
  131. exonware/xwsystem/io/file/paging/__init__.py +1 -2
  132. exonware/xwsystem/io/file/paging/byte_paging.py +4 -5
  133. exonware/xwsystem/io/file/paging/line_paging.py +2 -3
  134. exonware/xwsystem/io/file/paging/record_paging.py +2 -3
  135. exonware/xwsystem/io/file/paging/registry.py +1 -2
  136. exonware/xwsystem/io/file/source.py +13 -17
  137. exonware/xwsystem/io/filesystem/__init__.py +1 -1
  138. exonware/xwsystem/io/filesystem/base.py +1 -2
  139. exonware/xwsystem/io/filesystem/local.py +3 -4
  140. exonware/xwsystem/io/folder/__init__.py +1 -1
  141. exonware/xwsystem/io/folder/base.py +1 -2
  142. exonware/xwsystem/io/folder/folder.py +16 -7
  143. exonware/xwsystem/io/indexing/__init__.py +14 -0
  144. exonware/xwsystem/io/indexing/facade.py +443 -0
  145. exonware/xwsystem/io/path_parser.py +98 -0
  146. exonware/xwsystem/io/serialization/__init__.py +21 -3
  147. exonware/xwsystem/io/serialization/auto_serializer.py +146 -20
  148. exonware/xwsystem/io/serialization/base.py +84 -34
  149. exonware/xwsystem/io/serialization/contracts.py +50 -73
  150. exonware/xwsystem/io/serialization/defs.py +2 -1
  151. exonware/xwsystem/io/serialization/errors.py +2 -1
  152. exonware/xwsystem/io/serialization/flyweight.py +154 -7
  153. exonware/xwsystem/io/serialization/format_detector.py +15 -14
  154. exonware/xwsystem/io/serialization/formats/__init__.py +8 -5
  155. exonware/xwsystem/io/serialization/formats/binary/bson.py +15 -6
  156. exonware/xwsystem/io/serialization/formats/binary/cbor.py +5 -5
  157. exonware/xwsystem/io/serialization/formats/binary/marshal.py +5 -5
  158. exonware/xwsystem/io/serialization/formats/binary/msgpack.py +5 -5
  159. exonware/xwsystem/io/serialization/formats/binary/pickle.py +5 -5
  160. exonware/xwsystem/io/serialization/formats/binary/plistlib.py +5 -5
  161. exonware/xwsystem/io/serialization/formats/database/dbm.py +7 -7
  162. exonware/xwsystem/io/serialization/formats/database/shelve.py +7 -7
  163. exonware/xwsystem/io/serialization/formats/database/sqlite3.py +7 -7
  164. exonware/xwsystem/io/serialization/formats/tabular/__init__.py +27 -0
  165. exonware/xwsystem/io/serialization/formats/tabular/base.py +89 -0
  166. exonware/xwsystem/io/serialization/formats/tabular/csv.py +319 -0
  167. exonware/xwsystem/io/serialization/formats/tabular/df.py +249 -0
  168. exonware/xwsystem/io/serialization/formats/tabular/excel.py +291 -0
  169. exonware/xwsystem/io/serialization/formats/tabular/googlesheets.py +374 -0
  170. exonware/xwsystem/io/serialization/formats/text/__init__.py +1 -1
  171. exonware/xwsystem/io/serialization/formats/text/append_only_log.py +5 -7
  172. exonware/xwsystem/io/serialization/formats/text/configparser.py +5 -5
  173. exonware/xwsystem/io/serialization/formats/text/csv.py +7 -5
  174. exonware/xwsystem/io/serialization/formats/text/formdata.py +5 -5
  175. exonware/xwsystem/io/serialization/formats/text/json.py +27 -18
  176. exonware/xwsystem/io/serialization/formats/text/json5.py +8 -4
  177. exonware/xwsystem/io/serialization/formats/text/jsonlines.py +18 -14
  178. exonware/xwsystem/io/serialization/formats/text/multipart.py +5 -5
  179. exonware/xwsystem/io/serialization/formats/text/toml.py +8 -6
  180. exonware/xwsystem/io/serialization/formats/text/xml.py +25 -20
  181. exonware/xwsystem/io/serialization/formats/text/yaml.py +8 -6
  182. exonware/xwsystem/io/serialization/parsers/__init__.py +3 -2
  183. exonware/xwsystem/io/serialization/parsers/base.py +6 -5
  184. exonware/xwsystem/io/serialization/parsers/hybrid_parser.py +7 -6
  185. exonware/xwsystem/io/serialization/parsers/msgspec_parser.py +10 -7
  186. exonware/xwsystem/io/serialization/parsers/orjson_direct_parser.py +7 -6
  187. exonware/xwsystem/io/serialization/parsers/orjson_parser.py +11 -8
  188. exonware/xwsystem/io/serialization/parsers/pysimdjson_parser.py +13 -9
  189. exonware/xwsystem/io/serialization/parsers/rapidjson_parser.py +10 -7
  190. exonware/xwsystem/io/serialization/parsers/registry.py +11 -10
  191. exonware/xwsystem/io/serialization/parsers/standard.py +7 -6
  192. exonware/xwsystem/io/serialization/parsers/ujson_parser.py +10 -7
  193. exonware/xwsystem/io/serialization/registry.py +4 -4
  194. exonware/xwsystem/io/serialization/serializer.py +168 -79
  195. exonware/xwsystem/io/serialization/universal_options.py +367 -0
  196. exonware/xwsystem/io/serialization/utils/__init__.py +1 -2
  197. exonware/xwsystem/io/serialization/utils/path_ops.py +5 -6
  198. exonware/xwsystem/io/source_reader.py +223 -0
  199. exonware/xwsystem/io/stream/__init__.py +1 -1
  200. exonware/xwsystem/io/stream/async_operations.py +61 -14
  201. exonware/xwsystem/io/stream/base.py +1 -2
  202. exonware/xwsystem/io/stream/codec_io.py +6 -7
  203. exonware/xwsystem/ipc/__init__.py +1 -0
  204. exonware/xwsystem/ipc/async_fabric.py +4 -4
  205. exonware/xwsystem/ipc/base.py +6 -5
  206. exonware/xwsystem/ipc/contracts.py +41 -66
  207. exonware/xwsystem/ipc/defs.py +2 -1
  208. exonware/xwsystem/ipc/errors.py +2 -1
  209. exonware/xwsystem/ipc/message_queue.py +5 -2
  210. exonware/xwsystem/ipc/pipes.py +70 -34
  211. exonware/xwsystem/ipc/process_manager.py +7 -5
  212. exonware/xwsystem/ipc/process_pool.py +6 -5
  213. exonware/xwsystem/ipc/shared_memory.py +64 -11
  214. exonware/xwsystem/monitoring/__init__.py +7 -0
  215. exonware/xwsystem/monitoring/base.py +11 -8
  216. exonware/xwsystem/monitoring/contracts.py +86 -144
  217. exonware/xwsystem/monitoring/defs.py +2 -1
  218. exonware/xwsystem/monitoring/error_recovery.py +16 -3
  219. exonware/xwsystem/monitoring/errors.py +2 -1
  220. exonware/xwsystem/monitoring/facade.py +183 -0
  221. exonware/xwsystem/monitoring/memory_monitor.py +1 -0
  222. exonware/xwsystem/monitoring/metrics.py +1 -0
  223. exonware/xwsystem/monitoring/performance_manager_generic.py +7 -7
  224. exonware/xwsystem/monitoring/performance_monitor.py +1 -0
  225. exonware/xwsystem/monitoring/performance_validator.py +1 -0
  226. exonware/xwsystem/monitoring/system_monitor.py +6 -5
  227. exonware/xwsystem/monitoring/tracing.py +18 -16
  228. exonware/xwsystem/monitoring/tracker.py +2 -1
  229. exonware/xwsystem/operations/__init__.py +5 -50
  230. exonware/xwsystem/operations/base.py +3 -44
  231. exonware/xwsystem/operations/contracts.py +25 -15
  232. exonware/xwsystem/operations/defs.py +1 -1
  233. exonware/xwsystem/operations/diff.py +5 -4
  234. exonware/xwsystem/operations/errors.py +1 -1
  235. exonware/xwsystem/operations/merge.py +6 -4
  236. exonware/xwsystem/operations/patch.py +5 -4
  237. exonware/xwsystem/patterns/__init__.py +1 -0
  238. exonware/xwsystem/patterns/base.py +2 -1
  239. exonware/xwsystem/patterns/context_manager.py +2 -1
  240. exonware/xwsystem/patterns/contracts.py +215 -256
  241. exonware/xwsystem/patterns/defs.py +2 -1
  242. exonware/xwsystem/patterns/dynamic_facade.py +1 -0
  243. exonware/xwsystem/patterns/errors.py +2 -4
  244. exonware/xwsystem/patterns/handler_factory.py +2 -3
  245. exonware/xwsystem/patterns/import_registry.py +1 -0
  246. exonware/xwsystem/patterns/object_pool.py +1 -0
  247. exonware/xwsystem/patterns/registry.py +4 -43
  248. exonware/xwsystem/plugins/__init__.py +2 -1
  249. exonware/xwsystem/plugins/base.py +6 -5
  250. exonware/xwsystem/plugins/contracts.py +94 -158
  251. exonware/xwsystem/plugins/defs.py +2 -1
  252. exonware/xwsystem/plugins/errors.py +2 -1
  253. exonware/xwsystem/py.typed +3 -0
  254. exonware/xwsystem/query/__init__.py +36 -0
  255. exonware/xwsystem/query/contracts.py +56 -0
  256. exonware/xwsystem/query/errors.py +22 -0
  257. exonware/xwsystem/query/registry.py +128 -0
  258. exonware/xwsystem/runtime/__init__.py +2 -1
  259. exonware/xwsystem/runtime/base.py +4 -3
  260. exonware/xwsystem/runtime/contracts.py +39 -60
  261. exonware/xwsystem/runtime/defs.py +2 -1
  262. exonware/xwsystem/runtime/env.py +11 -9
  263. exonware/xwsystem/runtime/errors.py +2 -1
  264. exonware/xwsystem/runtime/reflection.py +3 -2
  265. exonware/xwsystem/security/__init__.py +68 -11
  266. exonware/xwsystem/security/audit.py +167 -0
  267. exonware/xwsystem/security/base.py +121 -24
  268. exonware/xwsystem/security/contracts.py +91 -146
  269. exonware/xwsystem/security/crypto.py +17 -16
  270. exonware/xwsystem/security/defs.py +2 -1
  271. exonware/xwsystem/security/errors.py +2 -1
  272. exonware/xwsystem/security/facade.py +321 -0
  273. exonware/xwsystem/security/file_security.py +330 -0
  274. exonware/xwsystem/security/hazmat.py +11 -8
  275. exonware/xwsystem/security/monitor.py +372 -0
  276. exonware/xwsystem/security/path_validator.py +140 -18
  277. exonware/xwsystem/security/policy.py +357 -0
  278. exonware/xwsystem/security/resource_limits.py +1 -0
  279. exonware/xwsystem/security/validator.py +455 -0
  280. exonware/xwsystem/shared/__init__.py +14 -1
  281. exonware/xwsystem/shared/base.py +285 -2
  282. exonware/xwsystem/shared/contracts.py +415 -126
  283. exonware/xwsystem/shared/defs.py +2 -1
  284. exonware/xwsystem/shared/errors.py +2 -2
  285. exonware/xwsystem/shared/xwobject.py +316 -0
  286. exonware/xwsystem/structures/__init__.py +1 -0
  287. exonware/xwsystem/structures/base.py +3 -2
  288. exonware/xwsystem/structures/circular_detector.py +15 -14
  289. exonware/xwsystem/structures/contracts.py +53 -76
  290. exonware/xwsystem/structures/defs.py +2 -1
  291. exonware/xwsystem/structures/errors.py +2 -1
  292. exonware/xwsystem/structures/tree_walker.py +2 -1
  293. exonware/xwsystem/threading/__init__.py +21 -4
  294. exonware/xwsystem/threading/async_primitives.py +6 -5
  295. exonware/xwsystem/threading/base.py +3 -2
  296. exonware/xwsystem/threading/contracts.py +87 -143
  297. exonware/xwsystem/threading/defs.py +2 -1
  298. exonware/xwsystem/threading/errors.py +2 -1
  299. exonware/xwsystem/threading/facade.py +175 -0
  300. exonware/xwsystem/threading/locks.py +1 -0
  301. exonware/xwsystem/threading/safe_factory.py +1 -0
  302. exonware/xwsystem/utils/__init__.py +40 -0
  303. exonware/xwsystem/utils/base.py +22 -21
  304. exonware/xwsystem/utils/contracts.py +50 -73
  305. exonware/xwsystem/utils/dt/__init__.py +19 -3
  306. exonware/xwsystem/utils/dt/base.py +5 -4
  307. exonware/xwsystem/utils/dt/contracts.py +22 -29
  308. exonware/xwsystem/utils/dt/defs.py +2 -1
  309. exonware/xwsystem/utils/dt/errors.py +2 -5
  310. exonware/xwsystem/utils/dt/formatting.py +88 -2
  311. exonware/xwsystem/utils/dt/humanize.py +10 -9
  312. exonware/xwsystem/utils/dt/parsing.py +56 -5
  313. exonware/xwsystem/utils/dt/timezone_utils.py +2 -24
  314. exonware/xwsystem/utils/errors.py +2 -4
  315. exonware/xwsystem/utils/paths.py +1 -0
  316. exonware/xwsystem/utils/string.py +49 -0
  317. exonware/xwsystem/utils/test_runner.py +185 -0
  318. exonware/xwsystem/utils/utils_contracts.py +2 -1
  319. exonware/xwsystem/utils/web.py +110 -0
  320. exonware/xwsystem/validation/__init__.py +25 -1
  321. exonware/xwsystem/validation/base.py +6 -5
  322. exonware/xwsystem/validation/contracts.py +29 -41
  323. exonware/xwsystem/validation/data_validator.py +1 -0
  324. exonware/xwsystem/validation/declarative.py +11 -8
  325. exonware/xwsystem/validation/defs.py +2 -1
  326. exonware/xwsystem/validation/errors.py +2 -1
  327. exonware/xwsystem/validation/facade.py +198 -0
  328. exonware/xwsystem/validation/fluent_validator.py +22 -19
  329. exonware/xwsystem/validation/schema_discovery.py +210 -0
  330. exonware/xwsystem/validation/type_safety.py +2 -1
  331. exonware/xwsystem/version.py +2 -2
  332. {exonware_xwsystem-0.1.0.1.dist-info → exonware_xwsystem-0.1.0.4.dist-info}/METADATA +71 -4
  333. exonware_xwsystem-0.1.0.4.dist-info/RECORD +337 -0
  334. exonware/xwsystem/cli/__init__.py +0 -43
  335. exonware/xwsystem/cli/console.py +0 -113
  336. exonware/xwsystem/cli/defs.py +0 -134
  337. exonware/xwsystem/conf.py +0 -44
  338. exonware/xwsystem/security/auth.py +0 -484
  339. exonware_xwsystem-0.1.0.1.dist-info/RECORD +0 -284
  340. {exonware_xwsystem-0.1.0.1.dist-info → exonware_xwsystem-0.1.0.4.dist-info}/WHEEL +0 -0
  341. {exonware_xwsystem-0.1.0.1.dist-info → exonware_xwsystem-0.1.0.4.dist-info}/licenses/LICENSE +0 -0
@@ -1,8 +1,9 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/defaults.py
1
2
  """
2
3
  Company: eXonware.com
3
4
  Author: Eng. Muhammad AlShehri
4
5
  Email: connect@exonware.com
5
- Version: 0.1.0.1
6
+ Version: 0.1.0.4
6
7
  Generation Date: September 04, 2025
7
8
 
8
9
  Default configuration constants for XSystem framework.
@@ -166,7 +167,7 @@ class DefaultConfig(AConfigBase):
166
167
 
167
168
  def validate(self) -> bool:
168
169
  """Validate configuration."""
169
- # Basic validation - all values should be non-None
170
+ # Basic validation - all values are non-None
170
171
  return all(value is not None for value in self._config.values())
171
172
 
172
173
  def get_default(self, key: str) -> Any:
@@ -1,10 +1,11 @@
1
1
  #!/usr/bin/env python3
2
+ #exonware/xwsystem/src/exonware/xwsystem/config/defs.py
2
3
  #exonware/xwsystem/config/types.py
3
4
  """
4
5
  Company: eXonware.com
5
6
  Author: Eng. Muhammad AlShehri
6
7
  Email: connect@exonware.com
7
- Version: 0.1.0.1
8
+ Version: 0.1.0.4
8
9
  Generation Date: 07-Sep-2025
9
10
 
10
11
  Config types and enums for XWSystem.
@@ -78,4 +79,4 @@ class AdvancedPerformanceMode(Enum):
78
79
  OPTIMIZED = "optimized" # Prioritize memory efficiency
79
80
  MANUAL = "manual" # Use specific custom settings
80
81
  ADAPTIVE = "adaptive" # Runtime adaptation based on performance monitoring
81
- DUAL_ADAPTIVE = "dual_adaptive" # Smart dual-phase: fast cruise + intelligent deep-dive
82
+ DUAL_ADAPTIVE = "dual_adaptive" # Dual-phase: fast cruise + deep-dive
@@ -1,9 +1,10 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/errors.py
1
2
  #exonware/xwsystem/config/errors.py
2
3
  """
3
4
  Company: eXonware.com
4
5
  Author: Eng. Muhammad AlShehri
5
6
  Email: connect@exonware.com
6
- Version: 0.1.0.1
7
+ Version: 0.1.0.4
7
8
  Generation Date: September 04, 2025
8
9
 
9
10
  Configuration module errors - exception classes for configuration functionality.
@@ -74,7 +75,3 @@ class PerformanceConfigError(ConfigError):
74
75
  """Raised when performance configuration fails."""
75
76
  pass
76
77
 
77
-
78
- # Aliases for backward compatibility
79
- PerformanceError = PerformanceConfigError
80
- LoggingError = LoggingConfigError
@@ -1,8 +1,9 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/logging.py
1
2
  """
2
3
  Company: eXonware.com
3
4
  Author: Eng. Muhammad AlShehri
4
5
  Email: connect@exonware.com
5
- Version: 0.1.0.1
6
+ Version: 0.1.0.4
6
7
  Generation Date: September 04, 2025
7
8
 
8
9
  Logging configuration for XSystem.
@@ -12,7 +13,6 @@ Provides simple logging control functions and configuration management.
12
13
 
13
14
  import logging
14
15
  import os
15
- from typing import Union
16
16
 
17
17
  from .defaults import LOGGING_ENABLED, LOGGING_LEVEL
18
18
 
@@ -39,13 +39,17 @@ class LoggingConfig:
39
39
 
40
40
  def set_level(self, level: str) -> None:
41
41
  """Set logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)."""
42
- self._level = level.upper()
42
+ level_upper = level.upper()
43
+ # Validate level by trying to get it from logging module
44
+ # This will raise AttributeError for invalid levels
45
+ try:
46
+ logging_level = getattr(logging, level_upper)
47
+ except AttributeError:
48
+ raise AttributeError(f"Invalid logging level: {level}. Valid levels are: DEBUG, INFO, WARNING, ERROR, CRITICAL")
49
+
50
+ self._level = level_upper
43
51
  if self._enabled:
44
- try:
45
- logging.getLogger().setLevel(getattr(logging, self._level))
46
- except (AttributeError, TypeError):
47
- # Handle cases where logging level comparison might fail
48
- pass
52
+ logging.getLogger().setLevel(logging_level)
49
53
 
50
54
  @property
51
55
  def enabled(self) -> bool:
@@ -1,8 +1,9 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/logging_setup.py
1
2
  """
2
3
  Company: eXonware.com
3
4
  Author: Eng. Muhammad AlShehri
4
5
  Email: connect@exonware.com
5
- Version: 0.1.0.1
6
+ Version: 0.1.0.4
6
7
  Generation Date: September 05, 2025
7
8
 
8
9
  Logging configuration setup for XSystem.
@@ -41,7 +42,7 @@ def setup_logging(
41
42
  return
42
43
 
43
44
  # Try to check XSystem config if available
44
- # Import is explicit - internal package import should always be available
45
+ # Import is explicit - internal package import
45
46
  from .logging import logging_config
46
47
 
47
48
  if not logging_config.enabled:
@@ -1,3 +1,4 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/performance.py
1
2
  """Performance optimization configuration for xwsystem I/O operations.
2
3
 
3
4
  This module provides configuration options to enable/disable performance
@@ -80,54 +81,8 @@ def set_performance_config(config: PerformanceConfig) -> None:
80
81
  _config = config
81
82
 
82
83
 
83
- # Placeholder classes for backward compatibility with existing config system
84
- # These are not used by the new optimization system but are required by __init__.py
85
- @dataclass
86
- class PerformanceLimits:
87
- """Placeholder for backward compatibility."""
88
- pass
89
-
90
- @dataclass
91
- class SerializationLimits:
92
- """Placeholder for backward compatibility."""
93
- pass
94
-
95
- @dataclass
96
- class NetworkLimits:
97
- """Placeholder for backward compatibility."""
98
- pass
99
-
100
- @dataclass
101
- class SecurityLimits:
102
- """Placeholder for backward compatibility."""
103
- pass
104
-
105
- def configure_performance(**kwargs):
106
- """Placeholder for backward compatibility."""
107
- pass
108
-
109
- def get_serialization_limits():
110
- """Placeholder for backward compatibility."""
111
- return SerializationLimits()
112
-
113
- def get_network_limits():
114
- """Placeholder for backward compatibility."""
115
- return NetworkLimits()
116
-
117
- def get_security_limits():
118
- """Placeholder for backward compatibility."""
119
- return SecurityLimits()
120
-
121
84
  __all__ = [
122
85
  "PerformanceConfig",
123
- "PerformanceLimits",
124
- "SerializationLimits",
125
- "NetworkLimits",
126
- "SecurityLimits",
127
86
  "get_performance_config",
128
87
  "set_performance_config",
129
- "configure_performance",
130
- "get_serialization_limits",
131
- "get_network_limits",
132
- "get_security_limits",
133
88
  ]
@@ -1,3 +1,4 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/performance_modes.py
1
2
  """
2
3
  Performance mode definitions for XWSystem framework.
3
4
 
@@ -10,18 +11,18 @@ import statistics
10
11
  import threading
11
12
  import time
12
13
  from dataclasses import dataclass, field
13
- from typing import Any, Optional, Union
14
+ from typing import Any, Optional
14
15
  from .defs import AdvancedPerformanceMode
15
16
 
16
17
  import psutil
17
18
 
18
19
 
19
- # Use AdvancedPerformanceMode directly as PerformanceMode for backward compatibility
20
+ # Use AdvancedPerformanceMode directly as PerformanceMode
20
21
  PerformanceMode = AdvancedPerformanceMode
21
22
 
22
23
 
23
24
  class PerformanceModes:
24
- """Performance mode constants for backward compatibility and simple usage."""
25
+ """Performance mode constants."""
25
26
 
26
27
  FAST = "fast"
27
28
  BALANCED = "balanced"
@@ -54,7 +55,7 @@ class PerformanceProfile:
54
55
  enable_thread_safety: bool
55
56
  lock_timeout: float
56
57
 
57
- # Security limits (always enforced)
58
+ # Security limits (enforced)
58
59
  max_depth: int
59
60
  max_nodes: int
60
61
  max_path_length: int
@@ -127,7 +128,7 @@ class DualAdaptiveProfile(PerformanceProfile):
127
128
  deep_dive_sample_rate: int = 1 # Sample every operation in deep-dive
128
129
  deep_dive_history_size: int = 1000 # Keep detailed history during deep-dive
129
130
 
130
- # Smart triggers
131
+ # Adaptive triggers
131
132
  memory_pressure_threshold: float = 0.8 # 80% memory usage triggers deep-dive
132
133
  cpu_pressure_threshold: float = 0.7 # 70% CPU usage triggers deep-dive
133
134
  performance_degradation_threshold: float = 0.2 # 20% degradation triggers deep-dive
@@ -343,7 +344,7 @@ class AdaptiveLearningEngine:
343
344
  if not mode_scores:
344
345
  return PerformanceMode.AUTO
345
346
 
346
- # Return the best performing mode
347
+ # Return the highest performing mode
347
348
  best_mode_name = max(mode_scores.items(), key=lambda x: x[1])[0]
348
349
  return PerformanceMode.from_string(best_mode_name)
349
350
 
@@ -590,7 +591,7 @@ class DualPhaseAdaptiveEngine:
590
591
  if not mode_scores:
591
592
  return PerformanceMode.OPTIMIZED
592
593
 
593
- # Return the best performing mode
594
+ # Return the highest performing mode
594
595
  best_mode_name = max(mode_scores.items(), key=lambda x: x[1])[0]
595
596
  return PerformanceMode.from_string(best_mode_name)
596
597
 
@@ -759,7 +760,7 @@ class PerformanceProfiles:
759
760
  deep_dive_duration=200, # Deep-dive for 200 operations (was 500)
760
761
  deep_dive_sample_rate=5, # Sample every 5th operation (was 1)
761
762
  deep_dive_history_size=500, # Keep detailed history (was 1000)
762
- # Smart triggers
763
+ # Adaptive triggers
763
764
  memory_pressure_threshold=0.9, # 90% memory usage triggers deep-dive (was 0.8)
764
765
  cpu_pressure_threshold=0.8, # 80% CPU usage triggers deep-dive (was 0.7)
765
766
  performance_degradation_threshold=0.3, # 30% degradation triggers deep-dive (was 0.2)
@@ -1,3 +1,4 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/config/version_manager.py
1
2
  """
2
3
  Centralized version management for eXonware projects.
3
4
 
@@ -0,0 +1,27 @@
1
+ """
2
+ #exonware/xwsystem/src/exonware/xwsystem/config.py
3
+
4
+ Package-level configuration entry points for xwsystem.
5
+
6
+ Company: eXonware.com
7
+ Author: Eng. Muhammad AlShehri
8
+ Email: connect@exonware.com
9
+ Version: 0.1.0.4
10
+ Last Updated: 29-Jan-2026
11
+
12
+ This module exists to satisfy the canonical structure in GUIDE_31_DEV.md:
13
+ - `config.py` at package root for configuration surfaces.
14
+
15
+ The concrete configuration system lives under `exonware.xwsystem.config`.
16
+ """
17
+
18
+ from __future__ import annotations
19
+
20
+ from .config.logging_setup import get_logger, setup_logging
21
+
22
+
23
+ __all__ = [
24
+ "get_logger",
25
+ "setup_logging",
26
+ ]
27
+
@@ -0,0 +1,53 @@
1
+ #!/usr/bin/env python3
2
+ #exonware/xwsystem/src/exonware/xwsystem/console/__init__.py
3
+ #exonware/xwsystem/console/__init__.py
4
+ """
5
+ Company: eXonware.com
6
+ Author: Eng. Muhammad AlShehri
7
+ Email: connect@exonware.com
8
+ Version: 0.1.0.4
9
+ Generation Date: 2025-01-27
10
+
11
+ Console module for structured logging and user interaction.
12
+ """
13
+
14
+ from .defs import (
15
+ LogLevel,
16
+ ConsoleEventType,
17
+ ConsoleEvent,
18
+ )
19
+ from .contracts import (
20
+ IEventLogger,
21
+ IConsoleWriter,
22
+ )
23
+ from .base import (
24
+ AEventLogger,
25
+ AConsoleWriter,
26
+ )
27
+ from .event_logger import ConsoleEventLogger
28
+ from .writer import ConsoleWriter
29
+ from .errors import (
30
+ ConsoleError,
31
+ EventLoggerError,
32
+ ConsoleWriterError,
33
+ )
34
+
35
+ __all__ = [
36
+ # Type definitions
37
+ 'LogLevel',
38
+ 'ConsoleEventType',
39
+ 'ConsoleEvent',
40
+ # Interfaces
41
+ 'IEventLogger',
42
+ 'IConsoleWriter',
43
+ # Abstract base classes
44
+ 'AEventLogger',
45
+ 'AConsoleWriter',
46
+ # Implementations
47
+ 'ConsoleEventLogger',
48
+ 'ConsoleWriter',
49
+ # Errors
50
+ 'ConsoleError',
51
+ 'EventLoggerError',
52
+ 'ConsoleWriterError',
53
+ ]
@@ -0,0 +1,133 @@
1
+ #!/usr/bin/env python3
2
+ #exonware/xwsystem/src/exonware/xwsystem/console/base.py
3
+ #exonware/xwsystem/console/base.py
4
+ """
5
+ Company: eXonware.com
6
+ Author: Eng. Muhammad AlShehri
7
+ Email: connect@exonware.com
8
+ Version: 0.1.0.4
9
+ Generation Date: 2025-01-27
10
+
11
+ Console module base classes - abstract base classes for console functionality.
12
+ """
13
+
14
+ from abc import ABC, abstractmethod
15
+ from typing import Optional, Any
16
+ from .contracts import IEventLogger, IConsoleWriter
17
+ from .defs import LogLevel, ConsoleEventType, ConsoleEvent
18
+
19
+
20
+ class AEventLogger(ABC, IEventLogger):
21
+ """
22
+ Abstract base class for event logging.
23
+
24
+ All event loggers should extend this class.
25
+ """
26
+
27
+ @abstractmethod
28
+ def log(
29
+ self,
30
+ msg: str,
31
+ source: Optional[str] = None,
32
+ data: Optional[Any] = None,
33
+ color: Optional[str] = None,
34
+ label: Optional[str] = None
35
+ ) -> ConsoleEvent:
36
+ """Log a general message."""
37
+ pass
38
+
39
+ @abstractmethod
40
+ def info(
41
+ self,
42
+ msg: str,
43
+ source: Optional[str] = None,
44
+ data: Optional[Any] = None
45
+ ) -> ConsoleEvent:
46
+ """Log an info message."""
47
+ pass
48
+
49
+ @abstractmethod
50
+ def warn(
51
+ self,
52
+ msg: str,
53
+ source: Optional[str] = None,
54
+ data: Optional[Any] = None
55
+ ) -> ConsoleEvent:
56
+ """Log a warning message."""
57
+ pass
58
+
59
+ @abstractmethod
60
+ def error(
61
+ self,
62
+ msg: str,
63
+ source: Optional[str] = None,
64
+ data: Optional[Any] = None,
65
+ stack: Optional[str] = None
66
+ ) -> ConsoleEvent:
67
+ """Log an error message."""
68
+ pass
69
+
70
+ @abstractmethod
71
+ def debug(
72
+ self,
73
+ msg: str,
74
+ source: Optional[str] = None,
75
+ data: Optional[Any] = None
76
+ ) -> ConsoleEvent:
77
+ """Log a debug message."""
78
+ pass
79
+
80
+ @abstractmethod
81
+ def get_events(
82
+ self,
83
+ event_type: Optional[ConsoleEventType] = None,
84
+ level: Optional[LogLevel] = None,
85
+ source: Optional[str] = None,
86
+ limit: Optional[int] = None
87
+ ) -> list[dict]:
88
+ """Get logged events as dictionaries."""
89
+ pass
90
+
91
+ @abstractmethod
92
+ def clear(self) -> None:
93
+ """Clear all logged events."""
94
+ pass
95
+
96
+ @abstractmethod
97
+ def count(self) -> int:
98
+ """Get the number of logged events."""
99
+ pass
100
+
101
+
102
+ class AConsoleWriter(ABC, IConsoleWriter):
103
+ """
104
+ Abstract base class for console writing (user interaction, not logging).
105
+
106
+ Can be used as a base class for bots and other user interaction systems.
107
+ """
108
+
109
+ @abstractmethod
110
+ def write(self, text: str, **kwargs) -> None:
111
+ """Write text to console."""
112
+ pass
113
+
114
+ @abstractmethod
115
+ def write_line(self, text: str = "", **kwargs) -> None:
116
+ """Write a line to console."""
117
+ pass
118
+
119
+ @abstractmethod
120
+ def read(self, prompt: str = "") -> str:
121
+ """Read input from console."""
122
+ pass
123
+
124
+ @abstractmethod
125
+ def clear(self) -> None:
126
+ """Clear console screen."""
127
+ pass
128
+
129
+
130
+ __all__ = [
131
+ 'AEventLogger',
132
+ 'AConsoleWriter',
133
+ ]
@@ -0,0 +1,61 @@
1
+ #exonware/xwsystem/src/exonware/xwsystem/console/cli/__init__.py
2
+ """
3
+ Command Line Interface (CLI) Utilities
4
+ ======================================
5
+
6
+ Production-grade CLI utilities for XSystem.
7
+
8
+ Company: eXonware.com
9
+ Author: Eng. Muhammad AlShehri
10
+ Email: connect@exonware.com
11
+ Version: 0.1.0.4
12
+ Generated: 2025-01-27
13
+ """
14
+
15
+ # Import general console enums from console level (priority)
16
+ from ..defs import Colors, Style, Alignment, BorderStyle
17
+ from .colors import colorize, CliColoredOutput
18
+ from .args import CliArgumentParser, CliArgument, CliCommand, ArgumentType
19
+ from .progress import CliProgressBar, CliSpinnerProgress, CliMultiProgress, CliProgressConfig
20
+ from .tables import CliTable, CliTableFormatter, CliColumn
21
+ from .console import CliConsole
22
+ from .event_logger import CliEventLogger
23
+ from .encoding import ensure_utf8_console
24
+
25
+ __all__ = [
26
+ # General console enums (from console level)
27
+ 'Colors',
28
+ 'Style',
29
+ 'Alignment',
30
+ 'BorderStyle',
31
+
32
+ # Colors
33
+ 'colorize',
34
+ 'CliColoredOutput',
35
+
36
+ # Arguments
37
+ 'CliArgumentParser',
38
+ 'CliArgument',
39
+ 'CliCommand',
40
+ 'ArgumentType',
41
+
42
+ # Progress
43
+ 'CliProgressBar',
44
+ 'CliSpinnerProgress',
45
+ 'CliMultiProgress',
46
+ 'CliProgressConfig',
47
+
48
+ # Tables
49
+ 'CliTable',
50
+ 'CliTableFormatter',
51
+ 'CliColumn',
52
+
53
+ # Console (extends ConsoleWriter from console level)
54
+ 'CliConsole',
55
+
56
+ # Event Logger (extends logging.Logger)
57
+ 'CliEventLogger',
58
+
59
+ # Encoding
60
+ 'ensure_utf8_console',
61
+ ]