DependencyTrack / DependencyTrack/dependency-track

Implement Search/Filtering on per-Column Basis

Open
#313 0 comments 0 reactions 0 assignees View on GitHub
enhancement p2
Dominant language
Java
Stars
4.2k
Forks
811
Avg merge
8h 39m
Merged PRs (30d)
237

Description

### Issue Type:
- [ ] defect report
- [X] enhancement request

Currently (in v3.4.0), the search/filter function on (say) the "Components" screen operates on just a single field. ie, in Components it only filter by name (eg Maven artifactId).

It would be very useful if filtering could instead be performed on a per-field basis. For Components:

* Name
* Version
* Group
* License
* Vulnerabilities (covered by separate enhancements such as #146)

...with implementation looking like this:

![component-filtering](https://user-images.githubusercontent.com/4938718/55750711-c9663600-5a3b-11e9-9b66-28142a405be8.jpg)

In this example, the existing search for "elasticsearch" returns 79 components (actually, 86 when I checked again just now!). If it were possible to filter **Name** by 'elasticsearch' and **Group** by 'org', then the number of components displayed would be reduced in this example to just 5.

Filtering by version would allow a check for the presence of SNAPSHOT versions, or allow a search for a specific version of a component.

Being able to filter the license column would allow filtering by (say) 'gpl' or 'afrero'.

### Environment:

- Dependency-Track Version: 3.4.0

Contributor guide

Open the contributing guide

Research direction

Start with the Components screen's existing name search and the proposed filtering screenshot; no source files or tests are named. Completion means Name, Version, Group and License filters can narrow results together, including the combined Name/Group example. Read #146 for the separately scoped vulnerability filtering, and confirm this long-inactive request still applies before starting.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
frontend, search
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
44/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.