1.7.0
HumanSignal/label-studio1.7.0Dec 15, 2022by github-actions[bot]
AI Summary
This release focuses on advanced audio capabilities, including support for large files and millisecond-level controls, alongside new infrastructure deployment tools like Terraform and Helm Charts.
Key Highlights
- Infrastructure provisioning via Terraform modules and Kubernetes Helm Charts
- Major audio player enhancements supporting up to 2-hour files with millisecond-level controls
- New Comments and Notifications feature for team communication
- Support for 'updated_by' field on annotations
Breaking Changes
- Application now runs using a non-root docker user with ID 1001
New Features
- Terraform modules for AWS provisioning
- Kubernetes Helm Charts for scalable deployment
- Enhanced audio player for large files and millisecond controls
- Comments and Notifications feature
- Support for 'updated_by' field on annotations
Full Release Notes
# Label Studio 1.7 Release Notes
The Label Studio 1.7 Open Source release now supports larger audio files, millisecond-level controls, and an advanced rendering engine among new features that put Label Studio at the forefront of data labeling for audio files. This release also introduces simplified ways to deploy and manage your Label Studio application using full infrastructure provisioning with Terraform scripts and scalable service management on Kubernetes with Helm Charts deployment.
## Breaking changes
Starting with this release, the application will run using a non-root docker user with ID `1001`.
If you encounter any permission issues when running the application in a docker container, you can fix them by changing the ownership of the relevant files and directories to `1001`.
```
docker run -it --user root -v `pwd`/mydata:/label-studio/data heartexlabs/label-studio:1.7.0 chown -R 1001:root /label-studio/data/
```
## New Feature and Enhancement
Label Studio 1.7.0 includes the following new features and enhancements.
- Starting with this release, you can install Label Studio to your cloud infrastructure using the Terraform scripts and Helm Charts.
- Introduce [Terraform modules for provisioning Label Studio/Label Studio Enterprise on Amazon Web Services(AWS)](https://github.com/heartexlabs/label-studio-terraform).
- Launch the Heartex library for Kubernetes infrastructure using the [Kubernetes Helm charts](https://github.com/heartexlabs/charts). Now, you can scale your Label Studio deployments with Kubernetes and Helm orchestration features.
- The audio labeling platform introduces the [enhancements of the audio player](https://labelstud.io/guide/audio_player.html) with the ability to annotate audio files up to two hours in length, provide fine-grain annotation controls, and implement an efficient rendering engine that displays the audio waveforms while remaining performant, even with large, and multi-hour audio files. You can now play and navigate through an audio waveform by precisely managing the labeled regions. Regions and relations are simple to manage and manipulate on the audio waveform and interface.
- This release provides the [Comments and Notifications feature](https://labelstud.io/guide/comments_notifications.html) that defines how annotators, reviewers, and administrators communicate and receive updates on projects and tasks.
- Add new header GitHub stars by @Travis1282 in https://github.com/heartexlabs/label-studio/pull/3040.
- Update header CSS, GitHub stars, and command block on search by @Travis1282 in https://github.com/heartexlabs/label-studio/pull/3074.
- Add swagger docs for AllStorage APIs by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/2815, DEV-2914.
- Read virtual annotator filters from local storage as a fallback by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3089, DEV-3572.
- Add mixin to Project to support mechanism to cancel old jobs by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/2547, DEV-2075.
- Load task with given comment by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3250, DEV-3750.
- Support `updated_by` for annotations by @hakan458 in https://github.com/heartexlabs/label-studio/pull/3244, DEV-3259
- Queue management min backend by @triklozoid in https://github.com/heartexlabs/label-studio/pull/3282, DEV-3756.
- Support for `Updated_by` field on annotation level in **Update**, **Accept** , and **Reject** by @hakan458 in https://github.com/heartexlabs/label-studio/pull/3318, DEV-3259.
## Bug Fixes
Label Studio 1.7.0 includes the following bug fixes.
- Fixed the video regions without a label in https://github.com/heartexlabs/label-studio/pull/3012, DEV-3510.
- Fixed an issue where the Data Manager was broken when an annotator was deactivated by @makseq in https://github.com/heartexlabs/label-studio/pull/3022.
- Added `CreateOnlyFieldsMixin` and `BaseUserSerializer` to make email-only writeable on creating by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3027, DEV-3430.
- Resolved Data Manager conflicts by @bmartel in https://github.com/heartexlabs/label-studio/pull/3049, DEV-3558.
- Fixed an issue where the video failed to send a request and timed out with a display error message that it was not supported by @bmartel in https://github.com/heartexlabs/label-studio/pull/3031, DEV-3284.
- Fixed CONLL export tokenization issue with splitting into individual tokens by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3046, DEV-1923.
- Removed backend reset for tabs by @makseq in https://github.com/heartexlabs/label-studio/pull/3052, DEV-3555.
- Fixed auth check for uploaded files by @triklozoid in https://github.com/heartexlabs/label-studio/pull/2942, DEV-2915.
- Fixed project card showed incorrect counter for finished tasks by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/2398, DEV-2455.
- Added validation if the stage was ready by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3107, DEV-3607.
- Projects, displayed on the user's organization page, include other organizations by @makseq in https://github.com/heartexlabs/label-studio/pull/3105, DEV-3465.
- Fixed updating summary on delete annotations by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3115, DEV-3303.
- Fixed making `exc_info` None when `debug_modal_exceptions_false` by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3128, DEV-3473.
- Region navigation failed in scrolling mode by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3126, DEV-3543.
- ci: Extend GitLeaks config by @nikitabelonogov in https://github.com/heartexlabs/label-studio/pull/3133.
- Annotations drawn for the audio region should span all channels by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3127, DEV-3564.
- Removed unsafe HTML from project `expert_instruction` by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3044, DEV-3478.
- Added YOLO and VOC export image without bounding box by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/2605, DEV-2792.
- Timeseries brush to end of timeline error by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3147, DEV-3645.
- Fixed source storage duplicating tasks when double clicking the **Sync** button by @guilhermemachado26 in https://github.com/heartexlabs/label-studio/pull/2915, DEV-1904.
- History state failed with hotkeys after saving unclosed polygons by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3135, DEV-3612.
- Fixed filename in COCO export by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3154, DEV-3669.
- **Update** button was displayed instead of the **Cancel skip** button in the label stream when a user navigated to the canceled task by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3148, DEV-2505.
- Restored missed multipage.png by @niklub in https://github.com/heartexlabs/label-studio/pull/3167.
- Fixed logs for critical overlap issues by @makseq in https://github.com/heartexlabs/label-studio/pull/3170.
- Large timeseries datasets failed to display `y` values by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3118, DEV-2297.
- Fixed classification type tags render on annotation history change by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3163, DEV-2301.
- Added the possibility to manually add tag value in settings by @juliosgarbi in https://github.com/heartexlabs/label-studio/pull/3144, DEV-3589.
- Added session expiration settings and conditions by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3114, DEV-3397.
- Fixed Eraser brush which was not erasing the stroke by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3162, DEV-3647.
- Fixed the navigation using task links by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3178, DEV-3673.
- RegionEditor input for numbers was recasted to the Number as it is a String by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3175, DEV-3636.
- Used correct feature flags for resuming unfinished polygon by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3166, DEV-3661.
- Pagination failed to work when a region was selected by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3156, DEV-3651.
- Reverted the fix to add session expiration settings and conditions" by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3181, DEV-3397.
- Fixed an empty `toname` issue in the control tag by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3161, DEV-1598.
- Fixed undo with Auto Detect tool by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3160, DEV-1284.
- Fixed memory leaks in Taxonomy and Repeater cases by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3158, DEV-3617.
- **Edit** and **Delete** options were missing for **Comments** section by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3041, DEV-2993.
- Fixed navigation using task links was broken by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3180, DEV-3673.
- Refactored setting of `last_login` to reduce repetition by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3185, DEV-3397.
- Fixed value updating for dynamic children by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3197, DEV-3701.
- Added example output for HyperTextLabels by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3164, DEV-3632.
- Stopped the `cmd` key from focusing search input by @huguestennier in https://github.com/heartexlabs/label-studio/pull/3204.
- Fixed auto-annotations not being revealed by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3202, DEV-3704.
- Added info text about cloud storage on import dialog by @makseq in https://github.com/heartexlabs/label-studio/pull/3168.
- Build for react-app by @makseq in https://github.com/heartexlabs/label-studio/pull/3210.
- Aligned comment icons into the same columns with annotation and drafts in the dropdown selector by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3186, DEV-3487.
- Checked if the user was logged in before continuing to reset the session due to session age by @wesleylima in https://github.com/heartexlabs/label-studio/pull/3216, DEV-3718.
- Multiple clicks on the `Skip` button created multiple skipped annotations by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3215,DEV-3496.
- Fixed large config validation by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3219,DEV-3720.
- Changed border color to being visible when the item is selected by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3191, DEV-3467.
- Postponed queue by @makseq in https://github.com/heartexlabs/label-studio/pull/2987, DEV-3224.
- Editable `Textarea` in region list by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3231, DEV-3738.
- Fixed misspell in `next_task` debug by @makseq in https://github.com/heartexlabs/label-studio/pull/3240.
- Correctly serialized JSON fields in CSV output by @hakan458 in https://github.com/heartexlabs/label-studio/pull/3165, DEV-3578.
- Toggled text range visibility works in Outliner by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3236, DEV-3742.
- Reassigning the label to a bounding box with a hotkey was not available by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3235, DEV-3672.
- Video object boundaries by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/2973, DEV-3350.
- Fixed missing labels on video regions by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3230, DEV-1852.
- Fixed task data validation for nested fields with repeater by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3239, DEV-3744.
- Added retry for bulk stats calculation by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/2888, DEV-3296.
- Updated Django version for CVEs by @changhsinlee in https://github.com/heartexlabs/label-studio/pull/3238.
- Retain the task if the URL was from a notification by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3237, DEV-3736.
- Updated behavior in Label Stream by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3260, DEV-3773.
- Allowed to persist and use the pending draft to attach added comments by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3254, DEV-3733.
- Added project field to annotation by @triklozoid in https://github.com/heartexlabs/label-studio/pull/3195, DEV-3668.
- Fixed `pytz` dependency conflict with celery requiring a newer version. by @melihozaydin in https://github.com/heartexlabs/label-studio/pull/299
- Infinite requests when offline by @nicholasrq in https://github.com/heartexlabs/label-studio/pull/3265, DEV-3780.
- Rollback change DEV-3296 by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3283, DEV-3822
- Reverted the support `updated_by` for annotations by @hakan458 in https://github.com/heartexlabs/label-studio/pull/3289, DEV-3259.
- *ci: Fix upload release asset by @nikitabelonogov in https://github.com/heartexlabs/label-studio/pull/3291
- Added control tag name to error by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3266, DEV-3779.
- Deleted migration file by @hakan458 in https://github.com/heartexlabs/label-studio/pull/3300, DEV-3259.
- Fixed CSV export download with non-existing columns by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3263, DEV-3764.
- Updated Python example code for unit conversion referenced in documentation by @mastash3ff in https://github.com/heartexlabs/label-studio/pull/3286.
- *ci: SRE-342: Auto-generate release notes against previous release tag by @nikitabelonogov in https://github.com/heartexlabs/label-studio/pull/3302.
- Fixed issues in the reviews module by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3225, DEV-3693.
- Removed `MEDIA_URL` from uploaded file path by @triklozoid in https://github.com/heartexlabs/label-studio/pull/3307, SRE-330.
- Memory usage of repeater initialization caused crashes by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3280, DEV-3754.
- Fixed the misalignment between frame numbers by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3270, DEV-2706.
- Added information logs for delete job by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3326, DEV-3866.
- Manual editing keypoints coordinates caused data corruption by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3305, DEV-3835.
- Added more logs to rqworker by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3329, DEV-3866.
- Fixed `RelationsOverlay` with 3391 ff on by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3328, DEV-3867.
- Unselected all items in history instead of just the selected item by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3332, DEV-3745.
- GCS persistent storage is broken by @farioas in https://github.com/heartexlabs/label-studio/pull/3335, SRE-351.
- *ci:: Added more cache by @farioas in https://github.com/heartexlabs/label-studio/pull/3345, SRE-344.
- Fixed polling overflow by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3339, DEV-3874.
- Added `is_labeled` filter to skip queue by @makseq in https://github.com/heartexlabs/label-studio/pull/3353
- *fix:: Bumped label-studio-converter to 0.0.48rc0 by @makseq in https://github.com/heartexlabs/label-studio/pull/3354, DEV-3852.
- Fixed `update_tasks_counters` call with DM filters by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3279, DEV-3814.
- Fixed paragraph overflow text issue when Outliner was disabled by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3358, DEV-3901.
- Fixed the token renewal button by @Ben-Epstein in https://github.com/heartexlabs/label-studio/pull/3034.
- Removed WASD by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3386, DEV-3958.
- Avoid creation of `pg_trgm` in Postgres if it's already existing by @makseq in https://github.com/heartexlabs/label-studio/pull/3384, DEV-3839.
- Pan failed to work in images from history by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3370, DEV-3719.
- *ci: SRE-345: Add make migrations check by @nikitabelonogov in https://github.com/heartexlabs/label-studio/pull/3418.
- Improved performance for `_rearrange_overlap_cohort` by @KonstantinKorotaev in https://github.com/heartexlabs/label-studio/pull/3271, DEV-3798.
- Moved persistent storage to OS by @makseq in https://github.com/heartexlabs/label-studio/pull/3377, DEV-3911.
- Fixed follow merge of Audio v3 release by @robot-ci-heartex in https://github.com/heartexlabs/label-studio/pull/3438.
Thank you to all the contributors for making Label Studio 1.7.0 a success!
## New Contributors
* @wesleylima made their first contribution in https://github.com/heartexlabs/label-studio/pull/3027
* @huguestennier made their first contribution in https://github.com/heartexlabs/label-studio/pull/3204
* @changhsinlee made their first contribution in https://github.com/heartexlabs/label-studio/pull/3238
* @melihozaydin made their first contribution in https://github.com/heartexlabs/label-studio/pull/2995
* @mastash3ff made their first contribution in https://github.com/heartexlabs/label-studio/pull/3286
* @Ben-Epstein made their first contribution in https://github.com/heartexlabs/label-studio/pull/3034