Skip to content
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

cgat-flow-pipelines.yml causes installation of cgat-apps 0.6.0 #143

Open
IanSudbery opened this issue Aug 26, 2021 · 12 comments
Open

cgat-flow-pipelines.yml causes installation of cgat-apps 0.6.0 #143

IanSudbery opened this issue Aug 26, 2021 · 12 comments

Comments

@IanSudbery
Copy link
Contributor

if you build an environment based on cgat-flow-pipelines.yml, you'll end up with something that has cgat-apps version 0.6.0 installed. If you edit the yml to force cgat-apps 0.6.4, you end up with a conflict and the environment will fail to solve. I am investigating what might be causing this.

@IanSudbery
Copy link
Contributor Author

This is because cgat-apps 0.6.4 requires python 3.8 (or at least the conda package states it does), but cgat-flow pins rpy2 <3, and rpy2 <3 is not compatible with python 3.8.

@jscaber
Copy link
Contributor

jscaber commented Aug 27, 2021 via email

@IanSudbery
Copy link
Contributor Author

So, a coupled question is why cgat-apps is only built for python >=3.8, because otherwise, cgat-apps and rpy2 2.9 could co-exist.

@IanSudbery
Copy link
Contributor Author

@jscaber Do you know which things won't work with rpy2 3.1 and if there is a way to test them? I've managed to get an installation working by upping the pin to 3.1, and also removing the pin on pysam.

@jscaber
Copy link
Contributor

jscaber commented Aug 27, 2021 via email

@jscaber
Copy link
Contributor

jscaber commented Nov 24, 2021

a pragmatic approach here would be to remove the general rpy2 pin as well, given that the one rpy2 pipeline that works uses rpy2 >3 (rnaseqqc). For the remaining pipelines like peakcalling etc, it would mean greating rpy2 <3 envs or troubleshooting which they all need anyways because they were written so long ago. @Acribbs, what do you think?

@jscaber
Copy link
Contributor

jscaber commented Nov 24, 2021

I've had a look at this @Acribbs :

With rpy2 pinned the following are installed:
cgat-apps 0.6.4 py37h80fa574_1 bioconda
pysam 0.16.0.1 py37h45aed0b_3 bioconda
rpy2 2.9.4 py37r36hd767a1f_3 conda-forge
and it builds ok.

If I unpin rpy2:
rpy2 3.4.5 py37r41h6f94858_1 conda-forge
pysam 0.17.0 py37h45aed0b_0 bioconda
cgat-apps 0.6.4 py37h80fa574_1 bioconda
It stalls and I get following AttributeError: module 'pysam.libcalignmentfile' has no attribute 'PileupColumn' again.

I wonder if it the cimports need fixing on cgat-apps fixing, but am not sure here.
Strange that it works with pysam 16 but not 17, I thought this was an issue linked to v pysam <12.

@Acribbs
Copy link
Contributor

Acribbs commented Nov 24, 2021

yeh I think I need to make a new release for cgat-apps. I can work on this now.

@jscaber
Copy link
Contributor

jscaber commented Nov 24, 2021 via email

@Acribbs
Copy link
Contributor

Acribbs commented Nov 25, 2021

New version of cgat-apps was just merged to bioconda. Not sure how long it takes for it to be available though

@jscaber
Copy link
Contributor

jscaber commented Nov 26, 2021

Availble now and has indeed fixed the issue: Commit 8a9a6a7 now passes on rerunning.

This would fix rnaseqqc which now works after @IanSudbery refactoring, but will further break windows, intervals (&other?) which are already defective. In the longer term the rpy2 pin will make the conda environment outdated and unresolvable, so my personal vote would be to unpin and move on.

@Acribbs
Copy link
Contributor

Acribbs commented Nov 26, 2021

I would unpin rpy2 and we can remove windows and intervals, dont know if anyone is using them anyway, im certainly not using them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants