alphapickle icon indicating copy to clipboard operation
alphapickle copied to clipboard

New release/tag

Open jowodo opened this issue 2 years ago • 7 comments

I noticed from the README.md that the current version is 1.5.4, but the newest release is 1.4.1. conda fails to create the environment with

VERSION=1.4.1
conda create --name alphapickel-$VERSION https://raw.githubusercontent.com/mattarnoldbio/alphapickle/v$VERSION/requirements.txt

So I had to resort to installing directly from main

conda create --name alphapickel-$VERSION https://raw.githubusercontent.com/mattarnoldbio/alphapickle/main/linux64requirements.txt

which gave me the following:

Output
Channels:
 - bioconda
 - conda-forge
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: failed

LibMambaUnsatisfiableError: Encountered problems while solving:
  - nothing provides requested ca-certificates 2021.10.26
  - nothing provides requested fonttools 4.25.0
  - nothing provides requested intel-openmp 2021.2.0
  - nothing provides requested mkl_random 1.2.1
  - nothing provides requested numpy-base 1.20.2
  - nothing provides requested setuptools 52.0.0
  - package python-3.9.5-h49503c6_0_cpython requires sqlite >=3.35.5,<4.0a0, but none of the providers can be installed
  - package mkl_fft-1.3.0-py36h92226af_1 requires mkl >=2020.4,<2021.0a0, but none of the providers can be installed
  - package mkl_fft-1.3.0-py36h92226af_1 requires mkl >=2020.4,<2021.0a0, but none of the providers can be installed
  - package pillow-8.3.1-py36h676a545_0 requires libtiff >=4.3.0,<4.4.0a0, but none of the providers can be installed
  - package pillow-8.3.1-py39ha612740_0 requires libtiff >=4.3.0,<4.4.0a0, but none of the providers can be installed

Could not solve for environment specs
The following packages are incompatible
├─ ca-certificates 2021.10.26  does not exist (perhaps a typo or a missing channel);
├─ fonttools 4.25.0  does not exist (perhaps a typo or a missing channel);
├─ intel-openmp 2021.2.0  does not exist (perhaps a typo or a missing channel);
├─ jpeg 9d  is requested and can be installed;
├─ libtiff 4.2.0  is requested and can be installed;
├─ mkl 2021.2.0  is requested and can be installed;
├─ mkl_fft 1.3.0  is uninstallable because it requires
│  └─ mkl >=2020.4,<2021.0a0 , which conflicts with any installable versions previously reported;
├─ mkl_random 1.2.1  does not exist (perhaps a typo or a missing channel);
├─ numpy-base 1.20.2  does not exist (perhaps a typo or a missing channel);
├─ openssl 1.1.1l  is requested and can be installed;
├─ pillow 8.3.1  is uninstallable because there are no viable options
│  ├─ pillow 8.3.1 would require
│  │  └─ libtiff >=4.3.0,<4.4.0a0  but there are no viable options
│  │     ├─ libtiff 4.3.0 would require
│  │     │  ├─ jpeg >=9e,<10a , which conflicts with any installable versions previously reported;
│  │     │  └─ zstd >=1.5.2,<1.6.0a0 , which can be installed;
│  │     └─ libtiff 4.3.0 would require
│  │        └─ zstd >=1.5.0,<1.6.0a0 , which can be installed;
│  └─ pillow 8.3.1 would require
│     ├─ libtiff >=4.3.0,<4.4.0a0 , which cannot be installed (as previously explained);
│     └─ pypy3.7 >=7.3.5  with the potential options
│        ├─ pypy3.7 [7.3.5|7.3.7] would require
│        │  └─ sqlite >=3.36.0,<4.0a0 , which can be installed;
│        ├─ pypy3.7 7.3.5 would require
│        │  └─ sqlite >=3.35.5,<4.0a0 , which can be installed;
│        └─ pypy3.7 7.3.7 would require
│           └─ openssl >=3.0.0,<4.0a0 , which conflicts with any installable versions previously reported;
├─ python 3.9.5  is installable and it requires
│  └─ sqlite >=3.35.5,<4.0a0 , which can be installed;
├─ setuptools 52.0.0  does not exist (perhaps a typo or a missing channel);
├─ sqlite 3.35.4  is uninstallable because it conflicts with any installable versions previously reported;
└─ zstd 1.4.9  is uninstallable because it conflicts with any installable versions previously reported.

Am I missing any channels? Sorry for convoluting this different issues

jowodo avatar Jun 01 '23 11:06 jowodo

This is what I ended up with:

VERSION=1.4.1
URL=https://github.com/mattarnoldbio/alphapickle
conda create -y --name alphapickle-$VERSION python=3.9.5
conda activate alphapickle-$VERSION
mkdir -p ${CONDA_PREFIX}/share
pushd ${CONDA_PREFIX}/share
git clone --quiet --depth 1 --branch v$VERSION $URL
sed -i '1i #!/bin/env python3' ${CONDA_PREFIX}/share/alphapickle/*AlphaPickle.py
pushd ../bin
ln -s ../share/alphapickle/run_AlphaPickle.py .
ln -s ../share/alphapickle/integrated_AlphaPickle.py .
popd
popd
python3 -m pip install -r https://raw.githubusercontent.com/mattarnoldbio/alphapickle/main/requirements.txt

jowodo avatar Jun 01 '23 12:06 jowodo

I used AF-2.3.0. When loading the result*.pkl file, it complained:

 line 48, in __init__
    self.data.append(pkl.load(openfile))
ModuleNotFoundError: No module named 'jax'

Do you (@pur80a) know to to fix it?

TienMPhan avatar Jun 30 '23 15:06 TienMPhan

@TienMPhan how did you install and what were the exact command to arrive at this error? Maybe a simple pip3 install jax might help, if I have to guess.

jowodo avatar Jun 30 '23 15:06 jowodo

I follow the one you ended up with above. When running

run_AlphaPickle.py -od out_alphafold/HSPB1

Tried pip3 install jax, I got

ModuleNotFoundError: jax requires jaxlib to be installed. See https://github.com/google/jax#installation for installation instructions.

then I followed the link to upgrade jax

pip install --upgrade "jax[cuda11_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html

another error came:

 line 48, in __init__
    self.data.append(pkl.load(openfile))
ModuleNotFoundError: No module named 'jax._src.device_array'

I think this error comes from the step of reading pickle file.

TienMPhan avatar Jun 30 '23 15:06 TienMPhan

FYI. Other people also got this error. https://stackoverflow.com/questions/76548069/pickle-load-gives-jax-related-error-no-matter-what

TienMPhan avatar Jun 30 '23 15:06 TienMPhan

Update: I installed older versions of jax and jaxlib as follows pip install jax==0.3.25 jaxlib==0.3.25 and it worked on CPU, as shown in the warning.

WARNING:jax._src.lib.xla_bridge:No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)

TienMPhan avatar Jun 30 '23 16:06 TienMPhan

How is the current version 1.5.4 and the previous 1.4.1? This is a possible way on how to tag old commits:

git clone https://github.com/mattarnoldbio/alphapicklecd DeepVirFinder
git log --graph --oneline # chose commit to tag 
git checkout d86b779 # d86b779 is the chosen commit hash 
git tag v1.5.4
git push origin --tags

jowodo avatar Aug 10 '23 08:08 jowodo