{"action":"opened","issue":{"url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/4413","repository_url":"https://api.github.com/repos/bioconda/bioconda-recipes","labels_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/4413/labels{/name}","comments_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/4413/comments","events_url":"https://api.github.com/repos/bioconda/bioconda-recipes/issues/4413/events","html_url":"https://github.com/bioconda/bioconda-recipes/issues/4413","id":221328357,"number":4413,"title":"Travis vs the \"real world\"?","user":{"login":"molpopgen","id":6416159,"avatar_url":"https://avatars3.githubusercontent.com/u/6416159?v=3","gravatar_id":"","url":"https://api.github.com/users/molpopgen","html_url":"https://github.com/molpopgen","followers_url":"https://api.github.com/users/molpopgen/followers","following_url":"https://api.github.com/users/molpopgen/following{/other_user}","gists_url":"https://api.github.com/users/molpopgen/gists{/gist_id}","starred_url":"https://api.github.com/users/molpopgen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/molpopgen/subscriptions","organizations_url":"https://api.github.com/users/molpopgen/orgs","repos_url":"https://api.github.com/users/molpopgen/repos","events_url":"https://api.github.com/users/molpopgen/events{/privacy}","received_events_url":"https://api.github.com/users/molpopgen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-04-12T17:02:23Z","updated_at":"2017-04-12T17:02:23Z","closed_at":null,"body":"This is more of a general question for some of the @bioconda/core folks.\r\n\r\nTo make a long story short, I've come across differences in what it takes to build a package on a Travis bot in a miniconda environment vs. what it takes to build the same package in the same environment on my on OS X and Linux machines.\r\n\r\nRecently, Travis builds for my project (http://github.com/molpopgen/pylibseq) started failing.   The builds on Travis are done in a miniconda environment, pulling dependencies in from bioconda. Diagnosing the failure took quite a long time, but it reduced to the following:\r\n\r\n* bioconda's libsequence is a dependency\r\n* libsequence in turn depends on htslib\r\n* libsequence was compiled against htslib 1.3.something, and htslib is now at 1.4 in bioconda.\r\n\r\nIn order to build on travis, I must install htslib==1.3.2.  However, I am perfectly able to use htslib 1.4 on my personal machines.  I've confirmed this on OS X and Linux.\r\n\r\nThe implication seems to be that when I update the pylibseq recipe for bioconda, I either have to update the build recipe for libsequence  and compile against htslib 1.4 (no big deal), or pin the htslib dependency at 1.3.2, which is artificial because it is only a requirement for the Travis system whereas things would appear to \"just work\" for users with htslib 1.4 (and presumably future versions to the extent that ABI compatibility is maintained).\r\n\r\nMy questions are:\r\n\r\n* Are there recommendations for what to do here?\r\n* I'm assuming we want to avoid random pinning as much as possible?\r\n* On Linux, I suppose that I could simply statically-link dependent libraries, but I've never figured out if OS X's ld can do that...?"}}
{"actor":{"display_login":"molpopgen"}}