lesscode-flask 0.2.113__tar.gz → 0.2.115__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.
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/PKG-INFO +2 -2
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/__init__.py +1 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/thread/thread_utils.py +12 -6
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/PKG-INFO +2 -2
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/requires.txt +1 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/clickhouse.py +0 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/dameng.py +0 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/kingbase.py +0 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/mysql.py +0 -1
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/README.md +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/app.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/db/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/db/datasource.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/db/executor.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/export_data/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/export_data/data_download_handler.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/log/access_log_handler.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/access_log.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/base_model.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/parameterized_query.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/resource_param_template.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/response_result.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/user.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/user_limit_policy.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/service/access_log_service.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/service/base_service.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/service/resource_param_template_service.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/setting/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/setup/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/signals.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/static/swagger.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/cache.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/sql_injection.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/swagger.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/dify_utils.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/file/file_exporter.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/file/file_utils.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/fs_util.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/helpers.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/consecutive/consecutive_limiter_handler.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/consecutive/redis_consecutive_limiter.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/limit_util.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/req/rate_limiter_handler.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/req/redis_rate_limiter.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/req_count/count_limiter_handler.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/limit/req_count/redis_count_limiter.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/oss/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/oss/aliyun_oss.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/oss/minio_oss.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/redis/redis_helper.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/request/request.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/sign/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/sign/body_canonical.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/sign/sign_main.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/sign/signature.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/swagger/swagger_util.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/task/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/task/task_helper.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/wsgi.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/SOURCES.txt +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/dependency_links.txt +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/top_level.txt +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/elasticsearch.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/query_runner/pg.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/settings/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/settings/helpers.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/utils/__init__.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/redash/utils/requests_session.py +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/setup.cfg +0 -0
- {lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lesscode-flask
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.115
|
|
4
4
|
Summary: lesscode-flask 是基于flask的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
|
|
5
5
|
Home-page: https://lesscode-flask
|
|
6
6
|
Author: Chao.yy
|
|
@@ -11,7 +11,7 @@ Classifier: Operating System :: OS Independent
|
|
|
11
11
|
Requires-Python: >=3.9
|
|
12
12
|
Description-Content-Type: text/markdown
|
|
13
13
|
Requires-Dist: Flask==3.0.3
|
|
14
|
-
Requires-Dist: lesscode-utils==0.0.
|
|
14
|
+
Requires-Dist: lesscode-utils==0.0.96
|
|
15
15
|
Requires-Dist: Flask-Login==0.6.3
|
|
16
16
|
Requires-Dist: redis==5.1.1
|
|
17
17
|
Requires-Dist: flask-swagger-ui==4.11.1
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/thread/thread_utils.py
RENAMED
|
@@ -12,7 +12,7 @@ class FlaskThread:
|
|
|
12
12
|
self.name = name or target.__name__
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
def wrapper(_func, _args, _kwargs, _result: list = None, _lock=None,
|
|
15
|
+
def wrapper(_func, _args, _kwargs, _result: list = None, _lock=None, _exception: list = None):
|
|
16
16
|
@copy_current_request_context
|
|
17
17
|
def _thread_func():
|
|
18
18
|
try:
|
|
@@ -24,8 +24,8 @@ def wrapper(_func, _args, _kwargs, _result: list = None, _lock=None, _is_throw_e
|
|
|
24
24
|
else:
|
|
25
25
|
_result.append(res)
|
|
26
26
|
except Exception as e:
|
|
27
|
-
if
|
|
28
|
-
|
|
27
|
+
if isinstance(_exception, list):
|
|
28
|
+
_exception.append(e)
|
|
29
29
|
else:
|
|
30
30
|
if _result is not None and isinstance(_result, list):
|
|
31
31
|
if _lock:
|
|
@@ -41,6 +41,7 @@ def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=Tr
|
|
|
41
41
|
results = []
|
|
42
42
|
threads = []
|
|
43
43
|
result_locks = []
|
|
44
|
+
exceptions = []
|
|
44
45
|
name_list = []
|
|
45
46
|
for obj in func_list:
|
|
46
47
|
target = obj.target
|
|
@@ -49,6 +50,7 @@ def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=Tr
|
|
|
49
50
|
_name = obj.name
|
|
50
51
|
name_list.append(_name)
|
|
51
52
|
result = []
|
|
53
|
+
exception = []
|
|
52
54
|
if is_lock:
|
|
53
55
|
lock = threading.Lock()
|
|
54
56
|
result_locks.append(lock)
|
|
@@ -56,22 +58,26 @@ def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=Tr
|
|
|
56
58
|
lock = None
|
|
57
59
|
result_locks.append(lock)
|
|
58
60
|
thread_func = wrapper(_func=target, _args=args, _kwargs=kwargs, _result=result, _lock=lock,
|
|
59
|
-
|
|
61
|
+
_exception=exception)
|
|
60
62
|
t = threading.Thread(target=thread_func)
|
|
61
63
|
threads.append(t)
|
|
62
64
|
results.append(result)
|
|
65
|
+
exceptions.append(exception)
|
|
63
66
|
t.start()
|
|
64
67
|
|
|
65
68
|
for t in threads:
|
|
66
69
|
t.join()
|
|
70
|
+
if is_throw_error:
|
|
71
|
+
if isinstance(exceptions, list) and any(exceptions):
|
|
72
|
+
raise exceptions[0][0]
|
|
67
73
|
|
|
68
74
|
final_results = []
|
|
69
75
|
for result, lock in zip(results, result_locks):
|
|
70
76
|
if is_lock:
|
|
71
77
|
with lock:
|
|
72
|
-
final_results.append(result[0])
|
|
78
|
+
final_results.append(result[0] if result else None)
|
|
73
79
|
else:
|
|
74
|
-
final_results.append(result[0])
|
|
80
|
+
final_results.append(result[0] if result else None)
|
|
75
81
|
if return_type == "list":
|
|
76
82
|
return final_results
|
|
77
83
|
else:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lesscode-flask
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.115
|
|
4
4
|
Summary: lesscode-flask 是基于flask的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
|
|
5
5
|
Home-page: https://lesscode-flask
|
|
6
6
|
Author: Chao.yy
|
|
@@ -11,7 +11,7 @@ Classifier: Operating System :: OS Independent
|
|
|
11
11
|
Requires-Python: >=3.9
|
|
12
12
|
Description-Content-Type: text/markdown
|
|
13
13
|
Requires-Dist: Flask==3.0.3
|
|
14
|
-
Requires-Dist: lesscode-utils==0.0.
|
|
14
|
+
Requires-Dist: lesscode-utils==0.0.96
|
|
15
15
|
Requires-Dist: Flask-Login==0.6.3
|
|
16
16
|
Requires-Dist: redis==5.1.1
|
|
17
17
|
Requires-Dist: flask-swagger-ui==4.11.1
|
|
@@ -257,7 +257,6 @@ class Mysql(BaseSQLQueryRunner):
|
|
|
257
257
|
try:
|
|
258
258
|
connection = self._connection()
|
|
259
259
|
cursor = connection.cursor()
|
|
260
|
-
logger.debug("MySQL running query: %s", query)
|
|
261
260
|
cursor.execute(query)
|
|
262
261
|
except (KeyboardInterrupt, InterruptException):
|
|
263
262
|
self._cancel(thread_id)
|
|
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
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/parameterized_query.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/model/resource_param_template.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/service/access_log_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/decorator/sql_injection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/file/file_exporter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/json/NotSortJSONProvider.py
RENAMED
|
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
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/redis/redis_helper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/sign/body_canonical.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/swagger/swagger_template.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask/utils/swagger/swagger_util.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.113 → lesscode_flask-0.2.115}/lesscode_flask.egg-info/dependency_links.txt
RENAMED
|
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
|