All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- CUMULUS-3838
- remove support for python38
- update to cumulus-message-adapter-python 2.3.0
- CUMULUS-3270
- Update to python 3.10
- Update boto3 to 1.26.90
- Update nosetests to nose2
- CUMULUS-3276
- Update CircleCI config to build, test, and deploy on a Python 3.8 container
1.1.0 - 2023-02-08
- CUMULUS-3189
- Update Cumulus Message Adapter python dependency to ~2.1.0
1.0.0 - 1/4/22
-
CUMULUS-2751
- Update Cumulus Message Adapter dependency to ~2.0.0
- This is a breaking change as the underlying behavior of the message adapter has changed See Cumulus Message Adapter release notes for more information. This update requires an update of all Core tasks to use CMA v2.0.0 for message consistency reasons
- Update boto3 dependency to ~1.18.40
- Update Cumulus Message Adapter dependency to ~2.0.0
- Remove
public-read
ACL from S3 object uploads to comply with NGAP access requirements. - Update minimum dependency versions:
- boto3: 1.4 -> 1.12.47
- dicttoxml: 1.7 -> 1.7.4
- cumulus-message-adapter-python: 1.2.0. -> 1.2.1
- Update minimum dev-dependency versions:
- nose: 1.3 -> 1.3.7
- coverage: 4.3 -> 5.5
- nose-timer: 0.6 -> 1.0.1
- testfixtures: 4.13 -> 6.17.1
- mock: 1.3 -> 4.0.3
- CUMULUS-1799
- Update cumulus-process-py requirements to CMA 1.2.0
- Remove python 2 support
- Update package to use CMA-py 1.1.x series.
Please note that CMA-python utilizes either CMA 1.0.x or 1.1.x series.
If you wish to continue using the pre 1.1.x series CMA, you will need to explicitly pin it in your project environment if you are pulling the CMA from pypi.
- The cumulus-process-py no longer assumes the structure of input and config given to a processing sublcass. These assumptions have to be added in the
__init__
section of the subclass (see example). - All methods that have specific assumptions about the structure of the Cumulus message are deprecated. Subclasses should implement these methods in the subclass if they are needed
- Some of the deprecated methods are moved to a new helpers modules can be used by importing them directly from that module
- Add deprecation warning to the followings methods of the Process class (these methods will be removed in v0.8.0)
- Add example folder with an example implementation of a Process sublcass
- Add localstack to tests
- Simplify the structure of Process class to support CUMULUS-456
clean_all
method now removes the whole temp folder at the end of the process (this solves the problem of lambda functions running out of temporary storage)- CUMULUS-456 Use the fileStagingDir to create the URL paths and if none exists, use url_path (this is added to deprecation methods)
- CUMULUS-477 Updates to use the new bucket structure where each bucket is no longer a string, but an object with name and type (this is added to deprecation methods)
- Get cumulus-message-adapter-python from pypi instead of github
- Removed the built-in assumptions about the config and input to the Process class when the class is initialized. [CUMULUS-543]
- A new property called
self.regex
is introduced. This property should be set for theself.gid
property to work properly.
- allow input_keys to be specified in payload
- move existing hardcoded regex to default_keys, used if none in payload
- backwards-compatible, but child classes should rename input_keys to default_keys or they will override inherited logic
- truncate error strings passed to sfn.send_task_failure()
- log exceptions raised in the handler
- Peg version of cumulus-message-adapter-python
- Update imports for Python3
- Fix activity handler for cumulus
- Fix CLI for processing payloads
- Fix passing in of a local path for saving files and output
- Properly clean up downloaded files
- Multiple bug fixes to work with Cumulus deployment
- Refactored Process class to remove any automatic functionality
- Update to use cumulus-message-adapter
- cumulus-py now public and open source, turned into standard package, docker files removed
- ci updated to auto tag and deploy to PyPi on merge to master
- Refactor Granule class into new Process class
- New payload format
- Payloads updated for Cumulus phase 3
- refactored granule class to be more abstracted, payload code moved to aws service module
- added support for multiple output granules
- use regex to determine which input files are which so order does not matter (only that all needed files are supplied, in any order)