lesscode-flask 0.2.48__tar.gz → 0.2.51__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.48 → lesscode_flask-0.2.51}/PKG-INFO +2 -2
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/__init__.py +1 -1
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/log/access_log_handler.py +1 -1
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/setup/__init__.py +1 -1
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/thread/thread_utils.py +11 -3
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask.egg-info/PKG-INFO +2 -2
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask.egg-info/requires.txt +1 -1
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/README.md +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/app.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/db/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/db/datasource.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/db/executor.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/export_data/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/export_data/data_download_handler.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/access_log.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/base_model.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/parameterized_query.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/resource_param_template.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/response_result.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/user.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/user_limit_policy.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/service/access_log_service.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/service/base_service.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/service/resource_param_template_service.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/setting/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/signals.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/static/swagger.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/decorator/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/decorator/cache.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/decorator/sql_injection.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/decorator/swagger.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/dify_utils.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/file/file_exporter.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/file/file_utils.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/fs_util.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/helpers.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/consecutive/consecutive_limiter_handler.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/consecutive/redis_consecutive_limiter.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/limit_util.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/req/rate_limiter_handler.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/req/redis_rate_limiter.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/req_count/count_limiter_handler.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/req_count/redis_count_limiter.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/oss/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/oss/aliyun_oss.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/oss/minio_oss.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/redis/redis_helper.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/request/request.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/swagger/swagger_util.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/task/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/task/task_helper.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/wsgi.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask.egg-info/SOURCES.txt +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask.egg-info/dependency_links.txt +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask.egg-info/top_level.txt +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/clickhouse.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/elasticsearch.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/kingbase.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/mysql.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/query_runner/pg.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/settings/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/settings/helpers.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/utils/__init__.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/redash/utils/requests_session.py +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/setup.cfg +0 -0
- {lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/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.51
|
|
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.91
|
|
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
|
|
@@ -60,7 +60,7 @@ class AccessLogHandler(Handler):
|
|
|
60
60
|
current_user = flask_login.current_user
|
|
61
61
|
access_log = AccessLog(request_id=request_id, display_name=current_user.display_name,
|
|
62
62
|
obj_id=current_user.id, type=current_user.type, client_id=client_id,
|
|
63
|
-
resource_id=resource_id, location=location,sub=current_user.sub,
|
|
63
|
+
resource_id=resource_id, location=location, sub=current_user.sub,
|
|
64
64
|
resource_label=resource_label, url=url, referrer=referrer, client_ip=client_ip,
|
|
65
65
|
user_agent=user_agent_string, start_time=start_time, end_time=end_time,
|
|
66
66
|
duration=end_time - start_time, status_code=status_code,
|
|
@@ -511,7 +511,7 @@ def setup_common_resource(app):
|
|
|
511
511
|
form_data = request.form.to_dict()
|
|
512
512
|
|
|
513
513
|
# 获取请求头并删除不必要的字段(如 Host)
|
|
514
|
-
headers = {key: value for key, value in request.headers if key.lower() in ["authorization"]}
|
|
514
|
+
headers = {key: value for key, value in request.headers if key.lower() in ["authorization", "remote_addr"]}
|
|
515
515
|
files = []
|
|
516
516
|
response = requests.request("POST", app_config.get("CAPABILITY_PLATFORM_SERVER") + "/icp/oauth/token",
|
|
517
517
|
headers=headers,
|
|
@@ -5,10 +5,11 @@ from flask import copy_current_request_context
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
class FlaskThread:
|
|
8
|
-
def __init__(self, target, args=None, kwargs=None):
|
|
8
|
+
def __init__(self, target, args=None, kwargs=None, name: str = None):
|
|
9
9
|
self.target = target
|
|
10
10
|
self.args = args or []
|
|
11
11
|
self.kwargs = kwargs or dict()
|
|
12
|
+
self.name = name or target.__name__
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
def wrapper(_func, _args, _kwargs, _result: list = None, _lock=None, _is_throw_error=True):
|
|
@@ -36,14 +37,17 @@ def wrapper(_func, _args, _kwargs, _result: list = None, _lock=None, _is_throw_e
|
|
|
36
37
|
return _thread_func
|
|
37
38
|
|
|
38
39
|
|
|
39
|
-
def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=True):
|
|
40
|
+
def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=True, return_type="list"):
|
|
40
41
|
results = []
|
|
41
42
|
threads = []
|
|
42
43
|
result_locks = []
|
|
44
|
+
name_list = []
|
|
43
45
|
for obj in func_list:
|
|
44
46
|
target = obj.target
|
|
45
47
|
args = obj.args or []
|
|
46
48
|
kwargs = obj.kwargs or dict()
|
|
49
|
+
_name = obj.name
|
|
50
|
+
name_list.append(_name)
|
|
47
51
|
result = []
|
|
48
52
|
if is_lock:
|
|
49
53
|
lock = threading.Lock()
|
|
@@ -68,7 +72,11 @@ def run_in_thread(func_list: List[FlaskThread], is_throw_error=False, is_lock=Tr
|
|
|
68
72
|
final_results.append(result[0])
|
|
69
73
|
else:
|
|
70
74
|
final_results.append(result[0])
|
|
71
|
-
|
|
75
|
+
if return_type == "list":
|
|
76
|
+
return final_results
|
|
77
|
+
else:
|
|
78
|
+
result = dict(zip(name_list, final_results))
|
|
79
|
+
return result
|
|
72
80
|
|
|
73
81
|
|
|
74
82
|
def run_in_background(func_list: List[FlaskThread], is_throw_error=False, is_lock=False):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lesscode-flask
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.51
|
|
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.91
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/export_data/data_download_handler.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/model/resource_param_template.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/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.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/decorator/sql_injection.py
RENAMED
|
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.48 → lesscode_flask-0.2.51}/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
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/limit/req/redis_rate_limiter.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
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/lesscode_flask/utils/swagger/swagger_template.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.48 → lesscode_flask-0.2.51}/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.48 → lesscode_flask-0.2.51}/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|