uipath 2.0.40__tar.gz → 2.0.42__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.

Potentially problematic release.


This version of uipath might be problematic. Click here for more details.

Files changed (140) hide show
  1. {uipath-2.0.40 → uipath-2.0.42}/PKG-INFO +1 -1
  2. uipath-2.0.42/docs/core/connections.md +1 -0
  3. {uipath-2.0.40 → uipath-2.0.42}/docs/javascripts/extra.js +6 -0
  4. {uipath-2.0.40 → uipath-2.0.42}/docs/stylesheets/extra.css +35 -4
  5. {uipath-2.0.40 → uipath-2.0.42}/mkdocs.yml +4 -0
  6. {uipath-2.0.40 → uipath-2.0.42}/pyproject.toml +2 -1
  7. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_pack.py +14 -2
  8. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/actions_service.py +12 -5
  9. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/connections_service.py +2 -82
  10. {uipath-2.0.40 → uipath-2.0.42}/uv.lock +1594 -1580
  11. uipath-2.0.40/src/uipath/_services/connections_service.pyi +0 -50
  12. {uipath-2.0.40 → uipath-2.0.42}/.cursorrules +0 -0
  13. {uipath-2.0.40 → uipath-2.0.42}/.editorconfig +0 -0
  14. {uipath-2.0.40 → uipath-2.0.42}/.gitattributes +0 -0
  15. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/build.yml +0 -0
  16. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/cd.yml +0 -0
  17. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/ci.yml +0 -0
  18. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/commitlint.yml +0 -0
  19. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/lint.yml +0 -0
  20. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/publish-dev.yml +0 -0
  21. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/publish-docs.yml +0 -0
  22. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/slack.yml +0 -0
  23. {uipath-2.0.40 → uipath-2.0.42}/.github/workflows/test.yml +0 -0
  24. {uipath-2.0.40 → uipath-2.0.42}/.gitignore +0 -0
  25. {uipath-2.0.40 → uipath-2.0.42}/.pre-commit-config.yaml +0 -0
  26. {uipath-2.0.40 → uipath-2.0.42}/.python-version +0 -0
  27. {uipath-2.0.40 → uipath-2.0.42}/.vscode/extensions.json +0 -0
  28. {uipath-2.0.40 → uipath-2.0.42}/.vscode/settings.json +0 -0
  29. {uipath-2.0.40 → uipath-2.0.42}/CONTRIBUTING.md +0 -0
  30. {uipath-2.0.40 → uipath-2.0.42}/LICENSE +0 -0
  31. {uipath-2.0.40 → uipath-2.0.42}/README.md +0 -0
  32. {uipath-2.0.40 → uipath-2.0.42}/docs/CONTRIBUTING.md +0 -0
  33. {uipath-2.0.40 → uipath-2.0.42}/docs/assets/favicon.png +0 -0
  34. {uipath-2.0.40 → uipath-2.0.42}/docs/assets/logo-dark.svg +0 -0
  35. {uipath-2.0.40 → uipath-2.0.42}/docs/assets/logo-light.svg +0 -0
  36. {uipath-2.0.40 → uipath-2.0.42}/docs/cli/index.md +0 -0
  37. {uipath-2.0.40 → uipath-2.0.42}/docs/core/actions.md +0 -0
  38. {uipath-2.0.40 → uipath-2.0.42}/docs/core/assets.md +0 -0
  39. {uipath-2.0.40 → uipath-2.0.42}/docs/core/buckets.md +0 -0
  40. {uipath-2.0.40 → uipath-2.0.42}/docs/core/context_grounding.md +0 -0
  41. {uipath-2.0.40 → uipath-2.0.42}/docs/core/getting_started.md +0 -0
  42. {uipath-2.0.40 → uipath-2.0.42}/docs/core/jobs.md +0 -0
  43. {uipath-2.0.40 → uipath-2.0.42}/docs/core/processes.md +0 -0
  44. {uipath-2.0.40 → uipath-2.0.42}/docs/core/queues.md +0 -0
  45. {uipath-2.0.40 → uipath-2.0.42}/docs/hooks.py +0 -0
  46. {uipath-2.0.40 → uipath-2.0.42}/docs/langchain/chat_models.md +0 -0
  47. {uipath-2.0.40 → uipath-2.0.42}/docs/langchain/context_grounding.md +0 -0
  48. {uipath-2.0.40 → uipath-2.0.42}/docs/langchain/human_in_the_loop.md +0 -0
  49. {uipath-2.0.40 → uipath-2.0.42}/docs/overrides/partials/logo.html +0 -0
  50. {uipath-2.0.40 → uipath-2.0.42}/docs/release_policy.md +0 -0
  51. {uipath-2.0.40 → uipath-2.0.42}/justfile +0 -0
  52. {uipath-2.0.40 → uipath-2.0.42}/py.typed +0 -0
  53. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/__init__.py +0 -0
  54. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/README.md +0 -0
  55. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/__init__.py +0 -0
  56. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/_auth_server.py +0 -0
  57. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/_models.py +0 -0
  58. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/_oidc_utils.py +0 -0
  59. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/_portal_service.py +0 -0
  60. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/_utils.py +0 -0
  61. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/auth_config.json +0 -0
  62. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/index.html +0 -0
  63. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/localhost.crt +0 -0
  64. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_auth/localhost.key +0 -0
  65. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_runtime/_contracts.py +0 -0
  66. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_runtime/_logging.py +0 -0
  67. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_runtime/_runtime.py +0 -0
  68. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_templates/.psmdcp.template +0 -0
  69. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_templates/.rels.template +0 -0
  70. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_templates/[Content_Types].xml.template +0 -0
  71. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_templates/main.py.template +0 -0
  72. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_templates/package.nuspec.template +0 -0
  73. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_common.py +0 -0
  74. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_console.py +0 -0
  75. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_folders.py +0 -0
  76. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_input_args.py +0 -0
  77. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_parse_ast.py +0 -0
  78. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/_utils/_processes.py +0 -0
  79. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_auth.py +0 -0
  80. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_deploy.py +0 -0
  81. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_init.py +0 -0
  82. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_invoke.py +0 -0
  83. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_new.py +0 -0
  84. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_publish.py +0 -0
  85. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/cli_run.py +0 -0
  86. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/middlewares.py +0 -0
  87. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_cli/spinner.py +0 -0
  88. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_config.py +0 -0
  89. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_execution_context.py +0 -0
  90. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_folder_context.py +0 -0
  91. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/__init__.py +0 -0
  92. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/_base_service.py +0 -0
  93. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/api_client.py +0 -0
  94. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/assets_service.py +0 -0
  95. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/buckets_service.py +0 -0
  96. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/context_grounding_service.py +0 -0
  97. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/folder_service.py +0 -0
  98. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/jobs_service.py +0 -0
  99. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/llm_gateway_service.py +0 -0
  100. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/processes_service.py +0 -0
  101. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_services/queues_service.py +0 -0
  102. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_uipath.py +0 -0
  103. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/__init__.py +0 -0
  104. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_endpoint.py +0 -0
  105. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_infer_bindings.py +0 -0
  106. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_logs.py +0 -0
  107. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_request_override.py +0 -0
  108. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_request_spec.py +0 -0
  109. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/_user_agent.py +0 -0
  110. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/_utils/constants.py +0 -0
  111. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/__init__.py +0 -0
  112. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/action_schema.py +0 -0
  113. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/actions.py +0 -0
  114. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/assets.py +0 -0
  115. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/connections.py +0 -0
  116. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/context_grounding.py +0 -0
  117. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/context_grounding_index.py +0 -0
  118. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/errors.py +0 -0
  119. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/exceptions.py +0 -0
  120. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/interrupt_models.py +0 -0
  121. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/job.py +0 -0
  122. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/llm_gateway.py +0 -0
  123. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/processes.py +0 -0
  124. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/models/queues.py +0 -0
  125. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/py.typed +0 -0
  126. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/tracing/__init__.py +0 -0
  127. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/tracing/_otel_exporters.py +0 -0
  128. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/tracing/_traced.py +0 -0
  129. {uipath-2.0.40 → uipath-2.0.42}/src/uipath/tracing/_utils.py +0 -0
  130. {uipath-2.0.40 → uipath-2.0.42}/tests/__init__.py +0 -0
  131. {uipath-2.0.40 → uipath-2.0.42}/tests/cli/test_init.py +0 -0
  132. {uipath-2.0.40 → uipath-2.0.42}/tests/conftest.py +0 -0
  133. {uipath-2.0.40 → uipath-2.0.42}/tests/sdk/services/test_llm_integration.py +0 -0
  134. {uipath-2.0.40 → uipath-2.0.42}/tests/sdk/services/test_llm_service.py +0 -0
  135. {uipath-2.0.40 → uipath-2.0.42}/tests/sdk/services/test_uipath_llm_integration.py +0 -0
  136. {uipath-2.0.40 → uipath-2.0.42}/tests/sdk/test_config.py +0 -0
  137. {uipath-2.0.40 → uipath-2.0.42}/tests/tracing/test_otel_exporters.py +0 -0
  138. {uipath-2.0.40 → uipath-2.0.42}/tests/tracing/test_span_utils.py +0 -0
  139. {uipath-2.0.40 → uipath-2.0.42}/tests/tracing/test_traced.py +0 -0
  140. {uipath-2.0.40 → uipath-2.0.42}/tests/tracing/test_tracing_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: uipath
3
- Version: 2.0.40
3
+ Version: 2.0.42
4
4
  Summary: Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools.
5
5
  Project-URL: Homepage, https://uipath.com
6
6
  Project-URL: Repository, https://github.com/UiPath/uipath-python
@@ -0,0 +1 @@
1
+ ::: uipath._services.connections_service
@@ -33,3 +33,9 @@ observer.observe(document.body, {
33
33
  attributes: true,
34
34
  attributeFilter: ["data-md-color-media"],
35
35
  });
36
+
37
+ document$.subscribe(() => {
38
+ document.querySelectorAll(".headerlink").forEach((link) => {
39
+ link.setAttribute("data-clipboard-text", link.href);
40
+ });
41
+ });
@@ -17,6 +17,16 @@
17
17
  background-color: #ffffff !important;
18
18
  color: #182027 !important;
19
19
  }
20
+
21
+ .md-nav__item--section {
22
+ &:after {
23
+ background-color: #182027 !important;
24
+ }
25
+
26
+ &>.md-nav__link[for] {
27
+ color: #182027 !important;
28
+ }
29
+ }
20
30
  }
21
31
 
22
32
  [data-md-color-scheme=slate] {
@@ -41,7 +51,15 @@
41
51
  color: #ffffff !important;
42
52
  }
43
53
 
54
+ .md-nav__item--section {
55
+ &:after {
56
+ background-color: #ffffff !important;
57
+ }
44
58
 
59
+ &>.md-nav__link[for] {
60
+ color: #ffffff !important;
61
+ }
62
+ }
45
63
  }
46
64
 
47
65
  .md-header {
@@ -62,8 +80,7 @@
62
80
  a[href^="https://"]:not(.md-source) {
63
81
  &::after {
64
82
  content: "↗";
65
- font-size: 0.8em;
66
- margin-left: 0.2em;
83
+ font-size: 1em;
67
84
  }
68
85
  }
69
86
 
@@ -103,9 +120,23 @@ a[href^="https://"]:not(.md-source) {
103
120
 
104
121
 
105
122
  @media (min-width: 1220px) {
106
- .md-sidebar {
123
+ .md-sidebar--primary {
107
124
  .md-nav__title {
108
125
  display: none;
109
126
  }
110
127
  }
111
- }
128
+
129
+ .md-nav__item--section {
130
+ position: relative;
131
+
132
+ &:after {
133
+ content: "";
134
+ position: absolute;
135
+ bottom: 0;
136
+ left: 0;
137
+ display: block;
138
+ height: 1px;
139
+ width: 25%;
140
+ }
141
+ }
142
+ }
@@ -64,6 +64,7 @@ nav:
64
64
  - Actions: core/actions.md
65
65
  - Assets: core/assets.md
66
66
  - Buckets: core/buckets.md
67
+ - Connections: core/connections.md
67
68
  - Context Grounding: core/context_grounding.md
68
69
  - Jobs: core/jobs.md
69
70
  - Queues: core/queues.md
@@ -98,6 +99,8 @@ plugins:
98
99
  - "$"
99
100
  - ">"
100
101
  - social
102
+ - open-in-new-tab
103
+
101
104
  markdown_extensions:
102
105
  - attr_list
103
106
  - md_in_html
@@ -131,3 +134,4 @@ markdown_extensions:
131
134
  alternate_style: true
132
135
  - toc:
133
136
  title: On this page
137
+ permalink: true
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "uipath"
3
- version = "2.0.40"
3
+ version = "2.0.42"
4
4
  description = "Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools."
5
5
  readme = { file = "README.md", content-type = "text/markdown" }
6
6
  requires-python = ">=3.10"
@@ -57,6 +57,7 @@ dev = [
57
57
  "mkdocs-simple-hooks>=0.1.5",
58
58
  "mkdocs-click>=0.9.0",
59
59
  "pytest-asyncio>=0.26.0",
60
+ "mkdocs-open-in-new-tab>=1.0.8",
60
61
  ]
61
62
 
62
63
  [project.optional-dependencies]
@@ -201,6 +201,14 @@ def generate_package_descriptor_content(entryPoints):
201
201
  return package_descriptor_content
202
202
 
203
203
 
204
+ def is_venv_dir(d):
205
+ return (
206
+ os.path.exists(os.path.join(d, "Scripts", "activate"))
207
+ if os.name == "nt"
208
+ else os.path.exists(os.path.join(d, "bin", "activate"))
209
+ )
210
+
211
+
204
212
  def pack_fn(projectName, description, entryPoints, version, authors, directory):
205
213
  operate_file = generate_operate_file(entryPoints)
206
214
  entrypoints_file = generate_entrypoints_file(entryPoints)
@@ -264,8 +272,12 @@ def pack_fn(projectName, description, entryPoints, version, authors, directory):
264
272
 
265
273
  # Walk through directory and add all files with extensions in the allowlist
266
274
  for root, dirs, files in os.walk(directory):
267
- # Skip all directories that start with .
268
- dirs[:] = [d for d in dirs if not d.startswith(".")]
275
+ # Skip all directories that start with . or are a venv
276
+ dirs[:] = [
277
+ d
278
+ for d in dirs
279
+ if not d.startswith(".") and not is_venv_dir(os.path.join(root, d))
280
+ ]
269
281
 
270
282
  for file in files:
271
283
  file_extension = os.path.splitext(file)[1].lower()
@@ -415,11 +415,18 @@ class ActionsService(FolderContext, BaseService):
415
415
  if len(deployed_apps) > 1 and not app_folder_path:
416
416
  raise Exception("Multiple app schemas found")
417
417
  try:
418
- return next(
419
- app
420
- for app in deployed_apps
421
- if app["deploymentFolder"]["fullyQualifiedName"] == app_folder_path
422
- )
418
+ if app_folder_path:
419
+ return next(
420
+ app
421
+ for app in deployed_apps
422
+ if app["deploymentFolder"]["fullyQualifiedName"] == app_folder_path
423
+ )
424
+ else:
425
+ return next(
426
+ app
427
+ for app in deployed_apps
428
+ if app["deploymentFolder"]["key"] == self._folder_key
429
+ )
423
430
  except StopIteration:
424
431
  raise KeyError from StopIteration
425
432
 
@@ -1,77 +1,24 @@
1
- import importlib
2
1
  import logging
3
- from typing import Any, Dict, Protocol, TypeVar, Union
4
2
 
5
3
  from .._config import Config
6
4
  from .._execution_context import ExecutionContext
7
5
  from .._utils import Endpoint, RequestSpec
8
- from .._utils.constants import ENTRYPOINT
9
6
  from ..models import Connection, ConnectionToken
10
7
  from ..tracing._traced import traced
11
8
  from ._base_service import BaseService
12
9
 
13
- T_co = TypeVar("T_co", covariant=True)
14
-
15
10
  logger: logging.Logger = logging.getLogger("uipath")
16
11
 
17
12
 
18
- class PluginNotFoundError(AttributeError):
19
- """Raised when a plugin is not installed or failed to load."""
20
-
21
- pass
22
-
23
-
24
- class Connector(Protocol[T_co]):
25
- def __call__(self, *, client: Any, instance_id: Union[str, int]) -> T_co: ...
26
-
27
-
28
13
  class ConnectionsService(BaseService):
29
14
  """Service for managing UiPath external service connections.
30
15
 
31
- This service provides methods to retrieve and manage connections to external
32
- systems and services that your automation processes interact with. It supports
33
- both direct connection information retrieval and secure token management.
34
-
35
- The service implements a flexible connector system that allows for type-safe
36
- instantiation of specific service connectors, making it easier to interact
37
- with different types of external services.
16
+ This service provides methods to retrieve direct connection information retrieval
17
+ and secure token management.
38
18
  """
39
19
 
40
20
  def __init__(self, config: Config, execution_context: ExecutionContext) -> None:
41
21
  super().__init__(config=config, execution_context=execution_context)
42
- self._plugins: Dict[str, Any] = {}
43
- self._plugins_loaded = False
44
- self._load_connectors()
45
-
46
- def __call__(self, connector: Connector[T_co], key: str) -> T_co:
47
- connection = self.retrieve(key)
48
- return connector(client=self.client, instance_id=connection.element_instance_id)
49
-
50
- def __getattr__(self, name: str) -> Any:
51
- """Get a plugin by name.
52
-
53
- Args:
54
- name: The name of the plugin to get
55
-
56
- Returns:
57
- The plugin instance
58
-
59
- Raises:
60
- PluginNotFoundError: If the plugin is not installed
61
- ImportError: If the plugin fails to load
62
- """
63
- if not self._plugins_loaded:
64
- self._load_connectors()
65
-
66
- if name in self._plugins:
67
- return self._plugins[name]
68
-
69
- try:
70
- plugin: Any = getattr(self.client, name)
71
- self._plugins[name] = plugin
72
- return plugin
73
- except AttributeError as e:
74
- raise PluginNotFoundError(f"Plugin '{name}' is not installed") from e
75
22
 
76
23
  @traced(
77
24
  name="connections_retrieve",
@@ -177,30 +124,3 @@ class ConnectionsService(BaseService):
177
124
  endpoint=Endpoint(f"/connections_/api/v1/Connections/{key}/token"),
178
125
  params={"type": "direct"},
179
126
  )
180
-
181
- def _load_connectors(self) -> None:
182
- """Load all available connector plugins.
183
-
184
- Raises:
185
- ImportError: If a plugin fails to load
186
- """
187
- try:
188
- entry_points: Any = importlib.metadata.entry_points()
189
- if hasattr(entry_points, "select"):
190
- connectors = list(entry_points.select(group=ENTRYPOINT))
191
- else:
192
- connectors = list(entry_points.get(ENTRYPOINT, []))
193
-
194
- for entry_point in connectors:
195
- try:
196
- register_func = entry_point.load()
197
- register_func(self)
198
- except Exception as e:
199
- logger.error(
200
- f"[ERROR] Failed to load plugin {entry_point.name}: {str(e)}"
201
- )
202
-
203
- self._plugins_loaded = True
204
- except Exception as e:
205
- self._plugins_loaded = False
206
- raise ImportError(f"Failed to load plugins: {str(e)}") from e