Skip to content

Latest commit

 

History

History
413 lines (296 loc) · 37.1 KB

CHANGELOG.md

File metadata and controls

413 lines (296 loc) · 37.1 KB

Changelog

v1.5.0 (2024-09-03)

Full Changelog

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)

Full Changelog

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)

Full Changelog

Defects:

  • Pagination performance does not meet requirements #352 [s.high]

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)

Full Changelog

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)

Full Changelog

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)

Full Changelog

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)

Full Changelog

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:

  • observational end-point returns collections #202 [s.high]

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)

Full Changelog

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)

Full Changelog

v1.1.9 (2022-09-28)

Full Changelog

v1.1.2 (2022-09-27)

Full Changelog

v1.1.1 (2022-09-26)

Full Changelog

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)

Full Changelog

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)

Full Changelog

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)

Full Changelog

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)

Full Changelog

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)

Full Changelog

v0.5.0 (2022-03-25)

Full Changelog

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 to registry #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