PyCPL: the ESO Common Pipeline Library in the Python age

The ESO Common Pipeline Library (CPL) comprises a set of ISO-C libraries that provide a comprehensive, efficient and robust software toolkit to develop astronomical data-reduction recipes, which has been the fundamental tool for building data reduction pipelines for ESO VLT instruments since its original release in 2003, and which will continue to be the basis for ELT instrument pipelines. CPL was developed in C for reasons of efficiency and speed of execution, and because of its maturity and widespread use, it is well tested and understood.
However, as the astronomical community’s preference moves more and more towards Python as the language of choice for algorithm prototyping and data reduction, there has emerged a need to provide the CPL functionality for users who wish to make use of the power of CPL from a Python environment.
The PyCPL project aims to implement Python bindings for CPL through PyBind11, to provide the ability to execute and control data reduction pipelines from Python. It will also provide the ability to write recipes in Python and provide access from the Python environment to the products generated, thus providing the astronomical community the means to leverage the strengths and speed of CPL from a pure Python ecosystem.

Theme – Data Processing Pipelines and Science-Ready Data