[Zoo-discuss] ZOO-Project 2.1.0-rc1

Gérald Fenoy gerald.fenoy at geolabs.fr
Sat Jan 24 06:30:27 PST 2026


Hello,
I am glad to announce that the ZOO-Project-2.1.0 release candidate 1is now available online [1].

This new ZOO-Project release contains new features and fixes, listed below.

This release, specifically the Docker image associated with the ZOO-Project-DRU Helm chart version 0.9.1 [2], includes a set of Python packages ([3]) available on pypi.org. They were part of last year's Google Summer of Code contributions ([4]). The zoo-runner-common and zoo-template-common Python Packages are now up to date, tested, and integrated into the available runners and templates.

With this release, we introduce the skaffold.yaml configuration file [5], which can be used to easily deploy the ZOO-Project-DRU Helm chart with Calrissian, Argo-Workflows, or WES support on your Kubernetes cluster. A full-featured version of the configuration file is also available on the charts repository, which has a higher release rate.

The EOAP [6] - CWL Custom Types [7] are supported, and a new client, nuxt-client [8], was created.

The work was funded by the EOEPCA+ project [9].

New Features and Fixes:

    • Add support for the /jobs/{jobId}/results/{outputId} endpoint
    • Force update of the libsodium23 on ubuntu to fix CVE-2025-69277
    • Fix urllib version 2.6.3 to fix CVE-2026-21441, CVE-2025-66418,
CVE-2025-66471, CVE-2025-50181, CVE-2025-50182
    • Add profiles as per https://docs.ogc.org/DRAFTS/18-062r3.html#profile-uris
    • Enhanced storage of metadata embedded within a CWL Application Package.
    • Type detection for literal data output for proper result access.
    • Use the cwl2ogc Python library for the transactional support and
schema definitions for inputs and output.
    • C-API change signature of: printHeaders, printSessionHeaders,
printAFile, printProcessResponse, printDocument, printRawdataOutput,
printRawdataOutputs, outputResponse, runGetStatus, invokeCallback,
setReferenceUrl, printJResult, printJobStatus, printJobList,
printFilteredJobList, handleDRUError.
    • Introduce the conversion from CWL type to LiteralData in documentation.
    • ZOO-Project-DRU: Bind user to anonymous when no SERVICE_NAMESPACE is
defined.
    • Add documentation on how to bind a format key to a schema using the
dedicated schemas section from the configuration file.
    • Support CWL Custom Types with their corresponding format from OGC Process
Description.
    • Support the format key in input/output schema from OGC Process Description.
    • Add the CollectionDB.PrimitiveDataFormats table to the database containing
the possible formats key values and CWL Custom types.
    • Change the strcuture of CollectionDB.ows_DataDescription to support a
format reference (data_format_id).
    • Correct support for BoundingBox format in OGC Process Description.
    • Store the zoofpm ip address in the status database to enable tracking
which zoofpm pod/container is used to run a process.
    • Update GDAL based services to use the validateVRT for VRT used as
input file to ensure only the allowed paths are accessible.
    • Add an isAllowedPath function to ensure the URL using file:// give
access only to the defined allowed paths, defined in the allowedPaths key
from the main section.
    • Update the skaffold.yaml file for easy deployment of the ZOO-Project
with DRU and CWL support on a local cluster in different flavors
    • Update the ZOO_DEBUG to use color for messages (if stderr is a tty)
    • Update variables naming, including the main configuration file name
    • Update ZOO_DEBUG function to use LOG_MESSAGE_FORMAT to format the
debug messages, using the iZooLogLevel integer to decide between: DEBUG,
INFO, WARN, ERROR, FATAL. Comes with it associated --with-log-format option.
    • Store temporary files associated with a run made by an authenticated
user in a non browsable directory, add a browse service to access these
files.
    • Remove Miniconda3 from the ZOO-Project-DRU docker image to avoid
conflict with shared libraries.
    • Add getServicesNamespacePath, printAFile, handlePackage functions to
the C-API.
    • Add support for "File" inputs in CWL to be identified as ComplexData
as defined in the Table 3 of the OGC Best Practice for Earth Observation
Application Package.
    • Add initial support for /processes/{processId}/package as defined in the
OGC API - Processes - Part2: Deploy, Replace, Undeploy draft.
    • Ensure the mutable processes cannot be executed syncrhonously.
    • Ensure that the invokeBasicCallback function is used in case the
service execution failed.
    • Fix issue when multiple filters are used to filter the jobs list.
    • Add support for x-logo in the info object of the OpenAPI.
    • Add keywords in the process description if any are defined in the
service metadata.
    • Preserve datatype for literal values that should be passed to the
cwl runner.
    • Expose complex metada information such as author and contributor
within the process descrition for OGC API - Processes.
    • Support recording metadata and author for processes deployed from CWL.
    • Add gdalmdiminfo and gdalmdimtranslate services
    • Update support for OGC API - Processes - Part 3: Workflows

The release was initially made yesterday, but an issue with the Zenodo integration was identified and needed to be updated. As a consequence, we decided to re-release, which solved the Zenodo publication issue.

Also, we invite all contributors to this release to add themselves to the CITATION.cff [10] or update their personal information (such as affiliation) if needed. If you have an ORCID, you can also add it to your information; you can see how it looks for contributors that have an ORCID on this page: [11].

Best regards,

[1] https://github.com/ZOO-Project/ZOO-Project/releases/tag/rel-2.1.0-rc1
[2] https://artifacthub.io/packages/helm/zoo-project/zoo-project-dru
[3] https://pypi.org/org/ZOO-Project/
[4] https://github.com/ZOO-Project/zoo-cwl-runners/wiki/Final-Report
[5] https://zoo-project.github.io/docs/kernel/dru.html#build-and-install-with-skaffold
[6] https://github.com/eoap
[7] https://github.com/eoap/schemas
[8] https://github.com/ZOO-Project/nuxt-client
[9] https://eoepca.org/
[10] https://github.com/ZOO-Project/ZOO-Project/blob/main/CITATION.cff
[11] https://zenodo.org/records/18353888

Gerald Fenoy
gerald.fenoy at geolabs.fr
Chair, ZOO-Project PSC



More information about the ZOO-discuss mailing list