superannotate 4.5.2.dev2__tar.gz → 4.5.3.dev1__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.
Files changed (151) hide show
  1. {superannotate-4.5.2.dev2/src/superannotate.egg-info → superannotate-4.5.3.dev1}/PKG-INFO +11 -9
  2. superannotate-4.5.3.dev1/requirements.txt +15 -0
  3. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/__init__.py +1 -3
  4. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/analytics/common.py +0 -1
  5. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/common.py +2 -2
  6. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/__init__.py +0 -1
  7. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/conversion.py +2 -2
  8. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/baseStrategy.py +2 -2
  9. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/coco_converter.py +2 -2
  10. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/coco_strategies.py +2 -2
  11. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/coco_to_sa_pixel.py +1 -0
  12. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/coco_to_sa_vector.py +1 -0
  13. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/sa_vector_to_coco.py +1 -0
  14. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/converters.py +1 -0
  15. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/dataloop_converters/dataloop_strategies.py +2 -2
  16. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/dataloop_converters/dataloop_to_sa_vector.py +1 -0
  17. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/googlecloud_converters/googlecloud_to_sa_vector.py +1 -0
  18. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/labelbox_converters/labelbox_helper.py +0 -1
  19. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/labelbox_converters/labelbox_to_sa_vector.py +1 -0
  20. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/sagemaker_converters/sagemaker_to_sa_vector.py +1 -0
  21. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/supervisely_converters/supervisely_to_sa_vector.py +6 -3
  22. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vgg_converters/vgg_to_sa_vector.py +3 -4
  23. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/voc_converters/voc_to_sa_pixel.py +1 -0
  24. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/voc_converters/voc_to_sa_vector.py +1 -0
  25. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vott_converters/vott_to_sa_vector.py +1 -0
  26. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/yolo_converters/yolo_strategies.py +2 -2
  27. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/yolo_converters/yolo_to_sa_vector.py +1 -0
  28. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/export_from_sa_conversions.py +1 -0
  29. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/import_to_sa_conversions.py +1 -0
  30. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/sa_conversion.py +0 -1
  31. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/base_interface.py +6 -7
  32. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/sdk_interface.py +191 -91
  33. superannotate-4.5.3.dev1/src/superannotate/lib/app/interface/types.py +37 -0
  34. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/serializers.py +28 -18
  35. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/__init__.py +0 -1
  36. superannotate-4.5.3.dev1/src/superannotate/lib/core/entities/base.py +140 -0
  37. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/classes.py +27 -35
  38. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/folder.py +18 -23
  39. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/integrations.py +3 -10
  40. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/items.py +15 -32
  41. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/multimodal_form.py +2 -0
  42. superannotate-4.5.3.dev1/src/superannotate/lib/core/entities/project.py +146 -0
  43. superannotate-4.5.3.dev1/src/superannotate/lib/core/entities/work_managament.py +283 -0
  44. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/enums.py +45 -0
  45. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/plugin.py +1 -1
  46. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/service_types.py +34 -44
  47. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/types.py +7 -7
  48. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/annotations.py +8 -12
  49. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/classes.py +2 -2
  50. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/folders.py +10 -6
  51. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/images.py +6 -4
  52. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/integrations.py +5 -3
  53. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/items.py +5 -6
  54. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/projects.py +21 -16
  55. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/video_convertor.py +10 -11
  56. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/controller.py +0 -1
  57. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/custom_entities.py +0 -1
  58. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/serviceprovider.py +1 -3
  59. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/__init__.py +0 -1
  60. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/annotation.py +5 -8
  61. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/annotation_class.py +5 -3
  62. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/folder.py +4 -1
  63. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/http_client.py +11 -13
  64. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/item.py +2 -2
  65. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/item_service.py +2 -2
  66. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/work_management.py +6 -4
  67. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/utils.py +0 -1
  68. superannotate-4.5.3.dev1/src/superannotate/lib/infrastructure/validators.py +134 -0
  69. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1/src/superannotate.egg-info}/PKG-INFO +11 -9
  70. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate.egg-info/SOURCES.txt +0 -1
  71. superannotate-4.5.3.dev1/src/superannotate.egg-info/requires.txt +15 -0
  72. superannotate-4.5.2.dev2/requirements.txt +0 -13
  73. superannotate-4.5.2.dev2/src/superannotate/lib/app/interface/types.py +0 -55
  74. superannotate-4.5.2.dev2/src/superannotate/lib/core/entities/base.py +0 -136
  75. superannotate-4.5.2.dev2/src/superannotate/lib/core/entities/project.py +0 -182
  76. superannotate-4.5.2.dev2/src/superannotate/lib/core/entities/work_managament.py +0 -322
  77. superannotate-4.5.2.dev2/src/superannotate/lib/core/pydantic_v1.py +0 -38
  78. superannotate-4.5.2.dev2/src/superannotate/lib/infrastructure/validators.py +0 -95
  79. superannotate-4.5.2.dev2/src/superannotate.egg-info/requires.txt +0 -13
  80. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/LICENSE +0 -0
  81. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/MANIFEST.in +0 -0
  82. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/README.rst +0 -0
  83. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/setup.cfg +0 -0
  84. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/setup.py +0 -0
  85. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/__init__.py +0 -0
  86. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/__init__.py +0 -0
  87. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/analytics/__init__.py +0 -0
  88. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/analytics/aggregators.py +0 -0
  89. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/bin/__init__.py +0 -0
  90. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/bin/superannotate.py +0 -0
  91. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/exceptions.py +0 -0
  92. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/helpers.py +0 -0
  93. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/__init__.py +0 -0
  94. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/__init__.py +0 -0
  95. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/coco_api.py +0 -0
  96. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/coco_converters/sa_pixel_to_coco.py +0 -0
  97. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/dataloop_converters/__init__.py +0 -0
  98. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/dataloop_converters/dataloop_helper.py +0 -0
  99. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/googlecloud_converters/__init__.py +0 -0
  100. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/googlecloud_converters/googlecloud_strategies.py +0 -0
  101. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/labelbox_converters/__init__.py +0 -0
  102. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/sa_json_helper.py +0 -0
  103. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/sagemaker_converters/__init__.py +0 -0
  104. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/sagemaker_converters/sagemaker_strategies.py +0 -0
  105. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/supervisely_converters/__init__.py +0 -0
  106. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/supervisely_converters/supervisely_helper.py +0 -0
  107. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/supervisely_converters/supervisely_strategies.py +0 -0
  108. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vgg_converters/__init__.py +0 -0
  109. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vgg_converters/vgg_helper.py +0 -0
  110. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vgg_converters/vgg_strategies.py +0 -0
  111. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/voc_converters/__init__.py +0 -0
  112. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/voc_converters/voc_helper.py +0 -0
  113. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/voc_converters/voc_strategies.py +0 -0
  114. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vott_converters/__init__.py +0 -0
  115. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/vott_converters/vott_strategies.py +0 -0
  116. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/input_converters/converters/yolo_converters/__init__.py +0 -0
  117. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/__init__.py +0 -0
  118. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/cli_interface.py +0 -0
  119. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/sdk/__init__.py +0 -0
  120. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/sdk/folders.py +0 -0
  121. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/app/interface/sdk/project.py +0 -0
  122. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/__init__.py +0 -0
  123. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/base_usecases.py +0 -0
  124. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/conditions.py +0 -0
  125. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/config.py +0 -0
  126. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/filters.py +0 -0
  127. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/entities/project_entities.py +0 -0
  128. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/exceptions.py +0 -0
  129. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/jsx_conditions.py +0 -0
  130. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/reporter.py +0 -0
  131. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/repositories.py +0 -0
  132. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/response.py +0 -0
  133. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/serviceproviders.py +0 -0
  134. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/__init__.py +0 -0
  135. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/base.py +0 -0
  136. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/custom_fields.py +0 -0
  137. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/usecases/models.py +0 -0
  138. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/core/utils.py +0 -0
  139. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/__init__.py +0 -0
  140. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/annotation_adapter.py +0 -0
  141. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/helpers.py +0 -0
  142. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/query_builder.py +0 -0
  143. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/repositories.py +0 -0
  144. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/explore.py +0 -0
  145. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/integration.py +0 -0
  146. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/project.py +0 -0
  147. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/services/telemetry_scoring.py +0 -0
  148. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate/lib/infrastructure/stream_data_handler.py +0 -0
  149. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate.egg-info/dependency_links.txt +0 -0
  150. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate.egg-info/entry_points.txt +0 -0
  151. {superannotate-4.5.2.dev2 → superannotate-4.5.3.dev1}/src/superannotate.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: superannotate
3
- Version: 4.5.2.dev2
3
+ Version: 4.5.3.dev1
4
4
  Summary: Python SDK to SuperAnnotate platform
5
5
  Home-page: https://github.com/superannotateai/superannotate-python-sdk
6
6
  Author: SuperAnnotate AI
@@ -17,18 +17,20 @@ Classifier: Programming Language :: Python :: 3.14
17
17
  Requires-Python: >=3.10
18
18
  Description-Content-Type: text/x-rst
19
19
  License-File: LICENSE
20
- Requires-Dist: pydantic!=2.0.*,<3,>=1.10
20
+ Requires-Dist: pydantic~=2.5
21
+ Requires-Dist: pydantic-extra-types~=2.11
21
22
  Requires-Dist: aiohttp~=3.8
22
- Requires-Dist: boto3~=1.26
23
+ Requires-Dist: boto3~=1.42
23
24
  Requires-Dist: opencv-python-headless~=4.7
24
- Requires-Dist: plotly~=5.14
25
+ Requires-Dist: plotly~=6.5
25
26
  Requires-Dist: pandas~=2.0
26
- Requires-Dist: pillow>=9.5,~=10.0
27
+ Requires-Dist: pillow~=12.1
27
28
  Requires-Dist: tqdm~=4.66
28
- Requires-Dist: requests==2.*
29
- Requires-Dist: aiofiles==23.*
30
- Requires-Dist: fire==0.4.0
31
- Requires-Dist: mixpanel==4.8.3
29
+ Requires-Dist: requests~=2.32
30
+ Requires-Dist: aiofiles~=25.1
31
+ Requires-Dist: fire~=0.7
32
+ Requires-Dist: mixpanel~=5.1
33
+ Requires-Dist: typing_extensions~=4.15
32
34
  Requires-Dist: superannotate-schemas==1.0.49
33
35
 
34
36
  SuperAnnotate Python SDK
@@ -0,0 +1,15 @@
1
+ pydantic~=2.5
2
+ pydantic-extra-types~=2.11
3
+ aiohttp~=3.8
4
+ boto3~=1.42
5
+ opencv-python-headless~=4.7
6
+ plotly~=6.5
7
+ pandas~=2.0
8
+ pillow~=12.1
9
+ tqdm~=4.66
10
+ requests~=2.32
11
+ aiofiles~=25.1
12
+ fire~=0.7
13
+ mixpanel~=5.1
14
+ typing_extensions~=4.15
15
+ superannotate-schemas==1.0.49
@@ -2,8 +2,7 @@ import logging
2
2
  import os
3
3
  import sys
4
4
 
5
-
6
- __version__ = "4.5.2dev2"
5
+ __version__ = "4.5.3dev1"
7
6
 
8
7
 
9
8
  os.environ.update({"sa_version": __version__})
@@ -22,7 +21,6 @@ from superannotate.lib.app.input_converters import import_annotation
22
21
  from superannotate.lib.app.interface.sdk_interface import SAClient
23
22
  from superannotate.lib.app.interface.sdk_interface import ItemContext
24
23
 
25
-
26
24
  SESSIONS = {}
27
25
 
28
26
 
@@ -6,7 +6,6 @@ import pandas as pd
6
6
  import plotly.express as px
7
7
  from lib.core.exceptions import AppException
8
8
 
9
-
10
9
  logger = logging.getLogger("sa")
11
10
 
12
11
 
@@ -24,11 +24,11 @@ def blue_color_generator(n, hex_values=True):
24
24
  )
25
25
  hex_color = (
26
26
  "#"
27
- + "{:02x}".format(bgr_color[2])
27
+ + f"{bgr_color[2]:02x}"
28
28
  + "{:02x}".format(
29
29
  bgr_color[1],
30
30
  )
31
- + "{:02x}".format(bgr_color[0])
31
+ + f"{bgr_color[0]:02x}"
32
32
  )
33
33
  if hex_values:
34
34
  hex_colors.append(hex_color)
@@ -1,7 +1,6 @@
1
1
  from lib.app.input_converters.conversion import export_annotation
2
2
  from lib.app.input_converters.conversion import import_annotation
3
3
 
4
-
5
4
  __all__ = [
6
5
  "export_annotation",
7
6
  "import_annotation",
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Main module for input converters
3
3
  """
4
+
4
5
  import os
5
6
  import shutil
6
7
  import tempfile
@@ -15,7 +16,6 @@ from lib.core.exceptions import AppException
15
16
  from .export_from_sa_conversions import export_from_sa
16
17
  from .import_to_sa_conversions import import_to_sa
17
18
 
18
-
19
19
  ALLOWED_TASK_TYPES = [
20
20
  "panoptic_segmentation",
21
21
  "instance_segmentation",
@@ -108,7 +108,7 @@ def _passes_value_sanity(values_info):
108
108
  for value in values_info:
109
109
  if value[0] not in value[2]:
110
110
  raise AppException(
111
- "'{}' should be one of the following '{}'".format(value[1], value[2])
111
+ f"'{value[1]}' should be one of the following '{value[2]}'"
112
112
  )
113
113
 
114
114
 
@@ -1,5 +1,5 @@
1
- """
2
- """
1
+ """ """
2
+
3
3
  import logging
4
4
 
5
5
  from .coco_converters.coco_to_sa_vector import coco_instance_segmentation_to_sa_vector
@@ -1,5 +1,5 @@
1
- """
2
- """
1
+ """ """
2
+
3
3
  import json
4
4
  import logging
5
5
  from collections import namedtuple
@@ -1,5 +1,5 @@
1
- """
2
- """
1
+ """ """
2
+
3
3
  import logging
4
4
  import threading
5
5
  from pathlib import Path
@@ -1,6 +1,7 @@
1
1
  """
2
2
  COCO to SA conversion method
3
3
  """
4
+
4
5
  import logging
5
6
 
6
7
  from .coco_api import _maskfrRLE
@@ -1,6 +1,7 @@
1
1
  """
2
2
  COCO to SA conversion methods
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -4,6 +4,7 @@ This object will receive the strategy from outside and will convert according to
4
4
  said strategy.
5
5
 
6
6
  """
7
+
7
8
  from .coco_converters.coco_strategies import CocoKeypointDetectionStrategy
8
9
  from .coco_converters.coco_strategies import CocoObjectDetectionStrategy
9
10
  from .coco_converters.coco_strategies import CocoPanopticConverterStrategy
@@ -1,5 +1,5 @@
1
- """
2
- """
1
+ """ """
2
+
3
3
  import numpy as np
4
4
 
5
5
  from ....common import write_to_json
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Dataloop to SA conversion method
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Googlecloud to SA conversion method
3
3
  """
4
+
4
5
  import logging
5
6
  import threading
6
7
  from pathlib import Path
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Sagemaker to SA conversion method
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -1,6 +1,7 @@
1
1
  """
2
2
  Supervisely to SA conversion method
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -92,9 +93,11 @@ def supervisely_to_sa(json_files, class_id_map, task, output_dir):
92
93
  elif obj["geometryType"] == "bitmap":
93
94
  for ppoints in _base64_to_polygon(obj["bitmap"]["data"]):
94
95
  points = [
95
- x + obj["bitmap"]["origin"][0]
96
- if i % 2 == 0
97
- else x + obj["bitmap"]["origin"][1]
96
+ (
97
+ x + obj["bitmap"]["origin"][0]
98
+ if i % 2 == 0
99
+ else x + obj["bitmap"]["origin"][1]
100
+ )
98
101
  for i, x in enumerate(ppoints)
99
102
  ]
100
103
  instance_type = "polygon"
@@ -1,6 +1,7 @@
1
1
  """
2
2
  VGG to SA conversion method.
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -59,10 +60,8 @@ def vgg_to_sa(json_data, task, output_dir):
59
60
  instances = img["regions"]
60
61
  for instance in instances:
61
62
  if "type" not in instance["region_attributes"].keys():
62
- raise KeyError(
63
- "'VGG' JSON should contain 'type' key which will \
64
- be category name. Please correct JSON file."
65
- )
63
+ raise KeyError("'VGG' JSON should contain 'type' key which will \
64
+ be category name. Please correct JSON file.")
66
65
  if not isinstance(instance["region_attributes"]["type"], str):
67
66
  raise ValueError("Wrong attribute was choosen for 'type' attribute.")
68
67
 
@@ -1,6 +1,7 @@
1
1
  """
2
2
  VoTT to SA conversion method
3
3
  """
4
+
4
5
  import json
5
6
  import logging
6
7
  import threading
@@ -1,5 +1,5 @@
1
- """
2
- """
1
+ """ """
2
+
3
3
  import numpy as np
4
4
 
5
5
  from ....common import write_to_json
@@ -1,6 +1,7 @@
1
1
  """
2
2
  YOLO to SA conversion method
3
3
  """
4
+
4
5
  import logging
5
6
  import threading
6
7
  from glob import glob
@@ -2,6 +2,7 @@
2
2
  Module which will convert from
3
3
  superannotate annotation format to other annotation formats
4
4
  """
5
+
5
6
  import copy
6
7
  import json
7
8
  import logging
@@ -2,6 +2,7 @@
2
2
  Module which will convert from other
3
3
  annotation formats to superannotate annotation format
4
4
  """
5
+
5
6
  import logging
6
7
  import shutil
7
8
  from pathlib import Path
@@ -1,7 +1,6 @@
1
1
  import logging
2
2
  import shutil
3
3
 
4
-
5
4
  logger = logging.getLogger("sa")
6
5
 
7
6
 
@@ -9,6 +9,7 @@ from inspect import signature
9
9
  from pathlib import Path
10
10
  from types import FunctionType
11
11
  from typing import Iterable
12
+ from typing import Optional
12
13
  from typing import Sized
13
14
 
14
15
  import lib.core as constants
@@ -18,19 +19,20 @@ from lib.core import setup_logging
18
19
  from lib.core.entities.base import ConfigEntity
19
20
  from lib.core.entities.base import TokenStr
20
21
  from lib.core.exceptions import AppException
21
- from lib.core.pydantic_v1 import ErrorWrapper
22
- from lib.core.pydantic_v1 import ValidationError
23
22
  from lib.infrastructure.controller import Controller
24
23
  from lib.infrastructure.utils import extract_project_folder_inputs
25
24
  from lib.infrastructure.validators import wrap_error
26
25
  from mixpanel import Mixpanel
26
+ from pydantic import ValidationError
27
27
 
28
28
 
29
29
  class BaseInterfaceFacade:
30
30
  REGISTRY = []
31
31
 
32
32
  @validate_arguments
33
- def __init__(self, token: TokenStr = None, config_path: str = None):
33
+ def __init__(
34
+ self, token: Optional[TokenStr] = None, config_path: Optional[str] = None
35
+ ):
34
36
  try:
35
37
  if token:
36
38
  config = ConfigEntity(SA_TOKEN=token)
@@ -80,10 +82,7 @@ class BaseInterfaceFacade:
80
82
  try:
81
83
  config = ConfigEntity(SA_TOKEN=token)
82
84
  except ValidationError:
83
- raise ValidationError(
84
- [ErrorWrapper(ValueError("Invalid token."), loc="token")],
85
- model=ConfigEntity,
86
- )
85
+ raise AppException("Invalid token.")
87
86
  host = json_data.get("main_endpoint")
88
87
  verify_ssl = json_data.get("ssl_verify")
89
88
  if host: