1.10.1
HumanSignal/label-studio1.10.1Jan 4, 2024by github-actions[bot]
AI Summary
A security-focused patch release that implements a Content Security Policy (CSP) header and fixes HTML sanitization issues to address specific vulnerabilities.
Key Highlights
- Added CSP header to `/data/upload/` endpoint to address CVE-2024-23633
- Fixed HTML sanitization vulnerability identified by CodeQL
- Improved security for organization invite links
New Features
- Security patches (CSP, Sanitization)
- Bug fixes (polygon editing, hotkeys, brushstroke highlights)
Full Release Notes
# 🔐 Security - Addressed [`CVE-2024-23633`](https://github.com/HumanSignal/label-studio/security/advisories/GHSA-fq23-g58m-799r) by setting a `sandbox` CSP header on the `/data/upload/` endpoint (#5137). - Fixed an issue with HTML sanitization to address a vulnerability identified by CodeQL. ([#5206](https://github.com/HumanSignal/label-studio/pull/5206), [#5122](https://github.com/HumanSignal/label-studio/pull/5122)) - Improved security for org invite links. ([#5136](https://github.com/HumanSignal/label-studio/pull/5136)) # 🐞 Bug Fixes - Fixed an issue where the **Auto accept annotation suggestions** toggle was not working as expected in some situations. ([#4963](https://github.com/HumanSignal/label-studio/pull/4963)) - Fixed an issue with relation positions in multi-image segmentation. ([#5117](https://github.com/HumanSignal/label-studio/pull/5117)) - Fixed an issue where users were unable to edit polygon points. ([#5097](https://github.com/HumanSignal/label-studio/pull/5097)) - Fixed an issue with wrong position of brushstroke highlighted on hover. ([#5093](https://github.com/HumanSignal/label-studio/pull/5093)) # 🤩 Contributors - @hlomzik - @juliosgarbi - @jombooth - @Gondragos > Full Changelog: [tags/1.10.0.post0...1.10.1](https://github.com/HumanSignal/label-studio/compare/tags/1.10.0.post0...d7ca8b74f22c973dbe74a32ae639e845b9b34e66.diff) > This changelog was updated in response to a push of d7ca8b74f22c973dbe74a32ae639e845b9b34e66 [Workflow run](https://github.com/HumanSignal/label-studio/actions/runs/7268209525) > > Jira Release not found > [Aha! Release 1.10.1](https://labelstudio.aha.io/api/v1/features?tag=LS%201.10.1) > Release Notes are generated based on git log: No tasks found in Task Tracker. > <details> > <summary>Turned off Feature Flags (100)</summary> > > - [feat_all_optic_71_dashboard_multiple_labeling_group_support_v1_01092023_short](https://app.launchdarkly.com/default/community/features/feat_all_optic_71_dashboard_multiple_labeling_group_support_v1_01092023_short/targeting) > - [feat_front_dev_1752_notification_links_in_label_and_review_streams](https://app.launchdarkly.com/default/community/features/feat_front_dev_1752_notification_links_in_label_and_review_streams/targeting) > - [feat_front_dev_3260_alternative_shortcuts_for_video_naviagtion](https://app.launchdarkly.com/default/community/features/feat_front_dev_3260_alternative_shortcuts_for_video_naviagtion/targeting) > - [feat_front_dev_399_lock_interface_when_trial_expired_short](https://app.launchdarkly.com/default/community/features/feat_front_dev_399_lock_interface_when_trial_expired_short/targeting) > - [feat_front_dev_4008_quick_task_open_short](https://app.launchdarkly.com/default/community/features/feat_front_dev_4008_quick_task_open_short/targeting) > - [feat_front_lsdv_4583_multi_image_segmentation_short](https://app.launchdarkly.com/default/community/features/feat_front_lsdv_4583_multi_image_segmentation_short/targeting) > - [ff_back_1587_email_notifications_310122_long](https://app.launchdarkly.com/default/community/features/ff_back_1587_email_notifications_310122_long/targeting) > - [ff_back_2004_async_review_24032022_short](https://app.launchdarkly.com/default/community/features/ff_back_2004_async_review_24032022_short/targeting) > - [ff_back_2884_comments_notifications_02092022_short](https://app.launchdarkly.com/default/community/features/ff_back_2884_comments_notifications_02092022_short/targeting) > - [ff_back_DEV_1711_review_queue_140222_short](https://app.launchdarkly.com/default/community/features/ff_back_DEV_1711_review_queue_140222_short/targeting) > - [ff_back_DEV_3374_review_query_160922_short](https://app.launchdarkly.com/default/community/features/ff_back_DEV_3374_review_query_160922_short/targeting) > - [ff_back_dev_1417_start_training_mlbackend_webhooks_250122_long](https://app.launchdarkly.com/default/community/features/ff_back_dev_1417_start_training_mlbackend_webhooks_250122_long/targeting) > - [ff_back_dev_1948_reviewed_status_16052022_short](https://app.launchdarkly.com/default/community/features/ff_back_dev_1948_reviewed_status_16052022_short/targeting) > - [ff_back_dev_2362_project_credentials_060722_short](https://app.launchdarkly.com/default/community/features/ff_back_dev_2362_project_credentials_060722_short/targeting) > - [ff_back_dev_4664_remove_storage_file_on_export_delete_29032023_short](https://app.launchdarkly.com/default/community/features/ff_back_dev_4664_remove_storage_file_on_export_delete_29032023_short/targeting) > - [ff_back_experimental_features](https://app.launchdarkly.com/default/community/features/ff_back_experimental_features/targeting) > - [ff_front_DEV_1713_audio_ui_150222_short](https://app.launchdarkly.com/default/community/features/ff_front_DEV_1713_audio_ui_150222_short/targeting) > - [ff_front_dev_1442_unselect_shape_on_click_outside_080622_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_1442_unselect_shape_on_click_outside_080622_short/targeting) > - [ff_front_dev_1470_dm_pagination_010422_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_1470_dm_pagination_010422_short/targeting) > - [ff_front_dev_1480_created_on_in_review_180122_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_1480_created_on_in_review_180122_short/targeting) > - [ff_front_dev_1555_auto_annotations_not_visible](https://app.launchdarkly.com/default/community/features/ff_front_dev_1555_auto_annotations_not_visible/targeting) > - [ff_front_dev_1658_notification_center_170222_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_1658_notification_center_170222_short/targeting) > - [ff_front_dev_1682_model_version_dropdown_070622_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_1682_model_version_dropdown_070622_short/targeting) > - [ff_front_dev_2186_comments_for_update](https://app.launchdarkly.com/default/community/features/ff_front_dev_2186_comments_for_update/targeting) > - [ff_front_dev_2458_comments_for_skip_250522_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_2458_comments_for_skip_250522_short/targeting) > - [ff_front_dev_2671_anchor_rotate_bbox_010722_short](https://app.launchdarkly.com/default/community/features/ff_front_dev_2671_anchor_rotate_bbox_010722_short/targeting) > - [fflag-feat-back-lops-154-datasets-export-candidates](https://app.launchdarkly.com/default/community/features/fflag-feat-back-lops-154-datasets-export-candidates/targeting) > - [fflag-feat-dev-2887-comments-ui-editor-short](https://app.launchdarkly.com/default/community/features/fflag-feat-dev-2887-comments-ui-editor-short/targeting) > - [fflag-feat-dev-3034-comments-with-drafts-short](https://app.launchdarkly.com/default/community/features/fflag-feat-dev-3034-comments-with-drafts-short/targeting) > - [fflag-feat-dia-407-accept-multiple-search-queries-short](https://app.launchdarkly.com/default/community/features/fflag-feat-dia-407-accept-multiple-search-queries-short/targeting) > - [fflag-feat-front-dev-2395-consistent-working-area-for-all-image-sizes](https://app.launchdarkly.com/default/community/features/fflag-feat-front-dev-2395-consistent-working-area-for-all-image-sizes/targeting) > - [fflag-feat-front-dev-2866-free-trial-invite-short](https://app.launchdarkly.com/default/community/features/fflag-feat-front-dev-2866-free-trial-invite-short/targeting) > - [fflag-feat-front-dev-3051-trial-experience](https://app.launchdarkly.com/default/community/features/fflag-feat-front-dev-3051-trial-experience/targeting) > - [fflag_feat_all_dia_13_structured_data_support_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_dia_13_structured_data_support_short/targeting) > - [fflag_feat_all_lops_315_temp_datasets_limitations_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_lops_315_temp_datasets_limitations_short/targeting) > - [fflag_feat_all_lops_milvus_migration_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_lops_milvus_migration_short/targeting) > - [fflag_feat_all_lsdv_4915_async_task_import_13042023_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_lsdv_4915_async_task_import_13042023_short/targeting) > - [fflag_feat_all_lsdv_4945_api_requests_with_pagination_20042023_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_lsdv_4945_api_requests_with_pagination_20042023_short/targeting) > - [fflag_feat_all_lsdv_e_295_project_level_roles_via_saml_scim_ldap_short](https://app.launchdarkly.com/default/community/features/fflag_feat_all_lsdv_e_295_project_level_roles_via_saml_scim_ldap_short/targeting) > - [fflag_feat_all_optic_114_soft_delete_for_churned_employees](https://app.launchdarkly.com/default/community/features/fflag_feat_all_optic_114_soft_delete_for_churned_employees/targeting) > - [fflag_feat_back_dev_3756_queue_enrollment_min_short](https://app.launchdarkly.com/default/community/features/fflag_feat_back_dev_3756_queue_enrollment_min_short/targeting) > - [fflag_feat_back_dev_3792_add_sync_update_is_labeled_301122_short](https://app.launchdarkly.com/default/community/features/fflag_feat_back_dev_3792_add_sync_update_is_labeled_301122_short/targeting) > - [fflag_feat_back_dev_3792_next_task_data_fix_long](https://app.launchdarkly.com/default/community/features/fflag_feat_back_dev_3792_next_task_data_fix_long/targeting) > - [fflag_feat_back_lsdv_3958_server_side_encryption_for_target_storage_short](https://app.launchdarkly.com/default/community/features/fflag_feat_back_lsdv_3958_server_side_encryption_for_target_storage_short/targeting) > - [fflag_feat_back_lsdv_4932_enable_memory_profiler](https://app.launchdarkly.com/default/community/features/fflag_feat_back_lsdv_4932_enable_memory_profiler/targeting) > - [fflag_feat_back_lsdv_5307_import_reviews_drafts_29062023_short](https://app.launchdarkly.com/default/community/features/fflag_feat_back_lsdv_5307_import_reviews_drafts_29062023_short/targeting) > - [fflag_feat_dev_2755_regions_list_grouped_by_labels_with_ordered_collapse_short](https://app.launchdarkly.com/default/community/features/fflag_feat_dev_2755_regions_list_grouped_by_labels_with_ordered_collapse_short/targeting) > - [fflag_feat_dia_471_add_new_column_projects_short](https://app.launchdarkly.com/default/community/features/fflag_feat_dia_471_add_new_column_projects_short/targeting) > - [fflag_feat_dia_787_zendesk_widget_integration](https://app.launchdarkly.com/default/community/features/fflag_feat_dia_787_zendesk_widget_integration/targeting) > - [fflag_feat_front_dev-2536_comment_notifications_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_dev-2536_comment_notifications_short/targeting) > - [fflag_feat_front_dev_2758_adjustable_draggable_spans_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_dev_2758_adjustable_draggable_spans_short/targeting) > - [fflag_feat_front_dev_3051_trial_experience_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_dev_3051_trial_experience_short/targeting) > - [fflag_feat_front_dev_3143_explore_page_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_dev_3143_explore_page_short/targeting) > - [fflag_feat_front_leap_e_1_monorepo_migration_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_leap_e_1_monorepo_migration_short/targeting) > - [fflag_feat_front_leap_e_4_streams_refinements_long](https://app.launchdarkly.com/default/community/features/fflag_feat_front_leap_e_4_streams_refinements_long/targeting) > - [fflag_feat_front_lops_12_label_ops_ui_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lops_12_label_ops_ui_short/targeting) > - [fflag_feat_front_lops_75_pretty_select_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lops_75_pretty_select_short/targeting) > - [fflag_feat_front_lops_86_datasets_storage_edit_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lops_86_datasets_storage_edit_short/targeting) > - [fflag_feat_front_lops_e_10_updated_ux_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lops_e_10_updated_ux_short/targeting) > - [fflag_feat_front_lsdv_3025_outliner_filter_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lsdv_3025_outliner_filter_short/targeting) > - [fflag_feat_front_lsdv_4583_6_images_preloading_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lsdv_4583_6_images_preloading_short/targeting) > - [fflag_feat_front_lsdv_4583_multi_image_segmentation_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_lsdv_4583_multi_image_segmentation_short/targeting) > - [fflag_feat_front_prod_281_project_list_search_19072023_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_prod_281_project_list_search_19072023_short/targeting) > - [fflag_feat_front_prod_292_archive_workspaces_short](https://app.launchdarkly.com/default/community/features/fflag_feat_front_prod_292_archive_workspaces_short/targeting) > - [fflag_feat_optic_161_project_settings_for_low_agreement_threshold_score_short](https://app.launchdarkly.com/default/community/features/fflag_feat_optic_161_project_settings_for_low_agreement_threshold_score_short/targeting) > - [fflag_feat_optic_198_multi_select_users_short](https://app.launchdarkly.com/default/community/features/fflag_feat_optic_198_multi_select_users_short/targeting) > - [fflag_feat_optic_67_drag_and_drop_charts](https://app.launchdarkly.com/default/community/features/fflag_feat_optic_67_drag_and_drop_charts/targeting) > - [fflag_fix_all_lsdv_4813_async_export_conversion_22032023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_all_lsdv_4813_async_export_conversion_22032023_short/targeting) > - [fflag_fix_all_lsdv_4896_dm_actions_to_reviewers_20230403_short](https://app.launchdarkly.com/default/community/features/fflag_fix_all_lsdv_4896_dm_actions_to_reviewers_20230403_short/targeting) > - [fflag_fix_all_lsdv_4971_async_reimport_09052023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_all_lsdv_4971_async_reimport_09052023_short/targeting) > - [fflag_fix_all_optic_18_dashboard_label_distribution_chart_async_22082023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_all_optic_18_dashboard_label_distribution_chart_async_22082023_short/targeting) > - [fflag_fix_all_optic_79_task_count_is_wrong_short](https://app.launchdarkly.com/default/community/features/fflag_fix_all_optic_79_task_count_is_wrong_short/targeting) > - [fflag_fix_back_dev_3668_review_stream_optimizaion_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_dev_3668_review_stream_optimizaion_short/targeting) > - [fflag_fix_back_dev_4174_overlap_issue_experiments_10012023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_dev_4174_overlap_issue_experiments_10012023_short/targeting) > - [fflag_fix_back_dev_4185_next_task_additional_logging_long](https://app.launchdarkly.com/default/community/features/fflag_fix_back_dev_4185_next_task_additional_logging_long/targeting) > - [fflag_fix_back_leap_217_show_tasks_with_comments_30112023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_leap_217_show_tasks_with_comments_30112023_short/targeting) > - [fflag_fix_back_leap_24_tasks_api_optimization_05092023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_leap_24_tasks_api_optimization_05092023_short/targeting) > - [fflag_fix_back_lsdv_1044_check_annotations_24012023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_1044_check_annotations_24012023_short/targeting) > - [fflag_fix_back_lsdv_3029_set_password_on_trial_signup_25012023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_3029_set_password_on_trial_signup_25012023_short/targeting) > - [fflag_fix_back_lsdv_4523_show_overlap_first_order_27022023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_4523_show_overlap_first_order_27022023_short/targeting) > - [fflag_fix_back_lsdv_4826_annotation_history_20230331_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_4826_annotation_history_20230331_short/targeting) > - [fflag_fix_back_lsdv_5289_prevent_db_deadlocks_16062023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_5289_prevent_db_deadlocks_16062023_short/targeting) > - [fflag_fix_back_lsdv_5289_run_bulk_updates_in_transactions_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_5289_run_bulk_updates_in_transactions_short/targeting) > - [fflag_fix_back_lsdv_5361_members_dashboard_page_timeouts](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_5361_members_dashboard_page_timeouts/targeting) > - [fflag_fix_back_lsdv_5410_temporary_disable_auto_inference_jobs_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_5410_temporary_disable_auto_inference_jobs_short/targeting) > - [fflag_fix_back_lsdv_5425_1_enable_permissions_restrictions_for_annotators_long](https://app.launchdarkly.com/default/community/features/fflag_fix_back_lsdv_5425_1_enable_permissions_restrictions_for_annotators_long/targeting) > - [fflag_fix_back_optic_183_datamanager_filter_placeholder_keyed_task_data_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_optic_183_datamanager_filter_placeholder_keyed_task_data_short/targeting) > - [fflag_fix_back_optic_216_change_per_user_agreement_query_to_hit_more_indexes](https://app.launchdarkly.com/default/community/features/fflag_fix_back_optic_216_change_per_user_agreement_query_to_hit_more_indexes/targeting) > - [fflag_fix_back_optic_287_aggregate_query_for_groundtruth_per_user_short](https://app.launchdarkly.com/default/community/features/fflag_fix_back_optic_287_aggregate_query_for_groundtruth_per_user_short/targeting) > - [fflag_fix_font_lsdv_3009_draft_saving_stuck_130223_short](https://app.launchdarkly.com/default/community/features/fflag_fix_font_lsdv_3009_draft_saving_stuck_130223_short/targeting) > - [fflag_fix_front_dev_2918_labeling_filtered_paragraphs_250822_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_dev_2918_labeling_filtered_paragraphs_250822_short/targeting) > - [fflag_fix_front_dev_3391_interactive_view_all](https://app.launchdarkly.com/default/community/features/fflag_fix_front_dev_3391_interactive_view_all/targeting) > - [fflag_fix_front_dev_3706_undo_with_ml_backend_081122_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_dev_3706_undo_with_ml_backend_081122_short/targeting) > - [fflag_fix_front_dev_3734_hide_task_counter_131222_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_dev_3734_hide_task_counter_131222_short/targeting) > - [fflag_fix_front_lsdv_5177_image_regions_in_history_260523_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_lsdv_5177_image_regions_in_history_260523_short/targeting) > - [fflag_fix_front_lsdv_5177_save_draft_on_task_switch_250523_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_lsdv_5177_save_draft_on_task_switch_250523_short/targeting) > - [fflag_fix_front_lsdv_5436_dashboard_members_page_async_24072023_short](https://app.launchdarkly.com/default/community/features/fflag_fix_front_lsdv_5436_dashboard_members_page_async_24072023_short/targeting) > - [fix-backend-dev-3134-exclude-deactivated-users](https://app.launchdarkly.com/default/community/features/fix-backend-dev-3134-exclude-deactivated-users/targeting) > - [fix_back_dev_3351_ml_validation_error_extension_short](https://app.launchdarkly.com/default/community/features/fix_back_dev_3351_ml_validation_error_extension_short/targeting) > - [fix_backend_dev_3134_exclude_deactivated_users](https://app.launchdarkly.com/default/community/features/fix_backend_dev_3134_exclude_deactivated_users/targeting) > > </details> > > **ALL LINES STARTING FROM QUOTE WILL BE IGNORED**