unstructured-ingest 0.5.21__tar.gz → 0.5.25__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 unstructured-ingest might be problematic. Click here for more details.

Files changed (599) hide show
  1. {unstructured_ingest-0.5.21/unstructured_ingest.egg-info → unstructured_ingest-0.5.25}/PKG-INFO +25 -25
  2. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_vectara.py +67 -55
  3. unstructured_ingest-0.5.25/unstructured_ingest/__version__.py +1 -0
  4. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/__init__.py +8 -1
  5. unstructured_ingest-0.5.25/unstructured_ingest/v2/interfaces/file_data.py +13 -0
  6. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes_table.py +62 -18
  7. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/elasticsearch/elasticsearch.py +7 -1
  8. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/elasticsearch/opensearch.py +7 -1
  9. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/s3.py +10 -1
  10. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/sql.py +6 -3
  11. unstructured_ingest-0.5.25/unstructured_ingest/v2/types/__init__.py +0 -0
  12. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25/unstructured_ingest.egg-info}/PKG-INFO +25 -25
  13. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest.egg-info/SOURCES.txt +3 -1
  14. unstructured_ingest-0.5.21/unstructured_ingest/__version__.py +0 -1
  15. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/LICENSE.md +0 -0
  16. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/MANIFEST.in +0 -0
  17. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/README.md +0 -0
  18. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/pyproject.toml +0 -0
  19. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/setup.cfg +0 -0
  20. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/setup.py +0 -0
  21. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/__init__.py +0 -0
  22. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/__init__.py +0 -0
  23. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/chunkers/__init__.py +0 -0
  24. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/chunkers/test_chunkers.py +0 -0
  25. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/__init__.py +0 -0
  26. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/conftest.py +0 -0
  27. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/databricks/__init__.py +0 -0
  28. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/databricks/test_volumes_native.py +0 -0
  29. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/discord/__init__.py +0 -0
  30. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/discord/test_discord.py +0 -0
  31. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/duckdb/__init__.py +0 -0
  32. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/duckdb/conftest.py +0 -0
  33. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/duckdb/test_duckdb.py +0 -0
  34. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/duckdb/test_motherduck.py +0 -0
  35. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/elasticsearch/__init__.py +0 -0
  36. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/elasticsearch/conftest.py +0 -0
  37. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/elasticsearch/test_elasticsearch.py +0 -0
  38. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/elasticsearch/test_opensearch.py +0 -0
  39. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/__init__.py +0 -0
  40. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_databricks_delta_tables.py +0 -0
  41. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_postgres.py +0 -0
  42. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_singlestore.py +0 -0
  43. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_snowflake.py +0 -0
  44. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_sqlite.py +0 -0
  45. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/sql/test_vastdb.py +0 -0
  46. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_astradb.py +0 -0
  47. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_azure_ai_search.py +0 -0
  48. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_chroma.py +0 -0
  49. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_confluence.py +0 -0
  50. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_delta_table.py +0 -0
  51. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_dropbox.py +0 -0
  52. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_google_drive.py +0 -0
  53. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_jira.py +0 -0
  54. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_lancedb.py +0 -0
  55. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_milvus.py +0 -0
  56. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_mongodb.py +0 -0
  57. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_neo4j.py +0 -0
  58. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_notion.py +0 -0
  59. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_onedrive.py +0 -0
  60. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_pinecone.py +0 -0
  61. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_qdrant.py +0 -0
  62. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_redis.py +0 -0
  63. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_s3.py +0 -0
  64. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_sharepoint.py +0 -0
  65. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/test_zendesk.py +0 -0
  66. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/__init__.py +0 -0
  67. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/constants.py +0 -0
  68. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/docker.py +0 -0
  69. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/docker_compose.py +0 -0
  70. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/validation/__init__.py +0 -0
  71. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/validation/destination.py +0 -0
  72. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/validation/equality.py +0 -0
  73. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/validation/source.py +0 -0
  74. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/utils/validation/utils.py +0 -0
  75. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/weaviate/__init__.py +0 -0
  76. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/weaviate/conftest.py +0 -0
  77. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/weaviate/test_cloud.py +0 -0
  78. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/connectors/weaviate/test_local.py +0 -0
  79. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/__init__.py +0 -0
  80. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/conftest.py +0 -0
  81. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_azure_openai.py +0 -0
  82. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_bedrock.py +0 -0
  83. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_huggingface.py +0 -0
  84. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_mixedbread.py +0 -0
  85. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_octoai.py +0 -0
  86. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_openai.py +0 -0
  87. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_togetherai.py +0 -0
  88. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_vertexai.py +0 -0
  89. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/test_voyageai.py +0 -0
  90. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/embedders/utils.py +0 -0
  91. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/partitioners/__init__.py +0 -0
  92. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/partitioners/test_partitioner.py +0 -0
  93. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/integration/utils.py +0 -0
  94. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/__init__.py +0 -0
  95. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/__init__.py +0 -0
  96. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/test_mixedbreadai.py +0 -0
  97. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/test_octoai.py +0 -0
  98. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/test_openai.py +0 -0
  99. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/test_vertexai.py +0 -0
  100. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/embed/test_voyageai.py +0 -0
  101. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/test_error.py +0 -0
  102. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/test_html.py +0 -0
  103. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/test_logger.py +0 -0
  104. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/test_utils.py +0 -0
  105. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/__init__.py +0 -0
  106. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/chunkers/__init__.py +0 -0
  107. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/chunkers/test_chunkers.py +0 -0
  108. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/__init__.py +0 -0
  109. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/databricks/__init__.py +0 -0
  110. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/databricks/test_volumes_table.py +0 -0
  111. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/ibm_watsonx/__init__.py +0 -0
  112. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/ibm_watsonx/test_ibm_watsonx_s3.py +0 -0
  113. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/motherduck/__init__.py +0 -0
  114. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/motherduck/test_base.py +0 -0
  115. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/sql/__init__.py +0 -0
  116. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/sql/test_sql.py +0 -0
  117. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/test_confluence.py +0 -0
  118. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/connectors/test_jira.py +0 -0
  119. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/__init__.py +0 -0
  120. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_bedrock.py +0 -0
  121. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_huggingface.py +0 -0
  122. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_mixedbread.py +0 -0
  123. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_octoai.py +0 -0
  124. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_openai.py +0 -0
  125. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_togetherai.py +0 -0
  126. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_vertexai.py +0 -0
  127. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/embedders/test_voyageai.py +0 -0
  128. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/partitioners/__init__.py +0 -0
  129. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/partitioners/test_partitioner.py +0 -0
  130. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/test_interfaces.py +0 -0
  131. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/test_utils.py +0 -0
  132. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/utils/__init__.py +0 -0
  133. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/test/unit/v2/utils/data_generator.py +0 -0
  134. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/__init__.py +0 -0
  135. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/__init__.py +0 -0
  136. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/base/__init__.py +0 -0
  137. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/base/cmd.py +0 -0
  138. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/base/dest.py +0 -0
  139. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/base/src.py +0 -0
  140. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cli.py +0 -0
  141. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmd_factory.py +0 -0
  142. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/__init__.py +0 -0
  143. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/airtable.py +0 -0
  144. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/astradb.py +0 -0
  145. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/azure_ai_search.py +0 -0
  146. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/biomed.py +0 -0
  147. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/chroma.py +0 -0
  148. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/clarifai.py +0 -0
  149. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/confluence.py +0 -0
  150. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/databricks_volumes.py +0 -0
  151. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/delta_table.py +0 -0
  152. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/discord.py +0 -0
  153. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/elasticsearch.py +0 -0
  154. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/__init__.py +0 -0
  155. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/azure.py +0 -0
  156. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/box.py +0 -0
  157. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/dropbox.py +0 -0
  158. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/fsspec.py +0 -0
  159. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/gcs.py +0 -0
  160. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/s3.py +0 -0
  161. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/fsspec/sftp.py +0 -0
  162. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/github.py +0 -0
  163. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/gitlab.py +0 -0
  164. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/google_drive.py +0 -0
  165. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/hubspot.py +0 -0
  166. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/jira.py +0 -0
  167. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/kafka.py +0 -0
  168. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/local.py +0 -0
  169. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/mongodb.py +0 -0
  170. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/notion.py +0 -0
  171. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/onedrive.py +0 -0
  172. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/opensearch.py +0 -0
  173. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/outlook.py +0 -0
  174. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/pinecone.py +0 -0
  175. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/qdrant.py +0 -0
  176. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/reddit.py +0 -0
  177. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/salesforce.py +0 -0
  178. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/sharepoint.py +0 -0
  179. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/slack.py +0 -0
  180. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/sql.py +0 -0
  181. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/vectara.py +0 -0
  182. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/weaviate.py +0 -0
  183. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/cmds/wikipedia.py +0 -0
  184. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/common.py +0 -0
  185. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/interfaces.py +0 -0
  186. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/cli/utils.py +0 -0
  187. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/__init__.py +0 -0
  188. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/airtable.py +0 -0
  189. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/astradb.py +0 -0
  190. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/azure_ai_search.py +0 -0
  191. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/biomed.py +0 -0
  192. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/chroma.py +0 -0
  193. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/clarifai.py +0 -0
  194. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/confluence.py +0 -0
  195. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/databricks_volumes.py +0 -0
  196. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/delta_table.py +0 -0
  197. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/discord.py +0 -0
  198. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/elasticsearch.py +0 -0
  199. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/__init__.py +0 -0
  200. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/azure.py +0 -0
  201. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/box.py +0 -0
  202. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/dropbox.py +0 -0
  203. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/fsspec.py +0 -0
  204. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/gcs.py +0 -0
  205. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/s3.py +0 -0
  206. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/fsspec/sftp.py +0 -0
  207. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/git.py +0 -0
  208. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/github.py +0 -0
  209. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/gitlab.py +0 -0
  210. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/google_drive.py +0 -0
  211. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/hubspot.py +0 -0
  212. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/jira.py +0 -0
  213. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/kafka.py +0 -0
  214. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/local.py +0 -0
  215. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/mongodb.py +0 -0
  216. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/__init__.py +0 -0
  217. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/client.py +0 -0
  218. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/connector.py +0 -0
  219. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/helpers.py +0 -0
  220. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/interfaces.py +0 -0
  221. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/__init__.py +0 -0
  222. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/block.py +0 -0
  223. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/__init__.py +0 -0
  224. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/bookmark.py +0 -0
  225. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/breadcrumb.py +0 -0
  226. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/bulleted_list_item.py +0 -0
  227. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/callout.py +0 -0
  228. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/child_database.py +0 -0
  229. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/child_page.py +0 -0
  230. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/code.py +0 -0
  231. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/column_list.py +0 -0
  232. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/divider.py +0 -0
  233. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/embed.py +0 -0
  234. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/equation.py +0 -0
  235. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/file.py +0 -0
  236. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/heading.py +0 -0
  237. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/image.py +0 -0
  238. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/link_preview.py +0 -0
  239. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/link_to_page.py +0 -0
  240. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/numbered_list.py +0 -0
  241. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/paragraph.py +0 -0
  242. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/pdf.py +0 -0
  243. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/quote.py +0 -0
  244. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/synced_block.py +0 -0
  245. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/table.py +0 -0
  246. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/table_of_contents.py +0 -0
  247. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/template.py +0 -0
  248. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/todo.py +0 -0
  249. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/toggle.py +0 -0
  250. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/unsupported.py +0 -0
  251. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/blocks/video.py +0 -0
  252. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database.py +0 -0
  253. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/__init__.py +0 -0
  254. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/checkbox.py +0 -0
  255. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/created_by.py +0 -0
  256. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/created_time.py +0 -0
  257. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/date.py +0 -0
  258. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/email.py +0 -0
  259. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/files.py +0 -0
  260. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/formula.py +0 -0
  261. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/last_edited_by.py +0 -0
  262. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/last_edited_time.py +0 -0
  263. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/multiselect.py +0 -0
  264. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/number.py +0 -0
  265. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/people.py +0 -0
  266. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/phone_number.py +0 -0
  267. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/relation.py +0 -0
  268. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/rich_text.py +0 -0
  269. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/rollup.py +0 -0
  270. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/select.py +0 -0
  271. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/status.py +0 -0
  272. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/title.py +0 -0
  273. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/unique_id.py +0 -0
  274. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/url.py +0 -0
  275. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/database_properties/verification.py +0 -0
  276. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/date.py +0 -0
  277. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/file.py +0 -0
  278. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/page.py +0 -0
  279. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/parent.py +0 -0
  280. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/rich_text.py +0 -0
  281. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/notion/types/user.py +0 -0
  282. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/onedrive.py +0 -0
  283. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/opensearch.py +0 -0
  284. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/outlook.py +0 -0
  285. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/pinecone.py +0 -0
  286. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/qdrant.py +0 -0
  287. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/reddit.py +0 -0
  288. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/registry.py +0 -0
  289. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/salesforce.py +0 -0
  290. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/sharepoint.py +0 -0
  291. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/slack.py +0 -0
  292. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/sql.py +0 -0
  293. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/vectara.py +0 -0
  294. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/weaviate.py +0 -0
  295. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/connector/wikipedia.py +0 -0
  296. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/__init__.py +0 -0
  297. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/azure_openai.py +0 -0
  298. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/bedrock.py +0 -0
  299. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/huggingface.py +0 -0
  300. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/interfaces.py +0 -0
  301. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/mixedbreadai.py +0 -0
  302. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/octoai.py +0 -0
  303. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/openai.py +0 -0
  304. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/togetherai.py +0 -0
  305. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/vertexai.py +0 -0
  306. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/embed/voyageai.py +0 -0
  307. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/enhanced_dataclass/__init__.py +0 -0
  308. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/enhanced_dataclass/core.py +0 -0
  309. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/enhanced_dataclass/dataclasses.py +0 -0
  310. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/enhanced_dataclass/json_mixin.py +0 -0
  311. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/error.py +0 -0
  312. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/ingest_backoff/__init__.py +0 -0
  313. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/ingest_backoff/_common.py +0 -0
  314. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/ingest_backoff/_wrapper.py +0 -0
  315. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/interfaces.py +0 -0
  316. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/logger.py +0 -0
  317. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/main.py +0 -0
  318. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/__init__.py +0 -0
  319. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/copy.py +0 -0
  320. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/doc_factory.py +0 -0
  321. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/interfaces.py +0 -0
  322. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/partition.py +0 -0
  323. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/permissions.py +0 -0
  324. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/pipeline.py +0 -0
  325. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/reformat/__init__.py +0 -0
  326. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/reformat/chunking.py +0 -0
  327. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/reformat/embedding.py +0 -0
  328. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/source.py +0 -0
  329. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/utils.py +0 -0
  330. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/pipeline/write.py +0 -0
  331. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/processor.py +0 -0
  332. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/__init__.py +0 -0
  333. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/airtable.py +0 -0
  334. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/astradb.py +0 -0
  335. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/base_runner.py +0 -0
  336. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/biomed.py +0 -0
  337. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/confluence.py +0 -0
  338. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/delta_table.py +0 -0
  339. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/discord.py +0 -0
  340. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/elasticsearch.py +0 -0
  341. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/__init__.py +0 -0
  342. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/azure.py +0 -0
  343. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/box.py +0 -0
  344. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/dropbox.py +0 -0
  345. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/fsspec.py +0 -0
  346. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/gcs.py +0 -0
  347. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/s3.py +0 -0
  348. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/fsspec/sftp.py +0 -0
  349. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/github.py +0 -0
  350. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/gitlab.py +0 -0
  351. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/google_drive.py +0 -0
  352. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/hubspot.py +0 -0
  353. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/jira.py +0 -0
  354. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/kafka.py +0 -0
  355. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/local.py +0 -0
  356. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/mongodb.py +0 -0
  357. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/notion.py +0 -0
  358. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/onedrive.py +0 -0
  359. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/opensearch.py +0 -0
  360. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/outlook.py +0 -0
  361. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/reddit.py +0 -0
  362. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/salesforce.py +0 -0
  363. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/sharepoint.py +0 -0
  364. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/slack.py +0 -0
  365. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/utils.py +0 -0
  366. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/wikipedia.py +0 -0
  367. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/__init__.py +0 -0
  368. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/astradb.py +0 -0
  369. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/azure_ai_search.py +0 -0
  370. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/base_writer.py +0 -0
  371. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/chroma.py +0 -0
  372. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/clarifai.py +0 -0
  373. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/databricks_volumes.py +0 -0
  374. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/delta_table.py +0 -0
  375. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/elasticsearch.py +0 -0
  376. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/__init__.py +0 -0
  377. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/azure.py +0 -0
  378. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/box.py +0 -0
  379. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/dropbox.py +0 -0
  380. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/gcs.py +0 -0
  381. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/fsspec/s3.py +0 -0
  382. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/kafka.py +0 -0
  383. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/mongodb.py +0 -0
  384. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/opensearch.py +0 -0
  385. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/pinecone.py +0 -0
  386. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/qdrant.py +0 -0
  387. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/sql.py +0 -0
  388. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/vectara.py +0 -0
  389. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/runner/writers/weaviate.py +0 -0
  390. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/__init__.py +0 -0
  391. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/chunking.py +0 -0
  392. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/compression.py +0 -0
  393. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/data_prep.py +0 -0
  394. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/dep_check.py +0 -0
  395. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/google_filetype.py +0 -0
  396. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/html.py +0 -0
  397. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/ndjson.py +0 -0
  398. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/string_and_date_utils.py +0 -0
  399. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/utils/table.py +0 -0
  400. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/__init__.py +0 -0
  401. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/__init__.py +0 -0
  402. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/base/__init__.py +0 -0
  403. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/base/cmd.py +0 -0
  404. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/base/dest.py +0 -0
  405. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/base/importer.py +0 -0
  406. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/base/src.py +0 -0
  407. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/cli.py +0 -0
  408. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/cmds.py +0 -0
  409. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/utils/__init__.py +0 -0
  410. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/utils/click.py +0 -0
  411. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/cli/utils/model_conversion.py +0 -0
  412. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/constants.py +0 -0
  413. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/errors.py +0 -0
  414. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/connector.py +0 -0
  415. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/downloader.py +0 -0
  416. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/indexer.py +0 -0
  417. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/process.py +0 -0
  418. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/processor.py +0 -0
  419. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/upload_stager.py +0 -0
  420. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/interfaces/uploader.py +0 -0
  421. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/logger.py +0 -0
  422. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/main.py +0 -0
  423. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/otel.py +0 -0
  424. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/__init__.py +0 -0
  425. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/interfaces.py +0 -0
  426. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/otel.py +0 -0
  427. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/pipeline.py +0 -0
  428. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/__init__.py +0 -0
  429. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/chunk.py +0 -0
  430. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/download.py +0 -0
  431. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/embed.py +0 -0
  432. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/filter.py +0 -0
  433. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/index.py +0 -0
  434. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/partition.py +0 -0
  435. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/stage.py +0 -0
  436. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/uncompress.py +0 -0
  437. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/pipeline/steps/upload.py +0 -0
  438. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/__init__.py +0 -0
  439. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/chunker.py +0 -0
  440. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connector_registry.py +0 -0
  441. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/__init__.py +0 -0
  442. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/airtable.py +0 -0
  443. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/assets/__init__.py +0 -0
  444. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/assets/weaviate_collection_config.json +0 -0
  445. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/astradb.py +0 -0
  446. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/azure_ai_search.py +0 -0
  447. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/chroma.py +0 -0
  448. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/confluence.py +0 -0
  449. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/couchbase.py +0 -0
  450. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/__init__.py +0 -0
  451. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes.py +0 -0
  452. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes_aws.py +0 -0
  453. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes_azure.py +0 -0
  454. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes_gcp.py +0 -0
  455. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/databricks/volumes_native.py +0 -0
  456. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/delta_table.py +0 -0
  457. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/discord.py +0 -0
  458. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/duckdb/__init__.py +0 -0
  459. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/duckdb/base.py +0 -0
  460. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/duckdb/duckdb.py +0 -0
  461. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/duckdb/motherduck.py +0 -0
  462. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/elasticsearch/__init__.py +0 -0
  463. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/__init__.py +0 -0
  464. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/azure.py +0 -0
  465. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/box.py +0 -0
  466. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/dropbox.py +0 -0
  467. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/fsspec.py +0 -0
  468. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/gcs.py +0 -0
  469. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/sftp.py +0 -0
  470. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/fsspec/utils.py +0 -0
  471. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/gitlab.py +0 -0
  472. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/google_drive.py +0 -0
  473. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/ibm_watsonx/__init__.py +0 -0
  474. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/ibm_watsonx/ibm_watsonx_s3.py +0 -0
  475. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/jira.py +0 -0
  476. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/kafka/__init__.py +0 -0
  477. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/kafka/cloud.py +0 -0
  478. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/kafka/kafka.py +0 -0
  479. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/kafka/local.py +0 -0
  480. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/kdbai.py +0 -0
  481. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/__init__.py +0 -0
  482. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/aws.py +0 -0
  483. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/azure.py +0 -0
  484. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/cloud.py +0 -0
  485. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/gcp.py +0 -0
  486. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/lancedb.py +0 -0
  487. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/lancedb/local.py +0 -0
  488. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/local.py +0 -0
  489. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/milvus.py +0 -0
  490. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/mongodb.py +0 -0
  491. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/neo4j.py +0 -0
  492. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/__init__.py +0 -0
  493. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/client.py +0 -0
  494. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/connector.py +0 -0
  495. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/helpers.py +0 -0
  496. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/interfaces.py +0 -0
  497. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/__init__.py +0 -0
  498. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/block.py +0 -0
  499. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/__init__.py +0 -0
  500. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/bookmark.py +0 -0
  501. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/breadcrumb.py +0 -0
  502. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/bulleted_list_item.py +0 -0
  503. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/callout.py +0 -0
  504. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/child_database.py +0 -0
  505. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/child_page.py +0 -0
  506. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/code.py +0 -0
  507. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/column_list.py +0 -0
  508. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/divider.py +0 -0
  509. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/embed.py +0 -0
  510. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/equation.py +0 -0
  511. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/file.py +0 -0
  512. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/heading.py +0 -0
  513. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/image.py +0 -0
  514. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/link_preview.py +0 -0
  515. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/link_to_page.py +0 -0
  516. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/numbered_list.py +0 -0
  517. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/paragraph.py +0 -0
  518. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/pdf.py +0 -0
  519. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/quote.py +0 -0
  520. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/synced_block.py +0 -0
  521. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/table.py +0 -0
  522. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/table_of_contents.py +0 -0
  523. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/template.py +0 -0
  524. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/todo.py +0 -0
  525. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/toggle.py +0 -0
  526. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/unsupported.py +0 -0
  527. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/blocks/video.py +0 -0
  528. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database.py +0 -0
  529. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/__init__.py +0 -0
  530. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/checkbox.py +0 -0
  531. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/created_by.py +0 -0
  532. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/created_time.py +0 -0
  533. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/date.py +0 -0
  534. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/email.py +0 -0
  535. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/files.py +0 -0
  536. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/formula.py +0 -0
  537. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/last_edited_by.py +0 -0
  538. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/last_edited_time.py +0 -0
  539. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/multiselect.py +0 -0
  540. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/number.py +0 -0
  541. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/people.py +0 -0
  542. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/phone_number.py +0 -0
  543. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/relation.py +0 -0
  544. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/rich_text.py +0 -0
  545. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/rollup.py +0 -0
  546. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/select.py +0 -0
  547. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/status.py +0 -0
  548. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/title.py +0 -0
  549. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/unique_id.py +0 -0
  550. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/url.py +0 -0
  551. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/database_properties/verification.py +0 -0
  552. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/date.py +0 -0
  553. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/file.py +0 -0
  554. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/page.py +0 -0
  555. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/parent.py +0 -0
  556. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/rich_text.py +0 -0
  557. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/notion/types/user.py +0 -0
  558. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/onedrive.py +0 -0
  559. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/outlook.py +0 -0
  560. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/pinecone.py +0 -0
  561. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/qdrant/__init__.py +0 -0
  562. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/qdrant/cloud.py +0 -0
  563. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/qdrant/local.py +0 -0
  564. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/qdrant/qdrant.py +0 -0
  565. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/qdrant/server.py +0 -0
  566. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/redisdb.py +0 -0
  567. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/salesforce.py +0 -0
  568. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sharepoint.py +0 -0
  569. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/slack.py +0 -0
  570. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/__init__.py +0 -0
  571. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/databricks_delta_tables.py +0 -0
  572. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/postgres.py +0 -0
  573. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/singlestore.py +0 -0
  574. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/snowflake.py +0 -0
  575. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/sqlite.py +0 -0
  576. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/sql/vastdb.py +0 -0
  577. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/utils.py +0 -0
  578. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/vectara.py +0 -0
  579. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/weaviate/__init__.py +0 -0
  580. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/weaviate/cloud.py +0 -0
  581. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/weaviate/embedded.py +0 -0
  582. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/weaviate/local.py +0 -0
  583. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/weaviate/weaviate.py +0 -0
  584. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/zendesk/__init__.py +0 -0
  585. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/zendesk/client.py +0 -0
  586. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/connectors/zendesk/zendesk.py +0 -0
  587. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/embedder.py +0 -0
  588. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/filter.py +0 -0
  589. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/partitioner.py +0 -0
  590. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/uncompress.py +0 -0
  591. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/utils/__init__.py +0 -0
  592. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/processes/utils/blob_storage.py +0 -0
  593. {unstructured_ingest-0.5.21/unstructured_ingest/v2/interfaces → unstructured_ingest-0.5.25/unstructured_ingest/v2/types}/file_data.py +0 -0
  594. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/unstructured_api.py +0 -0
  595. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest/v2/utils.py +0 -0
  596. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest.egg-info/dependency_links.txt +0 -0
  597. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest.egg-info/entry_points.txt +0 -0
  598. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest.egg-info/requires.txt +24 -24
  599. {unstructured_ingest-0.5.21 → unstructured_ingest-0.5.25}/unstructured_ingest.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: unstructured-ingest
3
- Version: 0.5.21
3
+ Version: 0.5.25
4
4
  Summary: A library that prepares raw documents for downstream ML tasks.
5
5
  Home-page: https://github.com/Unstructured-IO/unstructured-ingest
6
6
  Author: Unstructured Technologies
@@ -23,11 +23,11 @@ Requires-Python: >=3.9.0,<3.14
23
23
  Description-Content-Type: text/markdown
24
24
  License-File: LICENSE.md
25
25
  Requires-Dist: dataclasses_json
26
- Requires-Dist: tqdm
27
- Requires-Dist: opentelemetry-sdk
28
26
  Requires-Dist: pydantic>=2.7
29
- Requires-Dist: python-dateutil
27
+ Requires-Dist: opentelemetry-sdk
30
28
  Requires-Dist: click
29
+ Requires-Dist: tqdm
30
+ Requires-Dist: python-dateutil
31
31
  Requires-Dist: numpy
32
32
  Requires-Dist: pandas
33
33
  Provides-Extra: remote
@@ -112,13 +112,13 @@ Requires-Dist: azure-search-documents; extra == "azure-ai-search"
112
112
  Requires-Dist: numpy; extra == "azure-ai-search"
113
113
  Requires-Dist: pandas; extra == "azure-ai-search"
114
114
  Provides-Extra: biomed
115
- Requires-Dist: requests; extra == "biomed"
116
115
  Requires-Dist: bs4; extra == "biomed"
116
+ Requires-Dist: requests; extra == "biomed"
117
117
  Requires-Dist: numpy; extra == "biomed"
118
118
  Requires-Dist: pandas; extra == "biomed"
119
119
  Provides-Extra: box
120
- Requires-Dist: boxfs; extra == "box"
121
120
  Requires-Dist: fsspec; extra == "box"
121
+ Requires-Dist: boxfs; extra == "box"
122
122
  Requires-Dist: numpy; extra == "box"
123
123
  Requires-Dist: pandas; extra == "box"
124
124
  Provides-Extra: chroma
@@ -130,8 +130,8 @@ Requires-Dist: clarifai; extra == "clarifai"
130
130
  Requires-Dist: numpy; extra == "clarifai"
131
131
  Requires-Dist: pandas; extra == "clarifai"
132
132
  Provides-Extra: confluence
133
- Requires-Dist: requests; extra == "confluence"
134
133
  Requires-Dist: atlassian-python-api; extra == "confluence"
134
+ Requires-Dist: requests; extra == "confluence"
135
135
  Requires-Dist: numpy; extra == "confluence"
136
136
  Requires-Dist: pandas; extra == "confluence"
137
137
  Provides-Extra: couchbase
@@ -162,13 +162,13 @@ Requires-Dist: numpy; extra == "elasticsearch"
162
162
  Requires-Dist: pandas; extra == "elasticsearch"
163
163
  Provides-Extra: gcs
164
164
  Requires-Dist: fsspec; extra == "gcs"
165
- Requires-Dist: bs4; extra == "gcs"
166
165
  Requires-Dist: gcsfs; extra == "gcs"
166
+ Requires-Dist: bs4; extra == "gcs"
167
167
  Requires-Dist: numpy; extra == "gcs"
168
168
  Requires-Dist: pandas; extra == "gcs"
169
169
  Provides-Extra: github
170
- Requires-Dist: requests; extra == "github"
171
170
  Requires-Dist: pygithub>1.58.0; extra == "github"
171
+ Requires-Dist: requests; extra == "github"
172
172
  Requires-Dist: numpy; extra == "github"
173
173
  Requires-Dist: pandas; extra == "github"
174
174
  Provides-Extra: gitlab
@@ -180,15 +180,15 @@ Requires-Dist: google-api-python-client; extra == "google-drive"
180
180
  Requires-Dist: numpy; extra == "google-drive"
181
181
  Requires-Dist: pandas; extra == "google-drive"
182
182
  Provides-Extra: hubspot
183
- Requires-Dist: urllib3; extra == "hubspot"
184
183
  Requires-Dist: hubspot-api-client; extra == "hubspot"
184
+ Requires-Dist: urllib3; extra == "hubspot"
185
185
  Requires-Dist: numpy; extra == "hubspot"
186
186
  Requires-Dist: pandas; extra == "hubspot"
187
187
  Provides-Extra: ibm-watsonx-s3
188
- Requires-Dist: httpx; extra == "ibm-watsonx-s3"
189
- Requires-Dist: pyarrow; extra == "ibm-watsonx-s3"
190
188
  Requires-Dist: tenacity; extra == "ibm-watsonx-s3"
191
189
  Requires-Dist: pyiceberg; extra == "ibm-watsonx-s3"
190
+ Requires-Dist: pyarrow; extra == "ibm-watsonx-s3"
191
+ Requires-Dist: httpx; extra == "ibm-watsonx-s3"
192
192
  Requires-Dist: numpy; extra == "ibm-watsonx-s3"
193
193
  Requires-Dist: pandas; extra == "ibm-watsonx-s3"
194
194
  Provides-Extra: jira
@@ -216,22 +216,22 @@ Requires-Dist: pymongo; extra == "mongodb"
216
216
  Requires-Dist: numpy; extra == "mongodb"
217
217
  Requires-Dist: pandas; extra == "mongodb"
218
218
  Provides-Extra: neo4j
219
- Requires-Dist: neo4j-rust-ext; extra == "neo4j"
220
- Requires-Dist: networkx; extra == "neo4j"
221
219
  Requires-Dist: cymple; extra == "neo4j"
220
+ Requires-Dist: networkx; extra == "neo4j"
221
+ Requires-Dist: neo4j-rust-ext; extra == "neo4j"
222
222
  Requires-Dist: numpy; extra == "neo4j"
223
223
  Requires-Dist: pandas; extra == "neo4j"
224
224
  Provides-Extra: notion
225
+ Requires-Dist: notion-client; extra == "notion"
225
226
  Requires-Dist: backoff; extra == "notion"
226
227
  Requires-Dist: httpx; extra == "notion"
227
228
  Requires-Dist: htmlBuilder; extra == "notion"
228
- Requires-Dist: notion-client; extra == "notion"
229
229
  Requires-Dist: numpy; extra == "notion"
230
230
  Requires-Dist: pandas; extra == "notion"
231
231
  Provides-Extra: onedrive
232
232
  Requires-Dist: msal; extra == "onedrive"
233
- Requires-Dist: Office365-REST-Python-Client; extra == "onedrive"
234
233
  Requires-Dist: bs4; extra == "onedrive"
234
+ Requires-Dist: Office365-REST-Python-Client; extra == "onedrive"
235
235
  Requires-Dist: numpy; extra == "onedrive"
236
236
  Requires-Dist: pandas; extra == "onedrive"
237
237
  Provides-Extra: opensearch
@@ -264,8 +264,8 @@ Requires-Dist: redis; extra == "redis"
264
264
  Requires-Dist: numpy; extra == "redis"
265
265
  Requires-Dist: pandas; extra == "redis"
266
266
  Provides-Extra: s3
267
- Requires-Dist: s3fs; extra == "s3"
268
267
  Requires-Dist: fsspec; extra == "s3"
268
+ Requires-Dist: s3fs; extra == "s3"
269
269
  Requires-Dist: numpy; extra == "s3"
270
270
  Requires-Dist: pandas; extra == "s3"
271
271
  Provides-Extra: sharepoint
@@ -278,8 +278,8 @@ Requires-Dist: simple-salesforce; extra == "salesforce"
278
278
  Requires-Dist: numpy; extra == "salesforce"
279
279
  Requires-Dist: pandas; extra == "salesforce"
280
280
  Provides-Extra: sftp
281
- Requires-Dist: paramiko; extra == "sftp"
282
281
  Requires-Dist: fsspec; extra == "sftp"
282
+ Requires-Dist: paramiko; extra == "sftp"
283
283
  Requires-Dist: numpy; extra == "sftp"
284
284
  Requires-Dist: pandas; extra == "sftp"
285
285
  Provides-Extra: slack
@@ -287,8 +287,8 @@ Requires-Dist: slack_sdk[optional]; extra == "slack"
287
287
  Requires-Dist: numpy; extra == "slack"
288
288
  Requires-Dist: pandas; extra == "slack"
289
289
  Provides-Extra: snowflake
290
- Requires-Dist: snowflake-connector-python; extra == "snowflake"
291
290
  Requires-Dist: psycopg2-binary; extra == "snowflake"
291
+ Requires-Dist: snowflake-connector-python; extra == "snowflake"
292
292
  Requires-Dist: numpy; extra == "snowflake"
293
293
  Requires-Dist: pandas; extra == "snowflake"
294
294
  Provides-Extra: wikipedia
@@ -312,9 +312,9 @@ Requires-Dist: singlestoredb; extra == "singlestore"
312
312
  Requires-Dist: numpy; extra == "singlestore"
313
313
  Requires-Dist: pandas; extra == "singlestore"
314
314
  Provides-Extra: vectara
315
- Requires-Dist: requests; extra == "vectara"
316
- Requires-Dist: httpx; extra == "vectara"
317
315
  Requires-Dist: aiofiles; extra == "vectara"
316
+ Requires-Dist: httpx; extra == "vectara"
317
+ Requires-Dist: requests; extra == "vectara"
318
318
  Requires-Dist: numpy; extra == "vectara"
319
319
  Requires-Dist: pandas; extra == "vectara"
320
320
  Provides-Extra: vastdb
@@ -324,9 +324,9 @@ Requires-Dist: vastdb; extra == "vastdb"
324
324
  Requires-Dist: numpy; extra == "vastdb"
325
325
  Requires-Dist: pandas; extra == "vastdb"
326
326
  Provides-Extra: zendesk
327
- Requires-Dist: httpx; extra == "zendesk"
328
327
  Requires-Dist: aiofiles; extra == "zendesk"
329
328
  Requires-Dist: bs4; extra == "zendesk"
329
+ Requires-Dist: httpx; extra == "zendesk"
330
330
  Requires-Dist: numpy; extra == "zendesk"
331
331
  Requires-Dist: pandas; extra == "zendesk"
332
332
  Provides-Extra: embed-huggingface
@@ -334,8 +334,8 @@ Requires-Dist: sentence-transformers; extra == "embed-huggingface"
334
334
  Requires-Dist: numpy; extra == "embed-huggingface"
335
335
  Requires-Dist: pandas; extra == "embed-huggingface"
336
336
  Provides-Extra: embed-octoai
337
- Requires-Dist: tiktoken; extra == "embed-octoai"
338
337
  Requires-Dist: openai; extra == "embed-octoai"
338
+ Requires-Dist: tiktoken; extra == "embed-octoai"
339
339
  Requires-Dist: numpy; extra == "embed-octoai"
340
340
  Requires-Dist: pandas; extra == "embed-octoai"
341
341
  Provides-Extra: embed-vertexai
@@ -351,13 +351,13 @@ Requires-Dist: mixedbread-ai; extra == "embed-mixedbreadai"
351
351
  Requires-Dist: numpy; extra == "embed-mixedbreadai"
352
352
  Requires-Dist: pandas; extra == "embed-mixedbreadai"
353
353
  Provides-Extra: openai
354
- Requires-Dist: tiktoken; extra == "openai"
355
354
  Requires-Dist: openai; extra == "openai"
355
+ Requires-Dist: tiktoken; extra == "openai"
356
356
  Requires-Dist: numpy; extra == "openai"
357
357
  Requires-Dist: pandas; extra == "openai"
358
358
  Provides-Extra: bedrock
359
- Requires-Dist: aioboto3; extra == "bedrock"
360
359
  Requires-Dist: boto3; extra == "bedrock"
360
+ Requires-Dist: aioboto3; extra == "bedrock"
361
361
  Requires-Dist: numpy; extra == "bedrock"
362
362
  Requires-Dist: pandas; extra == "bedrock"
363
363
  Provides-Extra: togetherai
@@ -1,6 +1,7 @@
1
1
  import json
2
2
  import os
3
3
  import time
4
+ from functools import lru_cache
4
5
  from pathlib import Path
5
6
  from typing import Generator
6
7
  from uuid import uuid4
@@ -25,24 +26,29 @@ from unstructured_ingest.v2.processes.connectors.vectara import (
25
26
  )
26
27
 
27
28
 
28
- def validate_upload(response: dict, expected_data: dict):
29
+ def validate_upload(document: dict, expected_data: dict):
30
+ logger.info(f"validating document: {document}")
29
31
  element_id = expected_data["element_id"]
30
32
  expected_text = expected_data["text"]
31
33
  filename = expected_data["metadata"]["filename"]
32
34
  filetype = expected_data["metadata"]["filetype"]
33
35
  page_number = expected_data["metadata"]["page_number"]
34
36
 
35
- response = response["search_results"][0]
36
-
37
- assert response is not None
38
- assert response["text"] == expected_text
39
- assert response["part_metadata"]["element_id"] == element_id
40
- assert response["part_metadata"]["filename"] == filename
41
- assert response["part_metadata"]["filetype"] == filetype
42
- assert response["part_metadata"]["page_number"] == page_number
37
+ assert document is not None
38
+ speech_parts = document["parts"]
39
+ assert speech_parts
40
+ first_part = speech_parts[0]
41
+ assert first_part["text"] == expected_text
42
+ part_metadata = first_part["metadata"]
43
+ assert part_metadata
44
+ assert part_metadata["element_id"] == element_id
45
+ assert part_metadata["filename"] == filename
46
+ assert part_metadata["filetype"] == filetype
47
+ assert part_metadata["page_number"] == page_number
43
48
 
44
49
 
45
50
  @requires_env("VECTARA_OAUTH_CLIENT_ID", "VECTARA_OAUTH_SECRET", "VECTARA_CUSTOMER_ID")
51
+ @lru_cache()
46
52
  def _get_jwt_token():
47
53
  """Connect to the server and get a JWT token."""
48
54
  customer_id = os.environ["VECTARA_CUSTOMER_ID"]
@@ -65,23 +71,12 @@ def _get_jwt_token():
65
71
  return response_json.get("access_token")
66
72
 
67
73
 
68
- def query_data(corpus_key: str, element_id: str) -> dict:
74
+ def list_documents(corpus_key: str) -> list[str]:
69
75
 
70
- url = f"https://api.vectara.io/v2/corpora/{corpus_key}/query"
76
+ url = f"https://api.vectara.io/v2/corpora/{corpus_key}/documents"
71
77
 
72
78
  # the query below requires the corpus to have filter attributes for element_id
73
79
 
74
- data = json.dumps(
75
- {
76
- "query": "string",
77
- "search": {
78
- "metadata_filter": f"part.element_id = '{element_id}'",
79
- "lexical_interpolation": 1,
80
- "limit": 10,
81
- },
82
- }
83
- )
84
-
85
80
  jwt_token = _get_jwt_token()
86
81
  headers = {
87
82
  "Content-Type": "application/json",
@@ -90,11 +85,26 @@ def query_data(corpus_key: str, element_id: str) -> dict:
90
85
  "X-source": "unstructured",
91
86
  }
92
87
 
93
- response = requests.post(url, headers=headers, data=data)
88
+ response = requests.get(url, headers=headers)
94
89
  response.raise_for_status()
95
90
  response_json = response.json()
91
+ documents = response_json.get("documents", [])
92
+ return documents
93
+
96
94
 
97
- return response_json
95
+ def fetch_document(corpus_key: str, documents_id: str) -> dict:
96
+ url = f"https://api.vectara.io/v2/corpora/{corpus_key}/documents/{documents_id}"
97
+ jwt_token = _get_jwt_token()
98
+ headers = {
99
+ "Content-Type": "application/json",
100
+ "Accept": "application/json",
101
+ "Authorization": f"Bearer {jwt_token}",
102
+ "X-source": "unstructured",
103
+ }
104
+
105
+ response = requests.get(url, headers=headers)
106
+ response.raise_for_status()
107
+ return response.json()
98
108
 
99
109
 
100
110
  def create_corpora(corpus_key: str, corpus_name: str) -> None:
@@ -148,8 +158,8 @@ def delete_corpora(corpus_key: str) -> None:
148
158
  response.raise_for_status()
149
159
 
150
160
 
151
- def list_corpora() -> list:
152
- url = "https://api.vectara.io/v2/corpora?limit=100"
161
+ def get_metadata(corpus_key: str):
162
+ url = f"https://api.vectara.io/v2/corpora/{corpus_key}"
153
163
  jwt_token = _get_jwt_token()
154
164
  headers = {
155
165
  "Content-Type": "application/json",
@@ -159,35 +169,28 @@ def list_corpora() -> list:
159
169
  }
160
170
  response = requests.get(url, headers=headers)
161
171
  response.raise_for_status()
162
- response_json = response.json()
163
- if response_json.get("corpora"):
164
- return [item["key"] for item in response_json.get("corpora")]
165
- else:
166
- return []
172
+ return response.json()
167
173
 
168
174
 
169
175
  def wait_for_ready(corpus_key: str, timeout=60, interval=2) -> None:
170
- def is_ready_status():
171
- corpora_list = list_corpora()
172
- return corpus_key in corpora_list
173
-
174
176
  start = time.time()
175
- is_ready = is_ready_status()
176
- while not is_ready and time.time() - start < timeout:
177
- time.sleep(interval)
178
- is_ready = is_ready_status()
179
- if not is_ready:
180
- raise TimeoutError("time out waiting for corpus to be ready")
177
+ while time.time() - start < timeout:
178
+ try:
179
+ get_metadata(corpus_key)
180
+ return
181
+ except requests.HTTPError:
182
+ time.sleep(interval)
183
+ raise TimeoutError("time out waiting for corpus to be ready")
181
184
 
182
185
 
183
186
  def wait_for_delete(corpus_key: str, timeout=60, interval=2) -> None:
184
187
  start = time.time()
185
188
  while time.time() - start < timeout:
186
- corpora_list = list_corpora()
187
- if corpus_key not in corpora_list:
189
+ try:
190
+ get_metadata(corpus_key)
191
+ time.sleep(interval)
192
+ except requests.HTTPError:
188
193
  return
189
- time.sleep(interval)
190
-
191
194
  raise TimeoutError("time out waiting for corpus to delete")
192
195
 
193
196
 
@@ -210,11 +213,23 @@ def corpora_util() -> Generator[str, None, None]:
210
213
  wait_for_delete(corpus_key=corpus_key)
211
214
 
212
215
 
216
+ def wait_for_doc_meta(corpus_key: str, timeout=60, interval=1) -> list[str]:
217
+ start = time.time()
218
+ while time.time() - start < timeout:
219
+ all_document_meta = list_documents(corpus_key)
220
+ if not all_document_meta:
221
+ time.sleep(interval)
222
+ continue
223
+ else:
224
+ return all_document_meta
225
+ raise TimeoutError("time out waiting for document to be ready")
226
+
227
+
213
228
  @pytest.mark.asyncio
214
229
  @pytest.mark.tags(VECTARA_CONNECTOR_TYPE, DESTINATION_TAG, "vectara", NOSQL_TAG)
215
230
  @requires_env("VECTARA_OAUTH_CLIENT_ID", "VECTARA_OAUTH_SECRET", "VECTARA_CUSTOMER_ID")
216
231
  async def test_vectara_destination(
217
- upload_file: Path, tmp_path: Path, corpora_util: str, retries=30, interval=10
232
+ upload_file: Path, tmp_path: Path, corpora_util: str, retries=30, interval=1
218
233
  ):
219
234
  corpus_key = corpora_util
220
235
  connection_kwargs = {
@@ -231,7 +246,7 @@ async def test_vectara_destination(
231
246
  identifier="mock-file-data",
232
247
  )
233
248
 
234
- stager_config = VectaraUploadStagerConfig(batch_size=10)
249
+ stager_config = VectaraUploadStagerConfig()
235
250
  stager = VectaraUploadStager(upload_stager_config=stager_config)
236
251
  new_upload_file = stager.run(
237
252
  elements_filepath=upload_file,
@@ -260,11 +275,8 @@ async def test_vectara_destination(
260
275
  elements = json.load(upload_fp)
261
276
  first_element = elements[0]
262
277
 
263
- for i in range(retries):
264
- response = query_data(corpus_key, first_element["element_id"])
265
- if not response["search_results"]:
266
- time.sleep(interval)
267
- else:
268
- break
269
-
270
- validate_upload(response=response, expected_data=first_element)
278
+ all_document_meta = wait_for_doc_meta(corpus_key)
279
+ assert len(all_document_meta) == 1
280
+ document_meta = all_document_meta[0]
281
+ document = fetch_document(corpus_key=corpus_key, documents_id=document_meta["id"])
282
+ validate_upload(document=document, expected_data=first_element)
@@ -0,0 +1 @@
1
+ __version__ = "0.5.25" # pragma: no cover
@@ -1,6 +1,13 @@
1
+ from unstructured_ingest.v2.types.file_data import (
2
+ BatchFileData,
3
+ BatchItem,
4
+ FileData,
5
+ FileDataSourceMetadata,
6
+ SourceIdentifiers,
7
+ )
8
+
1
9
  from .connector import AccessConfig, BaseConnector, ConnectionConfig
2
10
  from .downloader import Downloader, DownloaderConfig, DownloadResponse, download_responses
3
- from .file_data import BatchFileData, BatchItem, FileData, FileDataSourceMetadata, SourceIdentifiers
4
11
  from .indexer import Indexer, IndexerConfig
5
12
  from .process import BaseProcess
6
13
  from .processor import ProcessorConfig
@@ -0,0 +1,13 @@
1
+ """
2
+ COMPATABILITY NOTICE:
3
+ This file has moved to the v2/types/ module.
4
+ The following line exists for backward compatibility.
5
+ """
6
+
7
+ from unstructured_ingest.v2.types.file_data import * # noqa - star imports are bad, but this is for maximal backward compatability
8
+
9
+ # Eventually this file should go away. Let's start warning users now:
10
+ logger.warning( # noqa - using logger from the star import
11
+ "Importing file_data.py through interfaces is deprecated. "
12
+ "Please use unstructured_ingest.v2.types.file_data instead!"
13
+ )
@@ -1,13 +1,13 @@
1
- import json
2
1
  import os
2
+ import tempfile
3
3
  from contextlib import contextmanager
4
4
  from dataclasses import dataclass
5
5
  from pathlib import Path
6
- from typing import Any, Generator
6
+ from typing import TYPE_CHECKING, Any, Generator, Optional
7
7
 
8
8
  from pydantic import Field
9
9
 
10
- from unstructured_ingest.utils.data_prep import write_data
10
+ from unstructured_ingest.utils.data_prep import get_data_df, write_data
11
11
  from unstructured_ingest.v2.interfaces import FileData, Uploader, UploaderConfig
12
12
  from unstructured_ingest.v2.logger import logger
13
13
  from unstructured_ingest.v2.processes.connector_registry import (
@@ -22,6 +22,9 @@ from unstructured_ingest.v2.processes.connectors.sql.databricks_delta_tables imp
22
22
 
23
23
  CONNECTOR_TYPE = "databricks_volume_delta_tables"
24
24
 
25
+ if TYPE_CHECKING:
26
+ from pandas import DataFrame
27
+
25
28
 
26
29
  class DatabricksVolumeDeltaTableUploaderConfig(UploaderConfig, DatabricksPathMixin):
27
30
  database: str = Field(description="Database name", default="default")
@@ -30,10 +33,12 @@ class DatabricksVolumeDeltaTableUploaderConfig(UploaderConfig, DatabricksPathMix
30
33
 
31
34
  @dataclass
32
35
  class DatabricksVolumeDeltaTableStager(DatabricksDeltaTablesUploadStager):
33
- def write_output(self, output_path: Path, data: list[dict]) -> None:
36
+ def write_output(self, output_path: Path, data: list[dict]) -> Path:
34
37
  # To avoid new line issues when migrating from volumes into delta tables, omit indenting
35
38
  # and always write it as a json file
36
- write_data(path=output_path.with_suffix(".json"), data=data, indent=None)
39
+ final_output_path = output_path.with_suffix(".json")
40
+ write_data(path=final_output_path, data=data, indent=None)
41
+ return final_output_path
37
42
 
38
43
 
39
44
  @dataclass
@@ -41,6 +46,7 @@ class DatabricksVolumeDeltaTableUploader(Uploader):
41
46
  connection_config: DatabricksDeltaTablesConnectionConfig
42
47
  upload_config: DatabricksVolumeDeltaTableUploaderConfig
43
48
  connector_type: str = CONNECTOR_TYPE
49
+ _columns: Optional[dict[str, str]] = None
44
50
 
45
51
  def precheck(self) -> None:
46
52
  with self.connection_config.get_cursor() as cursor:
@@ -84,20 +90,58 @@ class DatabricksVolumeDeltaTableUploader(Uploader):
84
90
  cursor.execute(f"USE DATABASE {self.upload_config.database}")
85
91
  yield cursor
86
92
 
87
- def run(self, path: Path, file_data: FileData, **kwargs: Any) -> None:
88
- with self.get_cursor(staging_allowed_local_path=str(path.parent)) as cursor:
89
- catalog_path = self.get_output_path(file_data=file_data)
90
- logger.debug(f"uploading {path.as_posix()} to {catalog_path}")
91
- cursor.execute(f"PUT '{path.as_posix()}' INTO '{catalog_path}' OVERWRITE")
92
- logger.debug(
93
- f"migrating content from {catalog_path} to table {self.upload_config.table_name}"
93
+ def get_table_columns(self) -> dict[str, str]:
94
+ if self._columns is None:
95
+ with self.get_cursor() as cursor:
96
+ cursor.execute(f"SELECT * from {self.upload_config.table_name} LIMIT 1")
97
+ self._columns = {desc[0]: desc[1] for desc in cursor.description}
98
+ return self._columns
99
+
100
+ def _fit_to_schema(self, df: "DataFrame", add_missing_columns: bool = True) -> "DataFrame":
101
+ import pandas as pd
102
+
103
+ table_columns = self.get_table_columns()
104
+ columns = set(df.columns)
105
+ schema_fields = set(table_columns.keys())
106
+ columns_to_drop = columns - schema_fields
107
+ missing_columns = schema_fields - columns
108
+
109
+ if columns_to_drop:
110
+ logger.info(
111
+ "Following columns will be dropped to match the table's schema: "
112
+ f"{', '.join(columns_to_drop)}"
113
+ )
114
+ if missing_columns and add_missing_columns:
115
+ logger.info(
116
+ "Following null filled columns will be added to match the table's schema:"
117
+ f" {', '.join(missing_columns)} "
94
118
  )
95
- with path.open() as f:
96
- data = json.load(f)
97
- columns = data[0].keys()
98
- column_str = ", ".join(columns)
99
- sql_statment = f"INSERT INTO `{self.upload_config.table_name}` ({column_str}) SELECT {column_str} FROM json.`{catalog_path}`" # noqa: E501
100
- cursor.execute(sql_statment)
119
+
120
+ df = df.drop(columns=columns_to_drop)
121
+
122
+ if add_missing_columns:
123
+ for column in missing_columns:
124
+ df[column] = pd.Series()
125
+ return df
126
+
127
+ def run(self, path: Path, file_data: FileData, **kwargs: Any) -> None:
128
+ with tempfile.TemporaryDirectory() as temp_dir:
129
+ df = get_data_df()
130
+ df = self._fit_to_schema(df=df)
131
+ temp_path = Path(temp_dir) / path.name
132
+ df.to_json(temp_path, orient="records", lines=False)
133
+ with self.get_cursor(staging_allowed_local_path=temp_dir) as cursor:
134
+ catalog_path = self.get_output_path(file_data=file_data)
135
+ logger.debug(f"uploading {path.as_posix()} to {catalog_path}")
136
+ cursor.execute(f"PUT '{temp_path.as_posix()}' INTO '{catalog_path}' OVERWRITE")
137
+ logger.debug(
138
+ f"migrating content from {catalog_path} to "
139
+ f"table {self.upload_config.table_name}"
140
+ )
141
+ columns = list(df.columns)
142
+ column_str = ", ".join(columns)
143
+ sql_statment = f"INSERT INTO `{self.upload_config.table_name}` ({column_str}) SELECT {column_str} FROM json.`{catalog_path}`" # noqa: E501
144
+ cursor.execute(sql_statment)
101
145
 
102
146
 
103
147
  databricks_volumes_delta_tables_destination_entry = DestinationRegistryEntry(
@@ -6,7 +6,7 @@ from pathlib import Path
6
6
  from time import time
7
7
  from typing import TYPE_CHECKING, Any, Generator, Optional, Union
8
8
 
9
- from pydantic import BaseModel, Field, Secret, SecretStr
9
+ from pydantic import BaseModel, Field, Secret, SecretStr, field_validator
10
10
 
11
11
  from unstructured_ingest.error import (
12
12
  DestinationConnectionError,
@@ -98,6 +98,12 @@ class ElasticsearchConnectionConfig(ConnectionConfig):
98
98
  ca_certs: Optional[Path] = None
99
99
  access_config: Secret[ElasticsearchAccessConfig]
100
100
 
101
+ @field_validator("hosts", mode="before")
102
+ def to_list(cls, value):
103
+ if isinstance(value, str):
104
+ return [value]
105
+ return value
106
+
101
107
  def get_client_kwargs(self) -> dict:
102
108
  # Update auth related fields to conform to what the SDK expects based on the
103
109
  # supported methods:
@@ -2,7 +2,7 @@ from dataclasses import dataclass, field
2
2
  from pathlib import Path
3
3
  from typing import TYPE_CHECKING, Optional
4
4
 
5
- from pydantic import BaseModel, Field, Secret
5
+ from pydantic import BaseModel, Field, Secret, field_validator
6
6
 
7
7
  from unstructured_ingest.error import (
8
8
  DestinationConnectionError,
@@ -78,6 +78,12 @@ class OpenSearchConnectionConfig(ConnectionConfig):
78
78
 
79
79
  access_config: Secret[OpenSearchAccessConfig]
80
80
 
81
+ @field_validator("hosts", mode="before")
82
+ def to_list(cls, value):
83
+ if isinstance(value, str):
84
+ return [value]
85
+ return value
86
+
81
87
  def get_client_kwargs(self) -> dict:
82
88
  # Update auth related fields to conform to what the SDK expects based on the
83
89
  # supported methods:
@@ -33,6 +33,9 @@ from unstructured_ingest.v2.processes.utils.blob_storage import (
33
33
 
34
34
  CONNECTOR_TYPE = "s3"
35
35
 
36
+ # https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines-avoid-characters
37
+ CHARACTERS_TO_AVOID = ["\\", "{", "^", "}", "%", "`", "]", '"', ">", "[", "~", "<", "#", "|"]
38
+
36
39
  if TYPE_CHECKING:
37
40
  from s3fs import S3FileSystem
38
41
 
@@ -91,7 +94,7 @@ class S3ConnectionConfig(FsspecConnectionConfig):
91
94
  if isinstance(e, PermissionError):
92
95
  return UserAuthError(e)
93
96
  if isinstance(e, FileNotFoundError):
94
- return UserError(e)
97
+ return UserError(f"File not found: {e}")
95
98
  if cause := getattr(e, "__cause__", None):
96
99
  error_response = cause.response
97
100
  error_meta = error_response["ResponseMetadata"]
@@ -140,6 +143,12 @@ class S3Indexer(FsspecIndexer):
140
143
  }
141
144
  if metadata:
142
145
  record_locator["metadata"] = metadata
146
+ issue_characters = [char for char in CHARACTERS_TO_AVOID if char in path]
147
+ if issue_characters:
148
+ logger.warning(
149
+ f"File path {path} contains characters "
150
+ f"that can cause issues with S3: {issue_characters}"
151
+ )
143
152
  return FileDataSourceMetadata(
144
153
  date_created=date_created,
145
154
  date_modified=date_modified,
@@ -251,8 +251,9 @@ class SQLUploadStager(UploadStager):
251
251
  df[column] = df[column].apply(str)
252
252
  return df
253
253
 
254
- def write_output(self, output_path: Path, data: list[dict]) -> None:
254
+ def write_output(self, output_path: Path, data: list[dict]) -> Path:
255
255
  write_data(path=output_path, data=data)
256
+ return output_path
256
257
 
257
258
  def run(
258
259
  self,
@@ -278,8 +279,10 @@ class SQLUploadStager(UploadStager):
278
279
  output_filename = f"{Path(output_filename).stem}{output_filename_suffix}"
279
280
  output_path = self.get_output_path(output_filename=output_filename, output_dir=output_dir)
280
281
 
281
- self.write_output(output_path=output_path, data=df.to_dict(orient="records"))
282
- return output_path
282
+ final_output_path = self.write_output(
283
+ output_path=output_path, data=df.to_dict(orient="records")
284
+ )
285
+ return final_output_path
283
286
 
284
287
 
285
288
  class SQLUploaderConfig(UploaderConfig):