v1.5.0 (2024-09-03)
Requirements:
- As a user, I want to get a description of the API when I request it from its base URL in a web browser #516
- As a user, I want to get all the products for a specific PDS4 product class #511
- As a user, I want to know what are all the possible properties I can search against (
/properties
) #506 - As a user, I want to receive metadata only in the API responses (no binary blobs) #497
- As a user, I want to filter the products by any available PDS4 property by combining comparison operators using logical operators #495
- As a user, I want to filter the products by any available PDS4 property using comparison operators #494
- As a user, I want to apply an additional query filter (
q=
) to the/classes/{class}
result set #493 - As a user, I want to apply an additional query filter (
q=
) to the/products/{identifier}/member-of/member-of
result set #492 - As a user, I want to apply an additional query filter (
q=
) to the/products/{identifier}/member-of
result set #491 - As a user, I want to apply an additional query filter (
q=
) to members of the members of an aggregate product (/products/{identifier}/members/members
) #490 - As a user, by default, I want to search for the latest versions of all products on the
/classes/{class}
endpoint unless explicitly requested #488 - As a user, by default, I want to search only for the latest versions of all products on the
/products/{identifier}/member-of/member-of
endpoint #487 - As a user, by default, I want to search for only the latest versions of all products on the
/products/{identifier}/member-of
endpoint #486 - As a user, by default, I want to search for only the latest versions of all products on the
/products/{identifier}/members/members
endpoint #485 - As a user, by default, I want to search for only the latest versions of all products on the
/products/{identifier}/members
endpoint #484 - As a user, I want to filter the products by any available PDS4 property using a combination of comparison, logical, and precedence grouping operators #469
- As a user, I want to get all product versions associated to one lid #436
- As a user, by default, I want to resolve the latest version of a product when given a product logical_identifier (LID) (
/products/{logical_identifier}
endpoint) #435 - As a user, I want to get a product description given a lidvid #434
- As a user, I want to apply an additional query filter (
q=
) to members of an aggregate product (/products/{identifier}/members
) #298 - As a user, I want to be able to paginate over any number of results returned from a query. #176
- As a user, by default, I want to search only for the latest versions of all products on the
/products
endpoint #426
Defects:
- Investigate sporadic 500 and 504 errors with registry API #431 [s.medium]
- Insufficient scrubbing of user input values prior to logging #388 [s.medium]
- Cleanup logging of keys #387 [s.medium]
Other closed issues:
- Refactor common RegistrySearchRequestBuilder dot-chains into applyMultipleProductsDefaults() #515
- Manage renewal of AWS credentials #514
- Investigate why the API is slow on MCP #510 [s.high]
- Complete deployment procedure for the SAs #509
- Partial implementation of the opensearch serverless queries #470
- ECS Roles for Registry-API #429
- Demo partial implementation on AWS #423
- Demo registry-api with new opensearchclient #422
- Add pds-deep-registry-archive execution to branch testing #412
- Add github action on dev branch push, running registry integration test with docker compose #301
v1.4.1 (2024-02-29)
Defects:
- members query return 500 when members do not exist in the registry or alternate_id does not exists #411 [s.critical]
- Broken tests per pagination upgrade #397 #404 [s.high]
- /properties always returns json format #339 [s.medium]
v1.4.0 (2024-01-23)
Defects:
Other closed issues:
- Have the inner list shown as string with | delimiter for singular results #381
- Investigate and fix intermittent Registry-API Errors #378
- registry-api needs to use the new ancestry fields #353 [s.medium]
v1.3.1 (2023-10-10)
Requirements:
- As a user, I want my API request to execute successfully even when the registry contains corrupted documents #361
- As a PDS operator, I want to know the health of the registry API service #336
Defects:
- /products API endpoint is broken #379
- text/csv format is impacted by the repairkit script (apparently) #375 [s.high]
Accept:*
response not defaulting to valid application/json #356 [s.high]- api does not return information that OpenSearch says is public #355 [s.high]
- Request for json+pds4 response fails in production #349 [s.high]
- API falsely reports 10000 hits for hits>10000 #343 [s.medium]
- members of a bundle does not work on new test dataset #341 [s.high]
- the request url in the error message does not make sense #262 [s.low]
Other closed issues:
- Create Cloudwatch alarm when Registry API throws an error #366
- Investigate usage of registry api #364
- Update the aws_lb_target_group to use the new healthcheck endpoint #347
- Design Logging and Monitoring Approach for Nucleus #342
- Investigate how Google DataSet Search can help with the Search #338
- Move terraform and docker folder to the root of the repository #320
- Add parent collection identifier to product metadata #319
- Add parent bundle identifier to collection metadata #318
- Add registry/docker compose integration tests to github action on dev branches #269
test_new_release (2023-06-06)
Defects:
- PdsVid erroneously fails major-version of zero during validation #334
- Product summary object has an incomplete "properties" set #277 [s.medium]
Other closed issues:
- Make the registry-api 1.2.0 deployment work on gamma #330
- Remove the 'products' in the /classes #326
- Remove ./support tree from repository #321
- As a EN Operator, I want to the registry API to be fault tolerant, analysis #297
- Update staging and production Registry APIs to increase window limit #291
v1.2.0 (2023-04-11)
Requirements:
- As a user, I want to see available query params in the swagger documentation #249
- Suggest: Return Content-Type application/json by default #248
- As a user, I want to search by any metadata attribute #282
- As a user, I want to know the members of a bundle product #223 [s.high]
- As a user, I want to get application/json response format by default if I request an API url in my browser #439
- As a user, I want to query only the latest versions of products unless explicitly requested #441
- As a user, I want to be able to access the Search API Swagger interface from pds.nasa.gov #442
- the default proposed mime type in swagger-ui.html should be 'application/json' #88 [s.low]
Defects:
- Registry API won't deploy with Java 17 #314
- API not returning value for NAIF bundles #305 [s.high]
- API crashes with JVM memory error on data sets with very large labels (>1MB) #296 [s.medium]
- Requests with Accept:application/vnd.nasa.gds.pds4+json fail for products with no ops:Label_File_Info/ops:file_name #293 [s.high]
- Project does not successfully build/run without global existence of some dependencies #279
- product's members does not work on a collection #268 [s.high]
- The members of a bundle can not be requested #261 [s.high]
- api does not return 400 error when q parameter value cannot be parsed #260 [s.medium]
- not found lidvid does not return 404 error #258 [s.medium]
- requests with bad
q=
syntax should return 400 error #241 [s.medium] - Pagination not working as expected with /collections/{identifier}/products #240 [s.high]
- registry-api does not respect VID when a LIDVID is used as an id, instead returns latest version #234 [s.high]
- /classes/collections/<lidvid>/members (and deprecated equivalent) hangs #231 [s.high]
- Keyword search does not work on registry-api deployed on pds.nasa.gov #227 [s.medium]
- registry-api does not return latest version of product metadata when multiple versions are harvested #224 [s.high]
- swaggger ui error in production #211 [s.high]
- lidvid not found raises 500 error #207 [s.high]
- When q="" the returned status is 500 instead of 400 #206 [s.low]
- /classes endpoint does not work in a browser #200 [s.medium]
- documents / members returns an error #196 [s.high]
- version number are treated as floats #191 [s.medium]
- *Critical OSS Vulnerability:* [email protected] #148 [s.low]
- JSON response is using HTTP in href references #145 [s.low]
- Fix vulnerabilities raised by sonalift #121 [s.high]
Other closed issues:
- Remove provenance --reset option #310
- Establish consistency between how Provenance and the API select (filter) documents by archive_status #308
- If >1 products with the same LIDVID are registered by different nodes, we should respond with one of them #306
- Update Java params and Docker image to expand JVM memory beyond 50% #300
- Search criteria not producing expected matches #287
- Format the source code in google style #272
- Add --reset flag to scheduled provenance invocation #265
- Incorporate misc changes loosely-related to #252 #255
- organize the swagger-ui section in a better way #245
- Move scheduled execution of provenance.py to an AWS-based solution #232
- Investigate if all fields are searchable #281
- Establish parity between application.properties and application.properties.aws files #220
- migrate to jdk 17 #218
- Make sure the documentation is clear on limit=0 instead of summary-only #198
v1.1.12 (2022-12-22)
Requirements:
- As a user, I want the API to support redundant
/
in the url #212 - As a registry-tool/registry-user I want to ensure leading multiple forward-slashes in request paths are stripped out #208
Defects:
Other closed issues:
- Error when label is missing
pds:Time_Coordinates/pds:start_date_time
attribute #213 [s.critical]
v1.1.11 (2022-12-14)
Requirements:
- As a user, I want an end-point of each of the PDS4 IM classes of products #461
Defects:
- /all suffix returns a message which I don't understand #190 [s.high]
- Stable Roundup can no longer trigger Imaging workflow #188 [s.medium]
Other closed issues:
- Adapt code to new harvest behavior where all source properties in OpenSearch are arrays #203
- Add CORS header to registry API deployment #189
v1.1.10 (2022-09-29)
v1.1.9 (2022-09-28)
v1.1.2 (2022-09-27)
v1.1.1 (2022-09-26)
Defects:
- Sub-project should inherit parent project version in order to be able to automate versioning using mvn commands #182 [s.low]
v1.1.0 (2022-09-16)
Requirements:
- As a user, I want to query for products from any PDS4 product type #12
Defects:
- limit=0 is not providing list of properties (fka summary-only) #179 [s.medium]
- The /products, /bundles & /collections endpoints are missing from the API #178 [s.high]
- Swagger-UI does not display properly out-of-the-box #174
fields
query parameter does not work consistently across all response formats #172 [s.high]- summary does not contain the property values #171 [s.high]
- summary-only does not work as expected #167 [s.medium]
- summary-only does not work on products of a collection #152 [s.high]
- bundle of a product does not return result #150 [s.medium]
- swagger-ui does not show the expected version #149 [s.medium]
- wildcard search in query parameter returning odd results #134 [s.high]
- /bundles/{identifier}/all does not return any results #118 [s.medium]
Other closed issues:
- Provide POC of multi-tenant registry #169
- Fix
like
functionality and document in the user's guide #159
v1.0.2 (2022-07-27)
Requirements:
- As a user, I want to have an administrator contact when I am getting an error 500 from the server #109
Improvements:
- Add back the Dockerfile used for the AWS/Fargate deployment #140
- Refactor API endpoints for simpler architecture/design/implementation to maintain/extend #131
- Support override of application.properties for AWS Docker image #117
Defects:
- Cloudfront function api_uri_rewrite does not check for empty command when parsing api URI #164
- fields parameter does not return values if more than one value is requested for CSV format #162 [s.high]
- / is not returning swagger API doc #141 [s.medium]
Other closed issues:
- apply bug fix on stable release #160
- add ops:Tracking_Meta/ops:archive_status to meta section of API response #101
v1.0.1 (2022-06-09)
Requirements:
- As an API caller(user) I want to specify fields for endpoints given a lidvid #80
Improvements:
- [SECURITY] Upgrade jackson dependencies to remove vulnerability #122 [s.low]
- Remove the home controller from the swagger-ui #108
- lidvid resolution need to use _search instead of _doc elasticsearch requests #105
Defects:
- [SECURITY] Log4j vulnerability in lexer #137 [s.critical]
- Registry API Service docker container fails to start with error: Unable to access jarfile /usr/local/registry-api-service/registry-api-service.jar #128 [s.high]
- Update all endpoints to only allow access to public data. #113 [s.high]
- documentation does not match behavior #106 [s.medium]
- LID -> LIDVID conversion not consistent in registry-api #79 [s.low]
Other closed issues:
- Bump search version to 1.0 #143
v1.0.0 (2022-04-19)
Requirements:
- As a user, I want to see the version of the API specification in the URL of the service #8
Defects:
- Invalid or corrupted registry-api-service.jar file in registry-api-service docker image #114 [s.high]
Other closed issues:
- Update download repository in Registry API Service dockerfiles #115
- Upgrade to OpenSearch java client #3
v0.5.1 (2022-03-25)
v0.5.0 (2022-03-25)
Requirements:
- As a user, I want to receive error messages when an invalid request is submitted to the API #443
- As a user, I want the API response media types to be compliant with RFC 6838 #464
- As a user, I want to see the version of the API specification in the URL of the service #59
- As a user, I want to get a key-value-pair JSON response #444
- As a user, I want to receive a XML response that contains the PDS4 label metadata in XML format (application/vnd.nasa.pds.pds4+xml) #440
- As an API user, I want a CSV response format option #445
- As a user, I want to clearly see which formats are accepted by the API when a 406 error is raised #446
- As an API user, I want to explicitly request the latest version of a product #448
- As a API manager, I want to restrict access to registered products that should not be publicly accessible #466
- As an API user, I want to know how long a request took to complete #463
- As a user, I want to receive a JSON response that contains the PDS4 label metadata in JSON format (application/vnd.nasa.pds.pds4+json) #450
- As an API user, I want to be able to use the API for free text search #460
- As an API user, I want to get the latest version of a product, by default #449
- As a user, I want to query for all versions of a product #438
- As a user, I want to have a complete default fields (for now at least) #155
- As a user, I want the end-point /api to redirect to the API documentation #63
- As a user, I want the /products end point to work for any class of products #64
- As a user, I want specific end points for products which are not collections or bundles #65
- As a user, I want to know why my query syntax is invalid #66
- As an operator, I want to have a wrapper script for starting up the API service #67
- As an API user, I want to search using URL parameters #462
- As a developer, I never want the label blob to be returned #467
- As an API user, I want to handle long-running queries that take >10 seconds. #68
- As an API user, I want an average query response time of 1 second for q=* queries #69
- As an API user, I want to specify whether I get the latest or all versions of a product #447
- As an API user, I want to search by a temporal range as an ISO-8601 time interval. #465
- As an API user, I want to get an XML response #456
- As an API user, I want to get only the fields I explicitly requested #459
- As a user, when I request specific fields I want to get records which have at least one of these fields #455
- As an API user, I want to know the Bundle for a given Collection. #452
- As an API user, I want to know the Collection(s) for a given Product. #451
- As an API user, I want to know the Bundle for a given Product. #454
- As an API user, I want to know the Product(s) that belong to a given Bundle. #453
- As an API user, I want to know the children and ancestors of bundle, collections, and products #458
- As an API user, I want to perform a search using wildcards #457
Improvements:
- add ops:Tracking_Meta/ops:node_name and ops:Tracking_Meta/ops:harvest_date_time to meta section of API response #102
- Rename
engineering
package naming toregistry
#10 - implement freetext search #70
- implement the start/limit efficiently #71
- Add list of available fields in response format #55
- As a user of the API, I want to have an homogeneous way of getting error or status for long requests or requests longer than supported by a synchronous web API. #56
Defects:
- Content type pds4+xml does not namespace tags in <pds_api:meta> with pds_api #93
- Fix unstable integration build failure #89 [s.medium]
- Service using JSON blob in pds4+xml response when it should use ops blob #81 [s.medium]
- blob/json_blob should not be included in default response #73 [s.high]
- Improvements to branch pds-api-125 #18 [s.medium]
- CICD did not publish the jar on artifactory #2 [s.medium]
- AWS cost analysis tag is not 'Alpha' but instead 'Alfa' #5 [s.high]
- parsing right hand side of operator does not behave as desired #57 [s.medium]
- parsing of string does not succeed #58
Other closed issues:
- Refactor meta section of pds4+xml response to use ops namespace #85
- Refactor meta section of pds4+json response to use ops namespace #84
- Update API to only return results where archive status in (archived, certified) #78
- Fix code scanning alert - Failure to use HTTPS or SFTP URL in Maven artifact upload/download #74
- As a developer, I want to update in a single place the list of supported MIME types #9
- add creation of routing rule to terraform script #7
- Revert ES High Level Java API version 7.13.3 #6
- As a developer, I want to update in a single place the list of supported MIME types #60
* This Changelog was automatically generated by github_changelog_generator