What's Changed
* Improve GrapgNodes initialization and error messages; Refactor method _download_project_async; Reduce instance version requests. by GoldenAnpu in https://github.com/supervisely/supervisely/pull/1251
Details
api.py
- Added an attribute `self._instance_version` to reduce the number of API requests.
annotation.py
- Added improved error logging and specified data types in `_add_labels_impl`
graph.py
- Added a check for empty nodes during instance initialization of `GraphNodes`
- Added warning for empty nodes in `GraphNodes.to_bbox`
rectangle.py
- Added a check for empty geometries list in `from_geometries_list`
project.py
- Removed workers and queue functionality in `_download_project_async`
- Added an internal method `run_tasks_with_delay` that creates tasks and starts them with a delay in `_download_project_async`
- Added improved error messages for annotation creation in `_download_project_item_async` and `_download_project_items_batch_async`
- Added debug logs showing the semaphore state at the end of task execution in `_download_project_item_async` and `_download_project_items_batch_async`
- Optimized annotation creation in `_download_project_items_batch_async`
**Full Changelog**: https://github.com/supervisely/supervisely/compare/v6.73.287...v6.73.288