438d4c0 | Boris Sekachev | 22 February 2024, 19:26:06 UTC | Aborted | 22 February 2024, 19:26:06 UTC |
080b84f | Boris Sekachev | 22 February 2024, 19:22:06 UTC | Fixed vulnerability | 22 February 2024, 19:22:06 UTC |
1931d7a | Boris Sekachev | 22 February 2024, 19:17:10 UTC | Stylelint | 22 February 2024, 19:17:10 UTC |
d2a84dd | Boris Sekachev | 22 February 2024, 19:11:31 UTC | Fixed opencv loading | 22 February 2024, 19:11:31 UTC |
5249a37 | Boris Sekachev | 22 February 2024, 18:58:34 UTC | Refactored many dropdowns | 22 February 2024, 18:58:34 UTC |
f9e75be | Boris Sekachev | 22 February 2024, 18:14:37 UTC | Refactored annotation menu | 22 February 2024, 18:14:37 UTC |
a258342 | Boris Sekachev | 22 February 2024, 17:10:56 UTC | Merge branch 'develop' into bs/upgrade_react | 22 February 2024, 17:10:56 UTC |
2c5bb69 | Kirill Lakhov | 22 February 2024, 16:54:10 UTC | Add test for Ground truth Job list (#7490) | 22 February 2024, 16:54:10 UTC |
7286d65 | Roman Donchenko | 19 February 2024, 14:41:40 UTC | Drop support of the TFRecord format (#7416) Usage statistics on app.cvat.ai show that this format is rarely used, with single-digit numbers of projects/tasks/jobs being exported or imported using this format. Moreover, TensorFlow's popularity appears to be shrinking, so I'm not expecting this format to make a comeback. Meanwhile, supporting this format has a cost that has to be borne by everyone deploying CVAT, because it requires TensorFlow to be installed and loaded. This has various ill effects: 1. Loading time is increased. In my testing, even a command as trivial as `manage.py --help` is slowed down by 3.6 seconds. This may not seem like much, but the effect is compounded, because we have multiple processes (server + workers) all loading the same codebase. Plus, the container entrypoint may execute several Django commands. 2. Memory usage is increased. TensorFlow adds ~100MB of RAM usage per process with data alone; and the libraries add more (although it's hard to estimate the impact of library code, since it can be shared between processes in RAM). 3. Docker image size is increased by ~1.5GB (when unpacked). This is more than half of the current total size! Building time is increased as well. Overall, it seems that the drawbacks of keeping support for this format outweigh the benefits, so it's time to drop it. | 19 February 2024, 14:41:40 UTC |
f0af22a | Boris Sekachev | 19 February 2024, 13:45:25 UTC | Removed extra cypress configs (#7488) | 19 February 2024, 13:45:25 UTC |
5696d31 | Boris Sekachev | 16 February 2024, 14:12:58 UTC | Fixed one test | 16 February 2024, 14:12:58 UTC |
aeca07b | Boris Sekachev | 16 February 2024, 13:52:15 UTC | Merged develop | 16 February 2024, 13:52:15 UTC |
42be015 | Roman Donchenko | 16 February 2024, 13:03:07 UTC | Add events for importing/exporting annotations/datasets (#7476) This can provide useful statistics on the use of this functionality. Note that I chose to use the same scope for operations on projects, tasks and jobs, because the import/export operations work more-or-less the same on each of them and have the same parameters. It's still possible to distinguish which type of object the operation was performed on by examining the various `*_id` fields in the event. | 16 February 2024, 13:03:07 UTC |
9c048f2 | Roman Donchenko | 16 February 2024, 13:01:30 UTC | Don't save all fields of a model when bumping the update date (#7450) Currently, there are a lot of places where changing one object requires updating the `updated_date` field on other objects. Usually, the `.save` method is used for this purpose, which results in a generic SQL `UPDATE` query that replaces the values in all columns. Introduce and use a specialized method that only changes the date. This provides the following advantages: * Prevents the date updates from overwriting updates to other fields that may happen at the same time. * Possibly makes the updates more efficient due to fewer columns being updated (I have no data on this, though). * Makes it easier to recognize the purpose of the query when analyzing logs/live statistics. * Makes the purpose of the code more obvious. Additionally, update `__save_job_handler`, where we don't want to save _just_ the date, but we still only need to save two fields. | 16 February 2024, 13:01:30 UTC |
85380fb | Boris Sekachev | 16 February 2024, 12:44:53 UTC | Merge branch 'develop' into bs/upgrade_react | 16 February 2024, 12:44:53 UTC |
49609f5 | Boris Sekachev | 16 February 2024, 12:44:47 UTC | Aborted files | 16 February 2024, 12:44:47 UTC |
972a218 | Roman Donchenko | 16 February 2024, 12:31:21 UTC | Make event-related identifiers in cvat-core consistent (#7482) | 16 February 2024, 12:31:21 UTC |
6260232 | Roman Donchenko | 15 February 2024, 16:49:16 UTC | Record DB-related events only after changes are committed (#7477) This is a small addendum to #7460, which I couldn't include in that PR, because it was blocked by #7430. | 15 February 2024, 16:49:16 UTC |
6673bb1 | Andrey Zhavoronkov | 15 February 2024, 14:08:45 UTC | Modify backend entrypoint to wait redis (inmem and ondisk) (#7479) Currently CVAT is just waiting for the database to start the server process and the worker processes, but if redis instances (for queue and cache processing) are not running we will get a non-functional cvat. This PR adds availability checking for redis_ondisk and redis_inmem | 15 February 2024, 14:08:45 UTC |
11cec4c | Kirill Lakhov | 15 February 2024, 13:31:53 UTC | Migrate quality UI changes (#7441) | 15 February 2024, 13:31:53 UTC |
264142f | Boris Sekachev | 13 February 2024, 22:08:06 UTC | aborted change | 13 February 2024, 22:08:06 UTC |
31f4584 | Boris Sekachev | 13 February 2024, 22:07:16 UTC | Updated urls | 13 February 2024, 22:07:16 UTC |
7aaa3ed | Boris Sekachev | 13 February 2024, 22:05:28 UTC | Merge branch 'develop' into bs/upgrade_react | 13 February 2024, 22:05:28 UTC |
7ad4395 | Boris Sekachev | 13 February 2024, 22:02:53 UTC | Couple of minor style fixes | 13 February 2024, 22:02:53 UTC |
209876d | Boris Sekachev | 13 February 2024, 21:47:38 UTC | Refactored components | 13 February 2024, 21:47:38 UTC |
8f99200 | Boris Sekachev | 13 February 2024, 20:20:54 UTC | Refactoring | 13 February 2024, 20:20:54 UTC |
0782dac | Mariia Acoca | 13 February 2024, 14:00:57 UTC | Run actions documentation added (#7448) | 13 February 2024, 19:27:53 UTC |
33ecea2 | Roman Donchenko | 13 February 2024, 13:43:08 UTC | Defer most signal handling code until after the end of the current transaction (#7460) Non-database actions like deleting directories, sending webhooks, scheduling reports should only be done after the current transaction is committed. If we do it immediately, and the transaction is later aborted, then we will have (for example) sent a webhook about an event that didn't actually happen. There's also a secondary benefit to moving this action outside of the transaction; the less time we spend inside a transaction, the better, since a transaction may lock out other clients from working on the affected DB rows. In addition, prevent the affected actions from crashing the view handler with an exception (using the `robust=True` option). I don't think it's reasonable to (for example) return a 500 response to a `PATCH` request just because we failed to send the corresponding webhook. There is one more type of action that should be modified in this way (sending events), but it would be easier to do that after a refactoring that I did in another patch, so I'll do it later. | 13 February 2024, 19:27:53 UTC |
1740ac4 | Maria Khrustaleva | 13 February 2024, 13:42:08 UTC | Add failure_ttl when enqueueing task creation job (#7475) By default failed rq jobs are kept for 1 year. It is too long and leads to keeping a lot of unnecessary results in Redis. | 13 February 2024, 19:27:53 UTC |
ffac39e | Roman Donchenko | 13 February 2024, 13:02:28 UTC | Reduce repetitive code in cvat/apps/events/handlers.py (#7430) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> This is a preparatory PR before I add more events. ### 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 for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 created a changelog fragment~~ <!-- see top comment in CHANGELOG.md --> - ~~[ ] I have updated the documentation accordingly~~ - ~~[ ] I have added tests to cover my changes~~ - ~~[ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning))~~ ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 13 February 2024, 19:27:53 UTC |
e8384f8 | Mariia Acoca | 13 February 2024, 14:00:57 UTC | Run actions documentation added (#7448) | 13 February 2024, 14:00:57 UTC |
f477e0b | Roman Donchenko | 13 February 2024, 13:43:08 UTC | Defer most signal handling code until after the end of the current transaction (#7460) Non-database actions like deleting directories, sending webhooks, scheduling reports should only be done after the current transaction is committed. If we do it immediately, and the transaction is later aborted, then we will have (for example) sent a webhook about an event that didn't actually happen. There's also a secondary benefit to moving this action outside of the transaction; the less time we spend inside a transaction, the better, since a transaction may lock out other clients from working on the affected DB rows. In addition, prevent the affected actions from crashing the view handler with an exception (using the `robust=True` option). I don't think it's reasonable to (for example) return a 500 response to a `PATCH` request just because we failed to send the corresponding webhook. There is one more type of action that should be modified in this way (sending events), but it would be easier to do that after a refactoring that I did in another patch, so I'll do it later. | 13 February 2024, 13:43:08 UTC |
b2a1065 | Maria Khrustaleva | 13 February 2024, 13:42:08 UTC | Add failure_ttl when enqueueing task creation job (#7475) By default failed rq jobs are kept for 1 year. It is too long and leads to keeping a lot of unnecessary results in Redis. | 13 February 2024, 13:42:08 UTC |
58173c4 | Roman Donchenko | 13 February 2024, 13:02:28 UTC | Reduce repetitive code in cvat/apps/events/handlers.py (#7430) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> This is a preparatory PR before I add more events. ### 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 for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 created a changelog fragment~~ <!-- see top comment in CHANGELOG.md --> - ~~[ ] I have updated the documentation accordingly~~ - ~~[ ] I have added tests to cover my changes~~ - ~~[ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning))~~ ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 13 February 2024, 13:02:28 UTC |
876f893 | Boris Sekachev | 13 February 2024, 09:58:13 UTC | Merge branch 'develop' into bs/upgrade_react | 13 February 2024, 09:58:13 UTC |
ad60b82 | Maria Khrustaleva | 12 February 2024, 14:34:23 UTC | Add the ability to disable sign-in/sign-up in the UI (#7348) Co-authored-by: Boris Sekachev <boris.sekachev@yandex.ru> | 12 February 2024, 14:34:23 UTC |
43e0897 | Boris Sekachev | 09 February 2024, 20:00:25 UTC | Refactored tab panes | 09 February 2024, 20:00:25 UTC |
5f49a7c | Boris Sekachev | 09 February 2024, 19:09:27 UTC | Refactoring | 09 February 2024, 19:09:27 UTC |
4e2b2df | Roman Donchenko | 09 February 2024, 18:00:28 UTC | Remove the "Cancelling Duplicates" workflow (#7467) | 09 February 2024, 18:00:28 UTC |
ac3d77e | Boris Sekachev | 09 February 2024, 14:26:30 UTC | Fixed styles | 09 February 2024, 14:26:30 UTC |
0c241da | Boris Sekachev | 09 February 2024, 14:20:29 UTC | Setup menu | 09 February 2024, 14:20:29 UTC |
5330c8b | Boris Sekachev | 09 February 2024, 13:43:37 UTC | Merged develop | 09 February 2024, 13:43:37 UTC |
24479c0 | Boris Sekachev | 09 February 2024, 13:41:40 UTC | Click instead of hover to open dropdown menus (#7431) | 09 February 2024, 13:41:40 UTC |
86e7d99 | Boris Sekachev | 09 February 2024, 13:40:12 UTC | Adjusted styles | 09 February 2024, 13:40:12 UTC |
0fe1c51 | Boris Sekachev | 09 February 2024, 13:37:54 UTC | Enhanced actions | 09 February 2024, 13:37:54 UTC |
d829ffb | Boris Sekachev | 09 February 2024, 13:23:36 UTC | Fixed styles | 09 February 2024, 13:23:36 UTC |
c6ea227 | Boris Sekachev | 09 February 2024, 12:58:06 UTC | Normalized styles | 09 February 2024, 12:58:06 UTC |
0a6ada1 | Boris Sekachev | 09 February 2024, 12:20:56 UTC | Many fixes | 09 February 2024, 12:20:56 UTC |
7bde2c4 | Boris Sekachev | 09 February 2024, 11:29:54 UTC | Upgraded antd | 09 February 2024, 11:29:54 UTC |
8bf8fe5 | Boris Sekachev | 09 February 2024, 11:19:04 UTC | Merge pull request #7468 from opencv/dev-release-2.10.3 Update develop after v2.10.3 | 09 February 2024, 11:19:04 UTC |
eb2dfa8 | cvat-bot[bot] | 09 February 2024, 11:12:10 UTC | Update develop after v2.10.3 | 09 February 2024, 11:12:10 UTC |
f3506d6 | Boris Sekachev | 09 February 2024, 10:27:06 UTC | Updated types | 09 February 2024, 10:27:06 UTC |
3350a94 | Boris Sekachev | 09 February 2024, 10:22:31 UTC | Upgrade react from 16 to 18 | 09 February 2024, 10:22:31 UTC |
73bf676 | cvat-bot[bot] | 09 February 2024, 10:12:43 UTC | Prepare release v2.10.3 | 09 February 2024, 10:12:43 UTC |
b4eed78 | Roman Donchenko | 09 February 2024, 07:22:08 UTC | Reblacken Python code (#7461) Black 24 is upon us, and with it a new stable code style. Reformat all code to prevent CI failures in future PRs. | 09 February 2024, 07:22:08 UTC |
8e6e46a | Boris Sekachev | 08 February 2024, 18:07:23 UTC | Exception event: 'not authentificated' was removed from analytics (#7457) | 08 February 2024, 18:07:23 UTC |
9f517d1 | Boris Sekachev | 08 February 2024, 16:12:50 UTC | Reduced number of requests from client to server (#7446) | 08 February 2024, 16:12:50 UTC |
22d4e04 | Roman Donchenko | 07 February 2024, 07:43:13 UTC | Add an `application_name` PostgreSQL connection parameter (#7275) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> This will let us more easily identify PostgreSQL sessions that come from CVAT. See <https://www.postgresql.org/docs/15/runtime-config-logging.html#GUC-APPLICATION-NAME>. ### 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. --> ```sql SELECT * FROM pg_stat_activity; ``` ### Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. If an item isn't applicable for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 created a changelog fragment~~ <!-- see top comment in CHANGELOG.md --> - ~~[ ] I have updated the documentation accordingly~~ - ~~[ ] I have added tests to cover my changes~~ - ~~[ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning))~~ ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 07 February 2024, 07:43:13 UTC |
dc40be2 | Roman Donchenko | 06 February 2024, 16:34:37 UTC | Bump actions/checkout and actions/setup-node to v4 (#7442) | 06 February 2024, 16:34:37 UTC |
edfafff | Roman Donchenko | 05 February 2024, 15:09:39 UTC | Fix unhandled Redis exception in the /api/server/health/ endpoint (#7417) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> `CustomCacheBackend` does not handle `RedisError`, so if Redis is not responding, the backend will propagate the exception, and the endpoint will crash with a 500 response code. This problem has been fixed upstream in django-health-check 3.18, so just update to the latest version and remove our custom cache backend. The upstream version, unlike ours, doesn't handle `sqlite3.DatabaseError`, but we're not using SQLite for caching anymore, so I don't think it matters. ### 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. --> I checked the endpoint with both working and non-working Redis. ### Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. If an item isn't applicable for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 - [x] I have created a changelog fragment <!-- see top comment in CHANGELOG.md --> - ~~[ ] I have updated the documentation accordingly~~ - ~~[ ] I have added tests to cover my changes~~ - ~~[ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning))~~ ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 05 February 2024, 15:09:39 UTC |
e1ad07c | Boris Sekachev | 05 February 2024, 10:20:54 UTC | Removed extra data from docker context (#7429) | 05 February 2024, 10:20:54 UTC |
1e91dd4 | Boris Sekachev | 05 February 2024, 10:19:20 UTC | Added documentation to open guides automatically (#7440) | 05 February 2024, 10:19:20 UTC |
b7cc562 | Boris Sekachev | 01 February 2024, 22:03:11 UTC | Open annotations guide automatically (#7410) | 01 February 2024, 22:03:11 UTC |
bdd002a | Boris Sekachev | 01 February 2024, 19:52:21 UTC | Stabilized cypress test: issue_2900_creating_more_one_tasks_from_project_per_time.js (#7423) | 01 February 2024, 19:52:21 UTC |
27f8aa7 | Boris Sekachev | 01 February 2024, 11:53:09 UTC | Fixed exception "Cannot read properties of null (reading 'plot')" (#7422) | 01 February 2024, 11:53:09 UTC |
b539802 | Boris Sekachev | 01 February 2024, 11:33:18 UTC | Fixed "Cannot read properties of undefined (reading 'toLowerCase')" (#7421) | 01 February 2024, 11:33:18 UTC |
e4aa63f | Nikita Manovich | 01 February 2024, 09:29:52 UTC | [Snyk] Security upgrade cryptography from 41.0.6 to 42.0.2 (#7419) | 01 February 2024, 09:29:52 UTC |
c794836 | Roman Donchenko | 31 January 2024, 12:53:44 UTC | Strip useless linebreak in the payload of send:exception events (#7407) `traceback.format_exception` adds a `\n` to each element of the resulting list, so the message will always have a pointless `\n` at the end. Removing it makes CSV reports that include the message easier to parse visually, because there's no longer a linebreak in the middle of each line. | 31 January 2024, 12:53:44 UTC |
7a9c1f4 | Andrey Chernov | 31 January 2024, 07:22:38 UTC | Update annotation-with-brush-tool.md (#7413) | 31 January 2024, 07:22:38 UTC |
ed3ddf3 | Roman Donchenko | 31 January 2024, 06:59:03 UTC | Prevent zombie processes from accumulating in the Kvrocks container (#7412) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> I saw several hundreds of zombie processes accumulate in the Kvrocks container in production. This should fix that. See the comment in `docker-compose.yml` for more explanation. Note that as far as I'm aware, Kubernetes does not use healthcheck commands configured in Docker images, so this issue should be irrelevant for Kubernetes deployments. ### 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 for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 - [x] I have created a changelog fragment <!-- see top comment in CHANGELOG.md --> - ~~[ ] I have updated the documentation accordingly~~ - ~~[ ] I have added tests to cover my changes~~ - ~~[ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning))~~ ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 31 January 2024, 06:59:03 UTC |
3db7be6 | Boris Sekachev | 29 January 2024, 07:33:06 UTC | Merge pull request #7402 from opencv/dev-release-2.10.2 Update develop after v2.10.2 | 29 January 2024, 07:33:06 UTC |
a6b37ba | Mariia Acoca | 27 January 2024, 16:45:15 UTC | Subscription management documentation updated (#7393) | 27 January 2024, 16:45:15 UTC |
3992769 | cvat-bot[bot] | 26 January 2024, 18:14:51 UTC | Update develop after v2.10.2 | 26 January 2024, 18:14:51 UTC |
3733a07 | cvat-bot[bot] | 26 January 2024, 13:35:45 UTC | Prepare release v2.10.2 | 26 January 2024, 13:35:45 UTC |
ed9439b | Kirill Lakhov | 26 January 2024, 12:13:55 UTC | Fixed TrackerMIL one frame late (#7399) | 26 January 2024, 12:13:55 UTC |
34bc61e | Kirill Lakhov | 26 January 2024, 09:16:38 UTC | Added test for empty masks issues (#7381) | 26 January 2024, 09:16:38 UTC |
b5e1d19 | Boris Sekachev | 25 January 2024, 16:29:14 UTC | Fixed 3D format for contextual images in documentation (#7390) | 25 January 2024, 16:29:14 UTC |
45c4356 | Roman Donchenko | 24 January 2024, 13:38:16 UTC | Fix excessive memory usage when exporting projects with multiple video tasks (#7374) Currently, the following situation causes the export worker to consume more memory than necessary: * A user exports a project with images included, and * The project contains multiple tasks with video chunks. The main reason for this is that the `image_maker_per_task` dictionary in `CVATProjectDataExtractor.__init__` indirectly references a distinct `FrameProvider` for each task, which in turn, indirectly references an `av.containers.Container` object corresponding to the most recent chunk opened in that task. Initially, none of the chunks are opened, so the memory usage is low. But as Datumaro iterates over each frame, it eventually requests at least one image from each task of the project. This causes the corresponding `FrameProvider` to open a chunk file and keep a handle to it. The only way for a `FrameProvider` to close this chunk file is to open a new chunk when a frame from that chunk is requested. Therefore, each `FrameProvider` keeps at least one chunk open from the moment Datumaro requests the first frame from its task and _until the end of the export_. This manifests in the export worker's memory usage growing and growing as Datumaro goes from task to task. An open chunk consumes whatever Python objects represent it, but more importantly, any C-level buffers allocated by FFmpeg, which can be quite significant. In my testing, the size of the per-chunk memory was on the order of tens of megabytes. An open chunk also takes up a file descriptor. The fix for this is conceptually simple: ensure that only one `FrameProvider` object exists at a time. AFAICS, when a project is exported, all frames from a given task are grouped together, so we shouldn't need multiple tasks' chunks to be open at the same time anyway. I had to restructure the code to make this work, so I took the opportunity to fix a few other things, as well: * The code currently relies on garbage collection of PyAV's `Container` objects to free the resources used by them. Even though `VideoReader.__iter__` uses a `with` block to close the container, the `with` block can only do so if the container is iterated all the way to the end. This doesn't happen when `FrameProvider` uses it, since `FrameProvider` seeks to the needed frame and then stops iterating. I don't have evidence that this causes any issues at the moment, but Python does not guarantee that objects are GC'd promptly, so this could become another source of excessive memory usage. I added cleanup methods (`close`/`unload`/`__exit__`) at several layers of the code to ensure that each chunk is closed as soon as it is no longer needed. * I factored out and merged the code used to generate `dm.Image` objects when exporting projects and jobs/tasks. It's likely possible to merge even more code, but I don't want to expand the scope of the patch too much. * I fixed a seemingly useless optimization in the handling for 3D frames. Specifically, `CVATProjectDataExtractor` performs queries of the form: task.data.images.prefetch_related().get(id=i) The prefetch here looks useless, as only a single object is queried - it wouldn't be any less efficient to just let Django fetch the `Image`'s `related_files` when needed. I rewrote this code to prefetch `related_files` for all images in the task at once instead. | 24 January 2024, 13:38:16 UTC |
4cf45e5 | MicDZ | 23 January 2024, 11:25:14 UTC | Fix a typo. "cvat" service does not exist. It should be "cvat_server". (#7368) Fix a typo. refer to docker-compose.yml | 23 January 2024, 11:25:14 UTC |
8a81868 | Andrey Zhavoronkov | 23 January 2024, 11:19:52 UTC | [Snyk] Security upgrade jinja2 from 3.1.2 to 3.1.3 (#7350) | 23 January 2024, 11:19:52 UTC |
a5a0e77 | dependabot[bot] | 23 January 2024, 11:18:26 UTC | Bump pillow from 10.1.0 to 10.2.0 in /tests/python (#7384) | 23 January 2024, 11:18:26 UTC |
79aaa84 | dependabot[bot] | 23 January 2024, 11:17:18 UTC | Bump pillow from 10.1.0 to 10.2.0 in /utils/dicom_converter (#7383) | 23 January 2024, 11:17:18 UTC |
a5669aa | Boris Sekachev | 19 January 2024, 11:30:29 UTC | Enhanced errors notifications (#7371) | 19 January 2024, 11:30:29 UTC |
209826c | Kirill Lakhov | 18 January 2024, 16:08:02 UTC | Remove empty masks (#7295) | 18 January 2024, 16:08:02 UTC |
f688908 | Boris Sekachev | 18 January 2024, 12:22:11 UTC | Merge pull request #7373 from opencv/dev-release-2.10.1 Update develop after v2.10.1 | 18 January 2024, 12:22:11 UTC |
1d87216 | cvat-bot[bot] | 18 January 2024, 11:10:54 UTC | Update develop after v2.10.1 | 18 January 2024, 11:10:54 UTC |
c21062f | cvat-bot[bot] | 18 January 2024, 10:25:37 UTC | Prepare release v2.10.1 | 18 January 2024, 10:25:37 UTC |
7a1a4b1 | Andrey Zhavoronkov | 18 January 2024, 10:08:45 UTC | Replace keydb with kvrocks (#7339) Resolved #7345 | 18 January 2024, 10:08:45 UTC |
d25b863 | Boris Sekachev | 17 January 2024, 14:58:19 UTC | Fixed context menu for skeleton elements (#7362) | 17 January 2024, 14:58:19 UTC |
0579b00 | Mariia Acoca | 17 January 2024, 14:43:45 UTC | Documentation: Introduction to CVAT (#7229) | 17 January 2024, 14:43:45 UTC |
0433043 | Boris Sekachev | 17 January 2024, 10:32:53 UTC | Added tests for annotations actions (#7358) | 17 January 2024, 10:32:53 UTC |
422dd68 | Kirill Lakhov | 17 January 2024, 07:25:43 UTC | Added test for GT issues (#7357) | 17 January 2024, 07:25:43 UTC |
300146c | Mariia Acoca | 16 January 2024, 13:22:12 UTC | [WIP] invite users to org updated (#7305) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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 for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress for the pull request. If you're unsure about any of these, don't hesitate to ask. We're here to help! --> - [ ] I submit my changes into the `develop` branch - [ ] I have created a changelog fragment <!-- see top comment in CHANGELOG.md --> - [ ] I have updated the documentation accordingly - [ ] I have added tests to cover my changes - [ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning)) ### License - [ ] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. --------- Co-authored-by: Kirill Lakhov <kirill.9992@gmail.com> | 16 January 2024, 13:22:12 UTC |
906260c | Maria Khrustaleva | 15 January 2024, 13:04:41 UTC | Fix export of resources to cloud storage (#7317) <!-- Raise an issue to propose your change (https://github.com/opencv/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 guide](https://opencv.github.io/cvat/docs/contributing/). --> <!-- 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. --> In the previous implementation logic to upload created files to cloud storage was in the code that processes requests. This resulted in responses with 504 status when uploading a file took longer than the request timeout. This PR fixes the described problem. ### 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 for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress 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 - [x] I have created a changelog fragment <!-- see top comment in CHANGELOG.md --> - [ ] I have updated the documentation accordingly - [ ] I have added tests to cover my changes - [ ] I have linked related issues (see [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/opencv/cvat/tree/develop/cvat-canvas#versioning), [cvat-core](https://github.com/opencv/cvat/tree/develop/cvat-core#versioning), [cvat-data](https://github.com/opencv/cvat/tree/develop/cvat-data#versioning) and [cvat-ui](https://github.com/opencv/cvat/tree/develop/cvat-ui#versioning)) ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/opencv/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. | 15 January 2024, 13:04:41 UTC |
c02580c | dependabot[bot] | 15 January 2024, 08:24:45 UTC | Bump follow-redirects from 1.15.3 to 1.15.4 (#7342) | 15 January 2024, 08:24:45 UTC |
8c2db1d | Andrey Zhavoronkov | 10 January 2024, 13:47:50 UTC | Merge pull request #7341 from opencv/dev-release-2.10.0 Update develop after v2.10.0 | 10 January 2024, 13:47:50 UTC |
a684c0c | cvat-bot[bot] | 10 January 2024, 13:06:45 UTC | Update develop after v2.10.0 | 10 January 2024, 13:06:45 UTC |
c36ec24 | cvat-bot[bot] | 10 January 2024, 11:40:22 UTC | Prepare release v2.10.0 | 10 January 2024, 11:40:22 UTC |
cfbad35 | Boris Sekachev | 09 January 2024, 14:14:28 UTC | Fixed CI badge URL (#7337) | 09 January 2024, 14:14:28 UTC |
40dc2a9 | Maria Khrustaleva | 09 January 2024, 13:37:13 UTC | Fix updating Azure connection string && increase credentials max_length (#7336) | 09 January 2024, 13:37:13 UTC |