buildz 0.6.52__tar.gz → 0.6.53__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 (339) hide show
  1. {buildz-0.6.52/buildz.egg-info → buildz-0.6.53}/PKG-INFO +1 -1
  2. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf/conf.py +1 -1
  3. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf/mg.py +13 -9
  4. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf/unit.py +5 -3
  5. buildz-0.6.53/buildz/iocz/conf_deal/base.py +3 -0
  6. buildz-0.6.53/buildz/iocz/conf_deal/call.py +34 -0
  7. buildz-0.6.53/buildz/iocz/conf_deal/cvar.py +28 -0
  8. buildz-0.6.53/buildz/iocz/conf_deal/env.py +35 -0
  9. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/init.py +27 -2
  10. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/base.py +14 -3
  11. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/confs.py +1 -1
  12. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/datas.py +3 -0
  13. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/dataset.py +18 -20
  14. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/encapes.py +9 -9
  15. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/envs.py +5 -0
  16. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/mg.py +40 -3
  17. buildz-0.6.53/buildz/iocz/ioc/sys_envs.py +15 -0
  18. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/tdict.py +4 -0
  19. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/unit.py +23 -4
  20. buildz-0.6.53/buildz/iocz/ioc_deal/base.py +85 -0
  21. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc_deal/deal.py +1 -6
  22. buildz-0.6.53/buildz/iocz/ioc_deal/obj.py +61 -0
  23. {buildz-0.6.52/buildz/iocz/conf → buildz-0.6.53/buildz/iocz/test}/test.py +16 -37
  24. buildz-0.6.53/buildz/iocz/wrap/base.py +59 -0
  25. buildz-0.6.53/buildz/iocz/wrap/default_wraps.py +9 -0
  26. buildz-0.6.53/buildz/iocz/wrap/obj.py +33 -0
  27. buildz-0.6.53/buildz/iocz/wrap/wraps.py +70 -0
  28. {buildz-0.6.52 → buildz-0.6.53/buildz.egg-info}/PKG-INFO +1 -1
  29. {buildz-0.6.52 → buildz-0.6.53}/buildz.egg-info/SOURCES.txt +9 -4
  30. {buildz-0.6.52 → buildz-0.6.53}/setup.py +1 -1
  31. buildz-0.6.52/buildz/iocz/conf_deal/base.py +0 -2
  32. buildz-0.6.52/buildz/iocz/ioc/env.py +0 -117
  33. buildz-0.6.52/buildz/iocz/ioc/test.py +0 -45
  34. buildz-0.6.52/buildz/iocz/ioc/test1.py +0 -36
  35. buildz-0.6.52/buildz/iocz/ioc_deal/base.py +0 -44
  36. buildz-0.6.52/buildz/iocz/ioc_deal/obj.py +0 -69
  37. {buildz-0.6.52 → buildz-0.6.53}/LICENSE +0 -0
  38. {buildz-0.6.52 → buildz-0.6.53}/MANIFEST.in +0 -0
  39. {buildz-0.6.52 → buildz-0.6.53}/README.md +0 -0
  40. {buildz-0.6.52 → buildz-0.6.53}/buildz/__init__.py +0 -0
  41. {buildz-0.6.52 → buildz-0.6.53}/buildz/__main__.py +0 -0
  42. {buildz-0.6.52 → buildz-0.6.53}/buildz/argx.py +0 -0
  43. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/__init__.py +0 -0
  44. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/argz.py +0 -0
  45. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/build.py +0 -0
  46. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/callz.py +0 -0
  47. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/evalx.py +0 -0
  48. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/test.py +0 -0
  49. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/test_obj.py +0 -0
  50. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/tests/conf.js +0 -0
  51. {buildz-0.6.52 → buildz-0.6.53}/buildz/argz/testx.py +0 -0
  52. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/__init__.py +0 -0
  53. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/cache.py +0 -0
  54. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/config.py +0 -0
  55. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/dbs.py +0 -0
  56. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/deal.py +0 -0
  57. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/deal_list.py +0 -0
  58. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/deal_type.py +0 -0
  59. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/defs.py +0 -0
  60. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/factory.py +0 -0
  61. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/init.py +0 -0
  62. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/log.py +0 -0
  63. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/request.py +0 -0
  64. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/run.py +0 -0
  65. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/save.py +0 -0
  66. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/cache/cache.js +0 -0
  67. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/config/base.js +0 -0
  68. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/config/config.js +0 -0
  69. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/data/fp.js +0 -0
  70. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/data/item1.js +0 -0
  71. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/data/item2.js +0 -0
  72. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/res/data/test.js +0 -0
  73. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/test.py +0 -0
  74. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/test/xtest.py +0 -0
  75. {buildz-0.6.52 → buildz-0.6.53}/buildz/auto/verify.py +0 -0
  76. {buildz-0.6.52 → buildz-0.6.53}/buildz/base.py +0 -0
  77. {buildz-0.6.52 → buildz-0.6.53}/buildz/cachez/__init__.py +0 -0
  78. {buildz-0.6.52 → buildz-0.6.53}/buildz/cachez/cache.py +0 -0
  79. {buildz-0.6.52 → buildz-0.6.53}/buildz/cmd.py +0 -0
  80. {buildz-0.6.52 → buildz-0.6.53}/buildz/confz.py +0 -0
  81. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/__init__.py +0 -0
  82. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/__main__.py +0 -0
  83. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/__init__.py +0 -0
  84. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/basez.py +0 -0
  85. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/clickhousez.py +0 -0
  86. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/lib/readme +0 -0
  87. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/mysqlz.py +0 -0
  88. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/oraclez.py +0 -0
  89. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/orm.py +0 -0
  90. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/postgresqlz.py +0 -0
  91. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/sqlite3z.py +0 -0
  92. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/dv/structz.py +0 -0
  93. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/install.txt +0 -0
  94. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/run.conf +0 -0
  95. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/runz.py +0 -0
  96. {buildz-0.6.52 → buildz-0.6.53}/buildz/db/tls.py +0 -0
  97. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/ioc/deal.py +0 -0
  98. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/ioc/help.py +0 -0
  99. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/myers/deal.py +0 -0
  100. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/myers/help.py +0 -0
  101. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/conf/ioc.js +0 -0
  102. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/conf/main.js +0 -0
  103. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/conf/myers.js +0 -0
  104. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/conf/search.js +0 -0
  105. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/conf/xf.js +0 -0
  106. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/help/default.js +0 -0
  107. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/help/ioc.js +0 -0
  108. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/help/myers.js +0 -0
  109. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/help/search.js +0 -0
  110. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/help/xf.js +0 -0
  111. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/res/test.js +0 -0
  112. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/search/deal.py +0 -0
  113. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/search/help.py +0 -0
  114. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/test.py +0 -0
  115. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/xf/deal.py +0 -0
  116. {buildz-0.6.52 → buildz-0.6.53}/buildz/demo/xf/help.py +0 -0
  117. {buildz-0.6.52 → buildz-0.6.53}/buildz/dz/__init__.py +0 -0
  118. {buildz-0.6.52 → buildz-0.6.53}/buildz/dz/mapz.py +0 -0
  119. {buildz-0.6.52 → buildz-0.6.53}/buildz/evalz/__init__.py +0 -0
  120. {buildz-0.6.52 → buildz-0.6.53}/buildz/evalz/evalz.py +0 -0
  121. {buildz-0.6.52 → buildz-0.6.53}/buildz/evalz/res/default.js +0 -0
  122. {buildz-0.6.52 → buildz-0.6.53}/buildz/evalz/test.py +0 -0
  123. {buildz-0.6.52 → buildz-0.6.53}/buildz/fz/__init__.py +0 -0
  124. {buildz-0.6.52 → buildz-0.6.53}/buildz/fz/dirz.py +0 -0
  125. {buildz-0.6.52 → buildz-0.6.53}/buildz/fz/fhs.py +0 -0
  126. {buildz-0.6.52 → buildz-0.6.53}/buildz/fz/fio.py +0 -0
  127. {buildz-0.6.52 → buildz-0.6.53}/buildz/fz/lsf.py +0 -0
  128. {buildz-0.6.52 → buildz-0.6.53}/buildz/html/__init__.py +0 -0
  129. {buildz-0.6.52 → buildz-0.6.53}/buildz/html/test/demo.html +0 -0
  130. {buildz-0.6.52 → buildz-0.6.53}/buildz/html/test/test.py +0 -0
  131. {buildz-0.6.52 → buildz-0.6.53}/buildz/html/xml.py +0 -0
  132. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/__init__.py +0 -0
  133. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/base.py +0 -0
  134. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/init.py +0 -0
  135. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/base.py +0 -0
  136. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/conf.py +0 -0
  137. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/confs.py +0 -0
  138. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/decorator.py +0 -0
  139. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/loads.py +0 -0
  140. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc/single.py +0 -0
  141. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/base.py +0 -0
  142. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/branch.py +0 -0
  143. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/call.py +0 -0
  144. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/calls.py +0 -0
  145. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
  146. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  147. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  148. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  149. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  150. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  151. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  152. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  153. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  154. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  155. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  156. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  157. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  158. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  159. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  160. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  161. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  162. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  163. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  164. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  165. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  166. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
  167. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  168. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  169. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  170. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/deal.py +0 -0
  171. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/demo.py +0 -0
  172. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/env.py +0 -0
  173. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/init.py +0 -0
  174. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/ioc.py +0 -0
  175. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/iocf.py +0 -0
  176. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/join.py +0 -0
  177. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/list.py +0 -0
  178. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/map.py +0 -0
  179. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/mcall.py +0 -0
  180. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/obj.py +0 -0
  181. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/ovar.py +0 -0
  182. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/ref.py +0 -0
  183. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/refs.py +0 -0
  184. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/val.py +0 -0
  185. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/var.py +0 -0
  186. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/ioc_deal/xfile.py +0 -0
  187. {buildz-0.6.52 → buildz-0.6.53}/buildz/ioc/wrap.py +0 -0
  188. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/__init__.py +0 -0
  189. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/base.py +0 -0
  190. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf/base.py +0 -0
  191. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf/up.py +0 -0
  192. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf_deal/deal.py +0 -0
  193. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf_deal/ioc.py +0 -0
  194. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf_deal/obj.py +0 -0
  195. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf_deal/ref.py +0 -0
  196. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/conf_deal/val.py +0 -0
  197. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/__init__.py +0 -0
  198. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/builds.py +0 -0
  199. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/ids.py +0 -0
  200. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/init.py +0 -0
  201. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/single.py +0 -0
  202. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/tdata.py +0 -0
  203. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc/vars.py +0 -0
  204. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc_deal/ioc.py +0 -0
  205. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc_deal/ref.py +0 -0
  206. {buildz-0.6.52 → buildz-0.6.53}/buildz/iocz/ioc_deal/val.py +0 -0
  207. {buildz-0.6.52 → buildz-0.6.53}/buildz/logz.py +0 -0
  208. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/__init__.py +0 -0
  209. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/mhttp/__init__.py +0 -0
  210. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/mhttp/caps.py +0 -0
  211. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/mhttp/mhttp.py +0 -0
  212. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/mhttp/proxy.py +0 -0
  213. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/mhttp/record.py +0 -0
  214. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/sslz/__init__.py +0 -0
  215. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/sslz/gen.py +0 -0
  216. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/sslz/gen.pyi +0 -0
  217. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/test/__main__.py +0 -0
  218. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/test/test.py +0 -0
  219. {buildz-0.6.52 → buildz-0.6.53}/buildz/netz/test/test_cli.py +0 -0
  220. {buildz-0.6.52 → buildz-0.6.53}/buildz/pathz.py +0 -0
  221. {buildz-0.6.52 → buildz-0.6.53}/buildz/pyz.py +0 -0
  222. {buildz-0.6.52 → buildz-0.6.53}/buildz/tls.py +0 -0
  223. {buildz-0.6.52 → buildz-0.6.53}/buildz/tools.py +0 -0
  224. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/__init__.py +0 -0
  225. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/myers_diff.py +0 -0
  226. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/test_xfind.py +0 -0
  227. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/time/__init__.py +0 -0
  228. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/time/timez.py +0 -0
  229. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/__init__.py +0 -0
  230. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/base.py +0 -0
  231. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/getch.py +0 -0
  232. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/lx.py +0 -0
  233. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/test.py +0 -0
  234. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/tio/win.py +0 -0
  235. {buildz-0.6.52 → buildz-0.6.53}/buildz/tz/xfind.py +0 -0
  236. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/__init__.py +0 -0
  237. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/__main__.py +0 -0
  238. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/base.py +0 -0
  239. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/code.py +0 -0
  240. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/code_modify.py +0 -0
  241. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/copy_old.py +0 -0
  242. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/file.py +0 -0
  243. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/base.py +0 -0
  244. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/buffer.py +0 -0
  245. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/listz.py +0 -0
  246. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/lr.py +0 -0
  247. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/lrval.py +0 -0
  248. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/mapz.py +0 -0
  249. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/nextz.py +0 -0
  250. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/reval.py +0 -0
  251. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/setz.py +0 -0
  252. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/spc.py +0 -0
  253. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/spt.py +0 -0
  254. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/deal/strz.py +0 -0
  255. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/exp.py +0 -0
  256. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/item.py +0 -0
  257. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/mg.py +0 -0
  258. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loader/pos.py +0 -0
  259. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/base.py +0 -0
  260. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/buffer.py +0 -0
  261. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/listmapz.py +0 -0
  262. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/listz.py +0 -0
  263. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/lr.py +0 -0
  264. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/lrval.py +0 -0
  265. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/mapz.py +0 -0
  266. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/nextz.py +0 -0
  267. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/reval.py +0 -0
  268. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/setz.py +0 -0
  269. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/spc.py +0 -0
  270. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/spt.py +0 -0
  271. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/strz.py +0 -0
  272. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/strz_new.py +0 -0
  273. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/deal/strz_old.py +0 -0
  274. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/exp.py +0 -0
  275. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/item.py +0 -0
  276. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/mg.py +0 -0
  277. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/pos.py +0 -0
  278. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/test.py +0 -0
  279. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz/test1.py +0 -0
  280. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/base.py +0 -0
  281. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/buffer.py +0 -0
  282. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
  283. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
  284. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
  285. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
  286. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
  287. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
  288. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
  289. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
  290. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/spc.py +0 -0
  291. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
  292. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
  293. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/strz_new.py +0 -0
  294. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/deal/strz_old.py +0 -0
  295. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/exp.py +0 -0
  296. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/item.py +0 -0
  297. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/mg.py +0 -0
  298. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/pos.py +0 -0
  299. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/test.py +0 -0
  300. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/loaderz_nexp/test1.py +0 -0
  301. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/mapz.py +0 -0
  302. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/read.py +0 -0
  303. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/readz.py +0 -0
  304. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/readz_nexp.py +0 -0
  305. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/stack.py +0 -0
  306. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/write.py +0 -0
  307. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/base.py +0 -0
  308. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/conf.py +0 -0
  309. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/jsonval.py +0 -0
  310. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/listmapz.py +0 -0
  311. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/listz.py +0 -0
  312. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/mapz.py +0 -0
  313. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/reval.py +0 -0
  314. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/deal/strz.py +0 -0
  315. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/itemz.py +0 -0
  316. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writer/mg.py +0 -0
  317. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/base.py +0 -0
  318. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/conf.py +0 -0
  319. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/jsonval.py +0 -0
  320. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/listmapz.py +0 -0
  321. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/listz.py +0 -0
  322. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/mapz.py +0 -0
  323. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/reval.py +0 -0
  324. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/deal/strz.py +0 -0
  325. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/itemz.py +0 -0
  326. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/mg.py +0 -0
  327. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/test.py +0 -0
  328. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writerz/testx.py +0 -0
  329. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/writez.py +0 -0
  330. {buildz-0.6.52 → buildz-0.6.53}/buildz/xf/xargs.py +0 -0
  331. {buildz-0.6.52 → buildz-0.6.53}/buildz/xz/__init__.py +0 -0
  332. {buildz-0.6.52 → buildz-0.6.53}/buildz/xz/conf.js +0 -0
  333. {buildz-0.6.52 → buildz-0.6.53}/buildz/xz/data.js +0 -0
  334. {buildz-0.6.52 → buildz-0.6.53}/buildz/xz/test.py +0 -0
  335. {buildz-0.6.52 → buildz-0.6.53}/buildz/xz/trs.py +0 -0
  336. {buildz-0.6.52 → buildz-0.6.53}/buildz.egg-info/dependency_links.txt +0 -0
  337. {buildz-0.6.52 → buildz-0.6.53}/buildz.egg-info/top_level.txt +0 -0
  338. {buildz-0.6.52 → buildz-0.6.53}/notes/notes.txt +0 -0
  339. {buildz-0.6.52 → buildz-0.6.53}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.6.52
3
+ Version: 0.6.53
4
4
  Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
5
5
  Home-page: https://github.com/buildCodeZ/buildz
6
6
  Author: Zzz
@@ -15,7 +15,7 @@ class Conf(Base):
15
15
  if not dz.islist(val):
16
16
  val = [1, val]
17
17
  return val
18
- def key(self, key, aliases, need=False, remove=True, deal = None, default=None):
18
+ def key(self, key, aliases=[], need=False, remove=True, deal = None, default=None):
19
19
  self.aliases[key] = list(aliases), need, remove, deal, self.default(default)
20
20
  def index(self, i, key=None, need=False, deal = None, dict_out = False, default=None):
21
21
  self.lists[i] = key,need,deal, dict_out, self.default(default)
@@ -10,7 +10,7 @@ class DLKey(GetKey):
10
10
  def Load(conf):
11
11
  keys, kfind = dz.dget(conf, spt("dict.key"))
12
12
  lids, lfind = dz.dget(conf, spt("list.index"))
13
- default = dz.dget(conf, 'default', None)
13
+ default, find = dz.dget(conf, 'default', None)
14
14
  return DLKey(keys, lids, default)
15
15
  def init(self, keys, indexes, default=None):
16
16
  super().init()
@@ -56,7 +56,10 @@ default_conf = None
56
56
  s_default_conf = r"""
57
57
  {
58
58
  id.spt: '.'
59
- env.spt: '.'
59
+ env: {
60
+ spt: '.'
61
+ orders: [local, args, conf, sys]
62
+ }
60
63
  conf:{
61
64
  dict.key = 'id'
62
65
  list.index = [(0,1)]
@@ -68,6 +71,9 @@ s_default_conf = r"""
68
71
  list.index = ((0,0),0)
69
72
  default: null
70
73
  }
74
+ tag: {
75
+ dict.key='tag'
76
+ }
71
77
  }
72
78
  """
73
79
  def init():
@@ -78,11 +84,6 @@ def init():
78
84
  default_conf = dz.flush_maps(default_conf)
79
85
  class ConfManager(Manager):
80
86
  def init(self, conf=None):
81
- ids, deal_key, conf_key, deal_ids, env_ids = self.Conf(conf)
82
- super().init(ids, deal_key, conf_key, deal_ids, env_ids)
83
- self.set_deal('deal', DealDeal())
84
- @staticmethod
85
- def Conf(conf=None):
86
87
  init()
87
88
  spt = Ids(".")
88
89
  if conf is None:
@@ -95,10 +96,13 @@ class ConfManager(Manager):
95
96
  ids = Ids(id_spt)
96
97
  deal_spt, find = dz.dget(conf, spt("id.spt"), id_spt)
97
98
  deal_ids = Ids(deal_spt)
98
- env_spt, find = dz.dget(conf, spt("env.spt"), id_spt)
99
+ env_ids, find = dz.dget(conf, spt("env.spt"), id_spt)
99
100
  deal_key = DLKey.Load(conf['deal'])
100
101
  conf_key = DLKey.Load(conf['conf'])
101
- return ids, deal_key, conf_key, deal_ids, env_spt
102
+ tag_key = DLKey.Load(conf['tag'])
103
+ env_orders, find = dz.dget(conf, spt("env.orders"), None)
104
+ super().init(ids, deal_key, conf_key, tag_key, deal_ids, env_ids, env_orders)
105
+ self.set_deal('deal', DealDeal())
102
106
  def add_conf(self, conf):
103
107
  unit = ConfUnit(conf, self)
104
108
  return unit
@@ -46,6 +46,7 @@ class ConfUnit(Unit):
46
46
  deal_ns = dz.get_one(conf, self.key_deal_ns)
47
47
  env_ns = dz.get_one(conf, self.key_env_ns)
48
48
  super().init(ns, deal_ns, env_ns)
49
+ self.tag_key = None
49
50
  self.bind(mg)
50
51
  self.load(conf)
51
52
  def load_confs(self, confs, tag=None):
@@ -56,9 +57,10 @@ class ConfUnit(Unit):
56
57
  rst.append(v)
57
58
  confs = rst
58
59
  for item in confs:
59
- key,find = self.conf_key(item)
60
- if find:
61
- self.set_conf(key, item, tag)
60
+ self.add_conf(item, tag)
61
+ # key,find = self.conf_key(item)
62
+ # if find:
63
+ # self.set_conf(key, item, tag)
62
64
  def load_envs(self, envs, tag=None):
63
65
  for key, val in envs.items():
64
66
  self.set_env(key, val, tag)
@@ -0,0 +1,3 @@
1
+ from ..conf.base import *
2
+ from ..conf.up import *
3
+ from ..ioc_deal.base import *
@@ -0,0 +1,34 @@
1
+
2
+ from .base import *
3
+ from ... import dz,pyz
4
+ class CallEncape(BaseEncape):
5
+ def init(self, unit, cvar, args, maps):
6
+ super().init()
7
+ self.unit = unit
8
+ self.params = call, args, maps
9
+ def call(self, params=None, **_):
10
+ call, args, maps = self.params
11
+ call = self.obj(call)
12
+ if type(call)==str:
13
+ call = self.unit.get(call)
14
+ args = self.elist2obj(args)
15
+ maps = self.edict2obj(maps)
16
+ return call(*args, **maps)
17
+ class CallDeal(BaseDeal):
18
+ def init(self):
19
+ super().init()
20
+ conf = BaseConf()
21
+ conf.index(1, 'call', need=1)
22
+ conf.index(2, 'args')
23
+ conf.index(3, 'maps')
24
+ conf.key('call', need=1)
25
+ self.update = conf
26
+ def deal(self, conf, unit):
27
+ assert 'call' in conf
28
+ call = conf['call']
29
+ call = self.get_encape(call, unit)
30
+ args = self.get_elist(unit, conf, 'args',[])
31
+ maps = self.get_edict(unit, conf, 'maps', {})
32
+ return CallEncape(unit, call, args, maps)
33
+
34
+ pass
@@ -0,0 +1,28 @@
1
+
2
+ from .base import *
3
+ from ... import dz,pyz
4
+ class CVarEncape(BaseEncape):
5
+ def init(self, cvar):
6
+ super().init()
7
+ self.cvar = cvar
8
+ def call(self, params=None, **maps):
9
+ cvar = self.cvar
10
+ if isinstance(cvar, Encape):
11
+ cvar = cvar()
12
+ cvar = self.load(cvar)
13
+ return cvar
14
+ class CVarDeal(BaseDeal):
15
+ def init(self):
16
+ super().init()
17
+ conf = BaseConf()
18
+ conf.index(1, 'cvar', need=1)
19
+ conf.key('cvar', 'var,data'.split(","), need=1)
20
+ self.update = conf
21
+ def deal(self, conf, unit):
22
+ assert 'cvar' in conf
23
+ cvar = conf['cvar']
24
+ if Confs.is_conf(cvar):
25
+ cvar = self.get_encape(cvar, unit)
26
+ return CVarEncape(cvar)
27
+
28
+ pass
@@ -0,0 +1,35 @@
1
+
2
+ from .base import *
3
+ from ... import dz,pyz
4
+ class EnvEncape(BaseEncape):
5
+ def init(self, unit, env, default):
6
+ super().init()
7
+ self.unit = unit
8
+ self.params = env, default
9
+ def call(self, params=None, **_):
10
+ env, default = self.params
11
+ env = self.obj(env)
12
+ obj, _, find = self.unit.get_env(env)
13
+ if find:
14
+ return obj
15
+ assert default[0], f"env '{env}' not found"
16
+ obj = default[1]
17
+ obj = self.obj(obj)
18
+ return obj
19
+ class EnvDeal(BaseDeal):
20
+ def init(self):
21
+ super().init()
22
+ conf = BaseConf()
23
+ conf.index(1, 'env', need=1)
24
+ conf.index(2, 'default')
25
+ conf.key('env', "data,key".split(","), need=1)
26
+ self.update = conf
27
+ def deal(self, conf, unit):
28
+ assert 'env' in conf
29
+ env = self.get_encape(conf['env'], unit)
30
+ default, dfind = dz.dget(conf, 'default')
31
+ if dfind:
32
+ default = self.get_encape(default, unit)
33
+ return EnvEncape(unit, env, [dfind, default])
34
+
35
+ pass
@@ -2,6 +2,7 @@
2
2
 
3
3
  from .conf import mg
4
4
  from .. import xf
5
+ from .wrap import wraps, default_wraps
5
6
  s_default_conf = r"""
6
7
  confs.pri: {
7
8
  deal_obj:{
@@ -28,8 +29,26 @@ confs.pri: {
28
29
  deals: ioc
29
30
  call=1
30
31
  }
32
+ deal_cvar: {
33
+ type=deal
34
+ src: <buildz>.iocz.conf_deal.cvar.CVarDeal
35
+ deals: cvar
36
+ call=1
37
+ }
38
+ deal_call: {
39
+ type=deal
40
+ src: <buildz>.iocz.conf_deal.call.CallDeal
41
+ deals: (call, fc)
42
+ call=1
43
+ }
44
+ deal_env: {
45
+ type=deal
46
+ src: <buildz>.iocz.conf_deal.env.EnvDeal
47
+ deals: env
48
+ call=1
49
+ }
31
50
  }
32
- builds: [deal_obj,deal_val,deal_ref,deal_ioc]
51
+ builds: [deal_obj,deal_val,deal_ref,deal_ioc,deal_cvar, deal_env,deal_call]
33
52
  """.replace("<buildz>", "buildz")
34
53
  def build(conf = None, default_conf = True):
35
54
  global s_default_conf
@@ -42,4 +61,10 @@ def build(conf = None, default_conf = True):
42
61
  obj.add_conf(default_conf)
43
62
  return obj
44
63
 
45
- pass
64
+ pass
65
+
66
+ def build_wraps(default=True):
67
+ obj = wraps.WrapUnits()
68
+ if default:
69
+ default_wraps.build(obj)
70
+ return obj
@@ -21,13 +21,24 @@ class Deal(Base):
21
21
  pass
22
22
 
23
23
  class Params(Base):
24
- def clone(self, **upds):
25
- args, maps = list(self.args), dict(self.maps)
24
+ @staticmethod
25
+ def Clone(params, **upds):
26
+ if params is None:
27
+ args,maps = [],{}
28
+ else:
29
+ args, maps = list(self.args), dict(self.maps)
26
30
  maps.update(upds)
27
- return Params(args, maps)
31
+ obj = Params()
32
+ obj.args = args
33
+ obj.maps = maps
34
+ return obj
35
+ def clone(self, **upds):
36
+ return Params.Clone(self, **upds)
28
37
  def init(self, *args, **maps):
29
38
  self.args = args
30
39
  self.maps = maps
40
+ def set(self, key, val):
41
+ self.maps[key] = val
31
42
  def get(self, key, default=None):
32
43
  if key not in self.maps:
33
44
  return default
@@ -10,6 +10,6 @@ class Confs(Datas):
10
10
  super().init(ns, id, dts)
11
11
  self.deal_ns = deal_ns
12
12
  def set(self, key, val, tag=None):
13
- val = (val, self.deal_ns)
13
+ val = (val, self.deal_ns, self.id)
14
14
  super().set(key, val, tag)
15
15
 
@@ -13,6 +13,9 @@ class Datas(TagData):
13
13
  return
14
14
  self.dts = dts
15
15
  dts.add(self)
16
+ def update(self, maps, tag=None):
17
+ for key, val in maps.items():
18
+ self.set(key, val, tag)
16
19
  def set(self, key, val, tag=None):
17
20
  tag = pyz.nnull(tag, self.default)
18
21
  super().set(key, val, tag)
@@ -7,26 +7,27 @@ class Dataset(Base):
7
7
  '''
8
8
  所有数据集,只包含pub和ns部分
9
9
  '''
10
+ def str(self):
11
+ return f"Dataset(pub={self.pub}, ns={self.ns})"
10
12
  def init(self, ids):
11
13
  self.ids = ids
12
14
  self.pub = {}
13
15
  self.ns = {}
14
16
  self.objs = {}
17
+ def update(self, maps, ns=None, tag=None, id=None, flush=False):
18
+ if flush:
19
+ maps = dz.unflush_maps(maps, self.ids.id)
20
+ for key, val in maps.items():
21
+ self.set(key, val, ns, tag, id)
15
22
  def set(self, key, val, ns=None, tag=None, id=None):
16
23
  if tag == TagData.Key.Ns:
17
24
  self.ns_set(key,val,ns,id)
18
25
  else:
19
26
  self.pub_set(key,val,ns,id)
20
27
  def pub_set(self, key, val, ns=None, id=None):
21
- if isinstance(id, TagData):
22
- id = id.id
23
- val = (val,id)
24
28
  keys = self.ids(ns)+self.ids(key)
25
29
  dz.dset(self.pub, keys, val)
26
30
  def ns_set(self, key, val, ns=None, id=None):
27
- if isinstance(id, TagData):
28
- id = id.id
29
- val = (val,id)
30
31
  map = dz.get_set(self.ns, ns, dict())
31
32
  dz.dset(map, self.ids(key),val)
32
33
  #map[key] = val
@@ -40,19 +41,22 @@ class Dataset(Base):
40
41
  if data.dts!=self:
41
42
  data.bind(self)
42
43
  def tget(self, key, ns=None, tag=None, id=None):
43
- obj, id, keys,tag, find = self.get(key,ns,tag, id)
44
+ obj, keys,tag, find = self.get(key,ns,tag, id)
44
45
  return obj, tag, find
45
46
  def get(self, key, ns=None, tag=None, id = None):
47
+ keys = self.ids(key)
48
+ if len(keys)==0:
49
+ return None,None,None,0
46
50
  if tag == TagData.Key.Pub:
47
51
  find =False
48
52
  else:
49
- obj, oid, find = self.ns_get(key,ns,id)
53
+ obj, find = self.ns_get(key,ns,id)
50
54
  tag = TagData.Key.Ns
51
55
  keys = key
52
56
  if not find:
53
- obj, oid, keys, find=self.pub_get(key,ns,id)
57
+ obj, keys, find=self.pub_get(key,ns,id)
54
58
  tag=TagData.Key.Pub
55
- return obj,oid,keys,tag,find
59
+ return obj,keys,tag,find
56
60
  def _pub_get(self, key, ns=None, id=None):
57
61
  ids_key = self.ids(key)
58
62
  ids = ids_key
@@ -69,17 +73,11 @@ class Dataset(Base):
69
73
  def pub_get(self, key, ns=None, id=None):
70
74
  obj,keys,find = self._pub_get(key, ns, id)
71
75
  if find:
72
- v,id=obj
73
- return v,id,keys,find
74
- return None,0,0,0
76
+ return obj,keys,find
77
+ return None,None,0
75
78
  def ns_get(self, key, ns=None, id=None):
76
79
  map = dz.get_set(self.ns, ns, dict())
77
80
  obj, find = dz.dget(map, self.ids(key))
78
81
  if not find:
79
- return None,0,0
80
- obj, id = obj
81
- return obj,id,1
82
- if key not in map:
83
- return 0, 0, 0
84
- v,id=map[key]
85
- return v,id, 1
82
+ return None,0
83
+ return obj,1
@@ -22,7 +22,7 @@ class Encapes(Datas):
22
22
  conf, ctag, cfind = self.confs.tget(key, ns, id, False)
23
23
  if not cfind:
24
24
  return 0,0,0
25
- conf, deal_ns = conf
25
+ conf, deal_ns, cid = conf
26
26
  encape, conf, upd = self.make_conf(conf, deal_ns, id)
27
27
  if upd:
28
28
  self.confs.set(key, conf, ctag)
@@ -31,7 +31,7 @@ class Encapes(Datas):
31
31
  def make_conf(self, conf, deal_ns=None, id=None):
32
32
  deal_key, dk_find = self.deal_key(conf)
33
33
  deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id, True)
34
- assert dfind
34
+ assert dfind, f'deal for {deal_ns}/{deal_key} not found'
35
35
  encape, conf, upd = deal(conf, self.unit)
36
36
  return encape, conf, upd
37
37
  def tget(self, key, src=None,id=None, gfind=True):
@@ -68,10 +68,10 @@ class Encapeset(Dataset):
68
68
  self.deal_key = mg.deal_key
69
69
  return self
70
70
  def make(self, key, ns=None, tag=None, id = None):
71
- conf, cid, keys, ctag, cfind = self.confs.get(key, ns, tag, id)
71
+ conf, keys, ctag, cfind = self.confs.get(key, ns, tag, id)
72
72
  if not cfind:
73
- return None,None,None,None,0
74
- conf, deal_ns = conf
73
+ return None,None,None,0
74
+ conf, deal_ns, cid = conf
75
75
  encape, conf, upd = self.make_conf(conf, deal_ns, id, cid)
76
76
  if cid in self.objs:
77
77
  obj = self.objs[cid]
@@ -86,11 +86,11 @@ class Encapeset(Dataset):
86
86
  self.confs.objs[cid].set(key, conf, ctag)
87
87
  else:
88
88
  self.set(key, encape, ns, ctag)
89
- return encape, cid, keys, ctag, 1
89
+ return encape, keys, ctag, 1
90
90
  def make_conf(self, conf, deal_ns=None, id=None,cid=None):
91
91
  deal_key, dk_find = self.deal_key(conf)
92
92
  deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id)
93
- assert dfind
93
+ assert dfind, f"encapes make_conf deal {deal_ns}/'{deal_key}' not found"
94
94
  unit = self.mg.get_unit(cid)
95
95
  encape, conf, upd = deal(conf, unit)
96
96
  return encape, conf, upd
@@ -98,9 +98,9 @@ class Encapeset(Dataset):
98
98
  if Confs.is_conf(key):
99
99
  encape, conf, upd = self.make_conf(key, None, id)
100
100
  return encape, None, None, Datas.Key.Pub, 1
101
- obj, eid, keys, _tag, find = super().get(key, ns, tag, id)
101
+ obj, keys, _tag, find = super().get(key, ns, tag, id)
102
102
  if find:
103
- return obj, eid, keys, _tag, find
103
+ return obj, keys, _tag, find
104
104
  return self.make(key, ns, tag, id)
105
105
 
106
106
 
@@ -6,6 +6,11 @@ class Envs(Datas):
6
6
  def init(self, ns=None, id=None, dts=None):
7
7
  super().init(ns, id, dts)
8
8
  self.ids = None
9
+ def update(self, maps, tag=None, flush=False):
10
+ if flush:
11
+ maps = dz.unflush_maps(maps, self.ids.id)
12
+ for key, val in maps.items():
13
+ self.set(key, val, tag)
9
14
  def bind(self, dts):
10
15
  self.ids = dts.ids
11
16
  super().bind(dts)
@@ -8,6 +8,7 @@ from ... import pyz,dz
8
8
  from .ids import Ids
9
9
  from .unit import Unit
10
10
  from .builds import Buildset
11
+ from .sys_envs import SysEnvs
11
12
  class GetKey(Base):
12
13
  def call(self, conf):
13
14
  return None, 0
@@ -24,7 +25,14 @@ class SimpleConfKey(Base):
24
25
  conf[self.key] = key
25
26
 
26
27
  pass
28
+ class EnvKey:
29
+ sys = 'sys'
30
+ args = 'args'
31
+ conf = 'conf'
32
+ local = 'local'
33
+ default_orders = [local, args, conf, sys]
27
34
  class Manager(Base):
35
+ EnvKey = EnvKey
28
36
  @staticmethod
29
37
  def make_key(key):
30
38
  if type(key) == str:
@@ -35,7 +43,23 @@ class Manager(Base):
35
43
  if type(ids)==str:
36
44
  ids = Ids(ids)
37
45
  return ids
38
- def init(self, ids, deal_key='type', conf_key='id', deal_ids = None, env_ids = None):
46
+ def get_env(self, key, ns = None, tag = None, id = None, local_get = None):
47
+ fcs = self.get_env_fcs
48
+ fcs[EnvKey.local] = local_get
49
+ for order in self.env_orders:
50
+ fc = fcs[order]
51
+ if fc is None:
52
+ continue
53
+ obj, _tag, find = fc(key, ns, tag, id)
54
+ if find:
55
+ return obj, _tag, find
56
+ return None, None, 0
57
+ def set_env_args(self, key, val, ns=None):
58
+ self.sys_env.set(key, val, ns)
59
+ def init(self, ids, deal_key='type', conf_key='id', tag_key='tag', deal_ids = None, env_ids = None, env_orders = None):
60
+ if env_orders is None:
61
+ env_orders = EnvKey.default_orders
62
+ self.env_orders = env_orders
39
63
  self._index = 0
40
64
  self.units = {}
41
65
  self.builds = Buildset(self)
@@ -43,16 +67,27 @@ class Manager(Base):
43
67
  self.ids = ids
44
68
  self.deal_key = self.make_key(deal_key)
45
69
  self.conf_key = self.make_key(conf_key)
70
+ self.tag_key = self.make_key(tag_key)
46
71
  self.deal_ids = self.make_ids(pyz.nnull(deal_ids, ids))
47
72
  self.env_ids = self.make_ids(pyz.nnull(env_ids, ids))
48
73
  self.confs = Dataset(self.ids)
49
74
  self.envs = Dataset(self.env_ids)
75
+ self.sys_envs = SysEnvs(self.env_ids)
76
+ self.args_envs = Dataset(self.env_ids)
50
77
  self.deals = Dataset(self.deal_ids)
51
78
  self.encapes = Encapeset(self.ids, self)
52
79
  self.vars = Varset(self.ids)
53
80
  #
81
+ self.set_env_args = self.args_envs.set
82
+ self.update_env_args = self.args_envs.update
83
+ self.update_env = self.envs.update
54
84
  self.set_env = self.envs.set
55
- self.get_env = self.envs.tget
85
+ #self.get_env = self.envs.tget
86
+ self.get_env_fcs = {
87
+ EnvKey.sys: self.sys_envs.tget,
88
+ EnvKey.args: self.args_envs.tget,
89
+ EnvKey.conf: self.envs.tget
90
+ }
56
91
  #
57
92
  self.push_var = self.vars.vpush
58
93
  self.push_vars = self.vars.vpushs
@@ -102,7 +137,7 @@ class Manager(Base):
102
137
  return self.encapes.tget(key, ns, id)
103
138
  def set_encape(self, key, encape, ns=None, tag=None, id=None):
104
139
  self.encapes.set(key, encape, ns, tag, id)
105
- def get(self, key, ns=None, id=None,params=None, search_var = True):
140
+ def get(self, key, ns=None, params=None, id=None, search_var = True):
106
141
  if search_var:
107
142
  obj, find = self.get_var(key, ns)
108
143
  if find:
@@ -111,6 +146,8 @@ class Manager(Base):
111
146
  if not find:
112
147
  return None, 0
113
148
  return encape(params),1
149
+ def get_obj(self, key, ns=None, params=None, id=None, search_var=True):
150
+ return self.get(key, ns, params, id, search_var)[0]
114
151
 
115
152
 
116
153
 
@@ -0,0 +1,15 @@
1
+ #
2
+ from .base import *
3
+ from .tdata import TagData
4
+ import os
5
+ class SysEnvs(Base):
6
+ def init(self, ids):
7
+ self.ids = ids
8
+ def tget(self, key, ns=None, tag=None, id=None):
9
+ rst = os.getenv(key)
10
+ if rst is None and ns is not None:
11
+ gkey = self.ids.id(self.ids(key), self.ids(ns))
12
+ rst = os.getenv(gkey)
13
+ if rst is None:
14
+ return None, TagData.Key.Pub, 0
15
+ return rst, TagData.Key.Pub, 1
@@ -5,6 +5,10 @@ class TagDict(Base):
5
5
  tag = pyz.nnull(tag, self.default)
6
6
  rst = dz.get_set(self.maps, tag, dict())
7
7
  dz.dremove(rst, key)
8
+ def update(self, maps, tag=None):
9
+ tag = pyz.nnull(tag, self.default)
10
+ rst = dz.get_set(self.maps, tag, dict())
11
+ dz.fill(maps, rst)
8
12
  def set(self, key, val, tag=None):
9
13
  tag = pyz.nnull(tag, self.default)
10
14
  rst = dz.get_set(self.maps, tag, dict())
@@ -14,12 +14,13 @@ class Unit(UnitBase):
14
14
  if isinstance(src, UnitBase) or isinstance(src, TagData):
15
15
  src,id = src.ns, src.id
16
16
  return src, id
17
- def init(self, ns=None, deal_ns=None, env_ns=None, deal_key = None, conf_key = None, id=None):
17
+ def init(self, ns=None, deal_ns=None, env_ns=None, deal_key = None, conf_key = None, tag_key = None, id=None):
18
18
  super().init(ns, id)
19
19
  self.deal_ns = deal_ns
20
20
  self.env_ns = env_ns
21
21
  self.deal_key = deal_key
22
22
  self.conf_key = conf_key
23
+ self.tag_key = tag_key
23
24
  self.confs = Confs(ns, deal_ns, id)
24
25
  self.deals = Datas(deal_ns, id)
25
26
  self.envs = Envs(env_ns, id)
@@ -43,6 +44,7 @@ class Unit(UnitBase):
43
44
  self.mg = mg
44
45
  self.deal_key = pyz.nnull(self.deal_key, mg.deal_key)
45
46
  self.conf_key = pyz.nnull(self.conf_key, mg.conf_key)
47
+ self.tag_key = pyz.nnull(self.tag_key, mg.tag_key)
46
48
  if self.id is None:
47
49
  self.id = mg.id()
48
50
  self.confs.set_id(self.id)
@@ -55,9 +57,15 @@ class Unit(UnitBase):
55
57
  self.envs.bind(mg.envs)
56
58
  self.build_encapes()
57
59
  self.encapes.bind(mg.encapes)
60
+ def lc_get_env(self, key, ns=None, tag=None, id=None):
61
+ return self.envs.tget(key, ns, id, False)
58
62
  def get_env(self, key, src=-1, id=None, gfind=True):
59
63
  src, id = self.nsid(src, id)
60
- return self.envs.tget(key, src, id, gfind)
64
+ if not gfind:
65
+ return self.lc_get_env(key, src, None, id)
66
+ return self.mg.get_env(key, src, None, id, self.lc_get_env)
67
+ def update_env(self, maps, tag=None, flush=False):
68
+ self.envs.update(maps, tag, flush)
61
69
  def set_env(self, key, val, tag=None):
62
70
  self.envs.set(key, val, tag)
63
71
  def get_deal(self, key, src=-1, id=None, gfind=True):
@@ -71,6 +79,15 @@ class Unit(UnitBase):
71
79
  def set_conf(self, key, conf, tag=None):
72
80
  self.conf_key.fill(conf, key)
73
81
  self.confs.set(key, conf, tag)
82
+ def tag(self, conf, _tag=None):
83
+ if _tag is None:
84
+ _tag, find = self.tag_key(conf)
85
+ return _tag
86
+ def add_conf(self, conf, tag = None):
87
+ key,find = self.conf_key(conf)
88
+ tag = self.tag(conf, tag)
89
+ if find:
90
+ self.set_conf(key, conf, tag)
74
91
  def get_encape(self, key, src=-1, id=None, gfind=True):
75
92
  src, id = self.nsid(src, id)
76
93
  self.mg.build()
@@ -80,7 +97,7 @@ class Unit(UnitBase):
80
97
  def get_var(self, key, src=-1, tag=None):
81
98
  src, id = self.nsid(src, None)
82
99
  return self.mg.get_var(key, src, tag)
83
- def get(self, key, src=-1, id=None, gfind=True, params=None, search_var=True):
100
+ def get(self, key, params=None, src=-1, id=None, gfind=True, search_var=True):
84
101
  src, id = self.nsid(src, id)
85
102
  if search_var:
86
103
  obj, find = self.mg.get_var(key, src, TagData.Key.Ns)
@@ -89,4 +106,6 @@ class Unit(UnitBase):
89
106
  encape, _tag, find = self.get_encape(key, src, id, gfind)
90
107
  if not find:
91
108
  return None, 0
92
- return encape(params),1
109
+ return encape(params),1
110
+ def get_obj(self, key, params=None, src=-1, id=None, gfind = True, search_var=True):
111
+ return self.get(key, params, src, id, gfind, search_var)[0]