2917 Commits (a773042e4e3e7c97ba6ddddd005b3dc2893ac16e)
 

Author SHA1 Message Date
Maxim Zhiltsov a773042e4e
SDK / CLI v2.3.0 (#5511)
- Updated package versions
- Extended server version list in SDK to 2.4 for the public instance
3 years ago
Andrey Zhavoronkov aeef8276c7
Updated documentation "How to use preexisting secrets for external DB and Redis" (#5505) 3 years ago
Maxim Zhiltsov af65707eee
Mark tests that require external services (#5474)
Related: #5225 

External services are not available when we execute in Helm.

- Added a way to mark REST API tests that require external services to
run
- Changed the way of filtering tests in Helm tests

Currently, we can't execute external service mocks in tests, and we
ignore related tests in the Helm
execution command. But this command may be outdated, because Helm tests
are not executed in each PR.
This PR allows to indicate related tests and filter them out without the
need to synchronize the CI command.
3 years ago
Maxim Zhiltsov 051f9a9ed8
Fix schema warnings and errors for Webhooks (#5232)
- Removed extra update methods from schema
- Fixed Webhooks endpoints
- Fixed Webhooks enum names
3 years ago
Maxim Zhiltsov 760f40d3d8
Wait for OPA to load rules in tests startup (#5483)
OPA can take some time to load rules, but our tests don't wait for OPA,
and start right after the server is loaded.
Sometimes it works, but in other times the tests may fail because OPA is
still loading the rules.
This PR allows to wait for OPA during the test suite startup.
3 years ago
Andrey Zhavoronkov 1ecc607286
Get preview images on the fly and keep them in cache (#5478)
Improved image preview loading for **Tasks**, **Jobs** and **Projects**
views
Backend behaviour change: creating image previews by request and storing
them in the cache
Added corresponding endpoints:
tasks/{id}/preview
projects/{id}/preview
jobs/{id}/preview

Demonstration(added random 0-1s delay for demo purposes):
https://user-images.githubusercontent.com/41117609/208106321-951b8647-6e6b-452e-910c-31c4d0b8682d.mp4
https://user-images.githubusercontent.com/41117609/208106339-2d3a5a7b-d422-4b27-9e76-08729022e1ca.mp4
3 years ago
Maxim Zhiltsov 37b685f47a
Limit test execution time (#5484)
This should protect us from unnoticed hangs, which happen sometimes and
waste CI and developer time.
Currently, the limit is 15s per test, which should be enough in normal
conditions.
3 years ago
Scotty Kwok 4fdac63739
Keyboard shortcut to delete frame (fixes #5369) (#5370)
This fixes #5369 by adding keyboard shortcut [x] that delete a frame
without prompt.

Co-authored-by: Scotty Kwok <scottykwok@sebit.word>
Co-authored-by: Boris Sekachev <sekachev.bs@gmail.com>
3 years ago
Roman Donchenko a6e5813233
Make the Python test log less messy (#5456) 3 years ago
Roman Donchenko e018b10e00
SDK: fix `Project.import_dataset` incorrectly waiting for completion (#5459)
You have to use the `import_status` action in order to query the input
status. Otherwise, the `/api/projects/{id}/dataset/` endpoint initiates
a dataset export. Currently, `import_dataset` inadvertently monitors the
status of that export, not the original import.
3 years ago
Roman Donchenko fa92ccb987
SDK: Improve the PyTorch adapter layer (#5455)
* Make the extractors return tensors instead of Python data structures.
* Let the user specify custom label IDs.
3 years ago
Maxim Zhiltsov f6d2a8fe46
Fix the missing env variable issue (#5467)
Fixes #5448, #5453, #5457

- Relaxed env var requirements in the images, no mandatory ones
- RQ workers now use a custom python class for remote debugging
- Factored out common remote debugging implementation
3 years ago
Roman Donchenko 7b13216e2d
tests: fix long shutdown times for the webhook_receiver container (#5458)
Currently, `server.py` runs as PID 1, which means that it won't be
terminated by a `SIGTERM` signal unless it explicitly handles it (which
it doesn't). So when Docker tries to shut the container down, it sends
the server a `SIGTERM`, which gets ignored, and then sits there for 10
seconds before sending it a `SIGKILL`.

To work around this, enable the built-in Docker init program, which
forwards signals to the Python server. Since the Python server is no
longer PID 1, `SIGTERM` will now shut it down immediately.

The `init` option is supported starting from the Compose format version
3.7, so bump the version.
3 years ago
Boris Sekachev 6be7e4cceb
3D annotation view significant performance update & refactoring (#5442)
<!-- Raised an issue to propose your change
(https://github.com/cvat-ai/cvat/issues).
It helps to avoid duplication of efforts from multiple independent
contributors.
Discuss your ideas with maintainers to be sure that changes will be
approved and merged.
Read the
[CONTRIBUTION](https://github.com/cvat-ai/cvat/blob/develop/CONTRIBUTING.md)
guide. -->

<!-- Provide a general summary of your changes in the Title above -->

### Motivation and context
<!-- Why is this change required? What problem does it solve? If it
fixes an open
issue, please link to the issue here. Describe your changes in detail,
add
screenshots. -->

### How has this been tested?
<!-- Please describe in detail how you tested your changes.
Include details of your testing environment, and the tests you ran to
see how your change affects other areas of the code, etc. -->

### Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply.
If an item isn't applicable by a reason then ~~explicitly
strikethrough~~ the whole
line. If you don't do that github will show an incorrect process for the
pull request.
If you're unsure about any of these, don't hesitate to ask. We're here
to help! -->
- [x] I submit my changes into the `develop` branch
- [ ] I have added a description of my changes into
[CHANGELOG](https://github.com/cvat-ai/cvat/blob/develop/CHANGELOG.md)
file
- [ ] I have updated the [documentation](
https://github.com/cvat-ai/cvat/blob/develop/README.md#documentation)
accordingly
- [ ] I have added tests to cover my changes
- [ ] I have linked related issues ([read github docs](

https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))
- [x] I have increased versions of npm packages if it is necessary
([cvat-canvas](https://github.com/cvat-ai/cvat/tree/develop/cvat-canvas#versioning),

[cvat-core](https://github.com/cvat-ai/cvat/tree/develop/cvat-core#versioning),
[cvat-data](https://github.com/cvat-ai/cvat/tree/develop/cvat-data#versioning)
and
[cvat-ui](https://github.com/cvat-ai/cvat/tree/develop/cvat-ui#versioning))

### License

- [x] I submit _my code changes_ under the same [MIT License](
https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the
project.
  Feel free to contact the maintainers if that's a concern.
3 years ago
Andrey Zhavoronkov ac78fab0b9
Fix health check in development env (#5454) 3 years ago
Maria Khrustaleva a3b4f97f9a
Improve social authentication (#5349) 3 years ago
Andrey Zhavoronkov 980c019427
PostgresSQL DB v15 and health check endpoint (#5312) 3 years ago
Maxim Zhiltsov 6cf67dba9e
Add project proxy tests in SDK (#5431)
Ported from https://github.com/opencv/cvat/pull/4819

- Fixed project APIs in SDK core
- Added tests for projects
3 years ago
Mariia Acoca 15eecf81af
[Documentation] Typo in Navbar corrected (#5441) 3 years ago
Maxim Zhiltsov 2ed778818a
Allow server debugging when deployed with Docker (#5445)
Closes https://github.com/opencv/cvat/issues/5327

- Added a way to debug the server in Docker-based deployments
- Added docs
3 years ago
Maxim Zhiltsov dbd4528332
Little UX improvements in CLI (#5446)
- Reduced request status checks period to 2 sec.
- Fixed parameter help message
3 years ago
Maxim Zhiltsov 6ac561235c
Improve dataset manifest installation (#5447)
Extracted from #5083 
Related #5096 

- Improved dataset manifest docs
- Dataset manifest requirements are now installed in the server image
- Package dependencies are aligned with the server
3 years ago
Maria Khrustaleva c9f214a894
Unify error handling with the cloud storage (#5389)
Added a general solution for checking bucket and file status instead of
checking in all places. Exception information has become more
user-friendly.
3 years ago
Roman Donchenko 487c60ce2b
SDK: Add an adapter layer that presents a CVAT task as a torchvision dataset (#5417) 3 years ago
Maxim Zhiltsov 82adde42aa
Refactor resource import export tests (#5429)
Extracted some enhancements from
https://github.com/opencv/cvat/pull/4819

- Extracted common s3 manipulations in tests
- Refactored import/export tests to be more clear
3 years ago
Roman Donchenko 0a032b3236
Migrate to using pathlib in most of the SDK (#5435)
For user-facing functions, keep accepting `str` paths to maintain
compatibility and flexibility, but add support for arbitrary path-like
objects. For internal functions (in `downloading.py` and
`uploading.py`), don't bother and require `pathlib.Path`.

The only code that isn't converted is build-time code (e.g. `setup.py`)
and code that came from openapi-generator.
3 years ago
Roman Donchenko 5441c4ee67
Fix isort version output in the workflow (#5436)
`isort --version` prints a large banner, which, after shell processing,
is collapsed into one line, and the result is an unreadable mess. Use
`--version-number` instead, which prints just the number.
3 years ago
Maxim Zhiltsov 4e97c243d6
Refactor OPA tests (#5373)
- OPA tests are now autogenerated
- Updated invocation docs
3 years ago
Nikita Manovich 03dd995bc3
Update README.md 3 years ago
Mariia Acoca c26590c043
Update authentication documentation (#5342)
User authorization documentation updated:

- Screenshots
- Procedure descriptions
- Links
3 years ago
Roman Donchenko 481630e719
Migrate tests/python to from os.path to pathlib (#5426)
`pathlib` improves code readability and type safety. It is already used
in some of the tests; convert all remaining `os.path` usage to `pathlib`
equivalents.
3 years ago
Anastasia Yasakova 3f9ab7cf68
Fix loss of rotation in CVAT format (#5407)
Fix https://github.com/opencv/cvat/issues/4378
3 years ago
Maxim Zhiltsov cacb99735f
Add job access checks for model invocations (#5392)
Fixes #4996
- Added job access checks for model launches in the interactive mode
3 years ago
Roman Donchenko 192fd72680
Fix creation of tasks with Git repositories via the SDK (#5409)
Fixes #4365
3 years ago
Boris Sekachev 8b13a2c485
3D Performance issue fixed: Multiple selection the same object or null (#5411)
Related #3438
3 years ago
Roman Donchenko c49fe70083
Fix an "export was not found" webpack warning in canvas3d.ts (#5419)
The cause of the warning is explained here:

https://devblogs.microsoft.com/typescript/announcing-typescript-3-8-beta/#type-only-imports-exports

Add a webpack configuration option to treat such warnings as errors, to
prevent any more of them from appearing in the future.

<!-- Raised an issue to propose your change
(https://github.com/cvat-ai/cvat/issues).
It helps to avoid duplication of efforts from multiple independent
contributors.
Discuss your ideas with maintainers to be sure that changes will be
approved and merged.
Read the
[CONTRIBUTION](https://github.com/cvat-ai/cvat/blob/develop/CONTRIBUTING.md)
guide. -->

<!-- Provide a general summary of your changes in the Title above -->

### Motivation and context
<!-- Why is this change required? What problem does it solve? If it
fixes an open
issue, please link to the issue here. Describe your changes in detail,
add
screenshots. -->
Warnings are annoying.

### How has this been tested?
<!-- Please describe in detail how you tested your changes.
Include details of your testing environment, and the tests you ran to
see how your change affects other areas of the code, etc. -->

### Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply.
If an item isn't applicable by a reason then ~~explicitly
strikethrough~~ the whole
line. If you don't do that github will show an incorrect process for the
pull request.
If you're unsure about any of these, don't hesitate to ask. We're here
to help! -->
- [x] I submit my changes into the `develop` branch
- ~~[ ] I have added a description of my changes into
[CHANGELOG](https://github.com/cvat-ai/cvat/blob/develop/CHANGELOG.md)
file~~
- ~~[ ] I have updated the [documentation](
https://github.com/cvat-ai/cvat/blob/develop/README.md#documentation)
accordingly~~
- ~~[ ] I have added tests to cover my changes~~
- ~~[ ] I have linked related issues ([read github docs](

https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))~~
- ~~[ ] I have increased versions of npm packages if it is necessary
([cvat-canvas](https://github.com/cvat-ai/cvat/tree/develop/cvat-canvas#versioning),

[cvat-core](https://github.com/cvat-ai/cvat/tree/develop/cvat-core#versioning),
[cvat-data](https://github.com/cvat-ai/cvat/tree/develop/cvat-data#versioning)
and
[cvat-ui](https://github.com/cvat-ai/cvat/tree/develop/cvat-ui#versioning))~~

### License

- [x] I submit _my code changes_ under the same [MIT License](
https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the
project.
  Feel free to contact the maintainers if that's a concern.
3 years ago
dependabot[bot] dcf1ac2d86
Bump decode-uri-component from 0.2.0 to 0.2.2 (#5421) 3 years ago
Maxim Zhiltsov 2a2c43f6b1
Try to catch / workaround 5215 (#5216)
Fixes #5215

It's not really clear how the error can be obtained, but this PR adds a
workaround for the problem. There are 2 possible ways to get the
`message` parameter - from an error and from the operation status.

- Our status messages are always represented by a string, no any other
values is assigned.

- rq is trickier here - it receives rq data and [decodes
it](https://github.com/rq/rq/blob/master/rq/job.py#L603-L609) if there
is an error, but the operations can leave None as the `exc_info` value.
Maybe [this issue](https://github.com/rq/rq/issues/1633) is relevant
here.
3 years ago
Boris Sekachev d4788ee61e
Multiple fixes in 3D drawing, see description (#5410)
### Motivation and context
Related #3438 

- When dblclick one of sideviews during drawing - UI is broken
- When mouseleave sideviews during drawing - bbox disappears, need to
draw again
- Sometimes multiple draw boxes exist on view

Example:

![bug_1](https://user-images.githubusercontent.com/40690378/205139685-2c348b4f-30c0-4bcc-a101-e07c880ff358.gif)
3 years ago
Maria Khrustaleva 9b0d963d1a
Fix REST API tests (#5416)
Fixed REST API tests after merging #5408 and #5396 to develop

Co-authored-by: Boris Sekachev <sekachev.bs@gmail.com>
Co-authored-by: Nikita Manovich <nikita@cvat.ai>
3 years ago
Andrey Zhavoronkov 966f2e4efd
Added note about use of existing PVs to store CVAT data (#5413) 3 years ago
Maxim Zhiltsov 673ecefbc3
Remove old CLI tests from unit test docs (#5415) 3 years ago
Nikita Manovich 3e1ccc8602
Fix exception when run export for an empty task (#5396)
Fix https://github.com/opencv/cvat/issues/5245

The PR contains a simple fix. Just return BAD REQUEST if somebody tries
to export a task without data. It doesn't make sense. But a more complex
fix will require changing a massive amount of code. It doesn't make any
sense to support such a weird scenario.
3 years ago
Mariia Acoca c0bf27c5ee
[Documentation] links on readme.md page fixed (#5406) 3 years ago
Boris Sekachev 772f0cd117
Adjusted initial camera position, enabled 'Reset zoom' option for 3D canvas (#5395) 3 years ago
Andrey Zhavoronkov 01fec6fb72
Fix chart not being upgradable (#5371) 3 years ago
Andrey Zhavoronkov 6f6db4d554
Helm: fix secrets for non-default release name (#5403) 3 years ago
Maxim Zhiltsov 0943de9d6f
Update test guide with SDK/CLI info (#5402)
Follow up for #5394

The existing text wont work in a clean repo. This PR adds missing info.
3 years ago
Maria Khrustaleva f405c4acac
Fix missing source tag in project annotations (#5408) 3 years ago
Boris Sekachev 785edcb272
Allow dragging 3D canvas in IDLE mode (#5385) 3 years ago