Dear easybuilders,

we jumped to eb 2.7, and our Python builds became incompatible. We think the 
cause is:

https://github.com/hpcugent/easybuild-easyblocks/pull/817
https://github.com/hpcugent/easybuild-easyblocks/issues/651

From the Python docs at https://docs.python.org/2/c-api/unicode.html:
Note that UCS2 and UCS4 Python builds are not binary compatible. Please keep 
this in mind when writing extensions or interfaces.

From the python.py easyblock:
        # Need to be careful to match the unicode settings to the underlying 
python

The reasoning seems to be that the eb Python should be compatible with Python 
packages provided by the OS.

IMHO, this is less important than ensuring binary compatibility between Python 
releases that are built by different easybuild releases.

Actually I think, one of the benefits of easybuild is that the resulting 
binaries are not so much dependent on the underlying OS version. The introduced 
change achieves the opposite.

One of the reasons why we use easybuild is to create reproducible software 
builds. For that scenario, would you recommend sticking with a frozen easybuild 
release? Please let me know what you think.

Best regards,
Olaf

Reply via email to