{"action":"opened","issue":{"url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/11315","repository_url":"https://api.github.com/repos/bioconda/bioconda-recipes","labels_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/11315/labels{/name}","comments_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/11315/comments","events_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/11315/events","html_url":"https://github.com/bioconda/bioconda-recipes/issues/11315","id":369257798,"node_id":"MDU6SXNzdWUzNjkyNTc3OTg=","number":11315,"title":"Should bioconductor packages depend on a bioconductor \"version-only\" package?","user":{"login":"ebolyen","id":3976804,"node_id":"MDQ6VXNlcjM5NzY4MDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/3976804?v=4","gravatar_id":"","url":"https://api.github.com/users/ebolyen","html_url":"https://github.com/ebolyen","followers_url":"https://api.github.com/users/ebolyen/followers","following_url":"https://api.github.com/users/ebolyen/following{/other_user}","gists_url":"https://api.github.com/users/ebolyen/gists{/gist_id}","starred_url":"https://api.github.com/users/ebolyen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebolyen/subscriptions","organizations_url":"https://api.github.com/users/ebolyen/orgs","repos_url":"https://api.github.com/users/ebolyen/repos","events_url":"https://api.github.com/users/ebolyen/events{/privacy}","received_events_url":"https://api.github.com/users/ebolyen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-10-11T18:51:00Z","updated_at":"2018-10-11T18:51:00Z","closed_at":null,"author_association":"NONE","body":"I was diagnosing a strange namespace error in our QIIME 2 integration tests, where OS X runs of DADA2 were failing because Biostrings moved `narrow` out of its namespace. This correction was accounted for the in the latest bioconductor train release (which isn't up on bioconda yet), however for some reason a [OS X builds](https://anaconda.org/bioconda/bioconductor-biostrings/files) for the latest Biostrings version were uploaded (linux wasn't and the recipe doesn't seem to have changed, is this an accidental recursive upload from a different package?)\r\n\r\nThis got me thinking, what if the bioconda packages for bioconductor all depended on an artificial package which was used to track the bioconductor train release? Then in this situation, conda would have identified that the bioconductor-dada2 being installed required `bioconductor==<some version>` and could have ignored the bioconductor-biostrings OS X build as it would have required `bioconductor==<some version+1>`.\r\n\r\nI believe this would be similar to how the `blas` metapackage is used to negotiate whether or not OpenBlas is available for linking elsewhere in the conda ecosystem.\r\n\r\nThat being said, I'm not sure if it is possible to do this after the fact, since older builds would still exist without the constraint and so conda might \"solve\" those by downgrading other things which is probably an even worse a problem.\r\n\r\nThoughts?"}}
{"actor":{"display_login":"ebolyen"}}