Skip to content

RDkit 2020.09.4 release issues with Conda-forge build and other modules (Python3-saml) #92

@AlDossetter

Description

@AlDossetter

What:
Fresh install on Ubuntu 20.04 with miniconda3, python 3.7 RDKit installs ok but Python3-saml has become incompatible.
First noted with 2020.09.04 but after experiments found first version where break occurred - 2020.03.6

Terse:
Demonstrated with
python3-saml

Some issues with rpy2 but:

$ conda install -c conda-forge rpy2

appears to install and work ok on Ubuntu 20.04 (not Mac OSX)

TERSE:
Up to, and including rdkit==2019.09.3 python3-saml==1.9.0 would install and work together

With a python 3.7 condo env:

$ conda install -c conda-forge rdkit==2020.03.6 -y
$ conda install -c conda-forge python3-saml

Python3-saml failed to install with multiple conflicts
- there are references to Python 3.8 - did we miss something and RDkit is Python3.8 now?

rdkit==2020.09.3 and rdkit==2020.09.4 also are incompatible

Good News - There is compatibility with (this is a section of our build script)

pip install mod_wsgi==4.7.1
pip install -i https://pypi.anaconda.org/OpenEye/simple OpenEye-toolkits
conda install -c conda-forge rpy2 -y
conda install -c conda-forge scikit-learn==0.21.3 -y
conda install -c conda-forge matplotlib==3.3.3 -y

For addition clarity:

pip install python3-saml

does not work - this is PEP517 related but it does reveal that libxml2 and libxmlsec might be the issue
[Spent about a day try to work around this one without success]

These are the results on Ubuntu 20, on Mac OSX Catalina things are worse (that will required another day of experimentation - Rdkit 2018 appears stable here with all other module combinations)

Verbose (-vvv)

These are the experiments I performed focussing on just RDkit and Python3-saml for reproducibility.

Experiment details:

All builds were:
- performed on Amazon Web Services (AWS) Ubuntu 20.04 instances (unless otherwise stated), using t2.large
- MINICONDA="Miniconda3-4.5.12-Linux-x86_64.sh"
- with Python 3.7 environments
- as root user

After each experiment the AWS instance was terminated and a new instance used each time.

Control - 1 - establish older version of RDkit installs with

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y
source activate test_rdkit

pip install --upgrade pip
conda install -c conda-forge rdkit==2019.03.1.0 -y
conda install -c conda-forge python3-saml

Collecting package metadata (current_repodata.json): done
Solving environment: done

==> WARNING: A newer version of conda exists. <==
current version: 4.8.3
latest version: 4.9.2

Please update conda by running

$ conda update -n base -c defaults conda

Package Plan

environment location: /root/miniconda3/envs/test_rdkit

added / updated specs:
- python3-saml

The following packages will be downloaded:

package                    |            build
---------------------------|-----------------
defusedxml-0.6.0           |             py_0          22 KB  conda-forge
isodate-0.6.0              |             py_1          25 KB  conda-forge
libgcrypt-1.8.7            |       h36c2ea0_0         610 KB  conda-forge
libgpg-error-1.41          |       h2531618_0         235 KB
libtool-2.4.6              |    h58526e2_1007         497 KB  conda-forge
libxml2-2.9.10             |       hb55368b_3         1.2 MB
libxmlsec1-1.2.29          |       h8fe84ac_0         516 KB
libxslt-1.1.34             |       hc22bd24_0         432 KB
lxml-4.6.2                 |   py37h9120a33_0         1.2 MB
python3-saml-1.9.0         |             py_0         227 KB
xmlsec-1.3.3               |   py37h0e8eec6_0         289 KB
------------------------------------------------------------
                                       Total:         5.2 MB

The following NEW packages will be INSTALLED:

defusedxml conda-forge/noarch::defusedxml-0.6.0-py_0
isodate conda-forge/noarch::isodate-0.6.0-py_1
libgcrypt conda-forge/linux-64::libgcrypt-1.8.7-h36c2ea0_0
libgpg-error pkgs/main/linux-64::libgpg-error-1.41-h2531618_0
libtool conda-forge/linux-64::libtool-2.4.6-h58526e2_1007
libxmlsec1 pkgs/main/linux-64::libxmlsec1-1.2.29-h8fe84ac_0
libxslt pkgs/main/linux-64::libxslt-1.1.34-hc22bd24_0
lxml pkgs/main/linux-64::lxml-4.6.2-py37h9120a33_0
python3-saml pkgs/main/noarch::python3-saml-1.9.0-py_0
xmlsec pkgs/main/linux-64::xmlsec-1.3.3-py37h0e8eec6_0

The following packages will be UPDATED:

libxml2 conda-forge::libxml2-2.9.9-h13577e0_2 --> pkgs/main::libxml2-2.9.10-hb55368b_3

....lots

conda list

...
python-dateutil 2.8.1 py_0 conda-forge
python3-saml 1.9.0 py_0
python_abi 3.7 1_cp37m conda-forge
pytz 2021.1 pyhd8ed1ab_0 conda-forge
rdkit 2019.03.1 py37h9c20d5c_0 conda-forge
readline 8.1 h27cfd23_0
...

SUCCESSFUL build***

Control 2 - newer version of RDkit and Python3-saml

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y
source activate test_rdkit

pip install --upgrade pip
conda install -c conda-forge rdkit==2019.09.3 -y
conda install -c conda-forge python3-saml

Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: done

==> WARNING: A newer version of conda exists. <==
current version: 4.8.3
latest version: 4.9.2

Please update conda by running

$ conda update -n base -c defaults conda

Package Plan

environment location: /root/miniconda3/envs/test_rdkit

added / updated specs:
- python3-saml

The following packages will be downloaded:

package                    |            build
---------------------------|-----------------
boost-1.70.0               |   py37h9de70de_1         337 KB  conda-forge
boost-cpp-1.70.0           |       ha2d47e9_1        21.1 MB  conda-forge
cairo-1.16.0               |    h18b612c_1001         1.5 MB  conda-forge
defusedxml-0.6.0           |             py_0          22 KB  conda-forge
fontconfig-2.13.1          |    he4413a7_1000         327 KB  conda-forge
gettext-0.19.8.1           |       h5e8e0c9_1         3.5 MB  conda-forge
icu-58.2                   |    hf484d3e_1000        22.6 MB  conda-forge
isodate-0.6.0              |             py_1          25 KB  conda-forge
libgcrypt-1.8.7            |       h36c2ea0_0         610 KB  conda-forge
libgpg-error-1.39          |       he1b5a44_0         269 KB  conda-forge
libtool-2.4.6              |    h58526e2_1007         497 KB  conda-forge
libxml2-2.9.9              |       h13577e0_2         1.3 MB  conda-forge
libxmlsec1-1.2.29          |       h8fe84ac_0         516 KB
libxslt-1.1.33             |       h7d1a2b0_0         426 KB
lxml-4.4.1                 |   py37h7ec2d77_0         1.5 MB  conda-forge
python3-saml-1.9.0         |             py_0         227 KB
rdkit-2019.09.3            |   py37hb31dc5d_0        23.7 MB  conda-forge
xmlsec-1.3.3               |   py37h0e8eec6_0         289 KB
------------------------------------------------------------
                                       Total:        78.8 MB

The following NEW packages will be INSTALLED:

defusedxml conda-forge/noarch::defusedxml-0.6.0-py_0
gettext conda-forge/linux-64::gettext-0.19.8.1-h5e8e0c9_1
isodate conda-forge/noarch::isodate-0.6.0-py_1
libgcrypt conda-forge/linux-64::libgcrypt-1.8.7-h36c2ea0_0
libgpg-error conda-forge/linux-64::libgpg-error-1.39-he1b5a44_0
libtool conda-forge/linux-64::libtool-2.4.6-h58526e2_1007
libxmlsec1 pkgs/main/linux-64::libxmlsec1-1.2.29-h8fe84ac_0
libxslt pkgs/main/linux-64::libxslt-1.1.33-h7d1a2b0_0
lxml conda-forge/linux-64::lxml-4.4.1-py37h7ec2d77_0
python3-saml pkgs/main/noarch::python3-saml-1.9.0-py_0
xmlsec pkgs/main/linux-64::xmlsec-1.3.3-py37h0e8eec6_0

The following packages will be DOWNGRADED:

boost 1.72.0-py37h48f8a5e_1 --> 1.70.0-py37h9de70de_1
boost-cpp 1.72.0-h9359b55_3 --> 1.70.0-ha2d47e9_1
cairo 1.16.0-h3fc0475_1005 --> 1.16.0-h18b612c_1001
fontconfig 2.13.1-h7e3eb15_1002 --> 2.13.1-he4413a7_1000
icu 67.1-he1b5a44_0 --> 58.2-hf484d3e_1000
libxml2 2.9.10-h68273f3_2 --> 2.9.9-h13577e0_2
rdkit 2019.09.3-py37he9dd633_1 --> 2019.09.3-py37hb31dc5d_0

conda list

...
python-dateutil 2.8.1 py_0 conda-forge
python3-saml 1.9.0 py_0
python_abi 3.7 1_cp37m conda-forge
pytz 2021.1 pyhd8ed1ab_0 conda-forge
rdkit 2019.09.3 py37hb31dc5d_0 conda-forge
readline 8.1 h27cfd23_0
setuptools 52.0.0 py37h06a4308_0
...

SUCCESSFUL build***

Expt 1 - moving newer version of RDkit and Python3-saml

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y
source activate test_rdkit
pip install --upgrade pip
conda install -c conda-forge rdkit==2020.03.6 -y
conda install -c conda-forge python3-saml

!!!!!!!!UNSUCCESSFUL INSTALL!!!!!!!!

Conda detects conflicts between RDkit install and Python3-SAML

Expt 2 - newer version of RDkit and Python3-saml

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y

#Conda init bash
#

source activate test_rdkit

pip install --upgrade pip
conda install -c conda-forge rdkit==2020.09.3 -y
conda install -c conda-forge python3-saml

!!!!!!!!UNSUCCESSFUL INSTALL!!!!!!!!

--> Fails to install python3-saml and reports a huge amount of output - see included file.

Expt 3 - latest version of RDkit and Python3-saml

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y
source activate test_rdkit
pip install --upgrade pip
conda install -c conda-forge rdkit==2020.09.4 -y
conda install -c conda-forge python3-saml

!!!!!!!!UNSUCCESSFUL INSTALL!!!!!!!!

--> Fails to install python3-saml and reports a huge amount of output - see included file.

Expt 4 - Install Python3-saml first then RDkit - check if it works the other way

Ubuntu 20.04

export MINICONDA="Miniconda3-py37_4.8.3-Linux-x86_64.sh"
wget https://repo.continuum.io/miniconda/$MINICONDA
bash $MINICONDA -b -p /root/miniconda3
export PATH="/root/miniconda3/bin:$PATH"
conda create -n test_rdkit python=3.7 -y
source activate test_rdkit
pip install --upgrade pip
conda install -c conda-forge python3-saml -y
conda install -c conda-forge rdkit==2020.09.4 -y

!!!!!!!!UNSUCCESSFUL INSTALL!!!!!!!!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions