CHANGES IN VERSION 1.8
----------------------

BUG FIXES

    o Restore report() performance

NEW FEATURES

    o Support HiSeq tile layout

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)
