Migrating the fast_dp software package for Python 2 and 3 compatibility

Jorge Lapetra Díaz, Herbert Jacob Bernstein, Alexei S. Soares · Acta Crystallographica Section A Foundations and Advances · 2019

A great deal of existing crystallographic software in CCP4 and other packages has been successfully managed in a Python 2.7 environment for many years. Python 3 is significantly different from Python 2.7, which will soon no longer be maintained. That is why it is crucial to migrate MX software to Python 3. Fortunately, it is possible to write or upgrade Python code so that it can automatically detect the Python version within which it is being run and execute correctly in either environment. One very useful Python package for MX data processing is fast_dp We are converting the version of fast_dp used at the AMX and FMX MX beamlines at NSLS-II to be able to function automatically in both Python 2.7 and Python 3 environments. This is an essential preliminary step in upgrading the processing pipelines, especially merging and serial crystallography pipelines such as Blend [2] and Kamo [3] to survive a Python 3 transition. We present examples of both the code conversion used and of applications to sample data.

Read the paper · More papers on PaperTik