synapse-sdk 1.0.0b22__tar.gz → 1.0.0b24__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 synapse-sdk might be problematic. Click here for more details.

Files changed (490) hide show
  1. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.gitignore +1 -0
  2. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/AGENT.md +15 -0
  3. {synapse_sdk-1.0.0b22/synapse_sdk.egg-info → synapse_sdk-1.0.0b24}/PKG-INFO +2 -1
  4. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/pyproject.toml +2 -1
  5. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/clients/ray.md +1 -1
  6. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/index.md +5 -5
  7. synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/docs/features/utils/file.md +415 -0
  8. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/docs/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/docs/features}/utils/network.md +1 -1
  9. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/plugins/export-plugins.md +140 -0
  10. synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/docs/plugins/upload-plugins.md +680 -0
  11. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ray.md +1 -1
  12. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/index.md +5 -5
  13. synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/index.md +24 -0
  14. synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/file.md +415 -0
  15. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features}/utils/network.md +1 -1
  16. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/export-plugins.md +138 -0
  17. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/plugins.md +48 -2
  18. synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/upload-plugins.md +897 -0
  19. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/sidebars.ts +11 -10
  20. synapse_sdk-1.0.0b24/synapse_sdk/plugins/README.md +934 -0
  21. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +17 -2
  22. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/__init__.py +20 -0
  23. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/action.py +623 -0
  24. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/enums.py +221 -0
  25. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/exceptions.py +36 -0
  26. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/models.py +149 -0
  27. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/run.py +178 -0
  28. synapse_sdk-1.0.0b24/synapse_sdk/plugins/categories/upload/actions/upload/utils.py +139 -0
  29. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +6 -1
  30. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/models.py +13 -7
  31. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/__init__.py +39 -0
  32. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/archive.py +32 -0
  33. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/checksum.py +56 -0
  34. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/chunking.py +31 -0
  35. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/download.py +124 -0
  36. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/encoding.py +40 -0
  37. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/io.py +22 -0
  38. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/video/__init__.py +29 -0
  39. synapse_sdk-1.0.0b24/synapse_sdk/utils/file/video/transcode.py +307 -0
  40. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24/synapse_sdk.egg-info}/PKG-INFO +2 -1
  41. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk.egg-info/SOURCES.txt +43 -11
  42. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk.egg-info/requires.txt +1 -0
  43. synapse_sdk-1.0.0b24/tests/plugins/upload/test_action.py +123 -0
  44. synapse_sdk-1.0.0b24/tests/plugins/upload/test_enums.py +74 -0
  45. synapse_sdk-1.0.0b24/tests/plugins/upload/test_exceptions.py +39 -0
  46. synapse_sdk-1.0.0b24/tests/plugins/upload/test_models.py +241 -0
  47. synapse_sdk-1.0.0b24/tests/plugins/upload/test_run.py +116 -0
  48. synapse_sdk-1.0.0b24/tests/plugins/upload/test_utils.py +152 -0
  49. synapse_sdk-1.0.0b24/tests/test_data/metadata.xlsx +0 -0
  50. synapse_sdk-1.0.0b24/tests/utils/file/__init__.py +1 -0
  51. synapse_sdk-1.0.0b24/tests/utils/file/test_archive.py +35 -0
  52. synapse_sdk-1.0.0b24/tests/utils/file/test_checksum.py +150 -0
  53. synapse_sdk-1.0.0b22/tests/utils/test_file.py → synapse_sdk-1.0.0b24/tests/utils/file/test_chunking.py +2 -145
  54. synapse_sdk-1.0.0b24/tests/utils/file/test_download.py +51 -0
  55. synapse_sdk-1.0.0b24/tests/utils/file/test_encoding.py +49 -0
  56. synapse_sdk-1.0.0b24/tests/utils/file/test_io.py +50 -0
  57. synapse_sdk-1.0.0b24/tests/utils/file/test_video_transcode.py +374 -0
  58. synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/docs/api/utils/file.md +0 -195
  59. synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/utils/file.md +0 -195
  60. synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/index.md +0 -24
  61. synapse_sdk-1.0.0b22/synapse_sdk/plugins/categories/upload/actions/upload.py +0 -1368
  62. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.claude/commands/compare-branch.md +0 -0
  63. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.claude/commands/review-pr.md +0 -0
  64. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.claude/commands/update-pr-desc.md +0 -0
  65. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.claude/commands/update-pr-title.md +0 -0
  66. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.coverage +0 -0
  67. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.github/workflows/lint.yml +0 -0
  68. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.github/workflows/pypi-publish.yml +0 -0
  69. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.github/workflows/test.yml +0 -0
  70. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.mcp.json +0 -0
  71. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/.pre-commit-config.yaml +0 -0
  72. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/CLAUDE.md +0 -0
  73. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/GEMINI.md +0 -0
  74. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/LICENSE +0 -0
  75. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/Makefile +0 -0
  76. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/P1_rules.md +0 -0
  77. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/P2_rules.md +0 -0
  78. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/P3_rules.md +0 -0
  79. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/P4_rules.md +0 -0
  80. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/README.md +0 -0
  81. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/__token__ +0 -0
  82. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/locale/en/LC_MESSAGES/messages.mo +0 -0
  83. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/locale/en/LC_MESSAGES/messages.po +0 -0
  84. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/locale/ko/LC_MESSAGES/messages.mo +0 -0
  85. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/locale/ko/LC_MESSAGES/messages.po +0 -0
  86. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/pytest-ci.ini +0 -0
  87. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/pytest.ini +0 -0
  88. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/requirements.test.txt +0 -0
  89. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/requirements.txt +0 -0
  90. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/setup.cfg +0 -0
  91. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/__init__.py +0 -0
  92. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/__init__.py +0 -0
  93. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/__init__.py +0 -0
  94. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/create.py +0 -0
  95. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/dataclass.py +0 -0
  96. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/default.py +0 -0
  97. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/delete.py +0 -0
  98. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/list.py +0 -0
  99. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/read.py +0 -0
  100. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/update.py +0 -0
  101. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/alias/utils.py +0 -0
  102. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/code_server.py +0 -0
  103. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/config.py +0 -0
  104. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/devtools.py +0 -0
  105. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/plugin/__init__.py +0 -0
  106. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/plugin/create.py +0 -0
  107. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/plugin/publish.py +0 -0
  108. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/cli/plugin/run.py +0 -0
  109. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/__init__.py +0 -0
  110. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/agent/__init__.py +0 -0
  111. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/agent/core.py +0 -0
  112. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/agent/ray.py +0 -0
  113. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/agent/service.py +0 -0
  114. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/__init__.py +0 -0
  115. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/annotation.py +0 -0
  116. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/core.py +0 -0
  117. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/data_collection.py +0 -0
  118. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/hitl.py +0 -0
  119. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/integration.py +0 -0
  120. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/ml.py +0 -0
  121. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/backend/models.py +0 -0
  122. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/base.py +0 -0
  123. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/exceptions.py +0 -0
  124. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/ray/__init__.py +0 -0
  125. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/ray/core.py +0 -0
  126. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/ray/serve.py +0 -0
  127. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/utils.py +0 -0
  128. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/validators/__init__.py +0 -0
  129. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/clients/validators/collections.py +0 -0
  130. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/__init__.py +0 -0
  131. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/config.py +0 -0
  132. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/.gitignore +0 -0
  133. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/README.md +0 -0
  134. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +0 -0
  135. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +0 -0
  136. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +0 -0
  137. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  138. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +0 -0
  139. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/authors.yml +0 -0
  140. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/blog/tags.yml +0 -0
  141. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/clients/agent.md +0 -0
  142. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/clients/backend.md +0 -0
  143. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/clients/base.md +0 -0
  144. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/plugins/categories.md +0 -0
  145. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/plugins/models.md +0 -0
  146. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/api/plugins/utils.md +0 -0
  147. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/categories.md +0 -0
  148. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/cli-usage.md +0 -0
  149. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/concepts/index.md +0 -0
  150. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/configuration.md +0 -0
  151. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/contributing.md +0 -0
  152. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/examples/index.md +0 -0
  153. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/faq.md +0 -0
  154. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/features/converters/index.md +0 -0
  155. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/features/index.md +0 -0
  156. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/docs/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/docs/features}/utils/storage.md +0 -0
  157. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/docs/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/docs/features}/utils/types.md +0 -0
  158. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/installation.md +0 -0
  159. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/introduction.md +0 -0
  160. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/plugins/plugins.md +0 -0
  161. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/quickstart.md +0 -0
  162. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/troubleshooting.md +0 -0
  163. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/_category_.json +0 -0
  164. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/congratulations.md +0 -0
  165. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-blog-post.md +0 -0
  166. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-document.md +0 -0
  167. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-page.md +0 -0
  168. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/deploy-your-site.md +0 -0
  169. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-basics/markdown-features.mdx +0 -0
  170. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-extras/_category_.json +0 -0
  171. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
  172. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
  173. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-extras/manage-docs-versions.md +0 -0
  174. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docs/tutorial-extras/translate-your-site.md +0 -0
  175. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/docusaurus.config.ts +0 -0
  176. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/code.json +0 -0
  177. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/agent.md +0 -0
  178. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/backend.md +0 -0
  179. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/base.md +0 -0
  180. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/categories.md +0 -0
  181. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/cli-usage.md +0 -0
  182. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/concepts/index.md +0 -0
  183. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/configuration.md +0 -0
  184. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/contributing.md +0 -0
  185. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/examples/index.md +0 -0
  186. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/faq.md +0 -0
  187. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/converters/index.md +0 -0
  188. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features}/utils/storage.md +0 -0
  189. {synapse_sdk-1.0.0b22/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api → synapse_sdk-1.0.0b24/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features}/utils/types.md +0 -0
  190. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/installation.md +0 -0
  191. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +0 -0
  192. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/quickstart.md +0 -0
  193. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/troubleshooting.md +0 -0
  194. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +0 -0
  195. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/footer.json +0 -0
  196. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/navbar.json +0 -0
  197. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/package-lock.json +0 -0
  198. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/package.json +0 -0
  199. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +0 -0
  200. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +0 -0
  201. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/css/custom.css +0 -0
  202. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/pages/index.module.css +0 -0
  203. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/pages/index.tsx +0 -0
  204. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/src/pages/markdown-page.md +0 -0
  205. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/.nojekyll +0 -0
  206. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
  207. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
  208. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
  209. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/logo.png +0 -0
  210. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +0 -0
  211. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +0 -0
  212. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +0 -0
  213. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/docs/tsconfig.json +0 -0
  214. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/server.py +0 -0
  215. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/__init__.py +0 -0
  216. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/app.py +0 -0
  217. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/services/__init__.py +0 -0
  218. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/services/job_service.py +0 -0
  219. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/services/plugin_service.py +0 -0
  220. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/services/serve_service.py +0 -0
  221. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/__init__.py +0 -0
  222. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/config_tab.py +0 -0
  223. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/deployment_tab.py +0 -0
  224. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/http_tab.py +0 -0
  225. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/jobs_tab.py +0 -0
  226. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/serve_tab.py +0 -0
  227. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/ui/status_bar.py +0 -0
  228. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/utils/__init__.py +0 -0
  229. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/utils/json_viewer.py +0 -0
  230. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/utils/log_formatter.py +0 -0
  231. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/utils/styles.py +0 -0
  232. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app/utils/ui_components.py +0 -0
  233. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/devtools/streamlit_app.py +0 -0
  234. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/i18n.py +0 -0
  235. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/loggers.py +0 -0
  236. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/__init__.py +0 -0
  237. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/__init__.py +0 -0
  238. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/base.py +0 -0
  239. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/__init__.py +0 -0
  240. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/actions/__init__.py +0 -0
  241. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/actions/validation.py +0 -0
  242. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/templates/config.yaml +0 -0
  243. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/templates/plugin/__init__.py +0 -0
  244. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +0 -0
  245. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/decorators.py +0 -0
  246. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/__init__.py +0 -0
  247. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/actions/__init__.py +0 -0
  248. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/actions/export.py +0 -0
  249. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/enums.py +0 -0
  250. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/templates/config.yaml +0 -0
  251. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/export/templates/plugin/export.py +0 -0
  252. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/__init__.py +0 -0
  253. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/__init__.py +0 -0
  254. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/deployment.py +0 -0
  255. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/gradio.py +0 -0
  256. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/inference.py +0 -0
  257. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/test.py +0 -0
  258. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/train.py +0 -0
  259. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/actions/tune.py +0 -0
  260. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/base/__init__.py +0 -0
  261. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/base/inference.py +0 -0
  262. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/templates/config.yaml +0 -0
  263. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/templates/plugin/__init__.py +0 -0
  264. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +0 -0
  265. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/templates/plugin/test.py +0 -0
  266. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/neural_net/templates/plugin/train.py +0 -0
  267. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/__init__.py +0 -0
  268. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/actions/__init__.py +0 -0
  269. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/actions/post_annotation.py +0 -0
  270. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/templates/config.yaml +0 -0
  271. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/__init__.py +0 -0
  272. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/post_annotation.py +0 -0
  273. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/__init__.py +0 -0
  274. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +0 -0
  275. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation.py +0 -0
  276. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +0 -0
  277. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +0 -0
  278. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/__init__.py +0 -0
  279. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/pre_annotation.py +0 -0
  280. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +0 -0
  281. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/registry.py +0 -0
  282. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/__init__.py +0 -0
  283. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/actions/__init__.py +0 -0
  284. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/actions/auto_label.py +0 -0
  285. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +0 -0
  286. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/__init__.py +0 -0
  287. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/auto_label.py +0 -0
  288. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/templates.py +0 -0
  289. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/upload/__init__.py +0 -0
  290. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/upload/actions/__init__.py +0 -0
  291. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/upload/templates/config.yaml +0 -0
  292. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +0 -0
  293. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/enums.py +0 -0
  294. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/exceptions.py +0 -0
  295. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/cookiecutter.json +0 -0
  296. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/hooks/post_gen_project.py +0 -0
  297. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/hooks/pre_prompt.py +0 -0
  298. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/plugin-config-schema.json +0 -0
  299. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/schema.json +0 -0
  300. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore +0 -0
  301. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml +0 -0
  302. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md +0 -0
  303. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +0 -0
  304. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py +0 -0
  305. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml +0 -0
  306. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +0 -0
  307. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/upload.py +0 -0
  308. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/utils/__init__.py +0 -0
  309. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/utils/actions.py +0 -0
  310. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/utils/config.py +0 -0
  311. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/utils/legacy.py +0 -0
  312. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/plugins/utils/registry.py +0 -0
  313. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/shared/__init__.py +0 -0
  314. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/shared/enums.py +0 -0
  315. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/types.py +0 -0
  316. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/__init__.py +0 -0
  317. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/__init__.py +0 -0
  318. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/coco/__init__.py +0 -0
  319. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/coco/from_dm.py +0 -0
  320. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/coco/to_dm.py +0 -0
  321. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/dm/__init__.py +0 -0
  322. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/dm/from_v1.py +0 -0
  323. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/dm/to_v1.py +0 -0
  324. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/pascal/__init__.py +0 -0
  325. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/pascal/from_dm.py +0 -0
  326. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/pascal/to_dm.py +0 -0
  327. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/yolo/__init__.py +0 -0
  328. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/yolo/from_dm.py +0 -0
  329. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/converters/yolo/to_dm.py +0 -0
  330. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/dataset.py +0 -0
  331. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/debug.py +0 -0
  332. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/encryption.py +0 -0
  333. /synapse_sdk-1.0.0b22/synapse_sdk/utils/file.py → /synapse_sdk-1.0.0b24/synapse_sdk/utils/file.py.backup +0 -0
  334. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/http.py +0 -0
  335. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/module_loading.py +0 -0
  336. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/network.py +0 -0
  337. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/pydantic/__init__.py +0 -0
  338. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/pydantic/config.py +0 -0
  339. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/pydantic/errors.py +0 -0
  340. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/pydantic/validators.py +0 -0
  341. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/__init__.py +0 -0
  342. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/__init__.py +0 -0
  343. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/file_system.py +0 -0
  344. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/gcp.py +0 -0
  345. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/http.py +0 -0
  346. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/s3.py +0 -0
  347. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/providers/sftp.py +0 -0
  348. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/storage/registry.py +0 -0
  349. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk/utils/string.py +0 -0
  350. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk.egg-info/dependency_links.txt +0 -0
  351. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk.egg-info/entry_points.txt +0 -0
  352. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/synapse_sdk.egg-info/top_level.txt +0 -0
  353. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/test_code_server.py +0 -0
  354. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/test_code_server_simple.py +0 -0
  355. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/README.md +0 -0
  356. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/__init__.py +0 -0
  357. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/__init__.py +0 -0
  358. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/conftest.py +0 -0
  359. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/test_backend_models.py +0 -0
  360. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/test_base_client.py +0 -0
  361. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/test_collection_validators.py +0 -0
  362. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/clients/test_ray_client.py +0 -0
  363. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/conftest.py +0 -0
  364. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/loggers/__init__.py +0 -0
  365. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/loggers/conftest.py +0 -0
  366. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/loggers/test_base_logger.py +0 -0
  367. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/conftest.py +0 -0
  368. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/data_validation/__init__.py +0 -0
  369. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/data_validation/validation/__init__.py +0 -0
  370. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/data_validation/validation/test_validation_action.py +0 -0
  371. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/utils/__init__.py +0 -0
  372. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/utils/test_actions.py +0 -0
  373. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/utils/test_config.py +0 -0
  374. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/plugins/utils/test_registry.py +0 -0
  375. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/test_cli.py +0 -0
  376. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/test_cli_integration.py +0 -0
  377. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/__init__,py +0 -0
  378. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/__init__.py +0 -0
  379. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/conftest.py +0 -0
  380. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/__init__.py +0 -0
  381. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/coco.py +0 -0
  382. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/annotations.json +0 -0
  383. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data8.jpg +0 -0
  384. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data9.jpg +0 -0
  385. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/annotations.json +0 -0
  386. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data4.jpg +0 -0
  387. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data5.jpg +0 -0
  388. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data6.jpg +0 -0
  389. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/annotations.json +0 -0
  390. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/new_dm_data7.jpg +0 -0
  391. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/annotations.json +0 -0
  392. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data1.jpg +0 -0
  393. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data2.jpg +0 -0
  394. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data3.jpg +0 -0
  395. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_1.json +0 -0
  396. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_2.json +0 -0
  397. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_3.json +0 -0
  398. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_1.jpg +0 -0
  399. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_2.jpg +0 -0
  400. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_3.jpg +0 -0
  401. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_4.json +0 -0
  402. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_5.json +0 -0
  403. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_6.json +0 -0
  404. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_7.json +0 -0
  405. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_4.jpg +0 -0
  406. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_5.jpg +0 -0
  407. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_6.jpg +0 -0
  408. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_7.jpg +0 -0
  409. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_8.json +0 -0
  410. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_9.json +0 -0
  411. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_8.jpg +0 -0
  412. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_9.jpg +0 -0
  413. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_1.json +0 -0
  414. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_2.json +0 -0
  415. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_3.json +0 -0
  416. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_1.jpg +0 -0
  417. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_2.jpg +0 -0
  418. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_3.jpg +0 -0
  419. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/ver1/json/25669.json +0 -0
  420. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/dm/ver2/json/25669.json +0 -0
  421. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/classes.txt +0 -0
  422. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9139.xml +0 -0
  423. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9140.xml +0 -0
  424. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9141.xml +0 -0
  425. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9139.jpg +0 -0
  426. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9140.jpg +0 -0
  427. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9141.jpg +0 -0
  428. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9136.xml +0 -0
  429. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9137.xml +0 -0
  430. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9138.xml +0 -0
  431. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9136.jpg +0 -0
  432. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9137.jpg +0 -0
  433. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9138.jpg +0 -0
  434. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9125.xml +0 -0
  435. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9126.xml +0 -0
  436. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9127.xml +0 -0
  437. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9125.jpg +0 -0
  438. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9126.jpg +0 -0
  439. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9127.jpg +0 -0
  440. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9122.xml +0 -0
  441. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9123.xml +0 -0
  442. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9124.xml +0 -0
  443. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9122.jpg +0 -0
  444. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9123.jpg +0 -0
  445. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9124.jpg +0 -0
  446. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/classes.txt +0 -0
  447. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/dataset.yaml +0 -0
  448. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13744.jpg +0 -0
  449. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13745.jpg +0 -0
  450. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13746.jpg +0 -0
  451. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13744.txt +0 -0
  452. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13745.txt +0 -0
  453. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13746.txt +0 -0
  454. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/images/13782.jpg +0 -0
  455. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/labels/13782.txt +0 -0
  456. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13761.jpg +0 -0
  457. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13764.jpg +0 -0
  458. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13761.txt +0 -0
  459. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13764.txt +0 -0
  460. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/classes.txt +0 -0
  461. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/dataset.yaml +0 -0
  462. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25332.jpg +0 -0
  463. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25334.jpg +0 -0
  464. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25332.txt +0 -0
  465. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25334.txt +0 -0
  466. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/pcd/dm/ver1/json/23791.json +0 -0
  467. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/pcd/dm/ver2/json/23791.json +0 -0
  468. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/prompt/dm/ver1/json/18662.json +0 -0
  469. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/prompt/dm/ver2/json/18662.json +0 -0
  470. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/text/dm/ver1/json/23811.json +0 -0
  471. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/text/dm/ver2/json/23811.json +0 -0
  472. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/video/dm/ver1/json/23831.json +0 -0
  473. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/data_types/video/dm/ver2/json/23831.json +0 -0
  474. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/dm_schema.py +0 -0
  475. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/pascal.py +0 -0
  476. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/fixtures/yolo.py +0 -0
  477. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_coco_from_dm.py +0 -0
  478. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_coco_to_dm.py +0 -0
  479. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_dm_v1_to_v2.py +0 -0
  480. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_dm_v2_to_v1.py +0 -0
  481. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_pascal_from_dm.py +0 -0
  482. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_pascal_to_dm.py +0 -0
  483. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_yolo_from_dm.py +0 -0
  484. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/converters/test_yolo_to_dm.py +0 -0
  485. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/storage/conftest.py +0 -0
  486. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/storage/test_file_system_storage.py +0 -0
  487. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/storage/test_provider_selection.py +0 -0
  488. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/test_debug.py +0 -0
  489. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/tests/utils/test_network.py +0 -0
  490. {synapse_sdk-1.0.0b22 → synapse_sdk-1.0.0b24}/uv.lock +0 -0
@@ -51,6 +51,7 @@ AGENT.local.md
51
51
 
52
52
  # Specs for LLM development
53
53
  specs/*.local.md
54
+ specs/*.specs.md
54
55
 
55
56
  # Claude
56
57
  settings.local.json
@@ -156,6 +156,21 @@ Each plugin includes:
156
156
  - `requirements.txt`: Python dependencies
157
157
  - Template-based scaffolding for rapid development
158
158
 
159
+ ### Plugin Development Reference
160
+
161
+ **When making changes to plugins or developing new plugin functionality:**
162
+
163
+ - **Refer to the comprehensive plugin documentation**: `synapse_sdk/plugins/README.md`
164
+ - Do NOT rely solely on the overview in this AGENT.md file
165
+
166
+ The plugins README contains:
167
+ - Detailed architecture documentation
168
+ - Plugin action structure guidelines
169
+ - Modular development patterns
170
+ - Code examples from real implementations
171
+ - Migration guides for refactoring
172
+ - Best practices for plugin development
173
+
159
174
  ## 📚 Documentation Management
160
175
 
161
176
  The project uses **Docusaurus** for documentation with a structured approach:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: synapse-sdk
3
- Version: 1.0.0b22
3
+ Version: 1.0.0b24
4
4
  Summary: synapse sdk
5
5
  Author-email: datamaker <developer@datamaker.io>
6
6
  License: MIT
@@ -23,6 +23,7 @@ Requires-Dist: fsspec[gcs,s3,sftp]
23
23
  Requires-Dist: inquirer
24
24
  Requires-Dist: pillow
25
25
  Requires-Dist: websockets
26
+ Requires-Dist: ffmpeg-python==0.2.0
26
27
  Provides-Extra: all
27
28
  Requires-Dist: ray[all]==2.44.1; extra == "all"
28
29
  Requires-Dist: python-nmap; extra == "all"
@@ -27,7 +27,8 @@ dependencies = [
27
27
  "fsspec[gcs,s3,sftp]",
28
28
  "inquirer",
29
29
  "pillow",
30
- "websockets"
30
+ "websockets",
31
+ "ffmpeg-python==0.2.0"
31
32
  ]
32
33
  dynamic = ["version"]
33
34
 
@@ -318,4 +318,4 @@ RayClient is designed for concurrent use with proper thread safety mechanisms:
318
318
 
319
319
  - [AgentClient](./agent.md) - For agent-specific operations
320
320
  - [BaseClient](./base.md) - Base client implementation
321
- - [Network Utilities](../utils/network.md) - Streaming and validation utilities
321
+ - [Network Utilities](../../features/utils/network.md) - Streaming and validation utilities
@@ -22,13 +22,13 @@ Client classes for interacting with backend services and agents.
22
22
 
23
23
  Core plugin system components.
24
24
 
25
- ### [Utilities](./utils/file.md)
25
+ ### [Utilities](../features/utils/file.md)
26
26
  Helper functions and utilities.
27
27
 
28
- - **[File Utils](./utils/file.md)** - File operations and handling
29
- - **[Network](./utils/network.md)** - Streaming, validation, and connection management
30
- - **[Storage](./utils/storage.md)** - Storage providers (S3, GCS, SFTP)
31
- - **[Types](./utils/types.md)** - Custom types and fields
28
+ - **[File Utils](../features/utils/file.md)** - File operations and handling
29
+ - **[Network](../features/utils/network.md)** - Streaming, validation, and connection management
30
+ - **[Storage](../features/utils/storage.md)** - Storage providers (S3, GCS, SFTP)
31
+ - **[Types](../features/utils/types.md)** - Custom types and fields
32
32
 
33
33
  ## Quick Reference
34
34
 
@@ -0,0 +1,415 @@
1
+ ---
2
+ id: file
3
+ title: File Utilities
4
+ sidebar_position: 1
5
+ ---
6
+
7
+ # File Utilities
8
+
9
+ Comprehensive file operations and handling utilities organized in a modular structure for better maintainability and functionality.
10
+
11
+ ## Module Overview
12
+
13
+ The file utilities have been refactored into a modular structure with specialized modules for different operations:
14
+
15
+ - **`synapse_sdk.utils.file.archive`** - ZIP archive creation and extraction
16
+ - **`synapse_sdk.utils.file.checksum`** - File hash calculations and verification
17
+ - **`synapse_sdk.utils.file.chunking`** - Memory-efficient file reading in chunks
18
+ - **`synapse_sdk.utils.file.download`** - File downloading utilities with async support
19
+ - **`synapse_sdk.utils.file.encoding`** - Base64 encoding and file format handling
20
+ - **`synapse_sdk.utils.file.io`** - General I/O operations for JSON/YAML files
21
+ - **`synapse_sdk.utils.file.video`** - Video transcoding and format conversion
22
+
23
+ ### Backward Compatibility
24
+
25
+ All functions remain accessible from the main module import:
26
+
27
+ ```python
28
+ # Both approaches work identically
29
+ from synapse_sdk.utils.file import read_file_in_chunks, download_file
30
+ from synapse_sdk.utils.file.chunking import read_file_in_chunks
31
+ from synapse_sdk.utils.file.download import download_file
32
+ ```
33
+
34
+ ## Archive Operations
35
+
36
+ Functions for creating and extracting ZIP archives.
37
+
38
+ ```python
39
+ from synapse_sdk.utils.file.archive import archive, unarchive
40
+
41
+ # Create archive
42
+ archive('/path/to/directory', '/path/to/output.zip')
43
+
44
+ # Extract archive
45
+ unarchive('/path/to/archive.zip', '/path/to/extract/directory')
46
+ ```
47
+
48
+ ## Chunked File Operations
49
+
50
+ ### read_file_in_chunks
51
+
52
+ Read files in chunks for efficient memory usage, particularly useful for large files or when processing files in chunks for uploading or hashing.
53
+
54
+ ```python
55
+ from synapse_sdk.utils.file.chunking import read_file_in_chunks
56
+
57
+ # Read a file in default 50MB chunks
58
+ for chunk in read_file_in_chunks('/path/to/large_file.bin'):
59
+ process_chunk(chunk)
60
+
61
+ # Read with custom chunk size (10MB)
62
+ for chunk in read_file_in_chunks('/path/to/file.bin', chunk_size=1024*1024*10):
63
+ upload_chunk(chunk)
64
+ ```
65
+
66
+ **Parameters:**
67
+
68
+ - `file_path` (str | Path): Path to the file to read
69
+ - `chunk_size` (int, optional): Size of each chunk in bytes. Defaults to 50MB (52,428,800 bytes)
70
+
71
+ **Returns:**
72
+
73
+ - Generator yielding file content chunks as bytes
74
+
75
+ **Raises:**
76
+
77
+ - `FileNotFoundError`: If the file doesn't exist
78
+ - `PermissionError`: If the file can't be read due to permissions
79
+ - `OSError`: If there's an OS-level error reading the file
80
+
81
+ ### Use Cases
82
+
83
+ **Large File Processing**: Efficiently process files that are too large to fit in memory:
84
+
85
+ ```python
86
+ import hashlib
87
+
88
+ def calculate_hash_for_large_file(file_path):
89
+ hash_md5 = hashlib.md5()
90
+ for chunk in read_file_in_chunks(file_path):
91
+ hash_md5.update(chunk)
92
+ return hash_md5.hexdigest()
93
+ ```
94
+
95
+ **Chunked Upload Integration**: The function integrates seamlessly with the `CoreClientMixin.create_chunked_upload` method:
96
+
97
+ ```python
98
+ from synapse_sdk.clients.backend.core import CoreClientMixin
99
+
100
+ client = CoreClientMixin(base_url='https://api.example.com')
101
+ result = client.create_chunked_upload('/path/to/large_file.zip')
102
+ ```
103
+
104
+ **Best Practices:**
105
+
106
+ - Use default chunk size (50MB) for optimal upload performance
107
+ - Adjust chunk size based on available memory and network conditions
108
+ - For very large files (>1GB), consider using smaller chunks for better progress tracking
109
+ - Always handle exceptions when working with file operations
110
+
111
+ ## Checksum Functions
112
+
113
+ ### calculate_checksum
114
+
115
+ Calculate checksum for regular files:
116
+
117
+ ```python
118
+ from synapse_sdk.utils.file.checksum import calculate_checksum
119
+
120
+ checksum = calculate_checksum('/path/to/file.bin')
121
+ ```
122
+
123
+ ### get_checksum_from_file
124
+
125
+ Calculate checksum for file-like objects without requiring Django dependencies. This function works with any file-like object that has a `read()` method, making it compatible with Django's File objects, BytesIO, StringIO, and regular file objects.
126
+
127
+ ```python
128
+ import hashlib
129
+ from io import BytesIO
130
+ from synapse_sdk.utils.file.checksum import get_checksum_from_file
131
+
132
+ # Basic usage with BytesIO (defaults to SHA1)
133
+ data = BytesIO(b'Hello, world!')
134
+ checksum = get_checksum_from_file(data)
135
+ print(checksum) # SHA1 hash as hexadecimal string
136
+
137
+ # Using different hash algorithms
138
+ checksum_md5 = get_checksum_from_file(data, digest_mod=hashlib.md5)
139
+ checksum_sha256 = get_checksum_from_file(data, digest_mod=hashlib.sha256)
140
+
141
+ # With real file objects
142
+ with open('/path/to/file.txt', 'rb') as f:
143
+ checksum = get_checksum_from_file(f)
144
+ ```
145
+
146
+ **Parameters:**
147
+
148
+ - `file` (IO[Any]): File-like object with read() method that supports reading in chunks
149
+ - `digest_mod` (Callable[[], Any], optional): Hash algorithm from hashlib. Defaults to `hashlib.sha1`
150
+
151
+ **Returns:**
152
+
153
+ - `str`: Hexadecimal digest of the file contents
154
+
155
+ **Key Features:**
156
+
157
+ - **Memory Efficient**: Reads files in 4KB chunks to handle large files
158
+ - **Automatic File Pointer Reset**: Resets to beginning if the file object supports seeking
159
+ - **Text/Binary Agnostic**: Handles both text (StringIO) and binary (BytesIO) file objects
160
+ - **No Django Dependency**: Works without Django while being compatible with Django File objects
161
+ - **Flexible Hash Algorithms**: Supports any hashlib algorithm (SHA1, SHA256, MD5, etc.)
162
+
163
+ ## Download Functions
164
+
165
+ Utilities for downloading files from URLs with both synchronous and asynchronous support.
166
+
167
+ ```python
168
+ from synapse_sdk.utils.file.download import download_file, adownload_file
169
+
170
+ # Synchronous download
171
+ local_path = download_file(url, destination)
172
+
173
+ # Asynchronous download
174
+ import asyncio
175
+ local_path = await adownload_file(url, destination)
176
+
177
+ # URL to path conversion for multiple files
178
+ from synapse_sdk.utils.file.download import files_url_to_path
179
+ paths = files_url_to_path(url_list, destination_directory)
180
+ ```
181
+
182
+ ## Encoding Functions
183
+
184
+ Base64 encoding utilities for files.
185
+
186
+ ```python
187
+ from synapse_sdk.utils.file.encoding import convert_file_to_base64
188
+
189
+ # Convert file to base64
190
+ base64_data = convert_file_to_base64('/path/to/file.jpg')
191
+ ```
192
+
193
+ ## I/O Functions
194
+
195
+ General I/O operations for structured data files.
196
+
197
+ ```python
198
+ from synapse_sdk.utils.file.io import get_dict_from_file, get_temp_path
199
+
200
+ # Load dictionary from JSON or YAML file
201
+ config = get_dict_from_file('/path/to/config.json')
202
+ settings = get_dict_from_file('/path/to/settings.yaml')
203
+
204
+ # Get temporary file path
205
+ temp_path = get_temp_path()
206
+ temp_subpath = get_temp_path('subdir/file.tmp')
207
+ ```
208
+
209
+ ## Video Transcoding
210
+
211
+ Advanced video transcoding capabilities using FFmpeg for format conversion, compression, and optimization.
212
+
213
+ ### Requirements
214
+
215
+ - **ffmpeg-python**: `pip install ffmpeg-python`
216
+ - **FFmpeg**: Must be installed on the system and available in PATH
217
+
218
+ ### Supported Video Formats
219
+
220
+ The video module supports a wide range of input formats:
221
+ - **MP4** (.mp4, .m4v)
222
+ - **AVI** (.avi)
223
+ - **MOV** (.mov)
224
+ - **MKV** (.mkv)
225
+ - **WebM** (.webm)
226
+ - **FLV** (.flv)
227
+ - **WMV** (.wmv)
228
+ - **MPEG** (.mpeg, .mpg)
229
+ - **3GP** (.3gp)
230
+ - **OGV** (.ogv)
231
+
232
+ ### Core Functions
233
+
234
+ #### validate_video_format
235
+
236
+ Check if a file has a supported video format:
237
+
238
+ ```python
239
+ from synapse_sdk.utils.file.video.transcode import validate_video_format
240
+
241
+ if validate_video_format('video.mp4'):
242
+ print("Supported format")
243
+ else:
244
+ print("Unsupported format")
245
+ ```
246
+
247
+ #### get_video_info
248
+
249
+ Extract metadata from video files:
250
+
251
+ ```python
252
+ from synapse_sdk.utils.file.video.transcode import get_video_info
253
+
254
+ info = get_video_info('input.mp4')
255
+ print(f"Duration: {info['duration']} seconds")
256
+ print(f"Resolution: {info['width']}x{info['height']}")
257
+ print(f"Video Codec: {info['video_codec']}")
258
+ print(f"Audio Codec: {info['audio_codec']}")
259
+ print(f"FPS: {info['fps']}")
260
+ ```
261
+
262
+ #### transcode_video
263
+
264
+ Main transcoding function with extensive configuration options:
265
+
266
+ ```python
267
+ from synapse_sdk.utils.file.video.transcode import transcode_video, TranscodeConfig
268
+ from pathlib import Path
269
+
270
+ # Basic transcoding with default settings
271
+ output_path = transcode_video('input.avi', 'output.mp4')
272
+
273
+ # Custom configuration
274
+ config = TranscodeConfig(
275
+ vcodec='libx264', # Video codec
276
+ preset='fast', # Encoding speed vs quality
277
+ crf=20, # Quality (lower = better quality)
278
+ acodec='aac', # Audio codec
279
+ audio_bitrate='128k', # Audio bitrate
280
+ resolution='1920x1080', # Output resolution
281
+ fps=30, # Frame rate
282
+ start_time=10.0, # Start from 10 seconds
283
+ duration=60.0 # Only process 60 seconds
284
+ )
285
+
286
+ output_path = transcode_video('input.mkv', 'output.mp4', config)
287
+ ```
288
+
289
+ #### TranscodeConfig Options
290
+
291
+ ```python
292
+ @dataclass
293
+ class TranscodeConfig:
294
+ vcodec: str = 'libx264' # Video codec (libx264, libx265, etc.)
295
+ preset: str = 'medium' # Encoding preset (fast, medium, slow)
296
+ crf: int = 28 # Quality factor (0-51, lower = better)
297
+ acodec: str = 'aac' # Audio codec (aac, opus, etc.)
298
+ audio_bitrate: str = '128k' # Audio bitrate
299
+ movflags: str = '+faststart' # MP4 optimization flags
300
+ resolution: Optional[str] = None # Output resolution (e.g., '1920x1080')
301
+ fps: Optional[int] = None # Output frame rate
302
+ start_time: Optional[float] = None # Start time in seconds
303
+ duration: Optional[float] = None # Duration to process in seconds
304
+ ```
305
+
306
+ #### Progress Callback Support
307
+
308
+ Monitor transcoding progress with callback functions:
309
+
310
+ ```python
311
+ def progress_callback(progress_percent):
312
+ print(f"Progress: {progress_percent:.1f}%")
313
+
314
+ output_path = transcode_video(
315
+ 'input.mp4',
316
+ 'output.mp4',
317
+ progress_callback=progress_callback
318
+ )
319
+ ```
320
+
321
+ #### optimize_for_web
322
+
323
+ Quick web optimization with predefined settings:
324
+
325
+ ```python
326
+ from synapse_sdk.utils.file.video.transcode import optimize_for_web
327
+
328
+ # Optimized for web streaming with fast start
329
+ web_video = optimize_for_web('input.mov', 'web_output.mp4')
330
+ ```
331
+
332
+ This function uses optimized settings:
333
+ - Fast encoding preset
334
+ - Web-friendly compression (CRF 23)
335
+ - Fast start flag for streaming
336
+ - Fragment keyframes for better web compatibility
337
+
338
+ ### Error Handling
339
+
340
+ The video module provides specific exceptions:
341
+
342
+ ```python
343
+ from synapse_sdk.utils.file.video.transcode import (
344
+ VideoTranscodeError,
345
+ UnsupportedFormatError,
346
+ FFmpegNotFoundError,
347
+ TranscodingFailedError
348
+ )
349
+
350
+ try:
351
+ transcode_video('input.xyz', 'output.mp4')
352
+ except UnsupportedFormatError:
353
+ print("Input format not supported")
354
+ except FFmpegNotFoundError:
355
+ print("FFmpeg not installed")
356
+ except TranscodingFailedError as e:
357
+ print(f"Transcoding failed: {e}")
358
+ ```
359
+
360
+ ### Advanced Usage Examples
361
+
362
+ **Batch Processing**:
363
+
364
+ ```python
365
+ import os
366
+ from pathlib import Path
367
+
368
+ input_dir = Path('/path/to/videos')
369
+ output_dir = Path('/path/to/output')
370
+
371
+ for video_file in input_dir.glob('*'):
372
+ if validate_video_format(video_file):
373
+ output_file = output_dir / f"{video_file.stem}.mp4"
374
+ try:
375
+ transcode_video(video_file, output_file)
376
+ print(f"Processed: {video_file.name}")
377
+ except VideoTranscodeError as e:
378
+ print(f"Failed to process {video_file.name}: {e}")
379
+ ```
380
+
381
+ **Quality Optimization**:
382
+
383
+ ```python
384
+ # High quality for archival
385
+ archive_config = TranscodeConfig(
386
+ preset='slow',
387
+ crf=18,
388
+ audio_bitrate='256k'
389
+ )
390
+
391
+ # Small size for mobile
392
+ mobile_config = TranscodeConfig(
393
+ preset='fast',
394
+ crf=28,
395
+ resolution='1280x720',
396
+ audio_bitrate='96k'
397
+ )
398
+
399
+ # Apply different configs
400
+ archive_output = transcode_video(input_file, 'archive.mp4', archive_config)
401
+ mobile_output = transcode_video(input_file, 'mobile.mp4', mobile_config)
402
+ ```
403
+
404
+ **Video Clipping**:
405
+
406
+ ```python
407
+ # Extract 30-second clip starting from 1 minute
408
+ clip_config = TranscodeConfig(
409
+ start_time=60.0, # Start at 1 minute
410
+ duration=30.0, # Extract 30 seconds
411
+ crf=20 # High quality
412
+ )
413
+
414
+ clip = transcode_video('long_video.mp4', 'clip.mp4', clip_config)
415
+ ```
@@ -373,6 +373,6 @@ production_limits = StreamLimits(
373
373
 
374
374
  ## See Also
375
375
 
376
- - [RayClient](../clients/ray.md) - Primary consumer of network utilities
376
+ - [RayClient](../../api/clients/ray.md) - Primary consumer of network utilities
377
377
  - [File Utils](./file.md) - File operations and handling
378
378
  - [Storage](./storage.md) - Storage providers
@@ -213,6 +213,7 @@ class Exporter(BaseExporter):
213
213
  - **before_convert()**: Pre-process data before conversion
214
214
  - **after_convert()**: Post-process data after conversion
215
215
  - **process_file_saving()**: Custom file saving logic
216
+ - **additional_file_saving()**: Save additional files after processing all export items
216
217
 
217
218
  ### Helper Methods
218
219
 
@@ -225,6 +226,145 @@ class Exporter(BaseExporter):
225
226
  - Logging via `self.run.log_message()` and other run methods
226
227
  - Error handling and metrics collection via self.run methods
227
228
 
229
+ ## Additional File Saving
230
+
231
+ The `additional_file_saving()` method is called after all export items have been processed and is designed for saving files that depend on the collective data from all processed items. This is useful for creating:
232
+
233
+ - Metadata files (e.g., dataset statistics, class mappings)
234
+ - Configuration files (e.g., dataset.yaml for YOLO, classes.txt)
235
+ - Summary files (e.g., export reports, processing logs)
236
+ - Index files (e.g., file lists, directory structures)
237
+
238
+ ### Method Signature
239
+
240
+ ```python
241
+ def additional_file_saving(self, unique_export_path):
242
+ """Save additional files after processing all export items.
243
+
244
+ This method is called after the main export loop completes and is intended
245
+ for saving files that need to be created based on the collective data from
246
+ all processed export items (e.g., metadata files, configuration files,
247
+ summary files, etc.).
248
+
249
+ Args:
250
+ unique_export_path (str): The unique export directory path where
251
+ additional files should be saved.
252
+ """
253
+ pass
254
+ ```
255
+
256
+ ### Example Usage
257
+
258
+ ```python
259
+ class YOLOExporter(BaseExporter):
260
+ def __init__(self, run, export_items, path_root, **params):
261
+ super().__init__(run, export_items, path_root, **params)
262
+ self.class_names = set()
263
+ self.dataset_stats = {
264
+ 'total_images': 0,
265
+ 'total_annotations': 0,
266
+ 'class_distribution': {}
267
+ }
268
+
269
+ def convert_data(self, data):
270
+ # Track classes and stats during conversion
271
+ for annotation in data.get('annotations', []):
272
+ class_name = annotation['class_name']
273
+ self.class_names.add(class_name)
274
+ self.dataset_stats['class_distribution'][class_name] = \
275
+ self.dataset_stats['class_distribution'].get(class_name, 0) + 1
276
+
277
+ self.dataset_stats['total_images'] += 1
278
+ self.dataset_stats['total_annotations'] += len(data.get('annotations', []))
279
+
280
+ return data # ... rest of conversion logic
281
+
282
+ def additional_file_saving(self, unique_export_path):
283
+ """Save YOLO configuration and metadata files."""
284
+ data_dir = Path(unique_export_path) / 'data'
285
+ data_dir.mkdir(exist_ok=True)
286
+
287
+ # 1. Save classes.txt file
288
+ classes_file = data_dir / 'classes.txt'
289
+ with classes_file.open('w') as f:
290
+ for class_name in sorted(self.class_names):
291
+ f.write(f"{class_name}\n")
292
+ self.run.log_message(f"Saved classes file: {classes_file}")
293
+
294
+ # 2. Save dataset.yaml file
295
+ dataset_config = {
296
+ 'path': str(unique_export_path),
297
+ 'train': 'images',
298
+ 'val': 'images',
299
+ 'names': {i: name for i, name in enumerate(sorted(self.class_names))}
300
+ }
301
+
302
+ dataset_file = data_dir / 'dataset.yaml'
303
+ with dataset_file.open('w') as f:
304
+ yaml.dump(dataset_config, f, default_flow_style=False)
305
+ self.run.log_message(f"Saved dataset config: {dataset_file}")
306
+
307
+ # 3. Save export statistics
308
+ stats_file = data_dir / 'export_stats.json'
309
+ with stats_file.open('w') as f:
310
+ json.dump(self.dataset_stats, f, indent=2)
311
+ self.run.log_message(f"Saved export statistics: {stats_file}")
312
+ ```
313
+
314
+ ### Common Use Cases
315
+
316
+ #### 1. Dataset Configuration Files
317
+ ```python
318
+ def additional_file_saving(self, unique_export_path):
319
+ # Create dataset configuration for training frameworks
320
+ config = {
321
+ 'dataset_name': self.params.get('name'),
322
+ 'created_at': datetime.now().isoformat(),
323
+ 'total_samples': len(self.processed_items),
324
+ 'classes': list(self.class_mapping.keys())
325
+ }
326
+
327
+ config_file = Path(unique_export_path) / 'dataset_config.json'
328
+ with config_file.open('w') as f:
329
+ json.dump(config, f, indent=2)
330
+ ```
331
+
332
+ #### 2. Export Summary Reports
333
+ ```python
334
+ def additional_file_saving(self, unique_export_path):
335
+ # Generate export summary
336
+ summary = {
337
+ 'export_info': {
338
+ 'plugin_name': self.__class__.__name__,
339
+ 'export_time': datetime.now().isoformat(),
340
+ 'export_path': str(unique_export_path)
341
+ },
342
+ 'statistics': self.get_export_statistics(),
343
+ 'errors': self.get_error_summary()
344
+ }
345
+
346
+ summary_file = Path(unique_export_path) / 'export_summary.json'
347
+ with summary_file.open('w') as f:
348
+ json.dump(summary, f, indent=2)
349
+ ```
350
+
351
+ #### 3. Index and Manifest Files
352
+ ```python
353
+ def additional_file_saving(self, unique_export_path):
354
+ # Create file index for processed items
355
+ file_index = []
356
+ for item in self.processed_items:
357
+ file_index.append({
358
+ 'original_file': item['original_filename'],
359
+ 'json_file': f"{item['stem']}.json",
360
+ 'processed_at': item['timestamp']
361
+ })
362
+
363
+ index_file = Path(unique_export_path) / 'file_index.json'
364
+ with index_file.open('w') as f:
365
+ json.dump(file_index, f, indent=2)
366
+ ```
367
+
228
368
  ## Key Features
229
369
 
230
370
  - **Progress Tracking**: Built-in progress monitoring with `run.set_progress()`