uipath 2.0.76__tar.gz → 2.0.77__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 (199) hide show
  1. {uipath-2.0.76 → uipath-2.0.77}/PKG-INFO +1 -1
  2. {uipath-2.0.76 → uipath-2.0.77}/pyproject.toml +1 -1
  3. uipath-2.0.77/src/uipath/_cli/_utils/_constants.py +58 -0
  4. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_pack.py +2 -3
  5. {uipath-2.0.76 → uipath-2.0.77}/uv.lock +1700 -1699
  6. uipath-2.0.76/src/uipath/_cli/_utils/_constants.py +0 -1
  7. {uipath-2.0.76 → uipath-2.0.77}/.cursorrules +0 -0
  8. {uipath-2.0.76 → uipath-2.0.77}/.editorconfig +0 -0
  9. {uipath-2.0.76 → uipath-2.0.77}/.gitattributes +0 -0
  10. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/cd.yml +0 -0
  11. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/ci.yml +0 -0
  12. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/commitlint.yml +0 -0
  13. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/lint.yml +0 -0
  14. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/publish-dev.yml +0 -0
  15. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/publish-docs.yml +0 -0
  16. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/slack.yml +0 -0
  17. {uipath-2.0.76 → uipath-2.0.77}/.github/workflows/test.yml +0 -0
  18. {uipath-2.0.76 → uipath-2.0.77}/.gitignore +0 -0
  19. {uipath-2.0.76 → uipath-2.0.77}/.pre-commit-config.yaml +0 -0
  20. {uipath-2.0.76 → uipath-2.0.77}/.python-version +0 -0
  21. {uipath-2.0.76 → uipath-2.0.77}/.vscode/extensions.json +0 -0
  22. {uipath-2.0.76 → uipath-2.0.77}/.vscode/launch.json +0 -0
  23. {uipath-2.0.76 → uipath-2.0.77}/.vscode/settings.json +0 -0
  24. {uipath-2.0.76 → uipath-2.0.77}/CONTRIBUTING.md +0 -0
  25. {uipath-2.0.76 → uipath-2.0.77}/LICENSE +0 -0
  26. {uipath-2.0.76 → uipath-2.0.77}/README.md +0 -0
  27. {uipath-2.0.76 → uipath-2.0.77}/docs/CONTRIBUTING.md +0 -0
  28. {uipath-2.0.76 → uipath-2.0.77}/docs/FAQ.md +0 -0
  29. {uipath-2.0.76 → uipath-2.0.77}/docs/assets/env-preparation-failed-dark.png +0 -0
  30. {uipath-2.0.76 → uipath-2.0.77}/docs/assets/env-preparation-failed-light.png +0 -0
  31. {uipath-2.0.76 → uipath-2.0.77}/docs/assets/favicon.png +0 -0
  32. {uipath-2.0.76 → uipath-2.0.77}/docs/assets/logo-dark.svg +0 -0
  33. {uipath-2.0.76 → uipath-2.0.77}/docs/assets/logo-light.svg +0 -0
  34. {uipath-2.0.76 → uipath-2.0.77}/docs/cli/index.md +0 -0
  35. {uipath-2.0.76 → uipath-2.0.77}/docs/core/actions.md +0 -0
  36. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/cloud_env_var_dark.gif +0 -0
  37. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/cloud_env_var_light.gif +0 -0
  38. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/cloud_env_var_secret_dark.png +0 -0
  39. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/cloud_env_var_secret_light.png +0 -0
  40. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/copy_path_dark.png +0 -0
  41. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets/copy_path_light.png +0 -0
  42. {uipath-2.0.76 → uipath-2.0.77}/docs/core/assets.md +0 -0
  43. {uipath-2.0.76 → uipath-2.0.77}/docs/core/attachments.md +0 -0
  44. {uipath-2.0.76 → uipath-2.0.77}/docs/core/buckets.md +0 -0
  45. {uipath-2.0.76 → uipath-2.0.77}/docs/core/connections.md +0 -0
  46. {uipath-2.0.76 → uipath-2.0.77}/docs/core/context_grounding.md +0 -0
  47. {uipath-2.0.76 → uipath-2.0.77}/docs/core/environment_variables.md +0 -0
  48. {uipath-2.0.76 → uipath-2.0.77}/docs/core/getting_started.md +0 -0
  49. {uipath-2.0.76 → uipath-2.0.77}/docs/core/jobs.md +0 -0
  50. {uipath-2.0.76 → uipath-2.0.77}/docs/core/processes.md +0 -0
  51. {uipath-2.0.76 → uipath-2.0.77}/docs/core/queues.md +0 -0
  52. {uipath-2.0.76 → uipath-2.0.77}/docs/core/traced.md +0 -0
  53. {uipath-2.0.76 → uipath-2.0.77}/docs/hooks.py +0 -0
  54. {uipath-2.0.76 → uipath-2.0.77}/docs/index.md +0 -0
  55. {uipath-2.0.76 → uipath-2.0.77}/docs/javascripts/extra.js +0 -0
  56. {uipath-2.0.76 → uipath-2.0.77}/docs/overrides/main.html +0 -0
  57. {uipath-2.0.76 → uipath-2.0.77}/docs/overrides/partials/actions.html +0 -0
  58. {uipath-2.0.76 → uipath-2.0.77}/docs/overrides/partials/logo.html +0 -0
  59. {uipath-2.0.76 → uipath-2.0.77}/docs/release_policy.md +0 -0
  60. {uipath-2.0.76 → uipath-2.0.77}/docs/stylesheets/extra.css +0 -0
  61. {uipath-2.0.76 → uipath-2.0.77}/justfile +0 -0
  62. {uipath-2.0.76 → uipath-2.0.77}/mkdocs.yml +0 -0
  63. {uipath-2.0.76 → uipath-2.0.77}/py.typed +0 -0
  64. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/__init__.py +0 -0
  65. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/README.md +0 -0
  66. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/__init__.py +0 -0
  67. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_auth_server.py +0 -0
  68. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_client_credentials.py +0 -0
  69. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_models.py +0 -0
  70. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_oidc_utils.py +0 -0
  71. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_portal_service.py +0 -0
  72. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/_utils.py +0 -0
  73. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/auth_config.json +0 -0
  74. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/index.html +0 -0
  75. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/localhost.crt +0 -0
  76. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_auth/localhost.key +0 -0
  77. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_runtime/_contracts.py +0 -0
  78. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_runtime/_escalation.py +0 -0
  79. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_runtime/_hitl.py +0 -0
  80. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_runtime/_logging.py +0 -0
  81. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_runtime/_runtime.py +0 -0
  82. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_templates/.psmdcp.template +0 -0
  83. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_templates/.rels.template +0 -0
  84. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_templates/[Content_Types].xml.template +0 -0
  85. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_templates/main.py.template +0 -0
  86. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_templates/package.nuspec.template +0 -0
  87. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_common.py +0 -0
  88. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_console.py +0 -0
  89. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_debug.py +0 -0
  90. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_folders.py +0 -0
  91. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_input_args.py +0 -0
  92. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_parse_ast.py +0 -0
  93. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_processes.py +0 -0
  94. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/_utils/_tracing.py +0 -0
  95. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_auth.py +0 -0
  96. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_deploy.py +0 -0
  97. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_init.py +0 -0
  98. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_invoke.py +0 -0
  99. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_new.py +0 -0
  100. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_publish.py +0 -0
  101. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/cli_run.py +0 -0
  102. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/middlewares.py +0 -0
  103. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_cli/spinner.py +0 -0
  104. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_config.py +0 -0
  105. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_execution_context.py +0 -0
  106. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_folder_context.py +0 -0
  107. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/__init__.py +0 -0
  108. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/_base_service.py +0 -0
  109. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/actions_service.py +0 -0
  110. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/api_client.py +0 -0
  111. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/assets_service.py +0 -0
  112. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/attachments_service.py +0 -0
  113. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/buckets_service.py +0 -0
  114. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/connections_service.py +0 -0
  115. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/context_grounding_service.py +0 -0
  116. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/folder_service.py +0 -0
  117. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/jobs_service.py +0 -0
  118. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/llm_gateway_service.py +0 -0
  119. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/processes_service.py +0 -0
  120. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_services/queues_service.py +0 -0
  121. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_uipath.py +0 -0
  122. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/__init__.py +0 -0
  123. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_endpoint.py +0 -0
  124. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_infer_bindings.py +0 -0
  125. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_logs.py +0 -0
  126. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_read_overwrites.py +0 -0
  127. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_request_override.py +0 -0
  128. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_request_spec.py +0 -0
  129. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_ssl_context.py +0 -0
  130. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_url.py +0 -0
  131. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/_user_agent.py +0 -0
  132. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/_utils/constants.py +0 -0
  133. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/__init__.py +0 -0
  134. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/action_schema.py +0 -0
  135. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/actions.py +0 -0
  136. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/assets.py +0 -0
  137. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/attachment.py +0 -0
  138. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/buckets.py +0 -0
  139. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/connections.py +0 -0
  140. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/context_grounding.py +0 -0
  141. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/context_grounding_index.py +0 -0
  142. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/errors.py +0 -0
  143. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/exceptions.py +0 -0
  144. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/interrupt_models.py +0 -0
  145. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/job.py +0 -0
  146. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/llm_gateway.py +0 -0
  147. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/processes.py +0 -0
  148. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/models/queues.py +0 -0
  149. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/py.typed +0 -0
  150. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/telemetry/__init__.py +0 -0
  151. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/telemetry/_constants.py +0 -0
  152. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/telemetry/_track.py +0 -0
  153. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/tracing/__init__.py +0 -0
  154. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/tracing/_otel_exporters.py +0 -0
  155. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/tracing/_traced.py +0 -0
  156. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/tracing/_utils.py +0 -0
  157. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/utils/__init__.py +0 -0
  158. {uipath-2.0.76 → uipath-2.0.77}/src/uipath/utils/_endpoints_manager.py +0 -0
  159. {uipath-2.0.76 → uipath-2.0.77}/tests/__init__.py +0 -0
  160. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/conftest.py +0 -0
  161. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/mocks/bindings_script.py +0 -0
  162. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/mocks/pyproject.toml +0 -0
  163. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/mocks/simple_script.py +0 -0
  164. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/mocks/uipath-mock.json +0 -0
  165. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/mocks/uipath-simple-script-mock.json +0 -0
  166. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_hitl.py +0 -0
  167. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_init.py +0 -0
  168. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_invoke.py +0 -0
  169. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_new.py +0 -0
  170. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_pack.py +0 -0
  171. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_publish.py +0 -0
  172. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_run.py +0 -0
  173. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/test_utils.py +0 -0
  174. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/utils/project_details.py +0 -0
  175. {uipath-2.0.76 → uipath-2.0.77}/tests/cli/utils/uipath_json.py +0 -0
  176. {uipath-2.0.76 → uipath-2.0.77}/tests/conftest.py +0 -0
  177. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/conftest.py +0 -0
  178. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_actions_service.py +0 -0
  179. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_api_client.py +0 -0
  180. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_assets_service.py +0 -0
  181. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_attachments_service.py +0 -0
  182. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_base_service.py +0 -0
  183. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_buckets_service.py +0 -0
  184. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_connections_service.py +0 -0
  185. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_context_grounding_service.py +0 -0
  186. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_folder_service.py +0 -0
  187. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_jobs_service.py +0 -0
  188. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_llm_integration.py +0 -0
  189. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_llm_service.py +0 -0
  190. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_processes_service.py +0 -0
  191. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_queues_service.py +0 -0
  192. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/services/test_uipath_llm_integration.py +0 -0
  193. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/test_bindings_inference.py +0 -0
  194. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/test_config.py +0 -0
  195. {uipath-2.0.76 → uipath-2.0.77}/tests/sdk/test_overwrites.py +0 -0
  196. {uipath-2.0.76 → uipath-2.0.77}/tests/tracing/test_otel_exporters.py +0 -0
  197. {uipath-2.0.76 → uipath-2.0.77}/tests/tracing/test_span_utils.py +0 -0
  198. {uipath-2.0.76 → uipath-2.0.77}/tests/tracing/test_traced.py +0 -0
  199. {uipath-2.0.76 → uipath-2.0.77}/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.76
3
+ Version: 2.0.77
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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "uipath"
3
- version = "2.0.76"
3
+ version = "2.0.77"
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"
@@ -0,0 +1,58 @@
1
+ BINDINGS_VERSION = "2.2"
2
+
3
+ # Binary file extension categories
4
+ IMAGE_EXTENSIONS = {
5
+ ".png",
6
+ ".jpg",
7
+ ".jpeg",
8
+ ".gif",
9
+ ".bmp",
10
+ ".ico",
11
+ ".tiff",
12
+ ".webp",
13
+ ".svg",
14
+ }
15
+
16
+ DOCUMENT_EXTENSIONS = {".pdf", ".docx", ".pptx", ".xlsx", ".xls"}
17
+
18
+ ARCHIVE_EXTENSIONS = {".zip", ".tar", ".gz", ".rar", ".7z", ".bz2", ".xz"}
19
+
20
+ MEDIA_EXTENSIONS = {
21
+ ".mp3",
22
+ ".wav",
23
+ ".flac",
24
+ ".aac",
25
+ ".mp4",
26
+ ".avi",
27
+ ".mov",
28
+ ".mkv",
29
+ ".wmv",
30
+ }
31
+
32
+ FONT_EXTENSIONS = {".woff", ".woff2", ".ttf", ".otf", ".eot"}
33
+
34
+ EXECUTABLE_EXTENSIONS = {".exe", ".dll", ".so", ".dylib", ".bin"}
35
+
36
+ DATABASE_EXTENSIONS = {".db", ".sqlite", ".sqlite3"}
37
+
38
+ PYTHON_BINARY_EXTENSIONS = {".pickle", ".pkl"}
39
+
40
+ SPECIAL_EXTENSIONS = {""} # Extensionless binary files
41
+
42
+ # Pre-compute the union for optimal performance
43
+ BINARY_EXTENSIONS = (
44
+ IMAGE_EXTENSIONS
45
+ | DOCUMENT_EXTENSIONS
46
+ | ARCHIVE_EXTENSIONS
47
+ | MEDIA_EXTENSIONS
48
+ | FONT_EXTENSIONS
49
+ | EXECUTABLE_EXTENSIONS
50
+ | DATABASE_EXTENSIONS
51
+ | PYTHON_BINARY_EXTENSIONS
52
+ | SPECIAL_EXTENSIONS
53
+ )
54
+
55
+
56
+ def is_binary_file(file_extension: str) -> bool:
57
+ """Determine if a file should be treated as binary."""
58
+ return file_extension.lower() in BINARY_EXTENSIONS
@@ -17,6 +17,7 @@ except ImportError:
17
17
 
18
18
  from ..telemetry import track
19
19
  from ._utils._console import ConsoleLogger
20
+ from ._utils._constants import is_binary_file
20
21
 
21
22
  console = ConsoleLogger()
22
23
 
@@ -265,8 +266,6 @@ def pack_fn(
265
266
  # Define the allowlist of file extensions to include
266
267
  file_extensions_included = [".py", ".mermaid", ".json", ".yaml", ".yml"]
267
268
  files_included = []
268
- # Binary files that should be read in binary mode
269
- binary_extensions = [".exe", "", ".xlsx", ".xls"]
270
269
 
271
270
  with open(config_path, "r") as f:
272
271
  config_data = json.load(f)
@@ -328,7 +327,7 @@ def pack_fn(
328
327
  if file_extension in file_extensions_included or file in files_included:
329
328
  file_path = os.path.join(root, file)
330
329
  rel_path = os.path.relpath(file_path, directory)
331
- if file_extension in binary_extensions:
330
+ if is_binary_file(file_extension):
332
331
  # Read binary files in binary mode
333
332
  with open(file_path, "rb") as f:
334
333
  z.writestr(f"content/{rel_path}", f.read())