I tried out installing and testing the conda-forge MDAnalysis 2.5.0 package on intel macOS 13.4.1 with
and found that tests related to test_topologyattrs.py::Testcenter_of_charge failed. Specifically
gave failures for Testcenter_of_charge::test_coc_unwrap (see details below). Given that our CI tests are passing, I am wondering where this very specific failure might come from and if others have observed something similar. The test output is below together with my environment package list.
============================================== test session starts ===============================================
platform darwin -- Python 3.10.0, pytest-7.4.0, pluggy-1.2.0 -- ~/tmp/micromamba-root/envs/mda310x/bin/python3.10
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('~/.hypothesis/examples')
rootdir: ~
plugins: hypothesis-6.82.0, xdist-3.3.1
collected 18963 items / 18948 deselected / 7 skipped / 15 selected
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc[group] PASSED [ 6%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc[segments] PASSED [ 13%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc[residues] PASSED [ 20%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc[molecules] PASSED [ 26%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc[fragments] PASSED [ 33%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_wrap[group] PASSED [ 40%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_wrap[segments] PASSED [ 46%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_wrap[residues] PASSED [ 53%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_wrap[molecules] PASSED [ 60%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_wrap[fragments] PASSED [ 66%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[group] FAILED [ 73%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[segments] FAILED [ 80%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[residues] FAILED [ 86%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[molecules] FAILED [ 93%]
tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[fragments] FAILED [100%]
==================================================== FAILURES ====================================================
__________________________________ Testcenter_of_charge.test_coc_unwrap[group] ___________________________________
self = <MDAnalysisTests.core.test_topologyattrs.Testcenter_of_charge object at 0x16886d5d0>
u = <Universe with 4 atoms>, compound = 'group'
@pytest.mark.parametrize('compound', compounds)
def test_coc_unwrap(self, u, compound):
u.atoms.wrap
coc = u.atoms[:2].center_of_charge(compound=compound, unwrap=True)
> assert_equal(coc.flatten(), [0, -0.5, 0])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py:693:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (<built-in function eq>, array([0. , 0.49999997, 0. ]), [0, -0.5, 0])
kwds = {'err_msg': '', 'header': 'Arrays are not equal', 'strict': False, 'verbose': True}
@wraps(func)
def inner(*args, **kwds):
with self._recreate_cm():
> return func(*args, **kwds)
E AssertionError:
E Arrays are not equal
E
E Mismatched elements: 1 / 3 (33.3%)
E Max absolute difference: 0.99999997
E Max relative difference: 1.99999994
E x: array([0. , 0.5, 0. ])
E y: array([ 0. , -0.5, 0. ])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/contextlib.py:79: AssertionError
_________________________________ Testcenter_of_charge.test_coc_unwrap[segments] _________________________________
self = <MDAnalysisTests.core.test_topologyattrs.Testcenter_of_charge object at 0x16886cd60>
u = <Universe with 4 atoms>, compound = 'segments'
@pytest.mark.parametrize('compound', compounds)
def test_coc_unwrap(self, u, compound):
u.atoms.wrap
coc = u.atoms[:2].center_of_charge(compound=compound, unwrap=True)
> assert_equal(coc.flatten(), [0, -0.5, 0])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py:693:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (<built-in function eq>, array([0. , 0.49999997, 0. ]), [0, -0.5, 0])
kwds = {'err_msg': '', 'header': 'Arrays are not equal', 'strict': False, 'verbose': True}
@wraps(func)
def inner(*args, **kwds):
with self._recreate_cm():
> return func(*args, **kwds)
E AssertionError:
E Arrays are not equal
E
E Mismatched elements: 1 / 3 (33.3%)
E Max absolute difference: 0.99999997
E Max relative difference: 1.99999994
E x: array([0. , 0.5, 0. ])
E y: array([ 0. , -0.5, 0. ])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/contextlib.py:79: AssertionError
_________________________________ Testcenter_of_charge.test_coc_unwrap[residues] _________________________________
self = <MDAnalysisTests.core.test_topologyattrs.Testcenter_of_charge object at 0x16886eda0>
u = <Universe with 4 atoms>, compound = 'residues'
@pytest.mark.parametrize('compound', compounds)
def test_coc_unwrap(self, u, compound):
u.atoms.wrap
coc = u.atoms[:2].center_of_charge(compound=compound, unwrap=True)
> assert_equal(coc.flatten(), [0, -0.5, 0])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py:693:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (<built-in function eq>, array([0. , 0.49999997, 0. ]), [0, -0.5, 0])
kwds = {'err_msg': '', 'header': 'Arrays are not equal', 'strict': False, 'verbose': True}
@wraps(func)
def inner(*args, **kwds):
with self._recreate_cm():
> return func(*args, **kwds)
E AssertionError:
E Arrays are not equal
E
E Mismatched elements: 1 / 3 (33.3%)
E Max absolute difference: 0.99999997
E Max relative difference: 1.99999994
E x: array([0. , 0.5, 0. ])
E y: array([ 0. , -0.5, 0. ])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/contextlib.py:79: AssertionError
________________________________ Testcenter_of_charge.test_coc_unwrap[molecules] _________________________________
self = <MDAnalysisTests.core.test_topologyattrs.Testcenter_of_charge object at 0x16886ee30>
u = <Universe with 4 atoms>, compound = 'molecules'
@pytest.mark.parametrize('compound', compounds)
def test_coc_unwrap(self, u, compound):
u.atoms.wrap
coc = u.atoms[:2].center_of_charge(compound=compound, unwrap=True)
> assert_equal(coc.flatten(), [0, -0.5, 0])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py:693:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (<built-in function eq>, array([0. , 0.49999997, 0. ]), [0, -0.5, 0])
kwds = {'err_msg': '', 'header': 'Arrays are not equal', 'strict': False, 'verbose': True}
@wraps(func)
def inner(*args, **kwds):
with self._recreate_cm():
> return func(*args, **kwds)
E AssertionError:
E Arrays are not equal
E
E Mismatched elements: 1 / 3 (33.3%)
E Max absolute difference: 0.99999997
E Max relative difference: 1.99999994
E x: array([0. , 0.5, 0. ])
E y: array([ 0. , -0.5, 0. ])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/contextlib.py:79: AssertionError
________________________________ Testcenter_of_charge.test_coc_unwrap[fragments] _________________________________
self = <MDAnalysisTests.core.test_topologyattrs.Testcenter_of_charge object at 0x16886eec0>
u = <Universe with 4 atoms>, compound = 'fragments'
@pytest.mark.parametrize('compound', compounds)
def test_coc_unwrap(self, u, compound):
u.atoms.wrap
coc = u.atoms[:2].center_of_charge(compound=compound, unwrap=True)
> assert_equal(coc.flatten(), [0, -0.5, 0])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py:693:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
args = (<built-in function eq>, array([0. , 0.49999997, 0. ]), [0, -0.5, 0])
kwds = {'err_msg': '', 'header': 'Arrays are not equal', 'strict': False, 'verbose': True}
@wraps(func)
def inner(*args, **kwds):
with self._recreate_cm():
> return func(*args, **kwds)
E AssertionError:
E Arrays are not equal
E
E Mismatched elements: 1 / 3 (33.3%)
E Max absolute difference: 0.99999997
E Max relative difference: 1.99999994
E x: array([0. , 0.5, 0. ])
E y: array([ 0. , -0.5, 0. ])
~/tmp/micromamba-root/envs/mda310x/lib/python3.10/contextlib.py:79: AssertionError
============================================ short test summary info =============================================
FAILED tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[group] - AssertionError:
FAILED tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[segments] - AssertionError:
FAILED tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[residues] - AssertionError:
FAILED tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[molecules] - AssertionError:
FAILED tmp/micromamba-root/envs/mda310x/lib/python3.10/site-packages/MDAnalysisTests/core/test_topologyattrs.py::Testcenter_of_charge::test_coc_unwrap[fragments] - AssertionError:
===================== 5 failed, 10 passed, 7 skipped, 18948 deselected, 6 warnings in 6.29s ======================
List of packages in environment: “~/tmp/micromamba-root/envs/mda310x"
Name Version Build Channel
──────────────────────────────────────────────────────────────────────────
attrs 23.1.0 pyh71513ae_1 conda-forge
aws-c-auth 0.7.0 h1eac0a6_2 conda-forge
aws-c-cal 0.6.0 h865601d_0 conda-forge
aws-c-common 0.8.23 h0dc2134_0 conda-forge
aws-c-compression 0.2.17 hd42d803_1 conda-forge
aws-c-event-stream 0.3.1 h7dedc3b_1 conda-forge
aws-c-http 0.7.11 h3f765f7_0 conda-forge
aws-c-io 0.13.28 h8caa2fd_0 conda-forge
aws-c-mqtt 0.8.14 h81f52c0_2 conda-forge
aws-c-s3 0.3.13 h54f3bce_2 conda-forge
aws-c-sdkutils 0.1.11 hd42d803_1 conda-forge
aws-checksums 0.1.16 hd42d803_1 conda-forge
aws-crt-cpp 0.20.3 h9f4e08a_4 conda-forge
aws-sdk-cpp 1.10.57 h6c51782_17 conda-forge
backports.zoneinfo 0.2.1 py310h2ec42d9_7 conda-forge
biopython 1.81 py310h90acd4f_0 conda-forge
blosc 1.21.4 heccf04b_0 conda-forge
brotli 1.0.9 hb7f2c08_9 conda-forge
brotli-bin 1.0.9 hb7f2c08_9 conda-forge
brotli-python 1.0.9 py310h7a76584_9 conda-forge
bzip2 1.0.8 h0d85af4_4 conda-forge
c-ares 1.19.1 h0dc2134_0 conda-forge
ca-certificates 2023.7.22 h8857fd0_0 conda-forge
cached-property 1.5.2 hd8ed1ab_1 conda-forge
cached_property 1.5.2 pyha770c72_1 conda-forge
certifi 2023.7.22 pyhd8ed1ab_0 conda-forge
cftime 1.6.2 py310h936d966_1 conda-forge
charset-normalizer 3.2.0 pyhd8ed1ab_0 conda-forge
click 8.1.6 unix_pyh707e725_0 conda-forge
colorama 0.4.6 pyhd8ed1ab_0 conda-forge
contourpy 1.1.0 py310h88cfcbd_0 conda-forge
cycler 0.11.0 pyhd8ed1ab_0 conda-forge
exceptiongroup 1.1.2 pyhd8ed1ab_0 conda-forge
execnet 2.0.2 pyhd8ed1ab_0 conda-forge
fasteners 0.17.3 pyhd8ed1ab_0 conda-forge
fonttools 4.41.1 py310h6729b98_0 conda-forge
freetype 2.12.1 h3f81eb7_1 conda-forge
griddataformats 1.0.1 pyhd8ed1ab_0 conda-forge
gsd 2.9.0 py310hc1335a1_0 conda-forge
h5py 3.9.0 nompi_py310h164cd36_101 conda-forge
hdf4 4.2.15 h9804679_6 conda-forge
hdf5 1.14.1 nompi_hedada53_100 conda-forge
hypothesis 6.82.0 pyha770c72_0 conda-forge
icu 72.1 h7336db1_0 conda-forge
idna 3.4 pyhd8ed1ab_0 conda-forge
iniconfig 2.0.0 pyhd8ed1ab_0 conda-forge
joblib 1.3.0 pyhd8ed1ab_1 conda-forge
kiwisolver 1.4.4 py310ha23aa8a_1 conda-forge
krb5 1.21.1 hb884880_0 conda-forge
lcms2 2.15 h2dcdeff_1 conda-forge
lerc 4.0.0 hb486fe8_0 conda-forge
libaec 1.0.6 hf0c8a7f_1 conda-forge
libblas 3.9.0 17_osx64_openblas conda-forge
libbrotlicommon 1.0.9 hb7f2c08_9 conda-forge
libbrotlidec 1.0.9 hb7f2c08_9 conda-forge
libbrotlienc 1.0.9 hb7f2c08_9 conda-forge
libcblas 3.9.0 17_osx64_openblas conda-forge
libcurl 8.2.0 h5f667d7_0 conda-forge
libcxx 16.0.6 hd57cbcb_0 conda-forge
libdeflate 1.18 hac1461d_0 conda-forge
libedit 3.1.20191231 h0678c8f_2 conda-forge
libev 4.33 haf1e3a3_1 conda-forge
libffi 3.4.2 h0d85af4_5 conda-forge
libgfortran 5.0.0 12_3_0_h97931a8_1 conda-forge
libgfortran5 12.3.0 hbd3c1fe_1 conda-forge
libiconv 1.17 hac89ed1_0 conda-forge
libjpeg-turbo 2.1.5.1 hb7f2c08_0 conda-forge
liblapack 3.9.0 17_osx64_openblas conda-forge
libnetcdf 4.9.2 nompi_hb79a6a3_109 conda-forge
libnghttp2 1.52.0 he2ab024_0 conda-forge
libopenblas 0.3.23 openmp_h429af6e_0 conda-forge
libpng 1.6.39 ha978bb4_0 conda-forge
libsqlite 3.42.0 h58db7d2_0 conda-forge
libssh2 1.11.0 hd019ec5_0 conda-forge
libtiff 4.5.1 hf955e92_0 conda-forge
libwebp-base 1.3.1 h0dc2134_0 conda-forge
libxcb 1.15 hb7f2c08_0 conda-forge
libxml2 2.11.4 hd95e348_0 conda-forge
libzip 1.9.2 h6db710c_1 conda-forge
libzlib 1.2.13 h8a1eda9_5 conda-forge
llvm-openmp 16.0.6 hff08bdf_0 conda-forge
lz4-c 1.9.4 hf0c8a7f_0 conda-forge
matplotlib-base 3.7.2 py310h475a17b_0 conda-forge
mdanalysis 2.5.0 py310hd3c6219_1 conda-forge
mdanalysistests 2.5.0 pyhd8ed1ab_0 conda-forge
mmtf-python 1.1.3 pyhd8ed1ab_0 conda-forge
mrcfile 1.4.3 pyhd8ed1ab_0 conda-forge
msgpack-python 1.0.5 py310ha23aa8a_0 conda-forge
munkres 1.1.4 pyh9f0ad1d_0 conda-forge
ncurses 6.4 hf0c8a7f_0 conda-forge
netcdf4 1.6.4 nompi_py310h845552d_101 conda-forge
networkx 3.1 pyhd8ed1ab_0 conda-forge
numpy 1.25.1 py310h7451ae0_0 conda-forge
openjpeg 2.5.0 h13ac156_2 conda-forge
openssl 3.1.1 h8a1eda9_1 conda-forge
packaging 23.1 pyhd8ed1ab_0 conda-forge
pandas 2.0.3 py310h5e4fcda_1 conda-forge
patsy 0.5.3 pyhd8ed1ab_0 conda-forge
pbr 5.11.1 pyhd8ed1ab_0 conda-forge
pillow 10.0.0 py310hd63a8c7_0 conda-forge
pip 23.2.1 pyhd8ed1ab_0 conda-forge
platformdirs 3.9.1 pyhd8ed1ab_0 conda-forge
pluggy 1.2.0 pyhd8ed1ab_0 conda-forge
pooch 1.7.0 pyha770c72_3 conda-forge
pthread-stubs 0.4 hc929b4f_1001 conda-forge
pyedr 0.7.1 pyhd8ed1ab_0 conda-forge
pyparsing 3.0.9 pyhd8ed1ab_0 conda-forge
pysocks 1.7.1 pyha2e5f31_6 conda-forge
pytest 7.4.0 pyhd8ed1ab_0 conda-forge
pytest-xdist 3.3.1 pyhd8ed1ab_0 conda-forge
python 3.10.0 h38b4d05_3_cpython conda-forge
python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge
python-tzdata 2023.3 pyhd8ed1ab_0 conda-forge
python_abi 3.10 3_cp310 conda-forge
pytng 0.3.0 py310hb9ee061_0 conda-forge
pytz 2023.3 pyhd8ed1ab_0 conda-forge
readline 8.2 h9e318b2_1 conda-forge
requests 2.31.0 pyhd8ed1ab_0 conda-forge
scikit-learn 1.3.0 py310hd2c063c_0 conda-forge
scipy 1.11.1 py310h3900cf1_0 conda-forge
seaborn 0.12.2 hd8ed1ab_0 conda-forge
seaborn-base 0.12.2 pyhd8ed1ab_0 conda-forge
setuptools 68.0.0 pyhd8ed1ab_0 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
snappy 1.1.10 h225ccf5_0 conda-forge
sortedcontainers 2.4.0 pyhd8ed1ab_0 conda-forge
sqlite 3.42.0 h2b0dec6_0 conda-forge
statsmodels 0.14.0 py310hc1335a1_1 conda-forge
threadpoolctl 3.2.0 pyha21a80b_0 conda-forge
tidynamics 1.1.2 pyhd8ed1ab_0 conda-forge
tk 8.6.12 h5dbffcc_0 conda-forge
tomli 2.0.1 pyhd8ed1ab_0 conda-forge
tqdm 4.65.0 pyhd8ed1ab_1 conda-forge
typing-extensions 4.7.1 hd8ed1ab_0 conda-forge
typing_extensions 4.7.1 pyha770c72_0 conda-forge
tzdata 2023c h71feb2d_0 conda-forge
unicodedata2 15.0.0 py310h90acd4f_0 conda-forge
urllib3 2.0.4 pyhd8ed1ab_0 conda-forge
wheel 0.41.0 pyhd8ed1ab_0 conda-forge
xorg-libxau 1.0.11 h0dc2134_0 conda-forge
xorg-libxdmcp 1.1.3 h35c211d_0 conda-forge
xz 5.2.6 h775f41a_0 conda-forge
zstd 1.5.2 h829000d_7 conda-forge