Skip to content

Commit 7e5d37c

Browse files
committed
feat: add global param max_data_length
1 parent 185229a commit 7e5d37c

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

pygwalker/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from pygwalker.services.global_var import GlobalVarManager
1111
from pygwalker.services.kaggle import show_tips_user_kaggle as __show_tips_user_kaggle
1212

13-
__version__ = "0.4.8.3"
13+
__version__ = "0.4.8.4"
1414
__hash__ = __rand_str()
1515

1616
from pygwalker.api.jupyter import walk, render, table

pygwalker/api/pygwalker.py

+4-6
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,6 @@
4242
from pygwalker.errors import DataCountLimitError
4343
from pygwalker import __version__
4444

45-
RESPONSE_MAX_DATA_LENGTH = 1 * 1000 * 1000
46-
4745

4846
class PygWalker:
4947
"""PygWalker"""
@@ -385,15 +383,15 @@ def upload_spec_to_cloud(data: Dict[str, Any]):
385383
def _get_datas(data: Dict[str, Any]):
386384
sql = data["sql"]
387385
datas = self.data_parser.get_datas_by_sql(sql)
388-
if len(datas) > RESPONSE_MAX_DATA_LENGTH:
386+
if len(datas) > GlobalVarManager.max_data_length:
389387
raise DataCountLimitError()
390388
return {
391389
"datas": datas
392390
}
393391

394392
def _get_datas_by_payload(data: Dict[str, Any]):
395393
datas = self.data_parser.get_datas_by_payload(data["payload"])
396-
if len(datas) > RESPONSE_MAX_DATA_LENGTH:
394+
if len(datas) > GlobalVarManager.max_data_length:
397395
raise DataCountLimitError()
398396
return {
399397
"datas": datas
@@ -402,7 +400,7 @@ def _get_datas_by_payload(data: Dict[str, Any]):
402400
def _batch_get_datas_by_sql(data: Dict[str, Any]):
403401
result = self.data_parser.batch_get_datas_by_sql(data["queryList"])
404402
for datas in result:
405-
if len(datas) > RESPONSE_MAX_DATA_LENGTH:
403+
if len(datas) > GlobalVarManager.max_data_length:
406404
raise DataCountLimitError()
407405
return {
408406
"datas": result
@@ -411,7 +409,7 @@ def _batch_get_datas_by_sql(data: Dict[str, Any]):
411409
def _batch_get_datas_by_payload(data: Dict[str, Any]):
412410
result = self.data_parser.batch_get_datas_by_payload(data["queryList"])
413411
for datas in result:
414-
if len(datas) > RESPONSE_MAX_DATA_LENGTH:
412+
if len(datas) > GlobalVarManager.max_data_length:
415413
raise DataCountLimitError()
416414
return {
417415
"datas": result

pygwalker/services/global_var.py

+5
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ class GlobalVarManager:
1414
kanaries_api_host = "https://api.kanaries.net"
1515
kanaries_main_host = "https://kanaries.net"
1616
last_exported_dataframe = None
17+
max_data_length = 1000 * 1000
1718

1819
@classmethod
1920
def set_env(cls, env: Literal['Jupyter', 'Streamlit']):
@@ -42,3 +43,7 @@ def set_privacy(cls, privacy: Literal['offline', 'update-only', 'events']):
4243
@classmethod
4344
def set_last_exported_dataframe(cls, df: DataFrame):
4445
cls.last_exported_dataframe = df
46+
47+
@classmethod
48+
def set_max_data_length(cls, length: int):
49+
cls.max_data_length = length

0 commit comments

Comments
 (0)