|
4 | 4 | import re
|
5 | 5 | from typing import Any, Collection, Dict, List
|
6 | 6 |
|
7 |
| -import simple_salesforce |
| 7 | +# Upstream issue with simple_salesforce |
| 8 | +# https://github.com/simple-salesforce/simple-salesforce/issues/723 |
| 9 | +from simple_salesforce import Salesforce # type: ignore[attr-defined] |
| 10 | +from simple_salesforce.exceptions import SalesforceAuthenticationFailed |
8 | 11 |
|
9 | 12 | from zulip_bots.bots.salesforce.utils import commands, default_query, link_query, object_types
|
10 | 13 | from zulip_bots.lib import BotHandler
|
@@ -73,9 +76,7 @@ def format_result(
|
73 | 76 | return output
|
74 | 77 |
|
75 | 78 |
|
76 |
| -def query_salesforce( |
77 |
| - arg: str, salesforce: simple_salesforce.Salesforce, command: Dict[str, Any] |
78 |
| -) -> str: |
| 79 | +def query_salesforce(arg: str, salesforce: Salesforce, command: Dict[str, Any]) -> str: |
79 | 80 | arg = arg.strip()
|
80 | 81 | qarg = arg.split(" -", 1)[0]
|
81 | 82 | split_args: List[str] = []
|
@@ -164,12 +165,12 @@ def get_salesforce_response(self, content: str) -> str:
|
164 | 165 | def initialize(self, bot_handler: BotHandler) -> None:
|
165 | 166 | self.config_info = bot_handler.get_config_info("salesforce")
|
166 | 167 | try:
|
167 |
| - self.sf = simple_salesforce.Salesforce( |
| 168 | + self.sf = Salesforce( |
168 | 169 | username=self.config_info["username"],
|
169 | 170 | password=self.config_info["password"],
|
170 | 171 | security_token=self.config_info["security_token"],
|
171 | 172 | )
|
172 |
| - except simple_salesforce.exceptions.SalesforceAuthenticationFailed as err: |
| 173 | + except SalesforceAuthenticationFailed as err: |
173 | 174 | bot_handler.quit(f"Failed to log in to Salesforce. {err.code} {err.message}")
|
174 | 175 |
|
175 | 176 | def handle_message(self, message: Dict[str, Any], bot_handler: BotHandler) -> None:
|
|
0 commit comments