Skip to content

Commit 958a240

Browse files
committed
Version 1.4.38
1 parent 75434be commit 958a240

File tree

44 files changed

+406
-674
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+406
-674
lines changed

abacusai/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -243,4 +243,4 @@
243243
from .workflow_node_template import WorkflowNodeTemplate
244244

245245

246-
__version__ = "1.4.37"
246+
__version__ = "1.4.38"

abacusai/client.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -652,7 +652,7 @@ class BaseApiClient:
652652
client_options (ClientOptions): Optional API client configurations
653653
skip_version_check (bool): If true, will skip checking the server's current API version on initializing the client
654654
"""
655-
client_version = '1.4.37'
655+
client_version = '1.4.38'
656656

657657
def __init__(self, api_key: str = None, server: str = None, client_options: ClientOptions = None, skip_version_check: bool = False, include_tb: bool = False):
658658
self.api_key = api_key
@@ -3737,7 +3737,7 @@ def run_workflow_graph(self, workflow_graph: WorkflowGraph, sample_user_inputs:
37373737

37383738
def execute_workflow_node(self, node: WorkflowGraphNode, inputs: dict):
37393739
"""
3740-
Execute the workflow node given input arguments.
3740+
Execute the workflow node given input arguments. This is to be used for testing purposes only.
37413741

37423742
Args:
37433743
node (WorkflowGraphNode): The workflow node to be executed.

abacusai/code_bot.py

+13-5
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,13 @@ class CodeBot(AbstractApiClass):
1414
codeEditSupported (bool): Whether the LLM supports code edit.
1515
isPremium (bool): Whether the LLM is a premium LLM.
1616
llmBotIcon (str): The icon of the LLM bot.
17+
provider (str): The provider of the LLM.
18+
isUserApiKeyAllowed (bool): Whether the LLM supports user API key.
19+
isRateLimited (bool): Whether the LLM is rate limited.
20+
apiKeyUrl (str): The URL to get the API key.
1721
"""
1822

19-
def __init__(self, client, llmName=None, name=None, imageUploadSupported=None, codeAgentSupported=None, codeEditSupported=None, isPremium=None, llmBotIcon=None):
23+
def __init__(self, client, llmName=None, name=None, imageUploadSupported=None, codeAgentSupported=None, codeEditSupported=None, isPremium=None, llmBotIcon=None, provider=None, isUserApiKeyAllowed=None, isRateLimited=None, apiKeyUrl=None):
2024
super().__init__(client, None)
2125
self.llm_name = llmName
2226
self.name = name
@@ -25,11 +29,15 @@ def __init__(self, client, llmName=None, name=None, imageUploadSupported=None, c
2529
self.code_edit_supported = codeEditSupported
2630
self.is_premium = isPremium
2731
self.llm_bot_icon = llmBotIcon
32+
self.provider = provider
33+
self.is_user_api_key_allowed = isUserApiKeyAllowed
34+
self.is_rate_limited = isRateLimited
35+
self.api_key_url = apiKeyUrl
2836
self.deprecated_keys = {}
2937

3038
def __repr__(self):
31-
repr_dict = {f'llm_name': repr(self.llm_name), f'name': repr(self.name), f'image_upload_supported': repr(self.image_upload_supported), f'code_agent_supported': repr(
32-
self.code_agent_supported), f'code_edit_supported': repr(self.code_edit_supported), f'is_premium': repr(self.is_premium), f'llm_bot_icon': repr(self.llm_bot_icon)}
39+
repr_dict = {f'llm_name': repr(self.llm_name), f'name': repr(self.name), f'image_upload_supported': repr(self.image_upload_supported), f'code_agent_supported': repr(self.code_agent_supported), f'code_edit_supported': repr(self.code_edit_supported), f'is_premium': repr(
40+
self.is_premium), f'llm_bot_icon': repr(self.llm_bot_icon), f'provider': repr(self.provider), f'is_user_api_key_allowed': repr(self.is_user_api_key_allowed), f'is_rate_limited': repr(self.is_rate_limited), f'api_key_url': repr(self.api_key_url)}
3341
class_name = "CodeBot"
3442
repr_str = ',\n '.join([f'{key}={value}' for key, value in repr_dict.items(
3543
) if getattr(self, key, None) is not None and key not in self.deprecated_keys])
@@ -42,6 +50,6 @@ def to_dict(self):
4250
Returns:
4351
dict: The dict value representation of the class parameters
4452
"""
45-
resp = {'llm_name': self.llm_name, 'name': self.name, 'image_upload_supported': self.image_upload_supported, 'code_agent_supported': self.code_agent_supported,
46-
'code_edit_supported': self.code_edit_supported, 'is_premium': self.is_premium, 'llm_bot_icon': self.llm_bot_icon}
53+
resp = {'llm_name': self.llm_name, 'name': self.name, 'image_upload_supported': self.image_upload_supported, 'code_agent_supported': self.code_agent_supported, 'code_edit_supported': self.code_edit_supported,
54+
'is_premium': self.is_premium, 'llm_bot_icon': self.llm_bot_icon, 'provider': self.provider, 'is_user_api_key_allowed': self.is_user_api_key_allowed, 'is_rate_limited': self.is_rate_limited, 'api_key_url': self.api_key_url}
4755
return {key: value for key, value in resp.items() if value is not None and key not in self.deprecated_keys}

abacusai/constants_autocomplete_response.py

+6-4
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,10 @@ class ConstantsAutocompleteResponse(AbstractApiClass):
2727
diagnosticsThreshold (int): The max number of diagnostics to show.
2828
diagnosticEachThreshold (int): The max number of characters to show for each diagnostic type.
2929
numVsCodeSuggestions (int): The number of VS Code suggestions to show.
30+
minReindexingInterval (int): The minimum interval between reindexes in ms.
3031
"""
3132

32-
def __init__(self, client, maxPendingRequests=None, acceptanceDelay=None, debounceDelay=None, recordUserAction=None, validateSuggestion=None, validationLinesThreshold=None, maxTrackedRecentChanges=None, diffThreshold=None, derivativeThreshold=None, defaultSurroundingLines=None, maxTrackedVisitChanges=None, selectionCooldownMs=None, viewingCooldownMs=None, maxLines=None, editCooldownMs=None, scrollDebounceMs=None, lspDeadline=None, diagnosticsThreshold=None, diagnosticEachThreshold=None, numVsCodeSuggestions=None):
33+
def __init__(self, client, maxPendingRequests=None, acceptanceDelay=None, debounceDelay=None, recordUserAction=None, validateSuggestion=None, validationLinesThreshold=None, maxTrackedRecentChanges=None, diffThreshold=None, derivativeThreshold=None, defaultSurroundingLines=None, maxTrackedVisitChanges=None, selectionCooldownMs=None, viewingCooldownMs=None, maxLines=None, editCooldownMs=None, scrollDebounceMs=None, lspDeadline=None, diagnosticsThreshold=None, diagnosticEachThreshold=None, numVsCodeSuggestions=None, minReindexingInterval=None):
3334
super().__init__(client, None)
3435
self.max_pending_requests = maxPendingRequests
3536
self.acceptance_delay = acceptanceDelay
@@ -51,11 +52,12 @@ def __init__(self, client, maxPendingRequests=None, acceptanceDelay=None, deboun
5152
self.diagnostics_threshold = diagnosticsThreshold
5253
self.diagnostic_each_threshold = diagnosticEachThreshold
5354
self.num_vs_code_suggestions = numVsCodeSuggestions
55+
self.min_reindexing_interval = minReindexingInterval
5456
self.deprecated_keys = {}
5557

5658
def __repr__(self):
57-
repr_dict = {f'max_pending_requests': repr(self.max_pending_requests), f'acceptance_delay': repr(self.acceptance_delay), f'debounce_delay': repr(self.debounce_delay), f'record_user_action': repr(self.record_user_action), f'validate_suggestion': repr(self.validate_suggestion), f'validation_lines_threshold': repr(self.validation_lines_threshold), f'max_tracked_recent_changes': repr(self.max_tracked_recent_changes), f'diff_threshold': repr(self.diff_threshold), f'derivative_threshold': repr(self.derivative_threshold), f'default_surrounding_lines': repr(
58-
self.default_surrounding_lines), f'max_tracked_visit_changes': repr(self.max_tracked_visit_changes), f'selection_cooldown_ms': repr(self.selection_cooldown_ms), f'viewing_cooldown_ms': repr(self.viewing_cooldown_ms), f'max_lines': repr(self.max_lines), f'edit_cooldown_ms': repr(self.edit_cooldown_ms), f'scroll_debounce_ms': repr(self.scroll_debounce_ms), f'lsp_deadline': repr(self.lsp_deadline), f'diagnostics_threshold': repr(self.diagnostics_threshold), f'diagnostic_each_threshold': repr(self.diagnostic_each_threshold), f'num_vs_code_suggestions': repr(self.num_vs_code_suggestions)}
59+
repr_dict = {f'max_pending_requests': repr(self.max_pending_requests), f'acceptance_delay': repr(self.acceptance_delay), f'debounce_delay': repr(self.debounce_delay), f'record_user_action': repr(self.record_user_action), f'validate_suggestion': repr(self.validate_suggestion), f'validation_lines_threshold': repr(self.validation_lines_threshold), f'max_tracked_recent_changes': repr(self.max_tracked_recent_changes), f'diff_threshold': repr(self.diff_threshold), f'derivative_threshold': repr(self.derivative_threshold), f'default_surrounding_lines': repr(self.default_surrounding_lines), f'max_tracked_visit_changes': repr(
60+
self.max_tracked_visit_changes), f'selection_cooldown_ms': repr(self.selection_cooldown_ms), f'viewing_cooldown_ms': repr(self.viewing_cooldown_ms), f'max_lines': repr(self.max_lines), f'edit_cooldown_ms': repr(self.edit_cooldown_ms), f'scroll_debounce_ms': repr(self.scroll_debounce_ms), f'lsp_deadline': repr(self.lsp_deadline), f'diagnostics_threshold': repr(self.diagnostics_threshold), f'diagnostic_each_threshold': repr(self.diagnostic_each_threshold), f'num_vs_code_suggestions': repr(self.num_vs_code_suggestions), f'min_reindexing_interval': repr(self.min_reindexing_interval)}
5961
class_name = "ConstantsAutocompleteResponse"
6062
repr_str = ',\n '.join([f'{key}={value}' for key, value in repr_dict.items(
6163
) if getattr(self, key, None) is not None and key not in self.deprecated_keys])
@@ -69,5 +71,5 @@ def to_dict(self):
6971
dict: The dict value representation of the class parameters
7072
"""
7173
resp = {'max_pending_requests': self.max_pending_requests, 'acceptance_delay': self.acceptance_delay, 'debounce_delay': self.debounce_delay, 'record_user_action': self.record_user_action, 'validate_suggestion': self.validate_suggestion, 'validation_lines_threshold': self.validation_lines_threshold, 'max_tracked_recent_changes': self.max_tracked_recent_changes, 'diff_threshold': self.diff_threshold, 'derivative_threshold': self.derivative_threshold, 'default_surrounding_lines': self.default_surrounding_lines,
72-
'max_tracked_visit_changes': self.max_tracked_visit_changes, 'selection_cooldown_ms': self.selection_cooldown_ms, 'viewing_cooldown_ms': self.viewing_cooldown_ms, 'max_lines': self.max_lines, 'edit_cooldown_ms': self.edit_cooldown_ms, 'scroll_debounce_ms': self.scroll_debounce_ms, 'lsp_deadline': self.lsp_deadline, 'diagnostics_threshold': self.diagnostics_threshold, 'diagnostic_each_threshold': self.diagnostic_each_threshold, 'num_vs_code_suggestions': self.num_vs_code_suggestions}
74+
'max_tracked_visit_changes': self.max_tracked_visit_changes, 'selection_cooldown_ms': self.selection_cooldown_ms, 'viewing_cooldown_ms': self.viewing_cooldown_ms, 'max_lines': self.max_lines, 'edit_cooldown_ms': self.edit_cooldown_ms, 'scroll_debounce_ms': self.scroll_debounce_ms, 'lsp_deadline': self.lsp_deadline, 'diagnostics_threshold': self.diagnostics_threshold, 'diagnostic_each_threshold': self.diagnostic_each_threshold, 'num_vs_code_suggestions': self.num_vs_code_suggestions, 'min_reindexing_interval': self.min_reindexing_interval}
7375
return {key: value for key, value in resp.items() if value is not None and key not in self.deprecated_keys}

0 commit comments

Comments
 (0)