@cumulus/errors
Package that exports error classes for use in Cumulus workflow code
Usage
npm install @cumulus/errors
About Cumulus
Cumulus is a cloud-based data ingest, archive, distribution and management prototype for NASA's future Earth science data streams.
Cumulus Documentation
Contributing
To make a contribution, please see our contributing guidelines.
[v18.1.0] 2023-10-25
MIGRATION notes
Rules API Endpoint Versioning
As part of the work on CUMULUS-3095, we have added a required header for the
rules PUT/PATCH endpoints -- to ensure that older clients/utilities do not
unexpectedly make destructive use of those endpoints, a validation check of a
header value against supported versions has been implemented.
Moving forward, if a breaking change is made to an existing endpoint that
requires user updates, as part of that update we will set the current version of
the core API and require a header that confirms the client is compatible with
the version required or greater.
In this instance, the rules PUT/PATCH
endpoints will require a Cumulus-API-Version
value of at least 2
.
curl --request PUT https://example.com/rules/repeat_test\
--header 'Cumulus-API-Version: 2'\
--header 'Content-Type: application/json'\
--header 'Authorization: Bearer ReplaceWithToken'\
--data ...
Users/clients that do not make use of these endpoints will not be impacted.
Breaking Changes
- CUMULUS-3427
- Changed the naming conventions for memory size and timeouts configuration to simply the lambda name
Notable Changes
- CUMULUS-3095
- Added
PATCH
rules endpoint to update rule which works as the existing PUT
endpoint. - Updated
PUT
rules endpoint to replace rule.
Added
- CUMULUS-3218
- Added optional
maxDownloadTime
field to provider
schema - Added
max_download_time
column to PostgreSQL providers
table - Updated
@cumulus/ingest/lock
to check expired locks based on provider.maxDownloadTime
Changed
- CUMULUS-3095
- Updated
@cumulus/api-client/rules
to havereplaceRule
and updateRule
methods. - Updated mapping for rule Elasticsearch records to prevent dynamic field for keys under
meta
and payload
, and fixed rule
field mapping.
- CUMULUS-3351
- Updated
constructOnlineAccessUrls()
to group CMR online access URLs by link type.
- CUMULUS-3377
- Added configuration option to cumulus-tf/terraform.tfvars to include sns:Subscribe access policy for
executions, granules, collections, and PDRs report topics.
- CUMULUS-3392
- Modify cloudwatch rule by deleting
custom
- CUMULUS-3434
- Updated
@cumulus/orca-recovery-adapter
task to output both input granules and recovery output. - Updated
example/cumulus-tf/orca.tf
to use v9.0.0.
Fixed
- CUMULUS-3095
- Added back
rule
schema validation which is missing after RDS phase 3. - Fixed a bug for creating rule with tags.
- CUMULUS-3286
- Fixed
@cumulus/cmrjs/cmr-utils/getGranuleTemporalInfo
and @cumulus/message/Granules/getGranuleCmrTemporalInfo
to handle non-existing cmr file. - Updated mapping for granule and deletedgranule Elasticsearch records to prevent dynamic field for keys under
queryFields
. - Updated mapping for collection Elasticsearch records to prevent dynamic field for keys under
meta
.
- CUMULUS-3393
- Fixed
PUT
collection endpoint to update collection configuration in S3.
- CUMULUS-3427
- Fixed issue where some lambda and task memory sizes and timeouts were not configurable
- @aws-sdk upgrade
- Fixed TS compilation error on aws-client package caused by @aws-sdk/client-dynamodb 3.433.0 upgrade