buildz 0.6.36__tar.gz → 0.6.37__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 (222) hide show
  1. {buildz-0.6.36/buildz.egg-info → buildz-0.6.37}/PKG-INFO +1 -1
  2. {buildz-0.6.36 → buildz-0.6.37}/buildz/cachez/cache.py +4 -2
  3. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/basez.py +13 -5
  4. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/orm.py +22 -3
  5. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/sqlite3z.py +5 -2
  6. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc/conf.py +4 -0
  7. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc/confs.py +8 -0
  8. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/obj.py +5 -1
  9. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/mapz.py +2 -0
  10. {buildz-0.6.36 → buildz-0.6.37/buildz.egg-info}/PKG-INFO +1 -1
  11. {buildz-0.6.36 → buildz-0.6.37}/setup.py +1 -1
  12. {buildz-0.6.36 → buildz-0.6.37}/LICENSE +0 -0
  13. {buildz-0.6.36 → buildz-0.6.37}/MANIFEST.in +0 -0
  14. {buildz-0.6.36 → buildz-0.6.37}/README.md +0 -0
  15. {buildz-0.6.36 → buildz-0.6.37}/buildz/__init__.py +0 -0
  16. {buildz-0.6.36 → buildz-0.6.37}/buildz/__main__.py +0 -0
  17. {buildz-0.6.36 → buildz-0.6.37}/buildz/argx.py +0 -0
  18. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/__init__.py +0 -0
  19. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/cache.py +0 -0
  20. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/config.py +0 -0
  21. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/dbs.py +0 -0
  22. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/deal.py +0 -0
  23. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/deal_list.py +0 -0
  24. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/deal_type.py +0 -0
  25. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/defs.py +0 -0
  26. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/factory.py +0 -0
  27. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/init.py +0 -0
  28. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/log.py +0 -0
  29. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/request.py +0 -0
  30. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/run.py +0 -0
  31. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/save.py +0 -0
  32. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/cache/cache.js +0 -0
  33. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/config/base.js +0 -0
  34. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/config/config.js +0 -0
  35. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/data/fp.js +0 -0
  36. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/data/item1.js +0 -0
  37. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/data/item2.js +0 -0
  38. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/res/data/test.js +0 -0
  39. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/test.py +0 -0
  40. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/test/xtest.py +0 -0
  41. {buildz-0.6.36 → buildz-0.6.37}/buildz/auto/verify.py +0 -0
  42. {buildz-0.6.36 → buildz-0.6.37}/buildz/base.py +0 -0
  43. {buildz-0.6.36 → buildz-0.6.37}/buildz/cachez/__init__.py +0 -0
  44. {buildz-0.6.36 → buildz-0.6.37}/buildz/cmd.py +0 -0
  45. {buildz-0.6.36 → buildz-0.6.37}/buildz/confz.py +0 -0
  46. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/__init__.py +0 -0
  47. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/__main__.py +0 -0
  48. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/__init__.py +0 -0
  49. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/clickhousez.py +0 -0
  50. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/lib/readme +0 -0
  51. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/mysqlz.py +0 -0
  52. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/oraclez.py +0 -0
  53. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/postgresqlz.py +0 -0
  54. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/dv/structz.py +0 -0
  55. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/install.txt +0 -0
  56. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/run.conf +0 -0
  57. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/runz.py +0 -0
  58. {buildz-0.6.36 → buildz-0.6.37}/buildz/db/tls.py +0 -0
  59. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/ioc/deal.py +0 -0
  60. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/ioc/help.py +0 -0
  61. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/myers/deal.py +0 -0
  62. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/myers/help.py +0 -0
  63. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/conf/ioc.js +0 -0
  64. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/conf/main.js +0 -0
  65. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/conf/myers.js +0 -0
  66. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/conf/search.js +0 -0
  67. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/conf/xf.js +0 -0
  68. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/help/default.js +0 -0
  69. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/help/ioc.js +0 -0
  70. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/help/myers.js +0 -0
  71. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/help/search.js +0 -0
  72. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/help/xf.js +0 -0
  73. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/res/test.js +0 -0
  74. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/search/deal.py +0 -0
  75. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/search/help.py +0 -0
  76. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/test.py +0 -0
  77. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/xf/deal.py +0 -0
  78. {buildz-0.6.36 → buildz-0.6.37}/buildz/demo/xf/help.py +0 -0
  79. {buildz-0.6.36 → buildz-0.6.37}/buildz/fz/__init__.py +0 -0
  80. {buildz-0.6.36 → buildz-0.6.37}/buildz/fz/dirz.py +0 -0
  81. {buildz-0.6.36 → buildz-0.6.37}/buildz/fz/fhs.py +0 -0
  82. {buildz-0.6.36 → buildz-0.6.37}/buildz/fz/fio.py +0 -0
  83. {buildz-0.6.36 → buildz-0.6.37}/buildz/fz/lsf.py +0 -0
  84. {buildz-0.6.36 → buildz-0.6.37}/buildz/html/__init__.py +0 -0
  85. {buildz-0.6.36 → buildz-0.6.37}/buildz/html/test/demo.html +0 -0
  86. {buildz-0.6.36 → buildz-0.6.37}/buildz/html/test/test.py +0 -0
  87. {buildz-0.6.36 → buildz-0.6.37}/buildz/html/xml.py +0 -0
  88. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/__init__.py +0 -0
  89. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/base.py +0 -0
  90. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/init.py +0 -0
  91. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc/base.py +0 -0
  92. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc/decorator.py +0 -0
  93. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc/single.py +0 -0
  94. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/base.py +0 -0
  95. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/branch.py +0 -0
  96. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/call.py +0 -0
  97. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/calls.py +0 -0
  98. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
  99. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  100. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  101. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  102. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  103. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  104. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  105. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  106. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  107. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  108. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  109. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  110. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  111. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  112. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  113. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  114. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  115. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  116. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  117. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  118. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  119. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
  120. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  121. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  122. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  123. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/deal.py +0 -0
  124. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/demo.py +0 -0
  125. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/env.py +0 -0
  126. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/init.py +0 -0
  127. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/ioc.py +0 -0
  128. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/iocf.py +0 -0
  129. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/join.py +0 -0
  130. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/list.py +0 -0
  131. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/map.py +0 -0
  132. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/mcall.py +0 -0
  133. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/ovar.py +0 -0
  134. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/ref.py +0 -0
  135. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/refs.py +0 -0
  136. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/val.py +0 -0
  137. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/var.py +0 -0
  138. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/ioc_deal/xfile.py +0 -0
  139. {buildz-0.6.36 → buildz-0.6.37}/buildz/ioc/wrap.py +0 -0
  140. {buildz-0.6.36 → buildz-0.6.37}/buildz/logz.py +0 -0
  141. {buildz-0.6.36 → buildz-0.6.37}/buildz/pathz.py +0 -0
  142. {buildz-0.6.36 → buildz-0.6.37}/buildz/pyz.py +0 -0
  143. {buildz-0.6.36 → buildz-0.6.37}/buildz/tools.py +0 -0
  144. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/__init__.py +0 -0
  145. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/myers_diff.py +0 -0
  146. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/test_xfind.py +0 -0
  147. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/time/__init__.py +0 -0
  148. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/time/timez.py +0 -0
  149. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/__init__.py +0 -0
  150. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/base.py +0 -0
  151. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/getch.py +0 -0
  152. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/lx.py +0 -0
  153. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/test.py +0 -0
  154. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/tio/win.py +0 -0
  155. {buildz-0.6.36 → buildz-0.6.37}/buildz/tz/xfind.py +0 -0
  156. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/__init__.py +0 -0
  157. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/__main__.py +0 -0
  158. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/code.py +0 -0
  159. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/code_modify.py +0 -0
  160. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/copy_old.py +0 -0
  161. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/file.py +0 -0
  162. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/base.py +0 -0
  163. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/buffer.py +0 -0
  164. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/listz.py +0 -0
  165. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/lr.py +0 -0
  166. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/lrval.py +0 -0
  167. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/mapz.py +0 -0
  168. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/nextz.py +0 -0
  169. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/reval.py +0 -0
  170. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/setz.py +0 -0
  171. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/spc.py +0 -0
  172. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/spt.py +0 -0
  173. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/deal/strz.py +0 -0
  174. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/exp.py +0 -0
  175. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/item.py +0 -0
  176. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/mg.py +0 -0
  177. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loader/pos.py +0 -0
  178. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/base.py +0 -0
  179. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/buffer.py +0 -0
  180. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/listmapz.py +0 -0
  181. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/listz.py +0 -0
  182. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/lr.py +0 -0
  183. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/lrval.py +0 -0
  184. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/nextz.py +0 -0
  185. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/reval.py +0 -0
  186. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/setz.py +0 -0
  187. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/spc.py +0 -0
  188. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/spt.py +0 -0
  189. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/strz.py +0 -0
  190. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/strz_new.py +0 -0
  191. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/deal/strz_old.py +0 -0
  192. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/exp.py +0 -0
  193. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/item.py +0 -0
  194. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/mg.py +0 -0
  195. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/pos.py +0 -0
  196. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/test.py +0 -0
  197. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/loaderz/test1.py +0 -0
  198. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/mapz.py +0 -0
  199. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/read.py +0 -0
  200. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/readz.py +0 -0
  201. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/stack.py +0 -0
  202. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/write.py +0 -0
  203. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/base.py +0 -0
  204. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/conf.py +0 -0
  205. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/jsonval.py +0 -0
  206. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/listmapz.py +0 -0
  207. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/listz.py +0 -0
  208. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/mapz.py +0 -0
  209. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/reval.py +0 -0
  210. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/deal/strz.py +0 -0
  211. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/itemz.py +0 -0
  212. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/writer/mg.py +0 -0
  213. {buildz-0.6.36 → buildz-0.6.37}/buildz/xf/xargs.py +0 -0
  214. {buildz-0.6.36 → buildz-0.6.37}/buildz/xz/__init__.py +0 -0
  215. {buildz-0.6.36 → buildz-0.6.37}/buildz/xz/conf.js +0 -0
  216. {buildz-0.6.36 → buildz-0.6.37}/buildz/xz/data.js +0 -0
  217. {buildz-0.6.36 → buildz-0.6.37}/buildz/xz/test.py +0 -0
  218. {buildz-0.6.36 → buildz-0.6.37}/buildz/xz/trs.py +0 -0
  219. {buildz-0.6.36 → buildz-0.6.37}/buildz.egg-info/SOURCES.txt +0 -0
  220. {buildz-0.6.36 → buildz-0.6.37}/buildz.egg-info/dependency_links.txt +0 -0
  221. {buildz-0.6.36 → buildz-0.6.37}/buildz.egg-info/top_level.txt +0 -0
  222. {buildz-0.6.36 → buildz-0.6.37}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.6.36
3
+ Version: 0.6.37
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
@@ -52,8 +52,10 @@ class CacheKey(Base):
52
52
  else:
53
53
  assert 0
54
54
  @ns.obj(id="cache.file")
55
- @ns.obj_args("ref, fps, cache.js","ref, log, null", "ref, rfp.current.first, false", "ref, split, .", "ref, key.currents, buildz.cache.path.currents", "ref, key.basedir, buildz.cache.path.basedir", "ref, save.index, 0", "ref, save.auto, false")
55
+ @ns.obj_args("ref, fps, cache.js","ref, log, null", "ref, rfp.current.first, false", "ref, split, .", "ref, key.currents, buildz.cache.path.currents", "ref, key.basedir, buildz.cache.path.basedir", "ref, save.index, -1", "ref, save.auto, false")
56
56
  class Cache(Base):
57
+ def clean(self):
58
+ self.data = {}
57
59
  def bind(self, key):
58
60
  return CacheKey(self, key)
59
61
  def has(self, key):
@@ -68,7 +70,7 @@ class Cache(Base):
68
70
  self.save()
69
71
  def remove(self, key):
70
72
  xf.removes(self.data, key.split(self.spt))
71
- def init(self, fps="cache.js", log=None, current_first=False, spt = ".", key_currents = "buildz.cache.path.currents", key_basedir = "buildz.cache.path.basedir", save_index = 0, auto_save = False):
73
+ def init(self, fps="cache.js", log=None, current_first=False, spt = ".", key_currents = "buildz.cache.path.currents", key_basedir = "buildz.cache.path.basedir", save_index = -1, auto_save = False):
72
74
  if type(fps) not in (tuple, list):
73
75
  fps = [fps]
74
76
  self.fps = fps
@@ -117,19 +117,25 @@ class SimpleDv(ItDv):
117
117
  if commit:
118
118
  self.execute("commit;")
119
119
  def execute(self, sql, vals=(), commit=False):
120
+ #print(f"[TESTZ] sql: {sql}")
120
121
  tmp = self.cursor.execute(sql, vals)
121
122
  if commit:
122
123
  self.cursor.execute("commit;")
123
124
  return tmp
124
- def insert_or_update(self, maps, table, keys = None):
125
+ def iou_sql(self, table, ks, vs, sets):
126
+ sql = f"insert into {table}({ks}) values({vs}) on duplicate key update {sets}"
127
+ return sql
128
+ def insert_or_update(self, maps, table, keys = None, update_keys = None):
129
+ if type(update_keys)==str:
130
+ update_keys = [update_keys]
125
131
  if type(maps)!=dict:
126
132
  maps = maps.__dict__
127
133
  if keys is None:
128
134
  keys = []
129
135
  if type(keys) not in (list, tuple):
130
136
  keys = [keys]
131
- update = False
132
- conds = ""
137
+ # update = False
138
+ # conds = ""
133
139
  # if len(keys)>0:
134
140
  # need_query = True
135
141
  # conds = []
@@ -151,11 +157,13 @@ class SimpleDv(ItDv):
151
157
  # rst = self.query(sql_search, as_map = False)[1][0]
152
158
  # update = rst>0
153
159
  kvs = [[k,tls.py2sql(v)] for k,v in maps.items()]
154
- sets = [f"{k}={v}" for k,v in kvs]
160
+ #print(f"[TESTZ] save kvs: {kvs}, update_keys: {update_keys}")
161
+ sets = [f"{k}={v}" for k,v in kvs if update_keys is None or k in update_keys]
155
162
  sets = ",".join(sets)
156
163
  ks = ",".join([kv[0] for kv in kvs])
157
164
  vs = ",".join([str(kv[1]) for kv in kvs])
158
- sql = f"insert into {table}({ks}) values({vs}) on duplicate key update {sets}"
165
+ sql = self.iou_sql(table, ks, vs, sets)
166
+ #sql = f"insert into {table}({ks}) values({vs}) on duplicate key update {sets}"
159
167
  return self.execute(sql)
160
168
  if update:
161
169
  keys = set(keys)
@@ -105,6 +105,11 @@ def make(data, table=None, data_keys = "sql_key,sql_def,py_key".split(","), py_n
105
105
  pass
106
106
 
107
107
  class TableObject(Base):
108
+ def clone(self, table_name, py_name = None):
109
+ sql_create = self.sql_create.replace("<table>", table_name)
110
+ sql_delete = self.sql_delete.replace("<table>", table_name)
111
+ obj = TableObject(self.keys, table_name, self.src_py2sqls, self.query_keys, self.auto_translate, self.dv, sql_create, sql_delete, py_name)
112
+ return obj
108
113
  """
109
114
  字段映射
110
115
  keys: 表字段
@@ -115,6 +120,7 @@ class TableObject(Base):
115
120
  对于没有在py2sqls自定义映射的表字段,是否自动转换(py|autoTran<=>auto_tran|sql)
116
121
  """
117
122
  def init(self, keys, table=None, py2sqls=None, query_keys=None, auto_translate=True, dv = None, sql_create=None, sql_delete=None, py_name = None):
123
+ self.src_py2sqls = py2sqls
118
124
  if table is None:
119
125
  table = tls.lower(self.__class__.__name__)
120
126
  self.table = table
@@ -148,11 +154,17 @@ class TableObject(Base):
148
154
  self.sql_delete = sql_delete
149
155
  def create(self, dv=None):
150
156
  assert self.sql_create is not None
157
+ if self.sql_create.find("<table>")>=0:
158
+ print(f"[WARN] not create template table by {self.sql_create}")
159
+ return
151
160
  #print(f"[TESTZ] sql_create: {self.sql_create}")
152
161
  dv = self.rdv(dv)
153
162
  dv.executes(self.sql_create)
154
163
  def delete(self, dv=None):
155
164
  assert self.sql_delete is not None
165
+ if self.sql_delete.find("<table>")>=0:
166
+ print(f"[WARN] not delete template table by {self.sql_delete}")
167
+ return
156
168
  self.rdv(dv).execute(self.sql_delete)
157
169
  def bind(self, dv):
158
170
  self.dv = dv
@@ -165,6 +177,9 @@ class TableObject(Base):
165
177
  obj = tmp
166
178
  obj = {self.py2sqls[k]:v for k,v in obj.items() if k in self.py2sqls}
167
179
  return obj
180
+ def toSqlKeys(self, keys):
181
+ obj = [k for k in keys if k in self.py2sqls]
182
+ return obj
168
183
  def toPy(self, obj):
169
184
  if type(obj)!=dict:
170
185
  tmp = {}
@@ -191,24 +206,28 @@ class TableObject(Base):
191
206
  def filterSql(self, obj):
192
207
  if type(obj)!=dict:
193
208
  tmp = {}
194
- for k in self.py2sqls:
209
+ for k in self.sql2py:
195
210
  if hasattr(obj, k):
196
211
  tmp[k] = getattr(obj, k)
197
212
  obj = tmp
198
213
  obj = {k:v for k,v in obj.items() if k in self.keys}
199
214
  return obj
200
- def save(self, obj, dv=None, py2sql = True, commit=False, check = True):
215
+ def save(self, obj, dv=None, py2sql = True, commit=False, check = True, update_keys = None):
201
216
  dv = self.rdv(dv)
217
+ if type(update_keys)==str:
218
+ update_keys = [update_keys]
202
219
  if type(obj) not in [list, tuple]:
203
220
  obj = [obj]
204
221
  if py2sql:
205
222
  obj = [self.toSql(k) for k in obj]
223
+ if update_keys is not None:
224
+ update_keys = self.toSqlKeys(update_keys)#[self.toSqlKeys(k) for k in update_keys]
206
225
  else:
207
226
  obj = [self.filterSql(k) for k in obj]
208
227
  query_keys = self.query_keys
209
228
  if not check:
210
229
  query_keys = None
211
- _ = [dv.insert_or_update(k, self.table, query_keys) for k in obj]
230
+ _ = [dv.insert_or_update(k, self.table, query_keys, update_keys) for k in obj]
212
231
  if commit:
213
232
  dv.execute("commit")
214
233
  return _
@@ -90,7 +90,10 @@ class Db(SimpleDv):
90
90
  rst = rst[1:]
91
91
  rst = [{k:v for k,v in zip(keys, dt)} for dt in rst]
92
92
  return rst
93
- def insert_or_update(self, maps, table, keys = None):
93
+ def iou_sql(self, table, ks, vs, sets):
94
+ sql = f"insert into {table}({ks}) values({vs}) ON CONFLICT DO UPDATE SET {sets}"
95
+ return sql
96
+ def insert_or_updatexxx(self, maps, table, keys = None, update_keys = None):
94
97
  if type(maps)!=dict:
95
98
  maps = maps.__dict__
96
99
  if keys is None:
@@ -98,7 +101,7 @@ class Db(SimpleDv):
98
101
  if type(keys) not in (list, tuple):
99
102
  keys = [keys]
100
103
  kvs = [[k,tls.py2sql(v)] for k,v in maps.items()]
101
- sets = [f"{k}={v}" for k,v in kvs]
104
+ sets = [f"{k}={v}" for k,v in kvs if update_keys is None or k in update_keys]
102
105
  sets = ",".join(sets)
103
106
  ks = ",".join([kv[0] for kv in kvs])
104
107
  vs = ",".join([str(kv[1]) for kv in kvs])
@@ -193,6 +193,10 @@ class Conf(Base):
193
193
  return self._default_type
194
194
  def get_var(self, key, i = -1):
195
195
  return self.confs.get_var(key, i)
196
+ def set_var(self, key, val):
197
+ return self.confs.set_var(key, val)
198
+ def unset_var(self, key):
199
+ return self.confs.unset_var(key)
196
200
  def var_keys(self):
197
201
  return self.confs.var_keys()
198
202
  def push_var(self, key, val):
@@ -281,6 +281,14 @@ class Confs(Base):
281
281
  def pop_vars(self, vars):
282
282
  if vars is not None:
283
283
  [self.pop_var(key) for key in vars]
284
+ def set_var(self, key, val):
285
+ """
286
+ will remove push datas
287
+ """
288
+ self.vars[key] = [val]
289
+ def unset_var(self, key):
290
+ if key in self.vars:
291
+ del self.vars[key]
284
292
  def push_var(self, key, val):
285
293
  if key not in self.vars:
286
294
  self.vars[key] = []
@@ -228,6 +228,10 @@ class IOCConf(Basez):
228
228
  if hasattr(cls, self.key):
229
229
  return getattr(cls, self.key)
230
230
  return default
231
+ def unset(self, cls):
232
+ if hasattr(cls, self.ckey):
233
+ delattr(cls, self.ckey)
234
+ delattr(cls, self.key)
231
235
  def set(self, cls, dt):
232
236
  setattr(cls, self.key, dt)
233
237
  setattr(cls, self.ckey, cls)
@@ -341,7 +345,7 @@ class IOCObject(Basez):
341
345
  if 'mcalls' in conf and 'call' not in conf:
342
346
  conf['call'] = {'type': "calls", 'calls': conf['mcalls']}
343
347
  conf[g_obj_cid] = decorator.add_datas(conf, self)
344
- g_ioc_conf.set(cls, conf)
348
+ g_ioc_conf.unset(cls)
345
349
  return cls
346
350
 
347
351
  pass
@@ -34,6 +34,8 @@ class MapDeal(lr.LRDeal):
34
34
  opt = arr[i+1]
35
35
  if opt.type != "kv":
36
36
  raise Exception(f"u f opt in map: {opt}")
37
+ if type(k.val)==list:
38
+ k.val = tuple(k.val)
37
39
  rst[k.val] = v.val
38
40
  return item.Item(rst, type='map', is_val = 1)
39
41
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.6.36
3
+ Version: 0.6.37
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
@@ -7,7 +7,7 @@ from setuptools import setup, find_packages
7
7
 
8
8
  setup(
9
9
  name = 'buildz',
10
- version = '0.6.36',
10
+ version = '0.6.37',
11
11
  keywords='buildz',
12
12
  long_description=open('README.md', 'r', encoding="utf-8").read(),
13
13
  long_description_content_type='text/markdown',
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes