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

[feature] "FindSoftware" implementation for KeyValue #1706

Closed
pxp928 opened this issue Feb 13, 2024 · 1 comment · Fixed by #1711
Closed

[feature] "FindSoftware" implementation for KeyValue #1706

pxp928 opened this issue Feb 13, 2024 · 1 comment · Fixed by #1711
Assignees
Labels
enhancement New feature or request

Comments

@pxp928
Copy link
Collaborator

pxp928 commented Feb 13, 2024

Is your feature request related to a problem? Please describe.
Currently FindSoftware has been implemented for the arango backend and the ENT backend but not for the Keyvalue backend.

This needs to be completed such that the demo can utilize this feature.

Describe the solution you'd like
Implementation on the keyvalue backend that does a "contains" search on pkgName, sourceName and artifact and return all that match.

Additional context
An example would look like the following (in graphQL playground):

query FindCurl {
  findSoftware(searchText: "curl") {
    __typename
    ... on Package {
      type
      namespaces {
        namespace
        names {
          name
        }
      }
    }
  }
}

This yields succinct results of just 27 relevant curl software - both packages and libraries, from debian, alpine, pycurl, rpm/amzn, etc.

{
  "data": {
    "findSoftware": [
      {
        "__typename": "Package",
        "type": "alpine",
        "namespaces": [
          {
            "namespace": "",
            "names": [
              {
                "name": "libcurl"
              }
            ]
          }
        ]
      },
      {
        "__typename": "Package",
        "type": "alpine",
        "namespaces": [
          {
            "namespace": "",
            "names": [
              {
                "name": "curl"
              }
            ]
          }
        ]
      },
     …TRUNCATED
      {
        "__typename": "Package",
        "type": "deb",
        "namespaces": [
          {
            "namespace": "ubuntu",
            "names": [
              {
                "name": "libcurl4-openssl-dev"
              }
            ]
          }
        ]
      }
    ]
  }
}
@pxp928 pxp928 added the enhancement New feature or request label Feb 13, 2024
@nathannaveen
Copy link
Contributor

I would like to work on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants