Changes in version 1.12.0
-------------------------

NEW FEATURES

    o normalDB does not need input normal coverage files anymore after creation
      (so the resulting normalDB.rds file can be moved)
    o base quality filtering can be turned off by setting min.base.quality to 0
      or NULL

SIGNIFICANT USER-VISIBLE CHANGES

    o Code cleanups (try to avoid confusion around "targets", "intervals", 
      "baits")
    o renamed reptimingbinsize to reptimingwidth in IntervalFile.R, added
      this feature to preprocessIntervals
    o clarified "targets" vs. "intervals"; whenever something affects both
      on-target and off-target, it is now called "intervals". When only targets,
      e.g. in annotateTargets, "targets" was kept.
    o made gc.gene.file defunct

BUGFIXES

    o catch various input problems and provide better error messages instead
      of crashing
    o stranded input BED files do not cause problems anymore
    o fixed a bug when only a single local optimum was tested (happens only
      when users copy the examples that restrict the search speach to avoid
      long runtimes)


Changes in version 1.10.0
-------------------------

SIGNIFICANT USER-VISIBLE CHANGES

    o New normal database format
    o Runtime performance improvements (skip unlikely local optima, support for
      BiocParallel in runAbsoluteCN, pre-calculation of mapping bias)
    o Support for replication timing scores in coverage normalization
    o More accurate confidence intervals in callMutationBurden
    o More accurate copy numbers for high-level amplifications
    o Very low or high coverage samples are now by default dropped in normal 
      database creation (less than 25% or more than 4 times the median sample 
      coverage)
    o Improved support for third-party upstream tools like GATK4 (experimental)
    o More checks for wrong or sub-optimal input and providing suggestions for
      fixing those issues
    o Gibbs sampling of log tumor/normal coverage error rate
    o Better imputation of mapping bias (instead of smoothing
      over neighboring variants in the sample, smooth over neighboring SNPs
      in the pool of normals - only available when pre-calculated)
    o Experimental support for indels
    o Code cleanups (switch to testthat, removed several obsolete and minor 
      features)
    
API CHANGES

    o renamed gc.gene.file to interval.file since it now provides more than
      GC-content and gene symbols
    o plotAbs ids changed to id (this function now only plots a single
      purity/ploidy solution)
    o changed default of runAbsoluteCN max.logr.sdev to 0.6 (from 0.75)
    o createTargetWeights does not require tumor coverages anymore
    o calculateGCContentByInterval was renamed to preprocessIntervals
    o renamed plot.gc.bias to plot.bias in correctCoverageBias since it now
      also includes replication timing
    o added calculateMappingBiasVcf to pre-compute mapping bias from a
      panel of normal VCF, thus avoiding time loading and parsing
      of huge VCFs
    o max.homozygous.loss now defines the maximum fraction of a chromosome 
      lost, not the whole genome, to avoid wrong maximum likelihood solutions with 
      completely deleted chromosome arms


Changes in version 1.8.0
------------------------

NEW FEATURES

    o Support for off-target reads in copy number normalization and segmentation
    o Added mutation burden calculation
    o More robust mapping bias estimation
    o Added support for CNVkit coverage files (*.cnn, *.cnr)
    o IntervalFile.R can annotate targets with gene symbols and automatically
      convert chromosome naming styles
    o Better artifact filtering by using normalDB more efficiently
    o Support for mappability scores
    o Coverage calculation can now include duplicates 
    o calculateBamCoverageByInterval now provides fragment counts and 
      duplication rates
    o findBestNormal pooling now fragment count based, not coverage based  
    o Experimental support for GATK4
    o predictSomatic now reports posterior probabilites of minor segment copy
      numbers, flags segments if copy numbers are unreliable
    o Targets can be annotated with multiple gene symbols (comma separated)
    o Code cleanups (switch to GRanges where possible, switch to optparse in 
      command line tools)

API CHANGES

    o Due to novel optimizations of provided bait intervals, we highly recommend 
      to regenerate the interval files and normal databases and recalculate all 
      coverages from BAM files
    o New functions: annotateTargets, callMutationBurden
    o Defunct functions: createSNPBlacklist, getDiploid, autoCurateResults,
      readCoverageGatk
    o min.normals defaults to 2 (changed from 4) in setMappingBiasVcf
    o normalDB.min.coverage defaults to 0.25 (changed from 0.2) in filterTargets
    o log.ratio.calibration defaults to 0.1 (from 0.25) in runAbsoluteCN; now 
      relative to purity, not log-ratio noise
    o Removed gc.data from filterTargets since gc_bias is now added to tumor 
      coverage
    o dropped purecn.output from correctCoverageBias (no two-pass anymore)
    o Coverage.R argument --gatkcoverage renamed to --coverage
    o Dropped GC-normalization functionality in NormalDB, since this is 
      now conveniently done in Coverage.R
    o Renamed PureCN.R --outdir argument to --out. Can now specify a file
      prefix as in GATK. Filenames are thus not forced to sample id anymore.  
      If --out is a directory, it will behave like before and will use
      out/sampleid_suffix as filename.
 
