Eslint-Prettier integration & pre commit hook (#2272)

* Eslint prettier integrations and precommit hook on fly

* CHANGELOG update and package.json version patch
main
Vitaliy Nishukov 5 years ago committed by GitHub
parent a4e8a98f23
commit 678f5b9277
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,11 +1,15 @@
# Changelog # Changelog
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.2.0] - Unreleased ## [1.2.0] - Unreleased
### Added ### Added
- Added eslint-prettier integration & code autoformat in precommiting hook
- Added layout grids toggling ('ctrl + alt + Enter') - Added layout grids toggling ('ctrl + alt + Enter')
- Added password reset functionality (<https://github.com/opencv/cvat/pull/2058>) - Added password reset functionality (<https://github.com/opencv/cvat/pull/2058>)
- Ability to work with data on the fly (https://github.com/opencv/cvat/pull/2007) - Ability to work with data on the fly (https://github.com/opencv/cvat/pull/2007)
@ -25,6 +29,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Optional chaining plugin for cvat-canvas and cvat-ui (<https://github.com/openvinotoolkit/cvat/pull/2249>) - Optional chaining plugin for cvat-canvas and cvat-ui (<https://github.com/openvinotoolkit/cvat/pull/2249>)
### Changed ### Changed
- UI models (like DEXTR) were redesigned to be more interactive (<https://github.com/opencv/cvat/pull/2054>) - UI models (like DEXTR) were redesigned to be more interactive (<https://github.com/opencv/cvat/pull/2054>)
- Used Ubuntu:20.04 as a base image for CVAT Dockerfile (<https://github.com/opencv/cvat/pull/2101>) - Used Ubuntu:20.04 as a base image for CVAT Dockerfile (<https://github.com/opencv/cvat/pull/2101>)
- Right colors of label tags in label mapping when a user runs automatic detection (<https://github.com/openvinotoolkit/cvat/pull/2162>) - Right colors of label tags in label mapping when a user runs automatic detection (<https://github.com/openvinotoolkit/cvat/pull/2162>)
@ -34,12 +39,15 @@ filters and searching the nearest frame without any annotations (<https://github
- Added auto inference of url schema from host in CLI, if provided (<https://github.com/openvinotoolkit/cvat/pull/2240>) - Added auto inference of url schema from host in CLI, if provided (<https://github.com/openvinotoolkit/cvat/pull/2240>)
### Deprecated ### Deprecated
- -
### Removed ### Removed
- -
### Fixed ### Fixed
- Fixed multiple errors which arises when polygon is of length 5 or less (<https://github.com/opencv/cvat/pull/2100>) - Fixed multiple errors which arises when polygon is of length 5 or less (<https://github.com/opencv/cvat/pull/2100>)
- Fixed task creation from PDF (<https://github.com/opencv/cvat/pull/2141>) - Fixed task creation from PDF (<https://github.com/opencv/cvat/pull/2141>)
- Fixed CVAT format import for frame stepped tasks (<https://github.com/openvinotoolkit/cvat/pull/2151>) - Fixed CVAT format import for frame stepped tasks (<https://github.com/openvinotoolkit/cvat/pull/2151>)
@ -54,10 +62,13 @@ filters and searching the nearest frame without any annotations (<https://github
- Git application name (renamed to dataset_repo) (<https://github.com/openvinotoolkit/cvat/pull/2243>) - Git application name (renamed to dataset_repo) (<https://github.com/openvinotoolkit/cvat/pull/2243>)
### Security ### Security
- -
## [1.1.0] - 2020-08-31 ## [1.1.0] - 2020-08-31
### Added ### Added
- Siammask tracker as DL serverless function (<https://github.com/opencv/cvat/pull/1988>) - Siammask tracker as DL serverless function (<https://github.com/opencv/cvat/pull/1988>)
- [Datumaro] Added model info and source info commands (<https://github.com/opencv/cvat/pull/1973>) - [Datumaro] Added model info and source info commands (<https://github.com/opencv/cvat/pull/1973>)
- [Datumaro] Dataset statistics (<https://github.com/opencv/cvat/pull/1668>) - [Datumaro] Dataset statistics (<https://github.com/opencv/cvat/pull/1668>)
@ -68,10 +79,12 @@ filters and searching the nearest frame without any annotations (<https://github
- Notification message when users use wrong browser (<https://github.com/opencv/cvat/pull/2070>) - Notification message when users use wrong browser (<https://github.com/opencv/cvat/pull/2070>)
### Changed ### Changed
- Shape coordinates are rounded to 2 digits in dumped annotations (<https://github.com/opencv/cvat/pull/1970>) - Shape coordinates are rounded to 2 digits in dumped annotations (<https://github.com/opencv/cvat/pull/1970>)
- COCO format does not produce polygon points for bbox annotations (<https://github.com/opencv/cvat/pull/1953>) - COCO format does not produce polygon points for bbox annotations (<https://github.com/opencv/cvat/pull/1953>)
### Fixed ### Fixed
- Issue loading openvino models for semi-automatic and automatic annotation (<https://github.com/opencv/cvat/pull/1996>) - Issue loading openvino models for semi-automatic and automatic annotation (<https://github.com/opencv/cvat/pull/1996>)
- Basic functions of CVAT works without activated nuclio dashboard - Basic functions of CVAT works without activated nuclio dashboard
- Fixed a case in which exported masks could have wrong color order (<https://github.com/opencv/cvat/issues/2032>) - Fixed a case in which exported masks could have wrong color order (<https://github.com/opencv/cvat/issues/2032>)
@ -80,7 +93,9 @@ filters and searching the nearest frame without any annotations (<https://github
- Object's details menu settings (<https://github.com/opencv/cvat/pull/2084>) - Object's details menu settings (<https://github.com/opencv/cvat/pull/2084>)
## [1.1.0-beta] - 2020-08-03 ## [1.1.0-beta] - 2020-08-03
### Added ### Added
- DL models as serverless functions (<https://github.com/opencv/cvat/pull/1767>) - DL models as serverless functions (<https://github.com/opencv/cvat/pull/1767>)
- Source type support for tags, shapes and tracks (<https://github.com/opencv/cvat/pull/1192>) - Source type support for tags, shapes and tracks (<https://github.com/opencv/cvat/pull/1192>)
- Source type support for CVAT Dumper/Loader (<https://github.com/opencv/cvat/pull/1192>) - Source type support for CVAT Dumper/Loader (<https://github.com/opencv/cvat/pull/1192>)
@ -91,16 +106,19 @@ filters and searching the nearest frame without any annotations (<https://github
- Ability to change user password (<https://github.com/opencv/cvat/pull/1954>) - Ability to change user password (<https://github.com/opencv/cvat/pull/1954>)
### Changed ### Changed
- Smaller object details (<https://github.com/opencv/cvat/pull/1877>) - Smaller object details (<https://github.com/opencv/cvat/pull/1877>)
- `COCO` format does not convert bboxes to polygons on export (<https://github.com/opencv/cvat/pull/1953>) - `COCO` format does not convert bboxes to polygons on export (<https://github.com/opencv/cvat/pull/1953>)
- It is impossible to submit a DL model in OpenVINO format using UI. Now you can deploy new models on the server using serverless functions (<https://github.com/opencv/cvat/pull/1767>) - It is impossible to submit a DL model in OpenVINO format using UI. Now you can deploy new models on the server using serverless functions (<https://github.com/opencv/cvat/pull/1767>)
- Files and folders under share path are now alphabetically sorted - Files and folders under share path are now alphabetically sorted
### Removed ### Removed
- Removed OpenVINO and CUDA components because they are not necessary anymore (<https://github.com/opencv/cvat/pull/1767>) - Removed OpenVINO and CUDA components because they are not necessary anymore (<https://github.com/opencv/cvat/pull/1767>)
- Removed the old UI code (<https://github.com/opencv/cvat/pull/1964>) - Removed the old UI code (<https://github.com/opencv/cvat/pull/1964>)
### Fixed ### Fixed
- Some objects aren't shown on canvas sometimes. For example after propagation on of objects is invisible (<https://github.com/opencv/cvat/pull/1834>) - Some objects aren't shown on canvas sometimes. For example after propagation on of objects is invisible (<https://github.com/opencv/cvat/pull/1834>)
- CVAT doesn't offer to restore state after an error (<https://github.com/opencv/cvat/pull/1874>) - CVAT doesn't offer to restore state after an error (<https://github.com/opencv/cvat/pull/1874>)
- Cannot read property 'shapeType' of undefined because of zOrder related issues (<https://github.com/opencv/cvat/pull/1874>) - Cannot read property 'shapeType' of undefined because of zOrder related issues (<https://github.com/opencv/cvat/pull/1874>)
@ -121,7 +139,9 @@ filters and searching the nearest frame without any annotations (<https://github
- Increase rate of throttling policy for unauthenticated users (<https://github.com/opencv/cvat/pull/1969>) - Increase rate of throttling policy for unauthenticated users (<https://github.com/opencv/cvat/pull/1969>)
## [1.1.0-alpha] - 2020-06-30 ## [1.1.0-alpha] - 2020-06-30
### Added ### Added
- Throttling policy for unauthenticated users (<https://github.com/opencv/cvat/pull/1531>) - Throttling policy for unauthenticated users (<https://github.com/opencv/cvat/pull/1531>)
- Added default label color table for mask export (<https://github.com/opencv/cvat/pull/1549>) - Added default label color table for mask export (<https://github.com/opencv/cvat/pull/1549>)
- Added environment variables for Redis and Postgres hosts for Kubernetes deployment support (<https://github.com/opencv/cvat/pull/1641>) - Added environment variables for Redis and Postgres hosts for Kubernetes deployment support (<https://github.com/opencv/cvat/pull/1641>)
@ -149,6 +169,7 @@ filters and searching the nearest frame without any annotations (<https://github
- [Datumaro] Added image copying when exporting datasets, if possible (<https://github.com/opencv/cvat/pull/1799>) - [Datumaro] Added image copying when exporting datasets, if possible (<https://github.com/opencv/cvat/pull/1799>)
### Changed ### Changed
- Removed information about e-mail from the basic user information (<https://github.com/opencv/cvat/pull/1627>) - Removed information about e-mail from the basic user information (<https://github.com/opencv/cvat/pull/1627>)
- Update https install manual. Makes it easier and more robust. Includes automatic renewing of lets encrypt certificates. - Update https install manual. Makes it easier and more robust. Includes automatic renewing of lets encrypt certificates.
- Settings page move to the modal. (<https://github.com/opencv/cvat/pull/1705>) - Settings page move to the modal. (<https://github.com/opencv/cvat/pull/1705>)
@ -160,6 +181,7 @@ filters and searching the nearest frame without any annotations (<https://github
- [Datumaro] Annotation-less files are not generated anymore in COCO format, unless tasks explicitly requested (<https://github.com/opencv/cvat/pull/1799>) - [Datumaro] Annotation-less files are not generated anymore in COCO format, unless tasks explicitly requested (<https://github.com/opencv/cvat/pull/1799>)
### Fixed ### Fixed
- Problem with exported frame stepped image task (<https://github.com/opencv/cvat/issues/1613>) - Problem with exported frame stepped image task (<https://github.com/opencv/cvat/issues/1613>)
- Fixed dataset filter item representation for imageless dataset items (<https://github.com/opencv/cvat/pull/1593>) - Fixed dataset filter item representation for imageless dataset items (<https://github.com/opencv/cvat/pull/1593>)
- Fixed interpreter crash when trying to import `tensorflow` with no AVX instructions available (<https://github.com/opencv/cvat/pull/1567>) - Fixed interpreter crash when trying to import `tensorflow` with no AVX instructions available (<https://github.com/opencv/cvat/pull/1567>)
@ -180,10 +202,13 @@ filters and searching the nearest frame without any annotations (<https://github
- Error when interpolating polygons (<https://github.com/opencv/cvat/pull/1878>) - Error when interpolating polygons (<https://github.com/opencv/cvat/pull/1878>)
### Security ### Security
- SQL injection in Django `CVE-2020-9402` (<https://github.com/opencv/cvat/pull/1657>) - SQL injection in Django `CVE-2020-9402` (<https://github.com/opencv/cvat/pull/1657>)
## [1.0.0] - 2020-05-29 ## [1.0.0] - 2020-05-29
### Added ### Added
- cvat-ui: cookie policy drawer for login page (<https://github.com/opencv/cvat/pull/1511>) - cvat-ui: cookie policy drawer for login page (<https://github.com/opencv/cvat/pull/1511>)
- `datumaro_project` export format (<https://github.com/opencv/cvat/pull/1352>) - `datumaro_project` export format (<https://github.com/opencv/cvat/pull/1352>)
- Ability to configure user agreements for the user registration form (<https://github.com/opencv/cvat/pull/1464>) - Ability to configure user agreements for the user registration form (<https://github.com/opencv/cvat/pull/1464>)
@ -192,6 +217,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Ability to configure access to the analytics page based on roles (<https://github.com/opencv/cvat/pull/1592>) - Ability to configure access to the analytics page based on roles (<https://github.com/opencv/cvat/pull/1592>)
### Changed ### Changed
- Downloaded file name in annotations export became more informative (<https://github.com/opencv/cvat/pull/1352>) - Downloaded file name in annotations export became more informative (<https://github.com/opencv/cvat/pull/1352>)
- Added auto trimming for trailing whitespaces style enforcement (<https://github.com/opencv/cvat/pull/1352>) - Added auto trimming for trailing whitespaces style enforcement (<https://github.com/opencv/cvat/pull/1352>)
- REST API: updated `GET /task/<id>/annotations`: parameters are `format`, `filename` (now optional), `action` (optional) (<https://github.com/opencv/cvat/pull/1352>) - REST API: updated `GET /task/<id>/annotations`: parameters are `format`, `filename` (now optional), `action` (optional) (<https://github.com/opencv/cvat/pull/1352>)
@ -205,10 +231,12 @@ filters and searching the nearest frame without any annotations (<https://github
- Images without annotations now also included in dataset/annotations export (<https://github.com/opencv/cvat/issues/525>) - Images without annotations now also included in dataset/annotations export (<https://github.com/opencv/cvat/issues/525>)
### Removed ### Removed
- `annotation` application is replaced with `dataset_manager` (<https://github.com/opencv/cvat/pull/1352>) - `annotation` application is replaced with `dataset_manager` (<https://github.com/opencv/cvat/pull/1352>)
- `_DATUMARO_INIT_LOGLEVEL` env. variable is removed in favor of regular `--loglevel` cli parameter (<https://github.com/opencv/cvat/pull/1583>) - `_DATUMARO_INIT_LOGLEVEL` env. variable is removed in favor of regular `--loglevel` cli parameter (<https://github.com/opencv/cvat/pull/1583>)
### Fixed ### Fixed
- Categories for empty projects with no sources are taken from own dataset (<https://github.com/opencv/cvat/pull/1352>) - Categories for empty projects with no sources are taken from own dataset (<https://github.com/opencv/cvat/pull/1352>)
- Added directory removal on error during `extract` command (<https://github.com/opencv/cvat/pull/1352>) - Added directory removal on error during `extract` command (<https://github.com/opencv/cvat/pull/1352>)
- Added debug error message on incorrect XPath (<https://github.com/opencv/cvat/pull/1352>) - Added debug error message on incorrect XPath (<https://github.com/opencv/cvat/pull/1352>)
@ -234,19 +262,24 @@ filters and searching the nearest frame without any annotations (<https://github
- Fixed an issue with `z_order` having no effect on segmentations (<https://github.com/opencv/cvat/pull/1589>) - Fixed an issue with `z_order` having no effect on segmentations (<https://github.com/opencv/cvat/pull/1589>)
### Security ### Security
- Permission group whitelist check for analytics view (<https://github.com/opencv/cvat/pull/1608>) - Permission group whitelist check for analytics view (<https://github.com/opencv/cvat/pull/1608>)
## [1.0.0-beta.2] - 2020-04-30 ## [1.0.0-beta.2] - 2020-04-30
### Added ### Added
- Re-Identification algorithm to merging bounding boxes automatically to the new UI (<https://github.com/opencv/cvat/pull/1406>) - Re-Identification algorithm to merging bounding boxes automatically to the new UI (<https://github.com/opencv/cvat/pull/1406>)
- Methods ``import`` and ``export`` to import/export raw annotations for Job and Task in ``cvat-core`` (<https://github.com/opencv/cvat/pull/1406>) - Methods `import` and `export` to import/export raw annotations for Job and Task in `cvat-core` (<https://github.com/opencv/cvat/pull/1406>)
- Versioning of client packages (``cvat-core``, ``cvat-canvas``, ``cvat-ui``). Initial versions are set to 1.0.0 (<https://github.com/opencv/cvat/pull/1448>) - Versioning of client packages (`cvat-core`, `cvat-canvas`, `cvat-ui`). Initial versions are set to 1.0.0 (<https://github.com/opencv/cvat/pull/1448>)
- Cuboids feature was migrated from old UI to new one. (<https://github.com/opencv/cvat/pull/1451>) - Cuboids feature was migrated from old UI to new one. (<https://github.com/opencv/cvat/pull/1451>)
### Removed ### Removed
- Annotation convertation utils, currently supported natively via Datumaro framework (https://github.com/opencv/cvat/pull/1477) - Annotation convertation utils, currently supported natively via Datumaro framework (https://github.com/opencv/cvat/pull/1477)
### Fixed ### Fixed
- Auto annotation, TF annotation and Auto segmentation apps (https://github.com/opencv/cvat/pull/1409) - Auto annotation, TF annotation and Auto segmentation apps (https://github.com/opencv/cvat/pull/1409)
- Import works with truncated images now: "OSError:broken data stream" on corrupt images (https://github.com/opencv/cvat/pull/1430) - Import works with truncated images now: "OSError:broken data stream" on corrupt images (https://github.com/opencv/cvat/pull/1430)
- Hide functionality (H) doesn't work (<https://github.com/opencv/cvat/pull/1445>) - Hide functionality (H) doesn't work (<https://github.com/opencv/cvat/pull/1445>)
@ -263,8 +296,10 @@ filters and searching the nearest frame without any annotations (<https://github
- Open task button doesn't work (https://github.com/opencv/cvat/pull/1474) - Open task button doesn't work (https://github.com/opencv/cvat/pull/1474)
## [1.0.0-beta.1] - 2020-04-15 ## [1.0.0-beta.1] - 2020-04-15
### Added ### Added
- Special behaviour for attribute value ``__undefined__`` (invisibility, no shortcuts to be set in AAM)
- Special behaviour for attribute value `__undefined__` (invisibility, no shortcuts to be set in AAM)
- Dialog window with some helpful information about using filters - Dialog window with some helpful information about using filters
- Ability to display a bitmap in the new UI - Ability to display a bitmap in the new UI
- Button to reset colors settings (brightness, saturation, contrast) in the new UI - Button to reset colors settings (brightness, saturation, contrast) in the new UI
@ -276,13 +311,15 @@ filters and searching the nearest frame without any annotations (<https://github
- Deep extreme cut (semi-automatic segmentation) to the new UI (https://github.com/opencv/cvat/pull/1398) - Deep extreme cut (semi-automatic segmentation) to the new UI (https://github.com/opencv/cvat/pull/1398)
### Changed ### Changed
- Increase preview size of a task till 256, 256 on the server - Increase preview size of a task till 256, 256 on the server
- Public ssh-keys are displayed in a dedicated window instead of console when create a task with a repository - Public ssh-keys are displayed in a dedicated window instead of console when create a task with a repository
- React UI is the primary UI - React UI is the primary UI
### Fixed ### Fixed
- Cleaned up memory in Auto Annotation to enable long running tasks on videos - Cleaned up memory in Auto Annotation to enable long running tasks on videos
- New shape is added when press ``esc`` when drawing instead of cancellation - New shape is added when press `esc` when drawing instead of cancellation
- Dextr segmentation doesn't work. - Dextr segmentation doesn't work.
- `FileNotFoundError` during dump after moving format files - `FileNotFoundError` during dump after moving format files
- CVAT doesn't append outside shapes when merge polyshapes in old UI - CVAT doesn't append outside shapes when merge polyshapes in old UI
@ -307,23 +344,29 @@ filters and searching the nearest frame without any annotations (<https://github
- Uploading annotations for tasks with multiple jobs (https://github.com/opencv/cvat/pull/1396) - Uploading annotations for tasks with multiple jobs (https://github.com/opencv/cvat/pull/1396)
## [1.0.0-alpha] - 2020-03-31 ## [1.0.0-alpha] - 2020-03-31
### Added ### Added
- Data streaming using chunks (https://github.com/opencv/cvat/pull/1007) - Data streaming using chunks (https://github.com/opencv/cvat/pull/1007)
- New UI: showing file names in UI (https://github.com/opencv/cvat/pull/1311) - New UI: showing file names in UI (https://github.com/opencv/cvat/pull/1311)
- New UI: delete a point from context menu (https://github.com/opencv/cvat/pull/1292) - New UI: delete a point from context menu (https://github.com/opencv/cvat/pull/1292)
### Fixed ### Fixed
- Git app cannot clone a repository (https://github.com/opencv/cvat/pull/1330) - Git app cannot clone a repository (https://github.com/opencv/cvat/pull/1330)
- New UI: preview position in task details (https://github.com/opencv/cvat/pull/1312) - New UI: preview position in task details (https://github.com/opencv/cvat/pull/1312)
- AWS deployment (https://github.com/opencv/cvat/pull/1316) - AWS deployment (https://github.com/opencv/cvat/pull/1316)
## [0.6.1] - 2020-03-21 ## [0.6.1] - 2020-03-21
### Changed ### Changed
- VOC task export now does not use official label map by default, but takes one - VOC task export now does not use official label map by default, but takes one
from the source task to avoid primary-class and class part name from the source task to avoid primary-class and class part name
clashing ([#1275](https://github.com/opencv/cvat/issues/1275)) clashing ([#1275](https://github.com/opencv/cvat/issues/1275))
### Fixed ### Fixed
- File names in LabelMe format export are no longer truncated ([#1259](https://github.com/opencv/cvat/issues/1259)) - File names in LabelMe format export are no longer truncated ([#1259](https://github.com/opencv/cvat/issues/1259))
- `occluded` and `z_order` annotation attributes are now correctly passed to Datumaro ([#1271](https://github.com/opencv/cvat/pull/1271)) - `occluded` and `z_order` annotation attributes are now correctly passed to Datumaro ([#1271](https://github.com/opencv/cvat/pull/1271))
- Annotation-less tasks now can be exported as empty datasets in COCO ([#1277](https://github.com/opencv/cvat/issues/1277)) - Annotation-less tasks now can be exported as empty datasets in COCO ([#1277](https://github.com/opencv/cvat/issues/1277))
@ -331,11 +374,14 @@ filters and searching the nearest frame without any annotations (<https://github
allowed `frame_XXXXXX[.ext]` format ([#1274](https://github.com/opencv/cvat/pull/1274)) allowed `frame_XXXXXX[.ext]` format ([#1274](https://github.com/opencv/cvat/pull/1274))
### Security ### Security
- Bump acorn from 6.3.0 to 6.4.1 in /cvat-ui ([#1270](https://github.com/opencv/cvat/pull/1270)) - Bump acorn from 6.3.0 to 6.4.1 in /cvat-ui ([#1270](https://github.com/opencv/cvat/pull/1270))
## [0.6.0] - 2020-03-15 ## [0.6.0] - 2020-03-15
### Added ### Added
- Server only support for projects. Extend REST API v1 (/api/v1/projects*)
- Server only support for projects. Extend REST API v1 (/api/v1/projects\*)
- Ability to get basic information about users without admin permissions ([#750](https://github.com/opencv/cvat/issues/750)) - Ability to get basic information about users without admin permissions ([#750](https://github.com/opencv/cvat/issues/750))
- Changed REST API: removed PUT and added DELETE methods for /api/v1/users/ID - Changed REST API: removed PUT and added DELETE methods for /api/v1/users/ID
- Mask-RCNN Auto Annotation Script in OpenVINO format - Mask-RCNN Auto Annotation Script in OpenVINO format
@ -352,6 +398,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Git repositories can be specified with IPv4 address ([#827](https://github.com/opencv/cvat/pull/827)) - Git repositories can be specified with IPv4 address ([#827](https://github.com/opencv/cvat/pull/827))
### Changed ### Changed
- page_size parameter for all REST API methods - page_size parameter for all REST API methods
- React & Redux & Antd based dashboard - React & Redux & Antd based dashboard
- Yolov3 interpretation script fix and changes to mapping.json - Yolov3 interpretation script fix and changes to mapping.json
@ -359,6 +406,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Added support for OpenVINO 2020 - Added support for OpenVINO 2020
### Fixed ### Fixed
- Exception in Git plugin [#826](https://github.com/opencv/cvat/issues/826) - Exception in Git plugin [#826](https://github.com/opencv/cvat/issues/826)
- Label ids in TFrecord format now start from 1 [#866](https://github.com/opencv/cvat/issues/866) - Label ids in TFrecord format now start from 1 [#866](https://github.com/opencv/cvat/issues/866)
- Mask problem in COCO JSON style [#718](https://github.com/opencv/cvat/issues/718) - Mask problem in COCO JSON style [#718](https://github.com/opencv/cvat/issues/718)
@ -367,15 +415,21 @@ filters and searching the nearest frame without any annotations (<https://github
- Annotations can be filtered before dumping with Datumaro [#994](https://github.com/opencv/cvat/issues/994) - Annotations can be filtered before dumping with Datumaro [#994](https://github.com/opencv/cvat/issues/994)
## [0.5.2] - 2019-12-15 ## [0.5.2] - 2019-12-15
### Fixed ### Fixed
- Frozen version of scikit-image==0.15 in requirements.txt because next releases don't support Python 3.5 - Frozen version of scikit-image==0.15 in requirements.txt because next releases don't support Python 3.5
## [0.5.1] - 2019-10-17 ## [0.5.1] - 2019-10-17
### Added ### Added
- Integration with Zenodo.org (DOI) - Integration with Zenodo.org (DOI)
## [0.5.0] - 2019-09-12 ## [0.5.0] - 2019-09-12
### Added ### Added
- A converter to YOLO format - A converter to YOLO format
- Installation guide - Installation guide
- Linear interpolation for a single point - Linear interpolation for a single point
@ -394,13 +448,16 @@ filters and searching the nearest frame without any annotations (<https://github
- Added command line tool for performing common task operations (/utils/cli/) - Added command line tool for performing common task operations (/utils/cli/)
### Changed ### Changed
- Outside and keyframe buttons in the side panel for all interpolation shapes (they were only for boxes before) - Outside and keyframe buttons in the side panel for all interpolation shapes (they were only for boxes before)
- Improved error messages on the client side (#511) - Improved error messages on the client side (#511)
### Removed ### Removed
- "Flip images" has been removed. UI now contains rotation features. - "Flip images" has been removed. UI now contains rotation features.
### Fixed ### Fixed
- Incorrect width of shapes borders in some cases - Incorrect width of shapes borders in some cases
- Annotation parser for tracks with a start frame less than the first segment frame - Annotation parser for tracks with a start frame less than the first segment frame
- Interpolation on the server near outside frames - Interpolation on the server near outside frames
@ -418,43 +475,56 @@ filters and searching the nearest frame without any annotations (<https://github
- Creating a video task with 0 overlap - Creating a video task with 0 overlap
### Security ### Security
- Upgraded Django, djangorestframework, and other packages - Upgraded Django, djangorestframework, and other packages
## [0.4.2] - 2019-06-03 ## [0.4.2] - 2019-06-03
### Fixed ### Fixed
- Fixed interaction with the server share in the auto annotation plugin - Fixed interaction with the server share in the auto annotation plugin
## [0.4.1] - 2019-05-14 ## [0.4.1] - 2019-05-14
### Fixed ### Fixed
- JavaScript syntax incompatibility with Google Chrome versions less than 72 - JavaScript syntax incompatibility with Google Chrome versions less than 72
## [0.4.0] - 2019-05-04 ## [0.4.0] - 2019-05-04
### Added ### Added
- OpenVINO auto annotation: it is possible to upload a custom model and annotate images automatically. - OpenVINO auto annotation: it is possible to upload a custom model and annotate images automatically.
- Ability to rotate images/video in the client part (Ctrl+R, Shift+Ctrl+R shortcuts) (#305) - Ability to rotate images/video in the client part (Ctrl+R, Shift+Ctrl+R shortcuts) (#305)
- The ReID application for automatic bounding box merging has been added (#299) - The ReID application for automatic bounding box merging has been added (#299)
- Keyboard shortcuts to switch next/previous default shape type (box, polygon etc) [Alt + <, Alt + >] (#316) - Keyboard shortcuts to switch next/previous default shape type (box, polygon etc) [Alt + <, Alt + >] (#316)
- Converter for VOC now supports interpolation tracks - Converter for VOC now supports interpolation tracks
- REST API (/api/v1/*, /api/docs) - REST API (/api/v1/\*, /api/docs)
- Semi-automatic semantic segmentation with the [Deep Extreme Cut](http://www.vision.ee.ethz.ch/~cvlsegmentation/dextr/) work - Semi-automatic semantic segmentation with the [Deep Extreme Cut](http://www.vision.ee.ethz.ch/~cvlsegmentation/dextr/) work
### Changed ### Changed
- Propagation setup has been moved from settings to bottom player panel - Propagation setup has been moved from settings to bottom player panel
- Additional events like "Debug Info" or "Fit Image" have been added for analitics - Additional events like "Debug Info" or "Fit Image" have been added for analitics
- Optional using LFS for git annotation storages (#314) - Optional using LFS for git annotation storages (#314)
### Deprecated ### Deprecated
- "Flip images" flag in the create task dialog will be removed. Rotation functionality in client part have been added instead. - "Flip images" flag in the create task dialog will be removed. Rotation functionality in client part have been added instead.
### Removed ### Removed
- -
### Fixed ### Fixed
- Django 2.1.5 (security fix, https://nvd.nist.gov/vuln/detail/CVE-2019-3498) - Django 2.1.5 (security fix, https://nvd.nist.gov/vuln/detail/CVE-2019-3498)
- Several scenarious which cause code 400 after undo/redo/save have been fixed (#315) - Several scenarious which cause code 400 after undo/redo/save have been fixed (#315)
## [0.3.0] - 2018-12-29 ## [0.3.0] - 2018-12-29
### Added ### Added
- Ability to copy Object URL and Frame URL via object context menu and player context menu respectively. - Ability to copy Object URL and Frame URL via object context menu and player context menu respectively.
- Ability to change opacity for selected shape with help "Selected Fill Opacity" slider. - Ability to change opacity for selected shape with help "Selected Fill Opacity" slider.
- Ability to remove polyshapes points by double click. - Ability to remove polyshapes points by double click.
@ -473,6 +543,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Buttons lock/hide for labels. They work for all objects with the same label on a current frame (#116) - Buttons lock/hide for labels. They work for all objects with the same label on a current frame (#116)
### Changed ### Changed
- Polyshape editing method has been improved. You can redraw part of shape instead of points cloning. - Polyshape editing method has been improved. You can redraw part of shape instead of points cloning.
- Unified shortcut (Esc) for close any mode instead of different shortcuts (Alt+N, Alt+G, Alt+M etc.). - Unified shortcut (Esc) for close any mode instead of different shortcuts (Alt+N, Alt+G, Alt+M etc.).
- Dump file contains information about data source (e.g. video name, archive name, ...) - Dump file contains information about data source (e.g. video name, archive name, ...)
@ -483,6 +554,7 @@ filters and searching the nearest frame without any annotations (<https://github
- Drawing has become more convenience. Now it is possible to draw outside an image. Shapes will be automatically truncated after drawing process (#202) - Drawing has become more convenience. Now it is possible to draw outside an image. Shapes will be automatically truncated after drawing process (#202)
### Fixed ### Fixed
- Performance bottleneck has been fixed during you create new objects (draw, copy, merge etc). - Performance bottleneck has been fixed during you create new objects (draw, copy, merge etc).
- Label UI elements aren't updated after changelabel. - Label UI elements aren't updated after changelabel.
- Attribute annotation mode can use invalid shape position after resize or move shapes. - Attribute annotation mode can use invalid shape position after resize or move shapes.
@ -494,7 +566,9 @@ filters and searching the nearest frame without any annotations (<https://github
- Text drawing outside of a frame in some cases (#202) - Text drawing outside of a frame in some cases (#202)
## [0.2.0] - 2018-09-28 ## [0.2.0] - 2018-09-28
### Added ### Added
- New annotation shapes: polygons, polylines, points - New annotation shapes: polygons, polylines, points
- Undo/redo feature - Undo/redo feature
- Grid to estimate size of objects - Grid to estimate size of objects
@ -512,42 +586,54 @@ filters and searching the nearest frame without any annotations (<https://github
- Full screen view - Full screen view
### Changed ### Changed
- Documentation, screencasts, the primary screenshot - Documentation, screencasts, the primary screenshot
- Content-type for save_job request is application/json - Content-type for save_job request is application/json
### Fixed ### Fixed
- Player navigation if the browser's window is scrolled - Player navigation if the browser's window is scrolled
- Filter doesn't support dash (-) - Filter doesn't support dash (-)
- Several memory leaks - Several memory leaks
- Inconsistent extensions between filenames in an annotation file and real filenames - Inconsistent extensions between filenames in an annotation file and real filenames
## [0.1.2] - 2018-08-07 ## [0.1.2] - 2018-08-07
### Added ### Added
- 7z archive support when creating a task - 7z archive support when creating a task
- .vscode/launch.json file for developing with VS code - .vscode/launch.json file for developing with VS code
### Fixed ### Fixed
- #14: docker-compose down command as written in the readme does not remove volumes - #14: docker-compose down command as written in the readme does not remove volumes
- #15: all checkboxes in temporary attributes are checked when reopening job after saving the job - #15: all checkboxes in temporary attributes are checked when reopening job after saving the job
- #18: extend CONTRIBUTING.md - #18: extend CONTRIBUTING.md
- #19: using the same attribute for label twice -> stuck - #19: using the same attribute for label twice -> stuck
### Changed ### Changed
- More strict verification for labels with attributes - More strict verification for labels with attributes
## [0.1.1] - 2018-07-6 ## [0.1.1] - 2018-07-6
### Added ### Added
- Links on a screenshot, documentation, screencasts into README.md - Links on a screenshot, documentation, screencasts into README.md
- CONTRIBUTORS.md - CONTRIBUTORS.md
### Fixed ### Fixed
- GitHub documentation - GitHub documentation
## 0.1.0 - 2018-06-29 ## 0.1.0 - 2018-06-29
### Added ### Added
- Initial version - Initial version
## Template ## Template
``` ```
## [Unreleased] ## [Unreleased]
### Added ### Added

@ -3,29 +3,29 @@
// SPDX-License-Identifier: MIT // SPDX-License-Identifier: MIT
module.exports = { module.exports = {
'env': { env: {
'node': true, node: true,
'browser': true, browser: true,
'es6': true, es6: true,
}, },
'parserOptions': { parserOptions: {
'parser': '@typescript-eslint/parser', parser: '@typescript-eslint/parser',
'ecmaVersion': 6, ecmaVersion: 6,
'project': './tsconfig.json', project: './tsconfig.json',
}, },
'plugins': [ plugins: ['@typescript-eslint', 'import', 'eslint-plugin-header'],
'@typescript-eslint', ignorePatterns: ['*.svg', '*.scss'],
'import', extends: [
],
'ignorePatterns': ['*.svg', '*.scss'],
'extends': [
'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended',
'airbnb-typescript', 'airbnb-typescript',
'plugin:import/errors', 'plugin:import/errors',
'plugin:import/warnings', 'plugin:import/warnings',
'plugin:import/typescript', 'plugin:import/typescript',
'prettier',
'prettier/@typescript-eslint',
'prettier/react',
], ],
'rules': { rules: {
'@typescript-eslint/indent': ['warn', 4], '@typescript-eslint/indent': ['warn', 4],
'react/jsx-indent': ['warn', 4], 'react/jsx-indent': ['warn', 4],
'react/jsx-indent-props': ['warn', 4], 'react/jsx-indent-props': ['warn', 4],
@ -34,16 +34,17 @@ module.exports = {
'arrow-parens': ['error', 'always'], 'arrow-parens': ['error', 'always'],
'@typescript-eslint/no-explicit-any': [0], '@typescript-eslint/no-explicit-any': [0],
'@typescript-eslint/explicit-function-return-type': ['warn', { allowExpressions: true }], '@typescript-eslint/explicit-function-return-type': ['warn', { allowExpressions: true }],
'no-restricted-syntax': [0, {'selector': 'ForOfStatement'}], 'no-restricted-syntax': [0, { selector: 'ForOfStatement' }],
'no-plusplus': [0], 'no-plusplus': [0],
'lines-between-class-members': 0, 'lines-between-class-members': 0,
'react/no-did-update-set-state': 0, // https://github.com/airbnb/javascript/issues/1875 'react/no-did-update-set-state': 0, // https://github.com/airbnb/javascript/issues/1875
'header/header': [2, '.header-tpl.ts'],
}, },
'settings': { settings: {
'import/resolver': { 'import/resolver': {
'typescript': { typescript: {
'directory': './tsconfig.json' directory: './tsconfig.json',
} },
}, },
}, },
}; };

@ -4,4 +4,5 @@
/dist /dist
/build /build
/yarn.lock /yarn.lock
.eslintcache

@ -0,0 +1,3 @@
// Copyright (C) 2020 Intel Corporation
//
// SPDX-License-Identifier: MIT

@ -0,0 +1,19 @@
{
"arrowParens": "always",
"bracketSpacing": true,
"embeddedLanguageFormatting": "auto",
"htmlWhitespaceSensitivity": "css",
"insertPragma": false,
"jsxBracketSameLine": false,
"jsxSingleQuote": true,
"printWidth": 120,
"proseWrap": "preserve",
"quoteProps": "as-needed",
"requirePragma": false,
"semi": true,
"singleQuote": true,
"tabWidth": 4,
"trailingComma": "all",
"useTabs": false,
"vueIndentScriptAndStyle": false
}

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
{ {
"name": "cvat-ui", "name": "cvat-ui",
"version": "1.9.10", "version": "1.9.11",
"description": "CVAT single-page application", "description": "CVAT single-page application",
"main": "src/index.tsx", "main": "src/index.tsx",
"scripts": { "scripts": {
@ -28,15 +28,20 @@
"css-loader": "^3.2.0", "css-loader": "^3.2.0",
"eslint": "^6.8.0", "eslint": "^6.8.0",
"eslint-config-airbnb-typescript": "^7.0.0", "eslint-config-airbnb-typescript": "^7.0.0",
"eslint-config-prettier": "^6.12.0",
"eslint-import-resolver-typescript": "^2.0.0", "eslint-import-resolver-typescript": "^2.0.0",
"eslint-plugin-header": "^3.1.0",
"eslint-plugin-import": "^2.18.2", "eslint-plugin-import": "^2.18.2",
"eslint-plugin-jsx-a11y": "^6.2.3", "eslint-plugin-jsx-a11y": "^6.2.3",
"eslint-plugin-react": "^7.17.0", "eslint-plugin-react": "^7.17.0",
"eslint-plugin-react-hooks": "^1.7.0", "eslint-plugin-react-hooks": "^1.7.0",
"html-webpack-plugin": "^3.2.0", "html-webpack-plugin": "^3.2.0",
"husky": "^4.3.0",
"lint-staged": "^10.4.0",
"node-sass": "^4.13.0", "node-sass": "^4.13.0",
"postcss-loader": "^3.0.0", "postcss-loader": "^3.0.0",
"postcss-preset-env": "^6.7.0", "postcss-preset-env": "^6.7.0",
"prettier": "2.1.2",
"react-svg-loader": "^3.0.3", "react-svg-loader": "^3.0.3",
"sass-loader": "^8.0.0", "sass-loader": "^8.0.0",
"style-loader": "^1.0.0", "style-loader": "^1.0.0",
@ -49,12 +54,12 @@
}, },
"dependencies": { "dependencies": {
"@types/platform": "^1.3.2", "@types/platform": "^1.3.2",
"@types/react": "^16.9.49", "@types/react": "^16.9.2",
"@types/react-color": "^3.0.2", "@types/react-color": "^3.0.2",
"@types/react-dom": "^16.9.8", "@types/react-dom": "^16.9.0",
"@types/react-redux": "^7.1.9", "@types/react-redux": "^7.1.2",
"@types/react-router": "^5.1.8", "@types/react-router": "^5.0.5",
"@types/react-router-dom": "^5.1.5", "@types/react-router-dom": "^5.1.0",
"@types/react-share": "^3.0.1", "@types/react-share": "^3.0.1",
"@types/redux-logger": "^3.0.7", "@types/redux-logger": "^3.0.7",
"antd": "^3.26.17", "antd": "^3.26.17",
@ -63,14 +68,14 @@
"cvat-core": "file:../cvat-core", "cvat-core": "file:../cvat-core",
"dotenv-webpack": "^1.7.0", "dotenv-webpack": "^1.7.0",
"error-stack-parser": "^2.0.6", "error-stack-parser": "^2.0.6",
"moment": "^2.28.0", "moment": "^2.24.0",
"platform": "^1.3.6", "platform": "^1.3.6",
"prop-types": "^15.7.2", "prop-types": "^15.7.2",
"react": "^16.9.0", "react": "^16.9.0",
"react-color": "^2.18.1", "react-color": "^2.18.1",
"react-dom": "^16.9.0", "react-dom": "^16.9.0",
"react-hotkeys": "^2.0.0", "react-hotkeys": "^2.0.0",
"react-redux": "^7.2.1", "react-redux": "^7.1.1",
"react-router": "^5.1.0", "react-router": "^5.1.0",
"react-router-dom": "^5.1.0", "react-router-dom": "^5.1.0",
"react-share": "^3.0.1", "react-share": "^3.0.1",
@ -78,5 +83,17 @@
"redux-devtools-extension": "^2.13.8", "redux-devtools-extension": "^2.13.8",
"redux-logger": "^3.0.6", "redux-logger": "^3.0.6",
"redux-thunk": "^2.3.0" "redux-thunk": "^2.3.0"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"*.{html,css,scss,json,md}": "prettier --write",
"*.{js,ts,tsx}": [
"eslint --fix",
"prettier --write"
]
} }
} }

@ -1,10 +1,13 @@
import React from 'react'; // Copyright (C) 2020 Intel Corporation
import { getApplicationKeyMap } from 'react-hotkeys'; //
// SPDX-License-Identifier: MIT
import { shortcutsActions } from 'actions/shortcuts-actions';
import Modal from 'antd/lib/modal'; import Modal from 'antd/lib/modal';
import Table from 'antd/lib/table'; import Table from 'antd/lib/table';
import React from 'react';
import { getApplicationKeyMap } from 'react-hotkeys';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { shortcutsActions } from 'actions/shortcuts-actions';
import { CombinedState } from 'reducers/interfaces'; import { CombinedState } from 'reducers/interfaces';
interface StateToProps { interface StateToProps {
@ -17,9 +20,7 @@ interface DispatchToProps {
function mapStateToProps(state: CombinedState): StateToProps { function mapStateToProps(state: CombinedState): StateToProps {
const { const {
shortcuts: { shortcuts: { visibleShortcutsHelp: visible },
visibleShortcutsHelp: visible,
},
} = state; } = state;
return { return {
@ -39,35 +40,41 @@ function ShorcutsDialog(props: StateToProps & DispatchToProps): JSX.Element | nu
const { visible, switchShortcutsDialog } = props; const { visible, switchShortcutsDialog } = props;
const keyMap = getApplicationKeyMap(); const keyMap = getApplicationKeyMap();
const splitToRows = (data: string[]): JSX.Element[] => ( const splitToRows = (data: string[]): JSX.Element[] =>
data.map((item: string, id: number): JSX.Element => ( data.map(
(item: string, id: number): JSX.Element => (
// eslint-disable-next-line react/no-array-index-key // eslint-disable-next-line react/no-array-index-key
<span key={id}> <span key={id}>
{item} {item}
<br /> <br />
</span> </span>
)) ),
); );
const columns = [{ const columns = [
{
title: 'Name', title: 'Name',
dataIndex: 'name', dataIndex: 'name',
key: 'name', key: 'name',
}, { },
{
title: 'Shortcut', title: 'Shortcut',
dataIndex: 'shortcut', dataIndex: 'shortcut',
key: 'shortcut', key: 'shortcut',
render: splitToRows, render: splitToRows,
}, { },
{
title: 'Action', title: 'Action',
dataIndex: 'action', dataIndex: 'action',
key: 'action', key: 'action',
render: splitToRows, render: splitToRows,
}, { },
{
title: 'Description', title: 'Description',
dataIndex: 'description', dataIndex: 'description',
key: 'description', key: 'description',
}]; },
];
const dataSource = Object.keys(keyMap).map((key: string, id: number) => ({ const dataSource = Object.keys(keyMap).map((key: string, id: number) => ({
key: id, key: id,
@ -92,7 +99,4 @@ function ShorcutsDialog(props: StateToProps & DispatchToProps): JSX.Element | nu
); );
} }
export default connect( export default connect(mapStateToProps, mapDispatchToProps)(ShorcutsDialog);
mapStateToProps,
mapDispatchToProps,
)(ShorcutsDialog);

Loading…
Cancel
Save