synapse-sdk 1.0.0a96__tar.gz → 1.0.0a98__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.
- synapse_sdk-1.0.0a98/.claude/commands/update-pr-title.md +32 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/PKG-INFO +1 -1
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/pascal/from_dm.py +32 -10
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/file_system.py +15 -13
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/PKG-INFO +1 -1
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/SOURCES.txt +1 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_pascal_from_dm.py +26 -2
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/storage/test_file_system_storage.py +20 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.claude/commands/compare-branch.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.claude/commands/review-pr.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.claude/commands/update-pr-desc.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.coverage +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.github/workflows/lint.yml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.github/workflows/pypi-publish.yml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.github/workflows/test.yml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.gitignore +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.mcp.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/AGENT.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/CLAUDE.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/GEMINI.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/LICENSE +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/Makefile +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/P1_rules.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/P2_rules.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/P3_rules.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/P4_rules.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/README.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/clients/agent.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/clients/backend.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/clients/base.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/plugins/categories.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/plugins/models.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/plugins/utils.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/utils/file.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/utils/storage.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/api/utils/types.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/categories.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/concepts/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/configuration.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/contributing.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/examples/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/faq.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/features/converters/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/features/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/features/plugins/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/code.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-theme-classic/footer.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-theme-classic/navbar.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/installation.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/introduction.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/quickstart.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/troubleshooting.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/_category_.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/congratulations.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/create-a-blog-post.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/create-a-document.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/create-a-page.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/deploy-your-site.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-basics/markdown-features.mdx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/_category_.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/img/localeDropdown.png +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/manage-docs-versions.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/translate-your-site.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/locale/en/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/locale/en/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/locale/ko/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/locale/ko/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/pytest-ci.ini +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/pytest.ini +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/requirements.test.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/requirements.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/setup.cfg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/create.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/dataclass.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/default.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/delete.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/list.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/read.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/update.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/alias/utils.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/config.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/devtools.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/plugin/create.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/plugin/publish.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/cli/plugin/run.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/agent/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/agent/core.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/agent/ray.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/agent/service.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/annotation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/core.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/data_collection.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/hitl.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/integration.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/ml.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/models.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/base.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/exceptions.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/ray/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/ray/core.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/ray/serve.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/utils.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/validators/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/validators/collections.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/config.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/.gitignore +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/README.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/authors.yml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/blog/tags.yml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/docusaurus.config.ts +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/package-lock.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/package.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/sidebars.ts +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/css/custom.css +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/pages/index.module.css +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/pages/index.tsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/pages/markdown-page.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/.nojekyll +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/logo.png +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/tsconfig.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/models.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/server.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/utils.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/.gitignore +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/README.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/dist/index.html +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/index.html +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/jsconfig.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/package-lock.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/package.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/pnpm-lock.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/App.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/App.module.css +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/assets/favicon.ico +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/Breadcrumbs.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/Layout.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/LogViewer.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/MessageViewer.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/NavigationSidebar.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/ServerStatusBar.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/components/icons.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/index.css +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/index.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/logo.svg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/router.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/utils/api.js +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/views/ApplicationDetailView.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/views/ApplicationsView.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/views/HomeView.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/views/JobDetailView.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/src/views/PluginView.jsx +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/web/vite.config.js +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/i18n.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/loggers.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/base.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/actions/validation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/decorators.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/actions/export.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/enums.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/export/templates/plugin/export.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/deployment.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/gradio.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/inference.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/test.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/train.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/actions/tune.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/base/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/base/inference.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/templates/plugin/test.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/neural_net/templates/plugin/train.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/actions/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/registry.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/actions/auto_label.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/auto_label.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/templates.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/actions/upload.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/enums.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/exceptions.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/models.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/cookiecutter.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/hooks/post_gen_project.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/hooks/pre_prompt.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/plugin-config-schema.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/schema.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/upload.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/utils/actions.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/utils/config.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/utils/legacy.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/plugins/utils/registry.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/shared/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/shared/enums.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/types.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/coco/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/coco/from_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/coco/to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/dm/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/dm/from_v1.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/dm/to_v1.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/pascal/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/pascal/to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/yolo/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/yolo/from_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/yolo/to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/dataset.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/debug.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/file.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/http.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/module_loading.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/network.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/pydantic/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/pydantic/config.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/pydantic/errors.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/pydantic/validators.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/gcp.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/http.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/s3.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/sftp.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/registry.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/string.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/dependency_links.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/entry_points.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/requires.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk.egg-info/top_level.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/README.md +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/clients/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/clients/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/clients/test_backend_models.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/clients/test_base_client.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/clients/test_collection_validators.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/loggers/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/loggers/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/loggers/test_base_logger.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/data_validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/data_validation/validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/data_validation/validation/test_validation_action.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/utils/test_actions.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/utils/test_config.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/plugins/utils/test_registry.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/test_cli.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/test_cli_integration.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/__init__,py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/__init__.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/coco.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/annotations.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data8.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data9.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/annotations.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data4.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data5.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data6.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/annotations.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/new_dm_data7.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/annotations.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data1.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data2.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data3.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_1.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_2.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_3.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_1.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_2.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_3.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_4.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_5.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_6.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_7.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_4.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_5.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_6.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_7.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_8.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_9.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_8.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_9.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_1.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_2.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_3.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_1.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_2.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_3.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/ver1/json/25669.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/dm/ver2/json/25669.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9139.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9140.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9141.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9139.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9140.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9141.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9136.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9137.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9138.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9136.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9137.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9138.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9125.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9126.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9127.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9125.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9126.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9127.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9122.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9123.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9124.xml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9122.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9123.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9124.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/dataset.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13744.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13745.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13746.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13744.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13745.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13746.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/images/13782.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/labels/13782.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13761.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13764.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13761.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13764.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/classes.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/dataset.yaml +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25332.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25334.jpg +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25332.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25334.txt +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/pcd/dm/ver1/json/23791.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/pcd/dm/ver2/json/23791.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/prompt/dm/ver1/json/18662.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/prompt/dm/ver2/json/18662.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/text/dm/ver1/json/23811.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/text/dm/ver2/json/23811.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/video/dm/ver1/json/23831.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/data_types/video/dm/ver2/json/23831.json +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/dm_schema.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/pascal.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/fixtures/yolo.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_coco_from_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_coco_to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_dm_v1_to_v2.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_dm_v2_to_v1.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_pascal_to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_yolo_from_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/converters/test_yolo_to_dm.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/storage/conftest.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/storage/test_provider_selection.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/test_debug.py +0 -0
- {synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/uv.lock +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Update PR Title Command
|
|
2
|
+
|
|
3
|
+
You will help the user update a PR title with various options.
|
|
4
|
+
|
|
5
|
+
## Available Options
|
|
6
|
+
|
|
7
|
+
- `--pr <number>`: Specify PR number (optional - uses current branch if not provided)
|
|
8
|
+
- `--lang <language>`: Title language (korean/english, default: korean)
|
|
9
|
+
|
|
10
|
+
## Examples
|
|
11
|
+
|
|
12
|
+
- `/update-pr-title --pr 123 --lang ko`: Update PR #123 with Korean title
|
|
13
|
+
- `/update-pr-title --lang eng`: Update current branch PR with English title
|
|
14
|
+
- `/update-pr-title`: Update current branch PR with Korean title (default)
|
|
15
|
+
|
|
16
|
+
## Implementation
|
|
17
|
+
|
|
18
|
+
1. If PR number not provided, find PR for current branch
|
|
19
|
+
2. Analyze commit messages and changes to understand the scope
|
|
20
|
+
3. Generate a concise, descriptive title in specified language
|
|
21
|
+
4. Keep any existing ticket ID (e.g., SYN-XXXX) at the beginning
|
|
22
|
+
5. Update the PR title
|
|
23
|
+
|
|
24
|
+
## Title Guidelines
|
|
25
|
+
|
|
26
|
+
- Keep titles concise but descriptive (under 72 characters when possible)
|
|
27
|
+
- Include the ticket ID if present
|
|
28
|
+
- Summarize the main feature/fix/change
|
|
29
|
+
- Use appropriate language (Korean/English)
|
|
30
|
+
- Follow conventional commit style when applicable
|
|
31
|
+
|
|
32
|
+
Please provide the PR number and desired language, or use defaults for current branch and Korean
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/converters/pascal/from_dm.py
RENAMED
|
@@ -27,7 +27,9 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
27
27
|
return img_path
|
|
28
28
|
return None
|
|
29
29
|
|
|
30
|
-
def build_pascal_xml(
|
|
30
|
+
def build_pascal_xml(
|
|
31
|
+
self, img_filename: str, img_size: tuple, objects: List[dict], has_segmentation: bool = None
|
|
32
|
+
) -> ET.ElementTree:
|
|
31
33
|
"""Build a Pascal VOC XML tree from image filename, size, and objects."""
|
|
32
34
|
folder = 'Images'
|
|
33
35
|
width, height, depth = img_size
|
|
@@ -41,7 +43,12 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
41
43
|
ET.SubElement(size, 'width').text = str(width)
|
|
42
44
|
ET.SubElement(size, 'height').text = str(height)
|
|
43
45
|
ET.SubElement(size, 'depth').text = str(depth)
|
|
44
|
-
|
|
46
|
+
|
|
47
|
+
# Set segmented to 1 if there are any segmentation objects, 0 otherwise
|
|
48
|
+
if has_segmentation is None:
|
|
49
|
+
has_segmentation = any(obj.get('has_segmentation', False) for obj in objects)
|
|
50
|
+
ET.SubElement(annotation, 'segmented').text = '1' if has_segmentation else '0'
|
|
51
|
+
|
|
45
52
|
for obj in objects:
|
|
46
53
|
obj_elem = ET.SubElement(annotation, 'object')
|
|
47
54
|
ET.SubElement(obj_elem, 'name').text = obj['name']
|
|
@@ -58,6 +65,8 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
58
65
|
def parse_dm_annotations(self, annotation: dict):
|
|
59
66
|
"""Parse DM annotations and convert to Pascal VOC format."""
|
|
60
67
|
objects = []
|
|
68
|
+
has_segmentation = 'segmentation' in annotation
|
|
69
|
+
|
|
61
70
|
# Only include bounding_box (Pascal VOC does not support polyline/keypoint by default)
|
|
62
71
|
if 'bounding_box' in annotation:
|
|
63
72
|
for box in annotation['bounding_box']:
|
|
@@ -67,10 +76,18 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
67
76
|
ymin = int(round(y))
|
|
68
77
|
xmax = int(round(x + w))
|
|
69
78
|
ymax = int(round(y + h))
|
|
70
|
-
objects.append({
|
|
79
|
+
objects.append({
|
|
80
|
+
'name': class_name,
|
|
81
|
+
'xmin': xmin,
|
|
82
|
+
'ymin': ymin,
|
|
83
|
+
'xmax': xmax,
|
|
84
|
+
'ymax': ymax,
|
|
85
|
+
'has_segmentation': has_segmentation,
|
|
86
|
+
})
|
|
71
87
|
self.class_names.add(class_name)
|
|
88
|
+
|
|
72
89
|
# polyline, keypoint 등은 무시
|
|
73
|
-
return objects
|
|
90
|
+
return objects, has_segmentation
|
|
74
91
|
|
|
75
92
|
def _convert_split_dir(self, split_dir: str, split_name: str):
|
|
76
93
|
"""Convert a split dir (train/valid/test) to list of (xml_tree, xml_filename, img_src, img_name)."""
|
|
@@ -89,8 +106,10 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
89
106
|
with Image.open(img_path) as img:
|
|
90
107
|
width, height = img.size
|
|
91
108
|
depth = len(img.getbands())
|
|
92
|
-
objects = self.parse_dm_annotations(img_ann)
|
|
93
|
-
xml_tree = self.build_pascal_xml(
|
|
109
|
+
objects, has_segmentation = self.parse_dm_annotations(img_ann)
|
|
110
|
+
xml_tree = self.build_pascal_xml(
|
|
111
|
+
os.path.basename(img_path), (width, height, depth), objects, has_segmentation
|
|
112
|
+
)
|
|
94
113
|
xml_filename = base + '.xml'
|
|
95
114
|
results.append((xml_tree, xml_filename, img_path, os.path.basename(img_path)))
|
|
96
115
|
return results
|
|
@@ -112,8 +131,10 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
112
131
|
with Image.open(img_path) as img:
|
|
113
132
|
width, height = img.size
|
|
114
133
|
depth = len(img.getbands())
|
|
115
|
-
objects = self.parse_dm_annotations(img_ann)
|
|
116
|
-
xml_tree = self.build_pascal_xml(
|
|
134
|
+
objects, has_segmentation = self.parse_dm_annotations(img_ann)
|
|
135
|
+
xml_tree = self.build_pascal_xml(
|
|
136
|
+
os.path.basename(img_path), (width, height, depth), objects, has_segmentation
|
|
137
|
+
)
|
|
117
138
|
xml_filename = base + '.xml'
|
|
118
139
|
results.append((xml_tree, xml_filename, img_path, os.path.basename(img_path)))
|
|
119
140
|
return results
|
|
@@ -202,12 +223,13 @@ class FromDMToPascalConverter(FromDMConverter):
|
|
|
202
223
|
# Process annotations from the first (and only) image in data
|
|
203
224
|
if 'images' in data and len(data['images']) > 0:
|
|
204
225
|
img_ann = data['images'][0]
|
|
205
|
-
objects = self.parse_dm_annotations(img_ann)
|
|
226
|
+
objects, has_segmentation = self.parse_dm_annotations(img_ann)
|
|
206
227
|
else:
|
|
207
228
|
objects = []
|
|
229
|
+
has_segmentation = False
|
|
208
230
|
|
|
209
231
|
# Build Pascal VOC XML
|
|
210
|
-
xml_tree = self.build_pascal_xml(img_filename, (width, height, depth), objects)
|
|
232
|
+
xml_tree = self.build_pascal_xml(img_filename, (width, height, depth), objects, has_segmentation)
|
|
211
233
|
xml_filename = os.path.splitext(img_filename)[0] + '.xml'
|
|
212
234
|
|
|
213
235
|
# Convert XML tree to string for easy viewing
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/utils/storage/providers/file_system.py
RENAMED
|
@@ -23,10 +23,23 @@ class FileSystemStorage(BaseStorage):
|
|
|
23
23
|
>>> storage = FileSystemStorage(config)
|
|
24
24
|
"""
|
|
25
25
|
|
|
26
|
-
def __init__(self,
|
|
27
|
-
super().__init__(
|
|
26
|
+
def __init__(self, connection_params: str | dict):
|
|
27
|
+
super().__init__(connection_params)
|
|
28
28
|
self.base_path = Path(self.query_params['location'])
|
|
29
29
|
|
|
30
|
+
def get_pathlib(self, path):
|
|
31
|
+
"""Get the path as a pathlib object.
|
|
32
|
+
|
|
33
|
+
Args:
|
|
34
|
+
path (str): The path to convert.
|
|
35
|
+
|
|
36
|
+
Returns:
|
|
37
|
+
pathlib.Path: The converted path.
|
|
38
|
+
"""
|
|
39
|
+
if path == '/' or path == '':
|
|
40
|
+
return self.base_path
|
|
41
|
+
return self.base_path / path
|
|
42
|
+
|
|
30
43
|
def upload(self, source, target):
|
|
31
44
|
"""Upload a file from source to target location.
|
|
32
45
|
|
|
@@ -72,17 +85,6 @@ class FileSystemStorage(BaseStorage):
|
|
|
72
85
|
target_path = self.base_path / target
|
|
73
86
|
return f'file://{target_path.absolute()}'
|
|
74
87
|
|
|
75
|
-
def get_pathlib(self, path):
|
|
76
|
-
"""Get the path as a pathlib object.
|
|
77
|
-
|
|
78
|
-
Args:
|
|
79
|
-
path (str): The path to convert.
|
|
80
|
-
|
|
81
|
-
Returns:
|
|
82
|
-
pathlib.Path: The converted path.
|
|
83
|
-
"""
|
|
84
|
-
return self.base_path / path
|
|
85
|
-
|
|
86
88
|
def get_path_file_count(self, pathlib_obj):
|
|
87
89
|
"""Get the file count in the path.
|
|
88
90
|
|
|
@@ -48,23 +48,47 @@ class TestFromDMToPascalConverter:
|
|
|
48
48
|
]
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
objects = converter.parse_dm_annotations(annotation)
|
|
51
|
+
objects, has_segmentation = converter.parse_dm_annotations(annotation)
|
|
52
52
|
|
|
53
53
|
assert len(objects) == 2
|
|
54
54
|
assert objects[0]['name'] == 'car'
|
|
55
55
|
assert objects[0]['xmin'] == 10
|
|
56
|
+
assert objects[0]['has_segmentation'] is False
|
|
56
57
|
assert objects[1]['name'] == 'person'
|
|
58
|
+
assert objects[1]['has_segmentation'] is False
|
|
59
|
+
assert has_segmentation is False
|
|
57
60
|
assert 'car' in converter.class_names
|
|
58
61
|
assert 'person' in converter.class_names
|
|
59
62
|
|
|
63
|
+
def test_parse_dm_annotations_with_segmentation(self, pascal_from_dm_converter_class):
|
|
64
|
+
"""Test parsing DM annotations with segmentation data."""
|
|
65
|
+
converter = pascal_from_dm_converter_class('/dummy/path')
|
|
66
|
+
annotation = {
|
|
67
|
+
'bounding_box': [
|
|
68
|
+
{'classification': 'car', 'data': [10, 20, 30, 40]},
|
|
69
|
+
],
|
|
70
|
+
'segmentation': [
|
|
71
|
+
{'classification': 'car', 'data': [[10, 20, 30, 40, 50, 60]]},
|
|
72
|
+
],
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
objects, has_segmentation = converter.parse_dm_annotations(annotation)
|
|
76
|
+
|
|
77
|
+
assert len(objects) == 1
|
|
78
|
+
assert objects[0]['name'] == 'car'
|
|
79
|
+
assert objects[0]['has_segmentation'] is True
|
|
80
|
+
assert has_segmentation is True
|
|
81
|
+
assert 'car' in converter.class_names
|
|
82
|
+
|
|
60
83
|
def test_parse_dm_annotations_no_bounding_box(self, pascal_from_dm_converter_class):
|
|
61
84
|
"""Test parsing DM annotations with no bounding box."""
|
|
62
85
|
converter = pascal_from_dm_converter_class('/dummy/path')
|
|
63
86
|
annotation = {}
|
|
64
87
|
|
|
65
|
-
objects = converter.parse_dm_annotations(annotation)
|
|
88
|
+
objects, has_segmentation = converter.parse_dm_annotations(annotation)
|
|
66
89
|
|
|
67
90
|
assert len(objects) == 0
|
|
91
|
+
assert has_segmentation is False
|
|
68
92
|
assert 'car' not in converter.class_names
|
|
69
93
|
assert 'person' not in converter.class_names
|
|
70
94
|
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/tests/utils/storage/test_file_system_storage.py
RENAMED
|
@@ -177,6 +177,26 @@ class TestFileSystemStorage:
|
|
|
177
177
|
expected_path = sample_files / target
|
|
178
178
|
assert result_path == expected_path
|
|
179
179
|
|
|
180
|
+
def test_get_pathlib_with_root_slash(self, sample_files):
|
|
181
|
+
"""Test get_pathlib with '/' returns base path."""
|
|
182
|
+
config = {'provider': 'file_system', 'configuration': {'location': str(sample_files)}}
|
|
183
|
+
storage = FileSystemStorage(config)
|
|
184
|
+
|
|
185
|
+
result_path = storage.get_pathlib('/')
|
|
186
|
+
|
|
187
|
+
assert result_path == sample_files
|
|
188
|
+
assert isinstance(result_path, Path)
|
|
189
|
+
|
|
190
|
+
def test_get_pathlib_with_empty_string(self, sample_files):
|
|
191
|
+
"""Test get_pathlib with empty string returns base path."""
|
|
192
|
+
config = {'provider': 'file_system', 'configuration': {'location': str(sample_files)}}
|
|
193
|
+
storage = FileSystemStorage(config)
|
|
194
|
+
|
|
195
|
+
result_path = storage.get_pathlib('')
|
|
196
|
+
|
|
197
|
+
assert result_path == sample_files
|
|
198
|
+
assert isinstance(result_path, Path)
|
|
199
|
+
|
|
180
200
|
def test_get_path_file_count_single_file(self, sample_files):
|
|
181
201
|
"""Test get_path_file_count for single file."""
|
|
182
202
|
config = {'provider': 'file_system', 'configuration': {'location': str(sample_files)}}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-theme-classic/footer.json
RENAMED
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/i18n/ko/docusaurus-theme-classic/navbar.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/docs/tutorial-extras/img/docsVersionDropdown.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/clients/backend/data_collection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/docusaurus.config.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/pages/index.module.css
RENAMED
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a96 → synapse_sdk-1.0.0a98}/synapse_sdk/devtools/docs/src/pages/markdown-page.md
RENAMED
|
File without changes
|