Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v2.29.0 #9080

Merged
merged 7 commits into from
Feb 10, 2025
Merged

Release v2.29.0 #9080

merged 7 commits into from
Feb 10, 2025

Conversation

cvat-bot[bot]
Copy link
Contributor

@cvat-bot cvat-bot bot commented Feb 10, 2025

Added

Changed

Fixed

cvat-bot bot and others added 7 commits February 6, 2025 07:18
Currently, the default is `unknown`, but allowing `unknown` as a
function label type value creates some complications.

* The sets of allowed label types of a task and of a function are not
the same, so we have to use different enums to represent them.

* `any` and `unknown` have similar meanings, and it's not clear what the
difference between them is unless you search the code (AFAIK it's not
documented anywhere).

The sole benefit of having a separate `unknown` label type seems to be
that function labels of type `any` are only allowed to be mapped to task
labels of type `any`, while function labels of type `unknown` can be
mapped to task labels of any type. But it doesn't seem like a useful
distinction. Functions with both `unknown` and `any` label types can
produce any shape types, so if we allow one of them, it makes sense to
also allow the other.

In addition, functions that can produce _multiple_ shape types for a
single label are probably going to be rare, so I think it's reasonable
to assume that a function with an `any`-typed label will still produce a
single shape type and therefore can be mapped to a label with a specific
type (although the user is responsible for ensuring that the types
actually match).

To sum up, I don't think the additional complexity introduced by the
`unknown` type is worth it. So let's remove it and use `any` instead.

This PR keeps some `unknown`-related logic in the UI, since there's some
code in the Enterprise backend that also uses `unknown` as a label type.
If this patch is accepted, I'll replace those uses with `any` too, then
go back and remove the remaining logic here.
If a task or a job contains deleted frames that contain track keyframes,
these keyframes should be excluded from the interpolation. However, in
jobs having specific frames included (e.g. GT jobs), deleted frames
should not be confused with included frames during track interpolation.
Deleted frames should affect existing shapes in tracks, while included
frames should only filter the resulting annotations after interpolation.
This PR implements this approach.
…9035)

This will enable more accurate label type information in the function
API, which is used in a few places (for example, in the "From model"
feature available when configuring labels for a task).
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
12.8% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@codecov-commenter
Copy link

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 73.91%. Comparing base (1235c2c) to head (eaa30e4).
Report is 46 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #9080      +/-   ##
==========================================
+ Coverage   73.75%   73.91%   +0.15%     
==========================================
  Files         428      428              
  Lines       44514    44530      +16     
  Branches     3881     3881              
==========================================
+ Hits        32830    32913      +83     
+ Misses      11684    11617      -67     
Components Coverage Δ
cvat-ui 77.43% <ø> (-0.04%) ⬇️
cvat-server 71.00% <100.00%> (+0.32%) ⬆️

@cvat-bot cvat-bot bot merged commit 0567afa into master Feb 10, 2025
30 of 31 checks passed
@cvat-bot cvat-bot bot deleted the release-2.29.0 branch February 10, 2025 12:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants