cctbx_project icon indicating copy to clipboard operation
cctbx_project copied to clipboard

Debian CI errors on 32bits architectures

Open picca opened this issue 1 year ago • 3 comments

Hello,

I uploaded the 2022.7 version of cctbx into Debain, I got a bunch of error when running the test on different architectures. the latest continuous Integration test are here

/https://tracker.debian.org/pkg/cctbx

Now the problematic architectures are: armel, armhf, i386 all 32 bit architectures.

On these 32bit architectures I have this sort of output

libtbx.python "/usr/lib/python3/dist-packages/scitbx/dtmin/regression/tst_dtmin_twisted.py" [OK] 1.1s
  Standard error:
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared_plain<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::versa<unsigned int, scitbx::af::flex_grid<scitbx::af::small<long, 10u> > > already registered; second conversion method ignored.

and this sort of issue due to the smaller size of the int.

libtbx.python "/usr/lib/python3/dist-packages/fable/tst_ext.py" [FAIL] 0.5s
  Time:  0.54
  Return code: 1
  OKs: 0
  Standard error:
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/fable/tst_ext.py", line 471, in <module>
        run(args=sys.argv[1:])
      File "/usr/lib/python3/dist-packages/fable/tst_ext.py", line 462, in run
        exercise_fem_utils_int_types()
      File "/usr/lib/python3/dist-packages/fable/tst_ext.py", line 106, in exercise_fem_utils_int_types
        raise RuntimeError(
    RuntimeError: fem/utils/int_sizes.hpp needs to be adjusted for this platform.

and

libtbx.python "/usr/lib/python3/dist-packages/scitbx/array_family/boost_python/tst_flex.py" [FAIL] 4.4s
  Time:  4.44
  Return code: 1
  OKs: 1
  Standard error:
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared_plain<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::versa<unsigned int, scitbx::af::flex_grid<scitbx::af::small<long, 10u> > > already registered; second conversion method ignored.
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/scitbx/array_family/boost_python/tst_flex.py", line 3818, in <module>
        run(n)
      File "/usr/lib/python3/dist-packages/scitbx/array_family/boost_python/tst_flex.py", line 3799, in run
        pickle_large_arrays(max_exp=2, verbose=0)
      File "/usr/lib/python3/dist-packages/scitbx/array_family/boost_python/tst_flex.py", line 3504, in pickle_large_arrays
        a = array_type(n, val)
    OverflowError: Python int too large to convert to C long

and

libtbx.python "/usr/lib/python3/dist-packages/cctbx/xray/boost_python/tst_xray.py" [FAIL] 1.0s
  Standard error:
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared_plain<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::shared<unsigned int> already registered; second conversion method ignored.
    <frozen importlib._bootstrap>:241: RuntimeWarning: to-Python converter for scitbx::af::versa<unsigned int, scitbx::af::flex_grid<scitbx::af::small<long, 10u> > > already registered; second conversion method ignored.
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/cctbx/xray/boost_python/tst_xray.py", line 2010, in <module>
        run()
      File "/usr/lib/python3/dist-packages/cctbx/xray/boost_python/tst_xray.py", line 2000, in run
        exercise_sampled_model_density()
      File "/usr/lib/python3/dist-packages/cctbx/xray/boost_python/tst_xray.py", line 1173, in exercise_sampled_model_density
        assert gi.size() in expected_sizes
    AssertionError

so my question is do you expect cctbx to be unusable on 32bit arch, in that case I can remove cctbx on all these architectures in the Debian world.

Cheers

picca avatar Aug 30 '22 12:08 picca

Yes, we dropped 32-bit support a while ago so you should drop those architectures.

I'll see if I can start building the Debian packages this weekend.

bkpoon avatar Aug 30 '22 15:08 bkpoon

Hello

Yes, we dropped 32-bit support a while ago so you should drop those architectures.

I will do it.

I'll see if I can start building the Debian packages this weekend.

for info, I had to unactivated a bunch of test

https://salsa.debian.org/science-team/cctbx/-/tree/master/debian/patches

look at 0006 and 0008

this is temporary until I figure out what is going on.

cheers

picca avatar Aug 30 '22 15:08 picca

I'll make a PR and we can work though any issues once I get a build going. I'll try to build the same modules as for the cctbx-base conda package.

bkpoon avatar Aug 30 '22 15:08 bkpoon