{"push_id":1229629715,"size":17,"distinct_size":1,"ref":"refs/heads/master","head":"bdfb76ae1cd7ae532e89b01c29f7bf2c61db37a7","before":"30cd53b386ee5471676344df6bf590d94937d1d8","commits":[{"sha":"a2e12d40c447766a8b78cd2897761f4d9c0bcad3","author":{"name":"Travis Wheeler","email":"5154a24f5803bf747f09d7bd5d605f4803acbeb6@traviswheeler.com"},"message":"Update to the ReadBlock functions, impacting longtarget (nhmmer)\nblocks. Previously, blocks could differ almost 2-fold in length.\nNow the slop is only 5%.\n\nPreviously, the function worked like this (for longtarget/DNA seqs):\n- goal: get a bunch of sequence with total length roughly max_residues\n- Since we're dealing with DNA, we're happy to extract windows of sequence\n  from a (much) longer sequence. But we also might be dealing with short\n  sequences, so we need to be willing to grab a bunch of them\n- Request a window of up to max_residues, add it to the block list\n- If the received window is shorter than than max_residues, ask for\n  another window of up to max_residues.\n- Continue requesting windows (each time asking for up to max_residues)\n  until the total length is > max_residues.\n\nThis runs the risk of producing a set of sequences with total length\nalmost 2*max_residues (if the limit is almost reached by one window,\nthen extended by another max_residues on the next window). This is fixed\nby changing how we request extension. Trivially, this could just ask\nfor a window of at most (max_residues-total_size_so_far) ... but there\nare cases where this ends up requesting a tiny prefix of a very long\nsequence. To avoid that, I've allowed a bit of slop, so that the next\nwindow request will be at least 5% of max_residues:\n    max( (max_residues - size_so_far) , (0.05*max_residues) )\nThis ensures that all windows are reasonably long, and that any two\nblocks will be roughly the same length.\n\nThis fix will allow me to clean up an issue with wasteful memory\nallocation in the FM-index construction phase of makehmmerdb.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/a2e12d40c447766a8b78cd2897761f4d9c0bcad3"},{"sha":"71f175012549a80296bf6c2b49ce27c5b0c06eee","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Updates autodetection of a2m vs. afa, and phylip vs phylips format.\n\nSujai Kumar (sujai.kumar@ed.ac.uk) sends an example of an input\nalignment that crashes hmmbuild. The crash is a bug in handling format\nautodetection failure, already fixed in Easel.  But it made me think\nabout how Easel handles ambiguity of a2m vs. afa, and then phylip\nvs. phylips. It'd be better if we did not risk making any mistakes in\nformat detection that would corrupt an alignment, or annotation.\n\nSpecified a new policy for the format guesser: it may not guess a\nformat if the input is valid in more than one guessable format, and\nguessing the wrong one could result in changing an alignment or its\nannotation.\n\nChanged how AFA vs. A2M are detected. It will no longer try to detect\nA2M based solely on content, dotless or not; it will only call A2M if\nthere is a .a2m file suffix. (That is, demoted A2M; like psiblast\nformat, now it is not guessable based on content alone.)  There are\ntoo many common examples of aligned FASTA format files that look like\nA2M, including Kumar's.  Removed msafile_guess_afalike(); it cannot be\nmade to work effectively. If it is 100% reliable, in terms of never\nmistakingly reading afa as a2m or vice versa, then it calls too many\nreasonable AFA files as ambiguous.  Added\nesl_msa_testfiles/afa/afa.good.3: Kumar's example, afa.  Updated unit\ntests.\n\nChanged how interleaved vs. sequential Phylip are detected. Realized,\nproved it's possible to produce pathological edge cases that are valid\nin both formats. _CheckFileFormat() changed: now if file appears\nconsistent with both, returns eslEAMBIGUOUS.  Rewrote\nphylip_check_sequential_unknown() completely, greatly improving its\nability to detect the format and a nonstandard namelength. Added\nesl_msa_testfiles/phylip/phylip.ambig.1 as an example. Updated unit\ntests.\n\nModified the suffix rules to be more complete, and to allow every\nambiguous format to be signaled by a suffix rule. (Except clustal\nvs. clustallike, which doesn't matter.) Removed .aln (people use .aln\nfor aligned FASTA, not just CLUSTAL). Added .pb so psiblast format can\nbe signaled, over selex. Added .ph/.phy/.phyi for signaling\ninterleaved Phylip, and .phs for signaling sequential Phylip.\n\nAdded esl_msafile.md: documents msa format codes, and how the format\nguesser works. (First Markdown documentation in Easel.)\n\nImproved error handling in esl_msafile_GuessFileFormat(). It now takes\nan <errbuf> argument.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/71f175012549a80296bf6c2b49ce27c5b0c06eee"},{"sha":"ec44c0e78344151ff61f026ff1dd9a66ed9746f8","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Merge branch 'a2m-detection' into develop","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/ec44c0e78344151ff61f026ff1dd9a66ed9746f8"},{"sha":"731d23af468ba968834c4ee46a09af57cb1a2de5","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Merge branch 'develop' of https://github.com/EddyRivasLab/easel into develop","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/731d23af468ba968834c4ee46a09af57cb1a2de5"},{"sha":"0a392f034df4196fe2b1ed4a3c7498a61982e680","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Fixes a bug in FASTA parsing, with empty L=0 final sequence.\n\nesl_dsqdata unit test occasionally failed. Traced to FASTA parser,\nwhich reports \"premature EOF\" error when from parsing header, if final\nsequence is L=0, but L=0 sequences are allowed elsewhere in the file.\nesl_dsqdata triggered this because it uses esl_sq_Sample() to generate\npathologically evil sequence data in its unit tests.\n\nFixed, by changing header_fasta to tolerate EOF when last seq is\nempty.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/0a392f034df4196fe2b1ed4a3c7498a61982e680"},{"sha":"aaec6eea3d4f84287c569c3fe8f27200def2bb6f","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Merge branch 'dsqdata-testfailure' into develop","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/aaec6eea3d4f84287c569c3fe8f27200def2bb6f"},{"sha":"efbab4042b39be631d06cb878b5e906af0f97894","author":{"name":"Walt Shands","email":"f0d6982cf72260fc8e0276364f2a9d19ec240bab@gmail.com"},"message":"Added code to destroy an ORF block if it exists in a workstate\n\nAdded code to destroy an orf_block when the workstate is being\ndestroyed if the orf_block exists at that time","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/efbab4042b39be631d06cb878b5e906af0f97894"},{"sha":"cc4e266bff31609d6f15560c5dbe0321865aa5da","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Moves eslDSQDATA magic numbers to .c from .h\n\neslDSQDATA_MAGIC_V1 format magic numbers are static, so they belong in\nthe .c file, not in the .h file, or compilers will complain about\nunused variables when esl_dsqdata.h is included.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/cc4e266bff31609d6f15560c5dbe0321865aa5da"},{"sha":"0c6ecc77f280b5378ea901f78e18c66de4d851b9","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Merge branch 'develop' of https://github.com/EddyRivasLab/easel into develop","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/0c6ecc77f280b5378ea901f78e18c66de4d851b9"},{"sha":"9d9eceaee00f509886ea3c67fbad157ae448a59a","author":{"name":"Nick Carter","email":"bc13d474dcc1b044cf40c091261ea53be0fa0d80@fas.harvard.edu"},"message":"fixing permission problems","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/9d9eceaee00f509886ea3c67fbad157ae448a59a"},{"sha":"01c6704d9dad233e0925a8d12ea0f65606c12dbd","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Merges branch 'master' into develop\n\nPulls Nick's AVX commits (and permissions fixes), erroneously\ncommitted on the master branch, back into develop branch.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/01c6704d9dad233e0925a8d12ea0f65606c12dbd"},{"sha":"c952497ebfe44feec0d76e8901328a512e843ab4","author":{"name":"cryptogenomicon","email":"745a5948f3a29be7b294faa8063f9998c214afbb@eddylab.org"},"message":"Suppresses compiler warnings for empty esl_avx.c.\n\nAdds dummy nothingness, same strategy as in other conditionally\ncompiled modules such as esl_sse and esl_vmx.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/c952497ebfe44feec0d76e8901328a512e843ab4"},{"sha":"17b2063ec1221105955c011dc63bcada15b2825d","author":{"name":"Eric Nawrocki","email":"a112d6679cb8eec061b6386d7bf79b0fff204031@ncbi.nlm.nih.gov"},"message":"Bumps version to 0.43; Updates release date to Jun 2016.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/17b2063ec1221105955c011dc63bcada15b2825d"},{"sha":"697cc08098907bb1d3ef515d4906acdbda4cc772","author":{"name":"Eric Nawrocki","email":"a112d6679cb8eec061b6386d7bf79b0fff204031@ncbi.nlm.nih.gov"},"message":"Fixes release date as June 2016, changed from Jun 2016.","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/697cc08098907bb1d3ef515d4906acdbda4cc772"},{"sha":"c9f6182e23ed8c8075414ffbcb695339c76d7ce6","author":{"name":"Eric Nawrocki","email":"a112d6679cb8eec061b6386d7bf79b0fff204031@ncbi.nlm.nih.gov"},"message":"Merge branch 'develop' into release-0.43","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/c9f6182e23ed8c8075414ffbcb695339c76d7ce6"},{"sha":"d2040a3429b7b85bbda68b83142b8ff790f70595","author":{"name":"Eric Nawrocki","email":"a112d6679cb8eec061b6386d7bf79b0fff204031@ncbi.nlm.nih.gov"},"message":"Updates release date to July 2016 (was going to release with June 2016, but I need to retest anyway due to recent bug fix).","distinct":false,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/d2040a3429b7b85bbda68b83142b8ff790f70595"},{"sha":"bdfb76ae1cd7ae532e89b01c29f7bf2c61db37a7","author":{"name":"Eric Nawrocki","email":"a112d6679cb8eec061b6386d7bf79b0fff204031@ncbi.nlm.nih.gov"},"message":"Merge branch 'release-0.43'","distinct":true,"url":"https://api.github.com/repos/stationarysalesman/easel/commits/bdfb76ae1cd7ae532e89b01c29f7bf2c61db37a7"}]}
{"actor":{"display_login":"stationarysalesman"}}