All new code requires tests to ensure against regressions.
However, if your PR contains zero code changes, feel free to select the checkmark below to indicate so.
[X] Have you ran tests against this code?
[ ] This PR contains zero code changes.
Description of the Change
As referenced in #206 we discussed how to allow users to search tags of packages, including tags that exist only on this platform.
In my reply there I detail several steps that would be needed to begin to support this kind functionality.
With the first step possible being one that enables the generic searching of details within the package.jsons keywords array at all. Which is exactly what this PR does.
Although unfortunately this PR doesn't support searching this field just yet, it will match with any exact matches just fine.
This new functionality is exposed via the query parameter tags on the following endpoints:
GET /api/packages/search
GET /api/packages
This will allow exact matches to be found for any existing packages data in the keywords array from the package.json. An example request would look like:
Requirements
Filling out the template is required.
All new code requires tests to ensure against regressions.
[X] Have you ran tests against this code?
[ ] This PR contains zero code changes.
Description of the Change
As referenced in #206 we discussed how to allow users to search tags of packages, including tags that exist only on this platform.
In my reply there I detail several steps that would be needed to begin to support this kind functionality.
With the first step possible being one that enables the generic searching of details within the
package.json
skeywords
array at all. Which is exactly what this PR does.Although unfortunately this PR doesn't support searching this field just yet, it will match with any exact matches just fine.
This new functionality is exposed via the query parameter
tags
on the following endpoints:/api/packages/search
/api/packages
This will allow exact matches to be found for any existing packages data in the
keywords
array from thepackage.json
. An example request would look like:https://web.pulsar-edit.dev/packages?tags=es6
https://web.pulsar-edit.dev/packages?tags=es6&q=language