stac-utils / stac-task

Provides a class interface for running custom algorithms on STAC ItemCollections
Apache License 2.0
21 stars 5 forks source link

Support for `process` arrays #123

Closed jkeifer closed 3 days ago

jkeifer commented 6 months ago

We've had a bit of a disconnect between this lib and cirrus for some time. Cirrus supports an array of process definitions in payloads under the process key, whereas stac-task only supports a single process definition object. The reason for a process array is to support workflow chaining.

This disconnect is only increasing, with cirrus v1 supporting only process arrays, for consistency and simplicity (only one right way to do things). We also chose to only support array values for process in swoop (and we had to add workarounds in each task we implemented because of this). Without an change to support process array values stac-task based tasks are not compatible with swoop and will no longer be compatible with cirrus out-of-the-box.

jkeifer commented 4 days ago

Discussion resulted in the decision that we need to support process arrays (obviously) but we do want to ensure backwards compatibility with a process object. That said, with the direction SWOOP and cirrus are going the bare process object should be deprecated and should raise a warning.

pjhartzell commented 3 days ago

Resolved by #166