-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Installation difficulties; running through tutorials 1-4 #176
Comments
The progress with Tutorial 4 is detailed in issue hjkgrp#176 hjkgrp#176
Hi @tlinjordet, I want to thank you for the thorough write up of the issues you encountered and the efforts you made in PR #177 to fix the issues with Installation issues As a potential solution/alternative I have added a purely We absolutely need to either update or retire the Docker image given the fact that it is still on python2... Openbabel issues Tutorial instructions 4a & 4b: 4c: 4d: |
Hello,
I have been working a bit to get molSimplify to work in my context as I am learning the interface via the tutorials.
I have completed tutorials 1-3, but to make tutorial 4 work, I had to make some minor changes to the code, and I still am finding errors. At this stage I believe it is better to share my current status than to go further without asking for advice.
I am preparing a pull request based on my code changes, but my current solution might be overly specific to my context to adopt directly, so I want to document the challenges here as an issue separately from the proposed partial solution.
Context
I am running Ubuntu 22.04 LTS, with base conda installed with
Anaconda3-2023.07-2-Linux-x86_64.sh
.I tried to
conda install
molSimplify from thehjkgroup
channel according to the repoREADME.md
, without success.I also tried in various ways to build from source. I am not sure how well this worked, since the pytest failure rate was rather high. However, I ended up going to the tutorials 1-4 with a molSimplify environment that also fails some tests in the repo.
I managed to do some tutorials with the Docker image, but with tutorial 4 found it necessary to search for further solutions.
The best solution so far to create a molSimplify environment turned out to be using
conda-forge
and molsimplify-feedstock.Having switched package solver to mamba previously, I created the molSimplify environment discussed in the remainder of this description as follows:
this installs molSimplify v1.7.3 and Open Babel v3.1.1
(in contrast to the Docker image which has Python v2.7.17, molSimplify v1.4.6 and Open Babel v2.4.1).
I also installed Avogadro2 in this environment by building from source.
Testing Tutorials
Tutorial 1
Runs without a problem:
Tutorial 2
Runs without a problem:
Tutorial 3
Runs without a problem:
Tutorial 4
Note that the Docker image did not work with Tutorial 4 since the latest version of ChEMBL, v33, is too large as an
.sdf
file for Open Babel v2.4.1 to handle, whereas Open Babel v3.x should handle larger than 4 GB files.Note: the need to set database directory path in the
~/.molSimplify
config file was not clear from instructions encountered up until this point.Tutorial 4a: Similarity search
Then to do the steps of the tutorial, first similarity search, I run the following:
Error 1
However, here an error is thrown
Which is solved by
but this should probably be addressed either here or by
molsimplify-feedstock
, not sure which. Please advise.Error 2
At this point
molsimplify -i sim-db-search.in
runs until the printed statementadding atom constraints
and hangs until the process is simply killed by timing out.If the process is keyboard interrupted, the following traceback results:
See pull request with changed definition of
mybash
inmolSimplify/Classes/globalvars.py
for my proposed solution.Error 3
Open Babel v3.x no longer uses the command
babel
, which had been deprecated for a while. There may need to be a more general solution if molSimplify is still going to support Open Babel v2.4 in the near term. tomorrowMaybe at the try/except stage of importing open babel in the Python scripts, or else at a global config level?My solution for Open Babel v3.1.1 with respect to the Tutorial 4 error but see pull request for changes to functions
getsimilar
anddbsearch
undermolSimplify/Scripts/dbinteract.py
.Tutorial 4b: Dissimilarity Search
The second step of Tutorial 4 is a dissimilarity search based on the results of the first step. Note: there is a discrepancy between the size of the nominal
simres.smi
and the results from running the tutorial. However, the tutorial results are larger with a more recent, larger ChEMBL database, so this is likely not an issue.Note that the ChEMBL database file needed to be added for dissimilarity search.
This part of the tutorial also had errors because of Open Babel v3.x
obabel
syntax with explicit-O
output file designation.See pull request for some changes to the
dissim
function undermolSimplify/Scripts/dbinteract.py
to use obabel instead of babel. Also further updates tomybash
inmolSimplify/Classes/globalvars.py
to keep line breaks in thestdout
string output from this function.The process completes without errors, aside from the normally hidden message
Tutorial 4c: Loop over Dissimilarity
Taking the
example-loop.smi
file from the Tutorial page and fixing its database reference, this part of tutorial 4 failed for less clear reasons.Input commands are simply
Error:
Tutorial 4d: Search over SMARTS/human
Again, this part fails for unclear reasons.
Input:
Output with error:
The text was updated successfully, but these errors were encountered: