kcwebs 3.14__tar.gz → 3.16__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 (42) hide show
  1. {kcwebs-3.14 → kcwebs-3.16}/PKG-INFO +2 -2
  2. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/__init__.py +1 -1
  3. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/utill/queues.py +27 -27
  4. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/PKG-INFO +2 -2
  5. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/requires.txt +4 -4
  6. {kcwebs-3.14 → kcwebs-3.16}/README.md +0 -0
  7. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/common/__init__.py +0 -0
  8. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/common/autoload.py +0 -0
  9. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/common/session.py +0 -0
  10. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/config/__init__.py +0 -0
  11. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/kcwebs.py +0 -0
  12. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/__init__.py +0 -0
  13. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/__init__.py +0 -0
  14. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/common/__init__.py +0 -0
  15. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/common/autoload.py +0 -0
  16. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/__init__.py +0 -0
  17. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/__init__.py +0 -0
  18. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/__init__.py +0 -0
  19. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/autoload.py +0 -0
  20. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/html/include/static.html +0 -0
  21. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/common/model.py +0 -0
  22. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/index.py +0 -0
  23. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/home.html +0 -0
  24. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/api/controller/index/tpl/index/index.html +0 -0
  25. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/common/__init__.py +0 -0
  26. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/common/autoload.py +0 -0
  27. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/common/html/include/static.html +0 -0
  28. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/common/model.py +0 -0
  29. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/config/__init__.py +0 -0
  30. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/config/app.py +0 -0
  31. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/config/database.py +0 -0
  32. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/config/other.py +0 -0
  33. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/app/config/redis.py +0 -0
  34. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/tempfile/kcwebs/server.py +0 -0
  35. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/utill/db/model.py +0 -0
  36. {kcwebs-3.14 → kcwebs-3.16}/kcwebs/utill/db/mongodb.py +0 -0
  37. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/SOURCES.txt +0 -0
  38. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/dependency_links.txt +0 -0
  39. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/entry_points.txt +0 -0
  40. {kcwebs-3.14 → kcwebs-3.16}/kcwebs.egg-info/top_level.txt +0 -0
  41. {kcwebs-3.14 → kcwebs-3.16}/setup.cfg +0 -0
  42. {kcwebs-3.14 → kcwebs-3.16}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: kcwebs
3
- Version: 3.14
3
+ Version: 3.16
4
4
  Summary: kcwebs作为web开发而设计的高性能框架
5
5
  Home-page: https://docs.kwebapp.cn/index/index/2
6
6
  Author: 百里-坤坤
@@ -9,5 +9,5 @@ Maintainer: 坤坤
9
9
  Maintainer-email: fk1402936534@qq.com
10
10
  License: MIT License
11
11
  Description: kcwebs作为web开发而设计的高性能框架,采用全新的架构思想,注重易用性。遵循MIT开源许可协议发布,意味着个人和企业可以免费使用kcwebs,甚至允许把你基于kcwebs开发的应用开源或商业产品发布或销售。完整文档请访问:https://docs.kwebapp.cn/index/index/2
12
- Keywords: kcwebs3.14
12
+ Keywords: kcwebs3.16
13
13
  Platform: UNKNOWN
@@ -1,5 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- __version__ = '3.14'
2
+ __version__ = '3.16'
3
3
 
4
4
  kcwebsinfo={}
5
5
  kcwebsinfo['name']='kcwebs' #项目的名称
@@ -32,7 +32,7 @@ class Queues():
32
32
  model_kcwebs_tasks=model_kcwebs_task()
33
33
  model_kcwebs_tasks.create_table()
34
34
  try:
35
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").find()
35
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").find()
36
36
  except:
37
37
  model_kcwebs_tasks=model_kcwebs_task()
38
38
  model_kcwebs_tasks.create_table()
@@ -45,7 +45,7 @@ class Queues():
45
45
  model_kcwebs_tasks=model_kcwebs_task()
46
46
  model_kcwebs_tasks.create_table()
47
47
  try:
48
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").find()
48
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").find()
49
49
  except:
50
50
  model_kcwebs_tasks=model_kcwebs_task()
51
51
  model_kcwebs_tasks.create_table()
@@ -55,8 +55,8 @@ class Queues():
55
55
  t.start()
56
56
  def _messagequeueprocess(processglobalqueue):
57
57
  """不支持外部调用"""
58
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code=2 and updtime<"+str(int(time.time())-86400*7)).delete()
59
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code=3 and updtime<"+str(int(time.time())-1200)).delete()
58
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code=2 and updtime<"+str(int(time.time())-86400*7)).delete()
59
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code=3 and updtime<"+str(int(time.time())-1200)).delete()
60
60
  pid = os.getpid()
61
61
  pdfile=os.path.split(os.path.realpath(__file__))[0][:-6]+'/pid/queues_pid_'+str(pid) #pid存放文件
62
62
  f=open(pdfile,'w')
@@ -65,62 +65,62 @@ class Queues():
65
65
  while True:
66
66
  if not processglobalqueue.empty():
67
67
  value=processglobalqueue.get()
68
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":3,"error":""})
68
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":3,"error":""})
69
69
  if value['args']:
70
70
  try:
71
71
  value['target'](*value['args'])
72
72
  except:
73
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
73
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
74
74
  else:
75
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
75
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
76
76
  else:
77
77
  try:
78
78
  value['target']()
79
79
  except:
80
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
80
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
81
81
  else:
82
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
82
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
83
83
  else:
84
84
  time.sleep(0.01)
85
85
  def __messagequeue():
86
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code=2 and updtime<"+str(int(time.time())-86400*7)).delete()
87
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code=3 and updtime<"+str(int(time.time())-1200)).delete()
86
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code=2 and updtime<"+str(int(time.time())-86400*7)).delete()
87
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code=3 and updtime<"+str(int(time.time())-1200)).delete()
88
88
  while True:
89
89
  if not Queues.__globalqueue.empty():
90
90
  value=Queues.__globalqueue.get()
91
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":3,"error":""})
91
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":3,"error":""})
92
92
  if value['args']:
93
93
  try:
94
94
  value['target'](*value['args'])
95
95
  except:
96
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
96
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
97
97
  else:
98
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
98
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
99
99
  else:
100
100
  try:
101
101
  value['target']()
102
102
  except:
103
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
103
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":1,'endtime':int(time.time()),'updtime':int(time.time()),"error":str(traceback.format_exc())})
104
104
  else:
105
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
105
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid = '"+value['task']['taskid']+"' and code!=4").update({"code":4,"start":100,'endtime':int(time.time()),'updtime':int(time.time())})
106
106
  else:
107
107
  time.sleep(0.01)
108
108
  def delhist():
109
109
  """清除任务历史记录(包括 成功的 失败的 已完成的)"""
110
- return kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code","in",0,1,4).delete()
110
+ return kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code","in",0,1,4).delete()
111
111
  def delwhere(where):
112
112
  "通过where条件删除 (不推荐使用)"
113
- return kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where(where).delete()
113
+ return kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where(where).delete()
114
114
  def seltitle(title):
115
115
  "通过标题查询 (不推荐使用)"
116
116
  try:
117
- return kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("title='"+title+"'").select()
117
+ return kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("title='"+title+"'").select()
118
118
  except:
119
119
  return ''
120
120
  def setfield(taskid,key,value):
121
121
  """设置指定字段(不建议使用)"""
122
122
  try:
123
- return kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid",taskid).update({key:value})
123
+ return kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid",taskid).update({key:value})
124
124
  except:
125
125
  return False
126
126
  def setstart(taskid,start=0.001,describes=None):
@@ -129,7 +129,7 @@ class Queues():
129
129
  start 支持0.001到10
130
130
  """
131
131
  if start>=0.001 and start<=10:
132
- arr=kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid",taskid).find()
132
+ arr=kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid",taskid).find()
133
133
  if arr:
134
134
  start+=round(float(arr['start']),3)
135
135
  if start>=0.01 and start <=99.99:
@@ -139,7 +139,7 @@ class Queues():
139
139
  upddate={"start":start,'starts':starts,'updtime':int(time.time())}
140
140
  if describes:
141
141
  upddate['describes']=describes
142
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid",taskid).update(upddate)
142
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid",taskid).update(upddate)
143
143
  return True
144
144
  else:
145
145
  return False
@@ -184,7 +184,7 @@ class Queues():
184
184
  updtime=ttt
185
185
  task={"taskid":taskid,"title":title,"describes":describes,"code":2,"msg":msg,"error":"","start":start,"end":end,"addtime":ttt,'starts':0,'endtime':0,'updtime':updtime}
186
186
  key={"target":target,"args":args,"task":task}
187
- kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").insert(task)
187
+ kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").insert(task)
188
188
  if types=='process':
189
189
  Queues.__processglobalqueue.put(key)
190
190
  else:
@@ -201,8 +201,8 @@ class Queues():
201
201
  model_kcwebs_tasks=model_kcwebs_task()
202
202
  model_kcwebs_tasks.create_table()
203
203
  try:
204
- lists=kcwsqlite.sqlite.connect(queuesdbpath).where(where).table("model_kcwebs_queues").order("id desc").page(pagenow,pagesize).select()
205
- count=kcwsqlite.sqlite.connect(queuesdbpath).where(where).table("model_kcwebs_queues").count()
204
+ lists=kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).where(where).table("model_kcwebs_queues").order("id desc").page(pagenow,pagesize).select()
205
+ count=kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).where(where).table("model_kcwebs_queues").count()
206
206
  return lists,count
207
207
  except:
208
208
  model_kcwebs_tasks=model_kcwebs_task()
@@ -215,7 +215,7 @@ class Queues():
215
215
 
216
216
  return dict
217
217
  """
218
- arr=kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("taskid",taskid).find()
218
+ arr=kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("taskid",taskid).find()
219
219
  if arr:
220
220
  arr['start']=float(arr['start'])
221
221
  dqsjc=arr['updtime']-arr['addtime']
@@ -232,7 +232,7 @@ class Queues():
232
232
 
233
233
  return Boolean
234
234
  """
235
- if kcwsqlite.sqlite.connect(queuesdbpath).table("model_kcwebs_queues").where("code","in",2,3).count():
235
+ if kcwsqlite.sqlite.connect(queuesdbpath,th_lock=True).table("model_kcwebs_queues").where("code","in",2,3).count():
236
236
  return True
237
237
  else:
238
238
  return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.2
2
2
  Name: kcwebs
3
- Version: 3.14
3
+ Version: 3.16
4
4
  Summary: kcwebs作为web开发而设计的高性能框架
5
5
  Home-page: https://docs.kwebapp.cn/index/index/2
6
6
  Author: 百里-坤坤
@@ -9,5 +9,5 @@ Maintainer: 坤坤
9
9
  Maintainer-email: fk1402936534@qq.com
10
10
  License: MIT License
11
11
  Description: kcwebs作为web开发而设计的高性能框架,采用全新的架构思想,注重易用性。遵循MIT开源许可协议发布,意味着个人和企业可以免费使用kcwebs,甚至允许把你基于kcwebs开发的应用开源或商业产品发布或销售。完整文档请访问:https://docs.kwebapp.cn/index/index/2
12
- Keywords: kcwebs3.14
12
+ Keywords: kcwebs3.16
13
13
  Platform: UNKNOWN
@@ -1,7 +1,7 @@
1
- kcws>=3.14
2
- kcwmysql>=3.14
3
- kcwsqlite>=3.14
4
- kcwhttp>=3.14
1
+ kcws>=3.16
2
+ kcwmysql>=3.16
3
+ kcwsqlite>=3.16
4
+ kcwhttp>=3.16
5
5
  python-dateutil==2.9.0
6
6
  pymongo==3.10.0
7
7
  Mako==1.3.6
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