From: Alec W. <al...@br...> - 2011-03-14 14:19:46
|
Picard release 1.41 14 March 2011 - SamToFastq was NPEing if @RG.PU did not exist. I have modified it to fall back to using @RG.ID if @RG.PU is null and we are doing output per read group. - Add SeekableHTTPStream ctor that takes a Proxy object. - QualityScoreDistribution.java: Converted to use arrays internally to reduce runtime by 30-40%. - Adding functionality to SamToFastq to optionally trim read 1 or read 2 and to optionally write a maximum number of bases (post-trimming) to the fastq file. - Added a new utility called ReorderSam (contributed by Mark DePristo) which is designed to take a SAM/BAM file and switch out the sequence dictionary for one in a different order, and then re-order the INPUT file to produce a coordinate sorted OUTPUT file with respect to the new sequence dictionary. - AddOrReplaceReadGroups: A new utility to add or replace the (possibly empty) set of read groups in an existing SAM or BAM file, contributed by Mark DePristo. - Modified AbstractAlignmentMerger and SamAlignment merger to handle (a) multiple files of alignments and (b) separate alignments of both ends of a paired read. - Significant refactoring of MergeBamAlignment. AbstractAlignmentMerger and SamAlignmentMerger have been modified to use the expected orientations of read pairs rather than a boolean for whether the library is a jumping library. They have new constructors and code that uses these directly will have to be modified to use them. MergeBamAlignment has retained JUMP_SIZE for backwards compatiblity, but it has been deprecated and uses should switch to providing EXPECTED_ORIENTATIONS. - MeanQualityByCycle.java: Reverse complement all reads with the negativeStrandFlag set, even if they are unmapped - Make sure BAM index is created when indexing on the fly, even when the output BAM does not contain any reads. - ValidateSamFile: Flush output stream so that message that error list has been truncated is emitted. - RevertSam.java: When a read has negative strand flag set, reverse-complement it regardless of whether it is mapped or not, and clear the flag. - CollectInsertSizeMetrics.java: Changed histogram holder from HashMap to EnumMap so that metrics file will output in a predictable order - NormalizeFasta.java: Added a warning message if a sequence doesn't have any bases while normalizing. -Alec |