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

Introduce "collection" projects for better usage of hierarchical view #2041 #658

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

rkg-mm
Copy link
Contributor

@rkg-mm rkg-mm commented Dec 2, 2023

Description

This change introduces UI logic for "collection projects". Those are basically projects used as parent for other projects that shall not hold any own component or vulnerability data, but instead get calculated from child projects using different configurable aggregation logics.

  • Project Details/create dialog allow selection of different collection logics (all direct children, direct children with custom tag, only highest SemVer child)
  • Collection projects are visually marked in project list and get shown aggregated metrics. The used calculation logic is displayed on mouseover of calc icon
  • Project page hides all unrelevant tabs, instead shows a new tab with all child projects. For this the project list is made reusable
  • Additionally:
    ** Fixes some routing bugs

Required Backend PR: DependencyTrack/dependency-track#3258

Addressed Issue

DependencyTrack/dependency-track#2041
DependencyTrack/dependency-track#657
DependencyTrack/dependency-track#2410
#641 (routing Bug)

Additional Details

image

image

image

image

Checklist

@123Haynes
Copy link

123Haynes commented Mar 12, 2024

This is a feature I would love to see in dependencytrack. Would certainly make it easier to structure projects and see the issues at a glance.

@nscuro Is there anything left todo to be able to merge this pr and the corresponding backend pr?
It looks like this feature was finished month ago, but is just kinda floating around without getting merged.
Is there anything people can help with to get this over the finish line?

…ject list and mark collection projects visually.

Signed-off-by: Ralf King <rkg@mm-software.com>
* Made project list reusable independent from the project list view
* Reused project list to show children of collection projects in project view
* Hide tabs without function in collection projects, show child projects instead
* visually mark collection projects in project header and explain logic used in tooltip

Signed-off-by: Ralf King <rkg@mm-software.com>
@rkg-mm rkg-mm force-pushed the 2041-introduce-collection-projects branch from 9c6d94c to c490bf6 Compare April 23, 2024 00:46
@rkg-mm
Copy link
Contributor Author

rkg-mm commented Apr 23, 2024

Warning: I fixed a lot of conflicts and did not have time to test it. Will try to find time tomorrow to test it. Furthermore I threw out my bugfix for the double loading logic as @nscuro already did another fix for this

@rkg-mm
Copy link
Contributor Author

rkg-mm commented Apr 23, 2024

[deleted - belonged to backend]

@rkg-mm
Copy link
Contributor Author

rkg-mm commented Apr 23, 2024

Should be good to go :)
[closed by accident.. wrong button - reopened :D ]

@rkg-mm rkg-mm closed this Apr 23, 2024
@rkg-mm rkg-mm reopened this Apr 23, 2024
@rkg-mm
Copy link
Contributor Author

rkg-mm commented Apr 23, 2024

@nscuro do I need to do something for the failed checks? the i18n issues don't seem to be from my changes, and the other Linter I don't see where I can find the actual output of whats wrong, only the files it complains about.

@nscuro nscuro modified the milestones: 4.11, 4.12 May 7, 2024
@nscuro
Copy link
Member

nscuro commented May 23, 2024

Just gave this a spin. I didn't test super extensively yet but wanted to note it down before I forget.

I created a collection project and uploaded about 50 or so BOMs to it. I selected collection logic Direct children with tag.

Looking at the list of projects, either in the Projects or Project -> Collection projects view, show no indication which project counts towards the metrics. I am seeing the metrics of the collection project, but I have no idea how they came to be.

Looking at projects in the list doesn't give a hint either. This might be more of a problem once you have more than 10 projects, so they don't all fit on a single page anymore.
image

I think some kind of visual cue is needed to make it clear which projects are counted towards the collection's metrics.

With only the Aggregate direct children option, this would not be a problem. However once we limit aggregation to a subset, we need to make it visible what subset that is, somehow.

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.

None yet

3 participants