buildz 0.7.5__tar.gz → 0.7.7__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 (410) hide show
  1. {buildz-0.7.5/buildz.egg-info → buildz-0.7.7}/PKG-INFO +1 -1
  2. {buildz-0.7.5 → buildz-0.7.7}/buildz/cachez/cache.py +2 -0
  3. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/basez.py +8 -2
  4. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/orm.py +13 -13
  5. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/sqlite3z.py +4 -2
  6. {buildz-0.7.5 → buildz-0.7.7}/buildz/logz.py +4 -4
  7. buildz-0.7.7/buildz/threads/__init__.py +3 -0
  8. buildz-0.7.7/buildz/threads/impl.py +64 -0
  9. buildz-0.7.7/buildz/threads/pool.py +124 -0
  10. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pcxf.pyx +10 -0
  11. {buildz-0.7.5 → buildz-0.7.7/buildz.egg-info}/PKG-INFO +1 -1
  12. {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/SOURCES.txt +3 -0
  13. {buildz-0.7.5 → buildz-0.7.7}/setup.py +1 -1
  14. {buildz-0.7.5 → buildz-0.7.7}/LICENSE +0 -0
  15. {buildz-0.7.5 → buildz-0.7.7}/MANIFEST.in +0 -0
  16. {buildz-0.7.5 → buildz-0.7.7}/README.md +0 -0
  17. {buildz-0.7.5 → buildz-0.7.7}/buildz/__init__.py +0 -0
  18. {buildz-0.7.5 → buildz-0.7.7}/buildz/__main__.py +0 -0
  19. {buildz-0.7.5 → buildz-0.7.7}/buildz/argx.py +0 -0
  20. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/__init__.py +0 -0
  21. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/argz.py +0 -0
  22. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/callz.py +0 -0
  23. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/conf_argz.py +0 -0
  24. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/conf_callz.py +0 -0
  25. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/evalx.py +0 -0
  26. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/init.py +0 -0
  27. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/test.py +0 -0
  28. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/test_call.py +0 -0
  29. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/__init__.py +0 -0
  30. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/argz.py +0 -0
  31. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/build.py +0 -0
  32. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/callz.py +0 -0
  33. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/evalx.py +0 -0
  34. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/test.py +0 -0
  35. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/test_obj.py +0 -0
  36. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/tests/conf.js +0 -0
  37. {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/testx.py +0 -0
  38. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/__init__.py +0 -0
  39. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/cache.py +0 -0
  40. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/config.py +0 -0
  41. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/dbs.py +0 -0
  42. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal.py +0 -0
  43. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal_list.py +0 -0
  44. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal_type.py +0 -0
  45. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/defs.py +0 -0
  46. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/factory.py +0 -0
  47. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/init.py +0 -0
  48. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/log.py +0 -0
  49. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/request.py +0 -0
  50. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/run.py +0 -0
  51. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/save.py +0 -0
  52. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/cache/cache.js +0 -0
  53. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/config/base.js +0 -0
  54. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/config/config.js +0 -0
  55. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/fp.js +0 -0
  56. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/item1.js +0 -0
  57. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/item2.js +0 -0
  58. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/test.js +0 -0
  59. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/test.py +0 -0
  60. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/xtest.py +0 -0
  61. {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/verify.py +0 -0
  62. {buildz-0.7.5 → buildz-0.7.7}/buildz/base.py +0 -0
  63. {buildz-0.7.5 → buildz-0.7.7}/buildz/cachez/__init__.py +0 -0
  64. {buildz-0.7.5 → buildz-0.7.7}/buildz/cmd.py +0 -0
  65. {buildz-0.7.5 → buildz-0.7.7}/buildz/confz.py +0 -0
  66. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/__init__.py +0 -0
  67. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/__main__.py +0 -0
  68. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/__init__.py +0 -0
  69. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/clickhousez.py +0 -0
  70. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/lib/readme +0 -0
  71. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/mysqlz.py +0 -0
  72. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/oraclez.py +0 -0
  73. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/postgresqlz.py +0 -0
  74. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/structz.py +0 -0
  75. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/install.txt +0 -0
  76. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/run.conf +0 -0
  77. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/runz.py +0 -0
  78. {buildz-0.7.5 → buildz-0.7.7}/buildz/db/tls.py +0 -0
  79. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/ioc/deal.py +0 -0
  80. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/ioc/help.py +0 -0
  81. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/myers/deal.py +0 -0
  82. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/myers/help.py +0 -0
  83. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/ioc.js +0 -0
  84. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/main.js +0 -0
  85. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/myers.js +0 -0
  86. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/search.js +0 -0
  87. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/xf.js +0 -0
  88. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/default.js +0 -0
  89. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/ioc.js +0 -0
  90. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/myers.js +0 -0
  91. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/search.js +0 -0
  92. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/xf.js +0 -0
  93. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/test.js +0 -0
  94. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/search/deal.py +0 -0
  95. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/search/help.py +0 -0
  96. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/test.py +0 -0
  97. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/xf/deal.py +0 -0
  98. {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/xf/help.py +0 -0
  99. {buildz-0.7.5 → buildz-0.7.7}/buildz/dz/__init__.py +0 -0
  100. {buildz-0.7.5 → buildz-0.7.7}/buildz/dz/mapz.py +0 -0
  101. {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/__init__.py +0 -0
  102. {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/evalz.py +0 -0
  103. {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/res/default.js +0 -0
  104. {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/test.py +0 -0
  105. {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/__init__.py +0 -0
  106. {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/dirz.py +0 -0
  107. {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/fhs.py +0 -0
  108. {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/fio.py +0 -0
  109. {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/lsf.py +0 -0
  110. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/analyze.py +0 -0
  111. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/demo.py +0 -0
  112. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/report.txt +0 -0
  113. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/take_gpu_mem.py +0 -0
  114. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_atten_demo.py +0 -0
  115. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_linear_demo.py +0 -0
  116. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_multi_demo.py +0 -0
  117. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_resnet_demo.py +0 -0
  118. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/__init__.py +0 -0
  119. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/dict_middle.py +0 -0
  120. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/multi_dict_middle.py +0 -0
  121. {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/seq_middle.py +0 -0
  122. {buildz-0.7.5 → buildz-0.7.7}/buildz/html/__init__.py +0 -0
  123. {buildz-0.7.5 → buildz-0.7.7}/buildz/html/test/demo.html +0 -0
  124. {buildz-0.7.5 → buildz-0.7.7}/buildz/html/test/test.py +0 -0
  125. {buildz-0.7.5 → buildz-0.7.7}/buildz/html/xml.py +0 -0
  126. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/__init__.py +0 -0
  127. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/base.py +0 -0
  128. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/init.py +0 -0
  129. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/base.py +0 -0
  130. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/conf.py +0 -0
  131. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/confs.py +0 -0
  132. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/decorator.py +0 -0
  133. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/loads.py +0 -0
  134. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/single.py +0 -0
  135. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/base.py +0 -0
  136. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/branch.py +0 -0
  137. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/call.py +0 -0
  138. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/calls.py +0 -0
  139. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
  140. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  141. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  142. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  143. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  144. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  145. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  146. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  147. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  148. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  149. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  150. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  151. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  152. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  153. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  154. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  155. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  156. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  157. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  158. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  159. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  160. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
  161. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  162. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  163. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  164. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/deal.py +0 -0
  165. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/demo.py +0 -0
  166. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/env.py +0 -0
  167. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/init.py +0 -0
  168. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ioc.py +0 -0
  169. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/iocf.py +0 -0
  170. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/join.py +0 -0
  171. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/list.py +0 -0
  172. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/map.py +0 -0
  173. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/mcall.py +0 -0
  174. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/obj.py +0 -0
  175. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ovar.py +0 -0
  176. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ref.py +0 -0
  177. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/refs.py +0 -0
  178. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/val.py +0 -0
  179. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/var.py +0 -0
  180. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/xfile.py +0 -0
  181. {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/wrap.py +0 -0
  182. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/__init__.py +0 -0
  183. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/base.py +0 -0
  184. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/base.py +0 -0
  185. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/conf.py +0 -0
  186. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/mg.py +0 -0
  187. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/unit.py +0 -0
  188. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/up.py +0 -0
  189. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/attr.py +0 -0
  190. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/base.py +0 -0
  191. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/call.py +0 -0
  192. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/cvar.py +0 -0
  193. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/deal.py +0 -0
  194. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/env.py +0 -0
  195. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/ioc.py +0 -0
  196. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/method.py +0 -0
  197. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/obj.py +0 -0
  198. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/ref.py +0 -0
  199. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/val.py +0 -0
  200. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/init.py +0 -0
  201. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/__init__.py +0 -0
  202. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/base.py +0 -0
  203. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/builds.py +0 -0
  204. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/confs.py +0 -0
  205. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/datas.py +0 -0
  206. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/dataset.py +0 -0
  207. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/encapes.py +0 -0
  208. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/envs.py +0 -0
  209. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/ids.py +0 -0
  210. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/init.py +0 -0
  211. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/mg.py +0 -0
  212. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/single.py +0 -0
  213. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/sys_envs.py +0 -0
  214. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/tdata.py +0 -0
  215. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/tdict.py +0 -0
  216. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/unit.py +0 -0
  217. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/vars.py +0 -0
  218. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/base.py +0 -0
  219. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/deal.py +0 -0
  220. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/ioc.py +0 -0
  221. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/obj.py +0 -0
  222. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/ref.py +0 -0
  223. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/val.py +0 -0
  224. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/test/test.py +0 -0
  225. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/base.py +0 -0
  226. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/default_wraps.py +0 -0
  227. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/env.py +0 -0
  228. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/obj.py +0 -0
  229. {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/wraps.py +0 -0
  230. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/__init__.py +0 -0
  231. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/__init__.py +0 -0
  232. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/caps.py +0 -0
  233. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/gateway.py +0 -0
  234. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/mhttp.py +0 -0
  235. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/mhttps.py +0 -0
  236. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/proxy.py +0 -0
  237. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/record.py +0 -0
  238. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/__init__.py +0 -0
  239. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/gen.py +0 -0
  240. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/gen.pyi +0 -0
  241. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/__init__.py +0 -0
  242. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/__main__.py +0 -0
  243. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/middle.py +0 -0
  244. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/__main__.py +0 -0
  245. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test.py +0 -0
  246. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test_cli.py +0 -0
  247. {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test_gw.py +0 -0
  248. {buildz-0.7.5 → buildz-0.7.7}/buildz/pathz.py +0 -0
  249. {buildz-0.7.5 → buildz-0.7.7}/buildz/pyz.py +0 -0
  250. {buildz-0.7.5 → buildz-0.7.7}/buildz/tls.py +0 -0
  251. {buildz-0.7.5 → buildz-0.7.7}/buildz/tools.py +0 -0
  252. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/__init__.py +0 -0
  253. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/code.py +0 -0
  254. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/myers_diff.py +0 -0
  255. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/test_xfind.py +0 -0
  256. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/time/__init__.py +0 -0
  257. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/time/timez.py +0 -0
  258. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/__init__.py +0 -0
  259. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/base.py +0 -0
  260. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/getch.py +0 -0
  261. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/lx.py +0 -0
  262. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/test.py +0 -0
  263. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/win.py +0 -0
  264. {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/xfind.py +0 -0
  265. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/__init__.py +0 -0
  266. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/__main__.py +0 -0
  267. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/base.py +0 -0
  268. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/code.py +0 -0
  269. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/Makefile +0 -0
  270. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/README.txt +0 -0
  271. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/clean.py +0 -0
  272. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/base.h +0 -0
  273. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/base_deal.h +0 -0
  274. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/buffer.cpp +0 -0
  275. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/buffer.h +0 -0
  276. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback.h +0 -0
  277. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback_demo.cpp +0 -0
  278. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback_demo.h +0 -0
  279. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/code.cpp +0 -0
  280. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/code.h +0 -0
  281. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/cxf.h +0 -0
  282. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/dict.cpp +0 -0
  283. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/dict.h +0 -0
  284. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/kv.h +0 -0
  285. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/list.cpp +0 -0
  286. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/list.h +0 -0
  287. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/listdict.cpp +0 -0
  288. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/listdict.h +0 -0
  289. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lr.cpp +0 -0
  290. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lr.h +0 -0
  291. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lrval.cpp +0 -0
  292. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lrval.h +0 -0
  293. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/next.cpp +0 -0
  294. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/next.h +0 -0
  295. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/reval.h +0 -0
  296. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/spt.cpp +0 -0
  297. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/spt.h +0 -0
  298. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/str.cpp +0 -0
  299. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/str.h +0 -0
  300. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/exp.h +0 -0
  301. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/init.cpp +0 -0
  302. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/init.h +0 -0
  303. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/item.h +0 -0
  304. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/mg.cpp +0 -0
  305. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/mg.h +0 -0
  306. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/test.cpp +0 -0
  307. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pc.cpp +0 -0
  308. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pc.h +0 -0
  309. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/setup.py +0 -0
  310. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/setup_mingw32.py +0 -0
  311. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/tstcxf.py +0 -0
  312. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/file.py +0 -0
  313. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/Test.java +0 -0
  314. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/all.sh +0 -0
  315. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/Args.java +0 -0
  316. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/Loader.java +0 -0
  317. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/LoaderJNI.java +0 -0
  318. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/cpp/com_buildz_xf_LoaderJNI.h +0 -0
  319. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/cpp/jxf.cpp +0 -0
  320. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/base.py +0 -0
  321. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/buffer.py +0 -0
  322. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/listz.py +0 -0
  323. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/lr.py +0 -0
  324. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/lrval.py +0 -0
  325. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/mapz.py +0 -0
  326. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/nextz.py +0 -0
  327. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/reval.py +0 -0
  328. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/setz.py +0 -0
  329. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/spc.py +0 -0
  330. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/spt.py +0 -0
  331. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/strz.py +0 -0
  332. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/exp.py +0 -0
  333. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/item.py +0 -0
  334. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/mg.py +0 -0
  335. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/pos.py +0 -0
  336. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/base.py +0 -0
  337. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/buffer.py +0 -0
  338. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/listmapz.py +0 -0
  339. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/listz.py +0 -0
  340. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/lr.py +0 -0
  341. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/lrval.py +0 -0
  342. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/mapz.py +0 -0
  343. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/nextz.py +0 -0
  344. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/reval.py +0 -0
  345. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/setz.py +0 -0
  346. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/spt.py +0 -0
  347. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/strz.py +0 -0
  348. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/exp.py +0 -0
  349. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/item.py +0 -0
  350. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/mg.py +0 -0
  351. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/pos.py +0 -0
  352. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/test.py +0 -0
  353. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/test1.py +0 -0
  354. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/base.py +0 -0
  355. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/buffer.py +0 -0
  356. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
  357. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
  358. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
  359. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
  360. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
  361. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
  362. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
  363. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
  364. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
  365. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
  366. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/exp.py +0 -0
  367. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/item.py +0 -0
  368. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/mg.py +0 -0
  369. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/pos.py +0 -0
  370. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/test.py +0 -0
  371. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/test1.py +0 -0
  372. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/mapz.py +0 -0
  373. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/read.py +0 -0
  374. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/readz.py +0 -0
  375. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/readz_nexp.py +0 -0
  376. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/stack.py +0 -0
  377. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/write.py +0 -0
  378. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/base.py +0 -0
  379. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/conf.py +0 -0
  380. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/jsonval.py +0 -0
  381. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/listmapz.py +0 -0
  382. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/listz.py +0 -0
  383. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/mapz.py +0 -0
  384. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/reval.py +0 -0
  385. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/strz.py +0 -0
  386. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/itemz.py +0 -0
  387. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/mg.py +0 -0
  388. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/base.py +0 -0
  389. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/conf.py +0 -0
  390. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/jsonval.py +0 -0
  391. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/listmapz.py +0 -0
  392. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/listz.py +0 -0
  393. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/mapz.py +0 -0
  394. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/reval.py +0 -0
  395. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/strz.py +0 -0
  396. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/itemz.py +0 -0
  397. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/mg.py +0 -0
  398. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/test.py +0 -0
  399. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/testx.py +0 -0
  400. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writez.py +0 -0
  401. {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/xargs.py +0 -0
  402. {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/__init__.py +0 -0
  403. {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/conf.js +0 -0
  404. {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/data.js +0 -0
  405. {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/test.py +0 -0
  406. {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/trs.py +0 -0
  407. {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/dependency_links.txt +0 -0
  408. {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/top_level.txt +0 -0
  409. {buildz-0.7.5 → buildz-0.7.7}/notes/notes.txt +0 -0
  410. {buildz-0.7.5 → buildz-0.7.7}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.7.5
3
+ Version: 0.7.7
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
@@ -172,6 +172,8 @@ class Caches(Base):
172
172
  self.set_currents = cache.set_currents
173
173
  self.set_basedir = cache.set_basedir
174
174
  self.get_basedir = cache.get_basedir
175
+ self.save = cache.save
176
+ self.load = cache.load
175
177
  self.has_file = cache.has
176
178
  self.has_mem = mem.has
177
179
  def get_file(self, key):
@@ -74,6 +74,8 @@ class SimpleDv(ItDv):
74
74
  rst = rst[1:]
75
75
  rst = [{k:v for k,v in zip(keys, dt)} for dt in rst]
76
76
  return rst
77
+ def clone(self):
78
+ return type(self)(self.host, self.port, self.user, sel.pwd, self.db, self.as_map, *self.argv, **self.maps)
77
79
  def __init__(self, host, port, user, pwd, db, as_map=False, *argv, **maps):
78
80
  self.host = host
79
81
  self.port = port
@@ -83,8 +85,12 @@ class SimpleDv(ItDv):
83
85
  self.con = None
84
86
  self.cursor = None
85
87
  self.as_map = as_map
88
+ self.argv = argv
89
+ self.maps = maps
86
90
  self.init(*argv, **maps)
87
91
  def begin(self):
92
+ if self.con is not None:
93
+ return
88
94
  self.con = self.new_con()
89
95
  self.cursor = self.new_cursor()
90
96
  def open(self):
@@ -122,7 +128,7 @@ class SimpleDv(ItDv):
122
128
  if commit:
123
129
  self.cursor.execute("commit;")
124
130
  return tmp
125
- def iou_sql(self, table, ks, vs, sets):
131
+ def iou_sql(self, table, ks, vs, sets, qs):
126
132
  sql = f"insert into {table}({ks}) values({vs}) on duplicate key update {sets}"
127
133
  return sql
128
134
  def insert_or_update(self, maps, table, keys = None, update_keys = None):
@@ -162,7 +168,7 @@ class SimpleDv(ItDv):
162
168
  sets = ",".join(sets)
163
169
  ks = ",".join([kv[0] for kv in kvs])
164
170
  vs = ",".join([str(kv[1]) for kv in kvs])
165
- sql = self.iou_sql(table, ks, vs, sets)
171
+ sql = self.iou_sql(table, ks, vs, sets, keys)
166
172
  #sql = f"insert into {table}({ks}) values({vs}) on duplicate key update {sets}"
167
173
  return self.execute(sql)
168
174
  if update:
@@ -60,7 +60,7 @@ def make(data, table=None, data_keys = "sql_key,sql_def,py_key".split(","), py_n
60
60
  key:
61
61
  table: 表名
62
62
  query_keys: 默认null,orm做插入/更新时,判断数据是插入还是更新的查询方式
63
- auto_translate: 默认true,如果没有配置“转py后字段名”,是否自动转(a_b=>aB)
63
+ auto_translate: 默认false,如果没有配置“转py后字段名”,是否自动转(a_b=>aB)
64
64
  sql_before: 新增一条建表前sql语句
65
65
  sql_after: 新增一条建表后sql语句
66
66
  sql_delete_before: 新增一条删表前sql语句
@@ -78,7 +78,7 @@ def make(data, table=None, data_keys = "sql_key,sql_def,py_key".split(","), py_n
78
78
  elif type(data) == dict:
79
79
  data = dict2list(data)
80
80
  conf = {}
81
- xf.s(conf, sql_before = [], sql_after = [], sql_delete_before=[], sql_delete_after=[],auto_translate=True,table=table,keys=[],py2sqls={},query_keys=None, data_keys = data_keys, vars=[], py_name = py_name)
81
+ xf.s(conf, sql_before = [], sql_after = [], sql_delete_before=[], sql_delete_after=[],auto_translate=False,table=table,keys=[],py2sqls={},query_keys=None, data_keys = data_keys, vars=[], py_name = py_name)
82
82
  for it in data:
83
83
  if len(it)==1 and type(it[0]) in (list, tuple):
84
84
  deal_item(it[0], conf)
@@ -99,7 +99,7 @@ def make(data, table=None, data_keys = "sql_key,sql_def,py_key".split(","), py_n
99
99
  sqls_del = sqls[2]+[sql_del]+sqls[3]
100
100
  sqls = [sqls_crt, sqls_del]
101
101
  sqls = [(";\n".join(k)+";").replace(";;",";") for k in sqls]
102
- obj = TableObject(*xf.g(conf, keys=[], table=table, py2sqls = None, query_keys=None,auto_translate=True), sql_create = sqls[0], sql_delete = sqls[1], py_name = py_name)
102
+ obj = TableObject(*xf.g(conf, keys=[], table=table, py2sqls = None, query_keys=None,auto_translate=False), sql_create = sqls[0], sql_delete = sqls[1], py_name = py_name)
103
103
  return sqls, obj
104
104
 
105
105
  pass
@@ -119,7 +119,7 @@ class TableObject(Base):
119
119
  auto_translate:
120
120
  对于没有在py2sqls自定义映射的表字段,是否自动转换(py|autoTran<=>auto_tran|sql)
121
121
  """
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):
122
+ def init(self, keys, table=None, py2sqls=None, query_keys=None, auto_translate=False, dv = None, sql_create=None, sql_delete=None, py_name = None):
123
123
  self.src_py2sqls = py2sqls
124
124
  if table is None:
125
125
  table = tls.lower(self.__class__.__name__)
@@ -148,7 +148,7 @@ class TableObject(Base):
148
148
  query_keys = []
149
149
  self.query_keys = query_keys
150
150
  self.dv = dv
151
- self.py2sql=self.toSql
151
+ self.py2sql=self.to_sql
152
152
  self.sql2py = self.toPy
153
153
  self.sql_create = sql_create
154
154
  self.sql_delete = sql_delete
@@ -160,7 +160,7 @@ class TableObject(Base):
160
160
  #print(f"[TESTZ] sql_create: {self.sql_create}")
161
161
  dv = self.rdv(dv)
162
162
  dv.executes(self.sql_create)
163
- def delete(self, dv=None):
163
+ def drop(self, dv=None):
164
164
  assert self.sql_delete is not None
165
165
  if self.sql_delete.find("<table>")>=0:
166
166
  print(f"[WARN] not delete template table by {self.sql_delete}")
@@ -168,7 +168,7 @@ class TableObject(Base):
168
168
  self.rdv(dv).execute(self.sql_delete)
169
169
  def bind(self, dv):
170
170
  self.dv = dv
171
- def toSql(self, obj):
171
+ def to_sql(self, obj):
172
172
  if type(obj)!=dict:
173
173
  tmp = {}
174
174
  for k in self.py2sqls:
@@ -177,7 +177,7 @@ class TableObject(Base):
177
177
  obj = tmp
178
178
  obj = {self.py2sqls[k]:v for k,v in obj.items() if k in self.py2sqls}
179
179
  return obj
180
- def toSqlKeys(self, keys):
180
+ def to_sql_keys(self, keys):
181
181
  obj = [k for k in keys if k in self.py2sqls]
182
182
  return obj
183
183
  def toPy(self, obj):
@@ -200,10 +200,10 @@ class TableObject(Base):
200
200
  if sql2py:
201
201
  rst = [self.sql2py(it) for it in rst]
202
202
  return rst
203
- def queryAll(self, dv=None, sql2py=True):
203
+ def query_all(self, dv=None, sql2py=True):
204
204
  sql = f"select * from {self.table};"
205
205
  return self.query(sql, dv, sql2py)
206
- def filterSql(self, obj):
206
+ def filter_sql(self, obj):
207
207
  if type(obj)!=dict:
208
208
  tmp = {}
209
209
  for k in self.sql2py:
@@ -219,11 +219,11 @@ class TableObject(Base):
219
219
  if type(obj) not in [list, tuple]:
220
220
  obj = [obj]
221
221
  if py2sql:
222
- obj = [self.toSql(k) for k in obj]
222
+ obj = [self.to_sql(k) for k in obj]
223
223
  if update_keys is not None:
224
- update_keys = self.toSqlKeys(update_keys)#[self.toSqlKeys(k) for k in update_keys]
224
+ update_keys = self.to_sql_keys(update_keys)#[self.to_sql_keys(k) for k in update_keys]
225
225
  else:
226
- obj = [self.filterSql(k) for k in obj]
226
+ obj = [self.filter_sql(k) for k in obj]
227
227
  query_keys = self.query_keys
228
228
  if not check:
229
229
  query_keys = None
@@ -20,6 +20,8 @@ class Db(SimpleDv):
20
20
  return sqlite3.connect(self.fp)
21
21
  def new_cursor(self):
22
22
  return self.con.cursor()
23
+ def clone(self):
24
+ return Db(self.fp, self.as_map)
23
25
  def __init__(self, fp, as_map=False, *argv, **maps):
24
26
  #def __init__(self, fp):
25
27
  self.con = None
@@ -90,8 +92,8 @@ class Db(SimpleDv):
90
92
  rst = rst[1:]
91
93
  rst = [{k:v for k,v in zip(keys, dt)} for dt in rst]
92
94
  return rst
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
+ def iou_sql(self, table, ks, vs, sets, qs):
96
+ sql = f"insert into {table}({ks}) values({vs}) ON CONFLICT({','.join(qs)}) DO UPDATE SET {sets}"
95
97
  return sql
96
98
  def insert_or_updatexxx(self, maps, table, keys = None, update_keys = None):
97
99
  if type(maps)!=dict:
@@ -88,11 +88,11 @@ def mstr(s):
88
88
  @ns.obj(id="formatLog")
89
89
  @ns.obj_args("ref, buildz.logz.shows, null", "ref, buildz.logz.tag, null", "ref, buildz.logz.format, null")
90
90
  class FormatLog(Log):
91
- def init(self, shows =None, tag=None, format=None, lock = False):
91
+ def init(self, shows =None, tag=None, format=None, base=None, lock = False):
92
92
  if format is None:
93
93
  format = "[{LEVEL}] %Y-%m-%d %H:%M:%S [{tag}] {msg}\n"
94
94
  self.format=format
95
- super().init(shows, tag, lock)
95
+ super().init(shows, tag, base, lock)
96
96
  def output(self, msg):
97
97
  raise Exception("impl")
98
98
  def do_log(self, level, tag, *args):
@@ -107,8 +107,8 @@ class FormatLog(Log):
107
107
  msg = replaces(rst, "{Level}", x_level, "{level}", m_level, "{LEVEL}", u_level, "{tag}", tag, "{msg}", msg)
108
108
  self.output(msg)
109
109
  class FpLog(FormatLog):
110
- def init(self, fp = None,shows =None, tag=None, format=None, lock = False):
111
- super().init(shows, tag, format, lock)
110
+ def init(self, fp = None,shows =None, tag=None, format=None, base=None, lock = False):
111
+ super().init(shows, tag, format, base, lock)
112
112
  self.fp = fp
113
113
  def output(self, msg):
114
114
  #sys.stdout.write(msg)
@@ -0,0 +1,3 @@
1
+ #
2
+ from .pool import *
3
+ from .impl import *
@@ -0,0 +1,64 @@
1
+ #
2
+
3
+ from .pool import *
4
+ import threading
5
+ class FcTask(Task):
6
+ def init(self, fc, args=[], maps={}, fc_exp = None):
7
+ self.fc = fc
8
+ self.args = args
9
+ self.maps = maps
10
+ self.fc_exp = fc_exp
11
+ def run(self):
12
+ return self.fc(*self.args, **self.maps)
13
+ def deal_exp(self, exp):
14
+ if self.fc_exp is not None:
15
+ return self.fc_exp(exp)
16
+ print("FcTask exp:", exp)
17
+ class SimpleTasks(Tasks):
18
+ def init(self, wait_sec = 0.1):
19
+ self.condition = threading.Condition()
20
+ self.tasks = []
21
+ self.wait_sec = wait_sec
22
+ self.wait_count=0
23
+ def waits(self):
24
+ return len(self.tasks)
25
+ def add(self, task):
26
+ with self.condition:
27
+ self.tasks.append(task)
28
+ if self.wait_count>0:
29
+ self.condition.notify(1)
30
+ def pop(self):
31
+ with self.condition:
32
+ if len(self.tasks)==0:
33
+ self.wait_count+=1
34
+ self.condition.wait(self.wait_sec)
35
+ self.wait_count-=1
36
+ if len(self.tasks)==0:
37
+ return None
38
+ return self.tasks.pop(0)
39
+ class RangeManager(WorkerManager):
40
+ def init(self, vmin=0, vmax=-1):
41
+ self.min = vmin
42
+ self.max = vmax
43
+ def change(self, workers, tasks, first_call):
44
+ waits = tasks.waits()
45
+ curr = len(workers)
46
+ if curr<self.min:
47
+ return self.min-curr
48
+ if self.max>0 and curr>self.max:
49
+ return self.max-curr
50
+ frees = len([wk for wk in workers if wk.wait_count>1])
51
+ needs = waits-frees
52
+ rst = curr+needs
53
+ if needs==0:
54
+ return 0
55
+ if needs>0:
56
+ if self.max>0 and rst>self.max:
57
+ needs = self.max-curr
58
+ return needs
59
+ else:
60
+ if rst<self.min:
61
+ needs = self.min-curr
62
+ return needs
63
+
64
+ pass
@@ -0,0 +1,124 @@
1
+
2
+ import threading,time
3
+ from .. import Base
4
+ class Task(Base):
5
+ def run(self):
6
+ pass
7
+ def deal_exp(self, exp):
8
+ pass
9
+ class BasePool(Base):
10
+ def check_run(self):
11
+ return False
12
+ def get_task(self):
13
+ return None
14
+ class Worker(Base):
15
+ def id(self):
16
+ return threading.get_ident()
17
+ def init(self, pool):
18
+ self.pool = pool
19
+ self.running = False
20
+ self.do_run = False
21
+ self.wait_time=0
22
+ self.wait_count = 0
23
+ self.work_time=0
24
+ self.th = None
25
+ def start(self):
26
+ self.th = threading.Thread(target=self.run,daemon=True)
27
+ self.th.start()
28
+ def safe_stop(self):
29
+ self.do_run=False
30
+ def work_rate(self):
31
+ return self.work_time/(self.work_time+self.wait_time+1e-4)
32
+ def run(self):
33
+ self.wait_time=0
34
+ self.work_time=0
35
+ self.wait_count=0
36
+ self.running = True
37
+ self.do_run = True
38
+ while self.do_run and self.pool.check_run():
39
+ start = time.time()
40
+ task = self.pool.get_task()
41
+ task_start = time.time()
42
+ if task is None:
43
+ self.wait_time+=task_start-start
44
+ self.wait_count+=1
45
+ continue
46
+ self.wait_count=0
47
+ try:
48
+ task.run()
49
+ except Exception as exp:
50
+ try:
51
+ task.deal_exp(exp)
52
+ except Exception as _exp:
53
+ print(f"deal_exp on {exp} get except: {_exp}")
54
+ finish = time.time()
55
+ self.wait_time+=task_start-start
56
+ self.work_time+=finish-task_start
57
+ self.running = False
58
+
59
+ pass
60
+ class Tasks(Base):
61
+ def waits(self):
62
+ return 0
63
+ def add(self, task):
64
+ pass
65
+ def pop(self):
66
+ return None
67
+ class WorkerManager(Base):
68
+ def change(self, workers, tasks, first_call=False):
69
+ return 0
70
+
71
+ pass
72
+ class Pool(BasePool):
73
+ def check_run(self):
74
+ return self.running
75
+ def get_task(self):
76
+ return self.tasks.pop()
77
+ def init(self, tasks, manager):
78
+ self.running = False
79
+ self.workers = []
80
+ self.stops = []
81
+ self.manager = manager
82
+ self.tasks = tasks
83
+ def start(self):
84
+ if self.running:
85
+ return
86
+ self.running = True
87
+ for wk in self.workers:
88
+ wk.safe_stop()
89
+ self.stops.append(wk)
90
+ self.workers = []
91
+ self.clean_stops()
92
+ self.change_workers(True)
93
+ def change_workers(self, first=False):
94
+ num = self.manager.change(self.workers, self.tasks, first)
95
+ if num==0:
96
+ return
97
+ if num>0:
98
+ for i in range(num):
99
+ worker = Worker(self)
100
+ worker.start()
101
+ self.workers.append(worker)
102
+ else:
103
+ for i in range(-num):
104
+ worker = self.workers.pop()
105
+ worker.safe_stop()
106
+ self.stops.append(worker)
107
+ def clean_stops(self):
108
+ self.stops = [wk for wk in self.stops if wk.running]
109
+ def check_finish(self):
110
+ for k in self.workers:
111
+ if k.running:
112
+ return False
113
+ for k in self.stops:
114
+ if k.running:
115
+ return False
116
+ return True
117
+ def stop(self):
118
+ self.running = False
119
+ def add_task(self, task):
120
+ self.tasks.add(task)
121
+ if self.running:
122
+ self.change_workers()
123
+
124
+ pass
@@ -54,6 +54,13 @@ cdef object fCreate(int type, void* dt, int ival)noexcept:
54
54
  return Args(list(),dict())
55
55
  return None
56
56
  pass
57
+ def fetchArgs(val):
58
+ if type(val)==Args:
59
+ if val.size()==len(val.lists):
60
+ val = val.lists
61
+ elif val.size()==len(val.dicts):
62
+ val = val.dicts
63
+ return val
57
64
  cdef void fListAdd(object lst, object data)noexcept:
58
65
  #print("fListAdd:", lst, data)
59
66
  lst.append(data)
@@ -61,6 +68,7 @@ cdef void fListAddx(object lst, object data)noexcept:
61
68
  #print("fListAdd:", lst, data)
62
69
  if type(lst)==Args:
63
70
  lst = lst.args
71
+ data = fetchArgs(data)
64
72
  lst.append(data)
65
73
  cdef void fMapSet(object map, object key, object val)noexcept:
66
74
  #print("fMapSet:", map, key, val)
@@ -71,6 +79,8 @@ cdef void fMapSetx(object map, object key, object val)noexcept:
71
79
  #print("fMapSet:", map, key, val)
72
80
  if type(map)==Args:
73
81
  map = map.maps
82
+ key = fetchArgs(key)
83
+ val = fetchArgs(val)
74
84
  if type(key)==list:
75
85
  key = tuple(key)
76
86
  map[key]=val
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.7.5
3
+ Version: 0.7.7
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
@@ -246,6 +246,9 @@ buildz/netz/test/__main__.py
246
246
  buildz/netz/test/test.py
247
247
  buildz/netz/test/test_cli.py
248
248
  buildz/netz/test/test_gw.py
249
+ buildz/threads/__init__.py
250
+ buildz/threads/impl.py
251
+ buildz/threads/pool.py
249
252
  buildz/tz/__init__.py
250
253
  buildz/tz/code.py
251
254
  buildz/tz/myers_diff.py
@@ -7,7 +7,7 @@ from setuptools import setup, find_packages
7
7
 
8
8
  setup(
9
9
  name = 'buildz',
10
- version = '0.7.5',
10
+ version = '0.7.7',
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