connector-py 4.183.0__py3-none-any.whl → 4.185.0__py3-none-any.whl

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.
connector/__about__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "4.183.0"
1
+ __version__ = "4.185.0"
@@ -10,6 +10,7 @@ from connector_sdk_types.generated import ErrorCode
10
10
  from gql import Client
11
11
  from gql.client import AsyncClientSession
12
12
  from gql.dsl import DSLSchema
13
+ from gql.transport.httpx import HTTPXAsyncTransport as GqlHTTPXAsyncTransport
13
14
  from graphql import DocumentNode, GraphQLSchema, build_client_schema, build_schema
14
15
  from httpx import Response
15
16
  from typing_extensions import Self
@@ -181,7 +182,7 @@ class RateLimitedClient(AsyncClient):
181
182
  class RateLimitedHTTPXAsyncTransport(HTTPXAsyncTransport):
182
183
  """A wrapper around HTTPXAsyncTransport that applies rate limiting to GraphQL requests."""
183
184
 
184
- def __init__(self, base_transport: HTTPXAsyncTransport, rate_limit_config: RateLimitConfig):
185
+ def __init__(self, base_transport: GqlHTTPXAsyncTransport, rate_limit_config: RateLimitConfig):
185
186
  # Copy all attributes from base transport, but exclude 'execute' to avoid shadowing our method
186
187
  base_dict = {k: v for k, v in base_transport.__dict__.items() if k != "execute"}
187
188
  self.__dict__.update(base_dict)
@@ -348,7 +349,8 @@ class BaseGraphQLSession(AsyncClientSession):
348
349
  rate_limiting = rate_limit_config or cls._rate_limit_config
349
350
  if rate_limiting is not None and "transport" in client_args:
350
351
  transport = client_args["transport"]
351
- if isinstance(transport, HTTPXAsyncTransport):
352
+ # wrap any gql HTTPX transport (tests use the GqlHTTPXAsyncTransport, client uses the SDK's HTTPXAsyncTransport)
353
+ if isinstance(transport, GqlHTTPXAsyncTransport):
352
354
  client_args["transport"] = RateLimitedHTTPXAsyncTransport(transport, rate_limiting)
353
355
 
354
356
  return Client(**client_args)
connector/oai/errors.py CHANGED
@@ -144,7 +144,7 @@ class DefaultHandler(ExceptionHandler):
144
144
  error_message in str(response.error.message).lower() for error_message in error_messages
145
145
  ):
146
146
  response.error.message = "Failed to connect to the API. Please verify the URL or try at a later time due to a potential temporary network issue."
147
- response.error.error_code = ErrorCode.API_ERROR
147
+ response.error.error_code = ErrorCode.CONNECTION_TIMEOUT
148
148
 
149
149
  if isinstance(e, json.JSONDecodeError):
150
150
  response.error.error_code = ErrorCode.API_ERROR
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: connector-py
3
- Version: 4.183.0
3
+ Version: 4.185.0
4
4
  Summary: An Abstract Tool to Perform Actions on Integrations.
5
5
  Author-email: teamlumos <security@lumos.com>
6
6
  License-Expression: Apache-2.0
@@ -1,4 +1,4 @@
1
- connector/__about__.py,sha256=ifYVilUeAfeoauH3E-7Wq00SLs9yLkOfkc4kWVLjCCg,24
1
+ connector/__about__.py,sha256=LmfDba4vGV5ZqX8U9yGwuqmGniytW2uBU6MyCU2Kee8,24
2
2
  connector/__init__.py,sha256=QUNbfyRmjFwfO296tG-H_d8FFCqcNc3kAu1QfYGtP38,84
3
3
  connector/auth_helper.py,sha256=0HBFYwd0ixOL46blGvb1ot0a8ZOmNutU13Q95JGN04Q,637
4
4
  connector/ca_certs.py,sha256=h7l8FvUsGXAvQC73BA2x5HJccxC5ooIOOww0mTSEerw,603
@@ -200,9 +200,9 @@ connector/generated/models/validated_credentials.py,sha256=2Mmr2P8YmjCKxMoBmeV_-
200
200
  connector/generated/models/vendor.py,sha256=JOyV0pbjcKJYMHeXjtL9ttQ5UGZCm4W0WMCh5pp-rp4,316
201
201
  connector/handlers/lumos_log_handler.py,sha256=KHy7KyZV0PisZqvOaX3V1bVDqNfaJi0yvTQdzdHUQTE,3190
202
202
  connector/oai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
203
- connector/oai/base_clients.py,sha256=Wj15CPtYcWwtFe2tW_-apSvokgXGWqNXNnL7VVHTnPg,15039
203
+ connector/oai/base_clients.py,sha256=G0c0EteKFmmuybdjyzII1g9qWmMeE0CTrI5jXOqkwfk,15248
204
204
  connector/oai/capability.py,sha256=01itvXellF2GyxEdSkdlXP6JOEhQsTF5TBiWORfEG94,33253
205
- connector/oai/errors.py,sha256=i84p1Hn1JFl6cHzEkOMEu_JucD5pC9cT8TMTJd9x6ag,9471
205
+ connector/oai/errors.py,sha256=lOuCIVhyo2Z7VyMqYtGUWUCzKBSIs7fvBg75aro1VCo,9480
206
206
  connector/oai/fingerprint.py,sha256=AmHpybwoVrhrrNosLxVfRl_cFiKhCuSG-8poqRfVs5c,103
207
207
  connector/oai/integration.py,sha256=QSdVCsX4_nCdhmmBohHsfNQSTvExLwD89sDxBxnOkQw,19729
208
208
  connector/oai/capabilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -278,7 +278,7 @@ connector/utils/sync_to_async.py,sha256=sL7p_gJT5fQXbwXL1OIe93rlxWlnvmdK_espSNbQ
278
278
  connector/utils/test.py,sha256=nvGSsVCCnellamh8nwZK6jLDp1n_irw9NaDPTNpJ9E4,656
279
279
  connector/utils/test_case_insensitive_dict.py,sha256=VIUnWVKOh1hrXHk0kllMtaqh-9h6apahPHt9U7oBGp0,356
280
280
  connector/utils/validation_utils.py,sha256=ih-EFW-ei-fKil0U2n0y4GePuA-Jz76XryExFBppHLk,1352
281
- connector_py-4.183.0.dist-info/licenses/LICENSE.txt,sha256=5GN09YoDG6soQSs8dUL08aXcF-QA17TtDOoixKVPzsc,11346
281
+ connector_py-4.185.0.dist-info/licenses/LICENSE.txt,sha256=5GN09YoDG6soQSs8dUL08aXcF-QA17TtDOoixKVPzsc,11346
282
282
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
283
283
  tests/test_cli.py,sha256=6sk1fmfXDTFbdVAKDCKRSo2hslrg_bywjo3rbYJFjPs,8937
284
284
  tests/test_compile.py,sha256=NkPUC7GGvO3dGAgIIz5o0z5Rr5qDeQLtH_IJBlE1wHE,5689
@@ -297,7 +297,7 @@ tests/oai/test_credentials_module.py,sha256=HMzoxRz001a6HA8Ols0NsbW4zJxazZRr7H6u
297
297
  tests/oai/test_dispatch_cases.py,sha256=nigQa1BUgVGSn3pzNbhonRiark0mnqb3elSQeERyCZc,16261
298
298
  tests/oai/test_dispatch_settings_cases.py,sha256=OIuFFqOdukmpv5AYhtsRtTD3MnzZfLTIoE2VbhckYr8,4906
299
299
  tests/oai/test_exception_handler.py,sha256=hM7zyGK7NPl1bNwbyn3e6FUtk4lTVgcn_XT69N8CzNM,716
300
- tests/oai/test_exception_handler_handled_cases.py,sha256=RZQruRkVl-E5v4TR1kooz6slTQgoDzbZDENvY-Rj0Nk,20570
300
+ tests/oai/test_exception_handler_handled_cases.py,sha256=9VXGebpF0GmgKuz6M5PRSQzNvP4eXlAE_3zvO4CM_KE,20588
301
301
  tests/oai/test_get_capability_annotations_cases.py,sha256=m5S6IfeLW00gI2XKSH45Zh6zbzIb7g5fV2HEhNymoy8,3499
302
302
  tests/oai/test_info_cases.py,sha256=MSs26_raGgKBIaLUkKBTfEMuBopzHQE8HU_w5UBAtLo,64660
303
303
  tests/oai/test_info_module.py,sha256=_CGk45gaNefgoQBXNJULwLMt9N38LMWh5gqlJtAJnkY,94124
@@ -325,8 +325,8 @@ tests/utils/test_pagination.py,sha256=_VCeSTmbcqzMSESNuM9ta3-zxDempIJGR_CkcKRjCO
325
325
  tests/utils/test_pagination_decode_cases.py,sha256=Ogtprql_vwTWkHV_JceemNtJQMKNekDWAa1yj09uPnw,221
326
326
  tests/utils/test_pagination_duality_cases.py,sha256=Z_mI5PNbeKyTzdxdabfVDvOrCcbCgH8EuulVmb4Dcco,928
327
327
  tests/utils/test_pagination_encode_cases.py,sha256=XsJ5PvlHT4stu3x6YF3-WADMk8ftfbDGOmbcof2_tiE,635
328
- connector_py-4.183.0.dist-info/METADATA,sha256=C0D7ShRUAQ6KUBGjgwW25NjwgY4Pm9sMjQdIOPPt6ek,18641
329
- connector_py-4.183.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
330
- connector_py-4.183.0.dist-info/entry_points.txt,sha256=D7nFwDmXoeHYpRVov7TrlbOtZqe9q1dOdkUY0GK0AEg,50
331
- connector_py-4.183.0.dist-info/top_level.txt,sha256=a1lmLxeM8B6LFAD0kkCE1ZAK3rJP9Uv0Jd1fHSskX-k,16
332
- connector_py-4.183.0.dist-info/RECORD,,
328
+ connector_py-4.185.0.dist-info/METADATA,sha256=yrSWqYU6YcmMFovyxXXGFgMz2RYlt4BKCHIHTAbO2eg,18641
329
+ connector_py-4.185.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
330
+ connector_py-4.185.0.dist-info/entry_points.txt,sha256=D7nFwDmXoeHYpRVov7TrlbOtZqe9q1dOdkUY0GK0AEg,50
331
+ connector_py-4.185.0.dist-info/top_level.txt,sha256=a1lmLxeM8B6LFAD0kkCE1ZAK3rJP9Uv0Jd1fHSskX-k,16
332
+ connector_py-4.185.0.dist-info/RECORD,,
@@ -474,7 +474,7 @@ def case_connect_error() -> Case:
474
474
  is_error=True,
475
475
  error=Error(
476
476
  message="Failed to connect to the API. Please verify the URL or try at a later time due to a potential temporary network issue.",
477
- error_code=ErrorCode.API_ERROR,
477
+ error_code=ErrorCode.CONNECTION_TIMEOUT,
478
478
  app_id=app_id,
479
479
  status_code=None,
480
480
  raised_by="ConnectError",
@@ -570,7 +570,7 @@ def case_connection_error_message() -> Case:
570
570
  is_error=True,
571
571
  error=Error(
572
572
  message="Failed to connect to the API. Please verify the URL or try at a later time due to a potential temporary network issue.",
573
- error_code=ErrorCode.API_ERROR,
573
+ error_code=ErrorCode.CONNECTION_TIMEOUT,
574
574
  app_id=app_id,
575
575
  status_code=None,
576
576
  raised_by="Exception",