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.
- {buildz-0.7.5/buildz.egg-info → buildz-0.7.7}/PKG-INFO +1 -1
- {buildz-0.7.5 → buildz-0.7.7}/buildz/cachez/cache.py +2 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/basez.py +8 -2
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/orm.py +13 -13
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/sqlite3z.py +4 -2
- {buildz-0.7.5 → buildz-0.7.7}/buildz/logz.py +4 -4
- buildz-0.7.7/buildz/threads/__init__.py +3 -0
- buildz-0.7.7/buildz/threads/impl.py +64 -0
- buildz-0.7.7/buildz/threads/pool.py +124 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pcxf.pyx +10 -0
- {buildz-0.7.5 → buildz-0.7.7/buildz.egg-info}/PKG-INFO +1 -1
- {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/SOURCES.txt +3 -0
- {buildz-0.7.5 → buildz-0.7.7}/setup.py +1 -1
- {buildz-0.7.5 → buildz-0.7.7}/LICENSE +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/MANIFEST.in +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/README.md +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/__main__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/argz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/callz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/conf_argz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/conf_callz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/evalx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz/test_call.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/argz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/build.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/callz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/evalx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/test_obj.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/tests/conf.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/argz_bk/testx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/cache.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/config.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/dbs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal_list.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/deal_type.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/defs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/factory.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/log.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/request.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/run.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/save.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/cache/cache.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/config/base.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/config/config.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/fp.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/item1.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/item2.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/res/data/test.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/test/xtest.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/auto/verify.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/cachez/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/cmd.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/confz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/__main__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/clickhousez.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/lib/readme +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/mysqlz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/oraclez.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/postgresqlz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/dv/structz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/install.txt +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/run.conf +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/runz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/db/tls.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/ioc/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/ioc/help.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/myers/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/myers/help.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/ioc.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/main.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/myers.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/search.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/conf/xf.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/default.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/ioc.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/myers.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/search.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/help/xf.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/res/test.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/search/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/search/help.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/xf/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/demo/xf/help.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/dz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/dz/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/evalz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/res/default.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/evalz/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/dirz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/fhs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/fio.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/fz/lsf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/analyze.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/report.txt +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/take_gpu_mem.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_atten_demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_linear_demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_multi_demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/test/test_resnet_demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/dict_middle.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/multi_dict_middle.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/gpuz/torch/seq_middle.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/html/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/html/test/demo.html +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/html/test/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/html/xml.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/conf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/confs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/decorator.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/loads.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc/single.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/branch.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/call.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/calls.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/demo.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/env.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ioc.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/iocf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/join.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/list.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/map.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/mcall.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/obj.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ovar.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/ref.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/refs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/val.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/var.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/ioc_deal/xfile.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/ioc/wrap.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/conf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/unit.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf/up.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/attr.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/call.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/cvar.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/env.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/ioc.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/method.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/obj.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/ref.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/conf_deal/val.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/builds.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/confs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/datas.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/dataset.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/encapes.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/envs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/ids.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/init.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/single.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/sys_envs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/tdata.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/tdict.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/unit.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc/vars.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/deal.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/ioc.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/obj.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/ref.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/ioc_deal/val.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/test/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/default_wraps.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/env.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/obj.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/iocz/wrap/wraps.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/caps.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/gateway.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/mhttp.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/mhttps.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/proxy.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/mhttp/record.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/gen.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/sslz/gen.pyi +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/__main__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/tcp/middle.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/__main__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test_cli.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/netz/test/test_gw.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/pathz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/pyz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tls.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tools.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/code.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/myers_diff.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/test_xfind.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/time/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/time/timez.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/getch.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/lx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/tio/win.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/tz/xfind.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/__main__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/code.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/Makefile +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/README.txt +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/clean.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/base.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/base_deal.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/buffer.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/buffer.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback_demo.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/callback_demo.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/code.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/code.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/cxf.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/dict.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/dict.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/kv.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/list.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/list.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/listdict.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/listdict.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lr.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lr.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lrval.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/lrval.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/next.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/next.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/reval.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/spt.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/spt.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/str.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/deal/str.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/exp.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/init.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/init.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/item.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/mg.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/mg.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/loaderz/test.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pc.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/pc.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/setup.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/setup_mingw32.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/cpp/tstcxf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/file.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/Test.java +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/all.sh +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/Args.java +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/Loader.java +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/LoaderJNI.java +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/cpp/com_buildz_xf_LoaderJNI.h +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/java/com/buildz/xf/cpp/jxf.cpp +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/buffer.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/listz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/lr.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/lrval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/nextz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/reval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/setz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/spc.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/spt.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/deal/strz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/exp.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/item.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loader/pos.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/buffer.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/listmapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/listz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/lr.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/lrval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/nextz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/reval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/setz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/spt.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/deal/strz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/exp.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/item.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/pos.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz/test1.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/buffer.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/exp.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/item.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/pos.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/loaderz_nexp/test1.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/read.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/readz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/readz_nexp.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/stack.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/write.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/conf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/jsonval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/listmapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/listz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/reval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/deal/strz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/itemz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writer/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/base.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/conf.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/jsonval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/listmapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/listz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/mapz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/reval.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/deal/strz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/itemz.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/mg.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writerz/testx.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/writez.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xf/xargs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/__init__.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/conf.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/data.js +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/test.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz/xz/trs.py +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/dependency_links.txt +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/buildz.egg-info/top_level.txt +0 -0
- {buildz-0.7.5 → buildz-0.7.7}/notes/notes.txt +0 -0
- {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.
|
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: 默认
|
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=
|
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=
|
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=
|
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.
|
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
|
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
|
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
|
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
|
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
|
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.
|
222
|
+
obj = [self.to_sql(k) for k in obj]
|
223
223
|
if update_keys is not None:
|
224
|
-
update_keys = self.
|
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.
|
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,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.
|
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
|
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
|