CHANGES IN VERSION 1.50 ----------------------- NEW FEATURES o (v 1.49.1) `as(., "QualityScaledDNAStringSet")` propagates names. See https://github.com/Bioconductor/ShortRead/issues/3. o (v 1.49.1) implement`as(., "DNAStringSet")`. See https://github.com/Bioconductor/ShortRead/issues/3. BUG FIXES o (v 1.49.3) report invalid FastqStreamer / FastqSampler on re-serialized objects. Fixes https://github.com/Bioconductor/ShortRead/issues/5. CHANGES IN VERSION 1.48 ----------------------- NEW FEATURES o (v 1.47.1) `countFastq()` counts the number of records, nucleotides, and quality scores in one or several fastq files. CHANGES IN VERSION 1.44 ----------------------- BUG FIXES o (v 1.44.2) readFastq argument qualityType = "Auto" correctly identifies SFastqQuality. See https://github.com/Bioconductor/ShortRead/pull/2 CHANGES IN VERSION 1.37 ----------------------- BUG FIXES o (v. 1.37.2) FastqQuality() includes the last printable ASCII character '~' o (v. 1.37.3) countLines() returns numeric values, to allow for files with more than 2^31-1 lines CHANGES IN VERSION 1.35 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o Reads up to 2M bases can be parsed CHANGES IN VERSION 1.27 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o fastqFilter allows several input 'files' to be written to a single 'destinations'. o readAligned() for BAM files is defunct. QA and associated methods removed. o srapply removed o 'legacy' function readInfo() renamed readIntensityInfo() CHANGES IN VERSION 1.25 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o srapply is defunct o readAligned() for BAM files is deprecated; use GenomicAlignments::readGAligned instead. BUG FIXES o close opened files when parsing old bowtie, soap, and solexa export file formats. o Don't allow R memory to be released prematurely when processing old bowtie file formats / creating external pointers. o writeFastq,FastqFile obeys 'compress' argument; mode must be specified by the caller (typically mode="a") CHANGES IN VERSION 1.23 ----------------------- NEW FEATURES o alphabetScore,PhredQuality-method implemented o reverse, reverseComplement methods for ShortReadQ objects o srlist, to access SRList data as a base R list. SIGNIFICANT USER-VISIBLE CHANGES o readFastq qualityType="Auto" chooses base-64 encoding when no characters are encoded at less than 59, and some are encoded at greater than 74. BUG FIXES o report() prints adapter contaminants correctly when user has stringsAsFactors=FALSE o qa(..., sample=FALSE) no longer tries to re-match 'pattern' argument CHANGES IN VERSION 1.21 ----------------------- NEW FEATURES o writeFastq can write (and does so by default) gz-compressed files SIGNIFICANT USER-VISIBLE CHANGES o Use BiocParallel rather than srapply, mark srapply as 'Deprecated' o qa,character-method defaults to type="fastq" o Input of 'legacy' formats marked as such o alphabetByCycle supports amino acid string sets CHANGES IN VERSION 1.19 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o qa(..., type="fastq") uses a sample of n=1000000 reads by default, rather than then entire file; use sample=FALSE to revert to previous behavior. NEW FEATURES o encoding,FastqQuality and encoding,SFastqQuality provide a convenient map between letter encodings and their corresponding integer quality values. o filterFastq transforms one fastq file to another, removing reads or nucleotides via a user-specified function. trimEnds,character-method & friends use this for an easy way to remove low-quality base. BUG FIXES o writeFastq successfully writes zero-length fastq files. o FastqStreamer / FastqSampler warn on incomplete (corrupt) files CHANGES IN VERSION 1.17 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o FastqSampler can return records in the order encountered in the sampled file. o Increase to 10000 the number of reads examined for determining Fastq quality type o as(FastqQuality, "numeric") returns a vector of quality scores concatenated end to end (previously cycle to cycle), without padding to effective equal width BUG FIXES o trimTails, successive=TRUE would return inconsistent results o FastqStreamer, FastqSampler parse fastq files created with '\r' CHANGES IN VERSION 1.15 ----------------------- NEW FEATURES o FastqStreamer accepts IRanges for selecting input records SIGNIFICANT USER-VISIBLE CHANGES o as(ShortReadQ, "matrix") now accepts ShortReadQ instances with heterogeneous widths, returning a matrix x[i, j] with NA values in when j > width()[i]. BUG FIXES o readAligned, type="BAM" correctly adds required 'what' elements o FastqSampler would only randomize first read; introduced 1.13.9 2011-12-02, fixed 1.15.4 2012-04-25 o report(qa, ...) no longer produces obviously confused base calls per cycle o FastqFileList would fail to initialize correctly from a character vector CHANGES IN VERSION 1.13 ----------------------- SIGNIFICANT USER-VISIBLE CHANGES o FastqSampler is considerably faster o FastqSampler and FastqStreamer require explicit close() to avoid warnings about closing unused connections BUG FIXES o qa reports on very large lanes would overflow alphabetFrequency o qa report scales adapaterContamination correctly o FastqSampler would rarely sample fewer than requested reads o FastqSampler supports outputs of >2^31 - 1 total nucleotides o readFastq parses records with 0 width CHANGES IN VERSION 1.11 ----------------------- NEW FEATURES o trimTails to trim low quality trailing nucleotides o trimEnds to remove arbitrary (vectors of) letters from reads or qualities o FastqStreamer to iterate over a fastq file o FastqFile, FastqFileList to represent fastq files SIGNIFICANT USER-VISIBLE CHANGES o writeFastq has argument full, default value FALSE, disabling printing of identifier a second time in '+' line o srapply requires that options(srapply_fapply="parallel") or options(srapply_fapply="Rmpi") to enable parallel processing via fapply BUG FIXES o SolexaRealign, SolexaAlign, and SolexaResult transposed strand information o FastqSampler segfaulted on some files o writeFasta had a semi-documented argument mode; it is now documented and as a consequence dis-allows argument 'append' that would previously have been passed to underlying methods. CHANGES IN VERSION 1.9 ---------------------- NEW FEATURES o Support for HiSeq tile layout o Track reads passing filters, including across logical filter operations CHANGES IN VERSION 1.7 ---------------------- BUG FIXES o qa() represented the per-cycle quality scores incorrectly; this influenced qa[["perCycle"]][["quality"]][["Score"]], but not the qa report. o qa() for type="SolexaExport" transposed the 'aligned' and 'filtered' labels on all elements of SolexaExportQA. Thanks Nicolas Delhomme for the report. o report() failed when each read was unique. Thanks Peng Yu for the report. SIGNIFICANT USER-VISIBLE CHANGES o The perCycleQuality graph in the qa report now includes boxplots for all cycles instead of just the median value. o A depthOfCoverage graph has been added to the qa report for BAM, Bowtie, SolexaExport and SolexaRealign file types. o An adapterContamination measure has been added to the qa report for BAM, Bowtie, SolexaExport, SolexaRealign and Fastq file types. o srorder is now stable (the original order of identical is preservered). NEW FEATURES o Add class BAMQA. qa() can now be called on BAM files. o The param argument in readAligned() and qa() for type="BAM" can now be a single ScanBamParam object or a list of them. o FastqSampler can be used to draw samples from a fastq file. CHANGES IN VERSION 1.5 ---------------------- SIGNIFICANT USER-VISIBLE CHANGES o levels(strand(aln)) is c("+", "-", "*") (was c("-", "+", "*")) o Add USE.NAMES argument to srapply, minimum length to (internal) function ..reduce. NEW FEATURES o Optionally retrieve multiplex bar code, paired read number, and id from SolexaExport (contribution from Nicolas Delhomme) o renew() and renewable() provide an interface to updating ShortRead instances o srapply checks for and uses multicore o readIntensities supports Illumina RTA '.cif' / '.cnf' files o readAligned type="BAM" parses BAM files, extracting simple (no indel) cigars BUG FIXES o readIntensities type="IparIntensity" correctly handles multiple tiles CHANGES IN VERSION 1.3 ---------------------- SIGNIFICANT USER-VISIBLE CHANGES o coverage,AlignedRead-method has a changed interface (shift/width rather than start/end) and default behavior (return value in genome coordinates, rather than minimal covered region). o readAligned,character-method, type="Bowtie" and readFastq return FastqQuality by default. o coverage,AlignedRead-method now returns an RleList NEW FEATURES o qa reports from _realign.txt, MAQMap files o QualityScoreDNAStringSet coercion methods o qa type="character" now accepts a filter argument with value srFilter() o alphabetByCycle supports variable-width XStringSets o qa,ShortReadQ and qa,list methods for qa on existing objects BUG FIXES o Parse .gz realign files o alphabetScore,FastqQuality-method shifted quality by +1 CHANGES IN VERSION 1.1 ---------------------- SIGNIFICANT USER-VISIBLE CHANGES o 454 quality scores are returned as FastqQuality-encoded o For functions accepting dirPath, pattern to name files, allow dirPath to be a vector of file names when pattern is character(). o width() on ShortRead and derived classes (including AlignedRead now returns a vector of widths, of length equal to the length of the object. NEW FEATURES o Add Bowtie as a 'type' value for qa and report o Add dustyScore() and dustyFilter() to identify low-complexity regions o Parse _qseq files (to ShortReadQ or XDataFrame) o Parse IPAR image intensity files _int.txt.p, _nse.txt.p, _pos.txt o Create HTML-based quality assessment reports o Add trimLRPatterns() for ShortRead and derived classes (ShortReadQ, AlignedRead). o Add narrow() for ShortRead, QualityScore, and derived classes. o Use append() to append two objects of the same ShortReadQ or QualityScore and derived classes together o writeFastq for classes derived from ShortReadQ o Input functions support .gz or text files. o readIntensity reads Solexa image intensity files into R, including information about lane, tile, x, and y coordinates of each read. o readPrb returns different types of objects, depending on the 'as' argument of the readPrb,character-method. o readXStringSet gets arguments skip, nrows; argument order changed slightly o New built-in SRFilters positionFilter, uniqueFilter to select reads aligning to particular positions, or to select only unique instances of reads aligning to each position. o readAligned gains a Solexa _results parser (_results files are listed as 'intermediate' in the Solexa manual, and not a good end-point for analysis) o readAligned gains a Bowtie output parser o readAligned gains ability to parse MAQ 0.7 version binary files BUG FIXES o readQual would fail to read 454 quality scores correctly when these spanned more than one line of input per read o coverage treated reads as 1 base longer than they were o FastqQuality got the quality encoding off by one in as(x, "matrix") o qa_solexa.Rnw incorrectly displayed read occurences when lanes were presented out-of-order (an unusual occurence) o readAligned SolexaAlign, etc., updated to parse 'chromsome' and 'position', and 'strand' information correctly o readAligned MAQMapview failed for most chromosome labels CHANGES IN VERSION 1.0 ---------------------- SIGNIFICANT USER-VISIBLE CHANGES o SRFilter allows construction of filters that can be used to subset existing data objects, or filter incoming (readAligned, at the moment) objects. o readAligned for Solexa-based alignments return 'strand' information as factor with levels "-", "+", "*" (strand not relevant), NA (no strand information available). o srorder, srsort, srrank, and srduplicated for AligendRead class now sort based on chromosome, strand, position AND sread; previous behavior can be recovers by extracting the sequences srsort(sread(aln)), etc. o Functions using SolexaPath now search all relevant directories, e.g., in analysisPath, rather than the first BUG FIXES o 'run' in eland_export files is correctly parsed as a factor (start date: 29 September, 2008)