Updates:

Version 1.3.2
---------------------
Changes to labelRows():
    + new resolveConflicts + rtOrder argument added for automated resolution of
      conflicting feature pair alignment fows in combinedTable, with embedded
      C function (resolveRows.c)
    + new argument rtOrder paired with resolveConflicts determines if RT order
      consistency is expected when resolving alignment conflicts
    + duplicate column names for {labels, subgroup, alt} removed and no longer
      allowed in resulting combinedTable

Changes to metabCombiner():
    + new check for metabCombiner object inputs: labelRows must be called before
      aligning a metabCombiner object with a new dataset
    + resolveConflicts method applied to metabCombiner object to eliminate
      conflicting alignments/ attain 1-1 matches for all features
    + new rtOrder argument controlling resolveConflicts similar to above




Version 1.3.1
----------------------
Changes to fit_gam()/ fit_loess():
    + messages changed from using cat() to using message()

Changes to metabCombiner() & combinedTable / featdata slots:
    + rowID column now the first column in both tables instead of having this
      information be the row names

Changes to calcScores() / evaluateParams() / labelRows():
    + updated to reflect above changes to keep rowID identical between
      combinedTable & featdata

Changes to write2file():
    + combinedTable & featdata merged by rowID column when metabCombiner objects
      used as input


Version 1.1.4 (2021-5-18)
-------------------------------
Multi-dataset support and batchCombine added to metabCombiner package.

Changes to metabCombiner-class:
    + new slot "featdata" for feature descriptor (id,mz,rt,Q,adduct) tracking
    + new slot "datasets" for dataset ID tracking
    + new slot "xy" for tracking current x & y dataset labels

New metabCombiner methods:
    + datasets: retrieves dataset identifiers from metabCombiner object
    + x: retrieves identifier of current x dataset
    + y: retrieves identifier of current y dataset
    + featdata: retrieves all feature meta-data or from one dataset
    + iddata: retrieves all feature identities or identities from one dataset
    + mzdata: retrieves all feature m/z values or m/z values from one dataset
    + rtdata: retrieves all feature rt values or rt values from one dataset
    + Qdata: retrieves all feature Q values or Q values from one dataset
    + adductdata: retrieves all adduct labels or adduct labels from one dataset

New reduceTable()/ reduceTableParam() functions:
    + variant of labelRows where reduce argument automatically set to TRUE
    + defaults are the same as labelRows()/ labelRowsParam(), except for rank
      thresholds (set to 2 for maxRankX & maxRankY)

New batchCombine() function:
    + method for automated sequential alignment of metabolomics batch datasets
    + modeled after metabCombine function, but takes a list of metabData objects
      as input and applies reduceTable with reduceTableParam() parameter inputs

Changes to object methods (getExtra, getSamples, nonmatched):
    + default data argument value changed to NULL
    + if data = NULL, returns full list pertaining to object slot

Changes to data.R:
    + new object "metabBatches" - a list of three batch data frame for use as an
      example dataset for batchCombine()

Changes to metabCombiner():
    + xdata & ydata arguments now accept metabCombiner objects as inputs
    + featdata slot constructed alongside combinedTable at this step
    + xid & yid arguments added for individual dataset naming (metabData) or
      specifying active x & y dataset to use for analysis (metabCombiner)
    + option to average m/z, rt, & Q for metabCombiner object inputs
    + faster metabCombiner table construction

Changes to labelRows()/ labelRowsParam():
    + new argument maxRTerr for annotating/ removing feature pair alignment rows
      with excessive retention time fitting errors

Changes to plot_fit():
    + bug fix for highlighting outliers
    + new legend argument for specifying points on the legend

Changes to write2file():
    + when metabCombiner objects provided as input, merges the combinedTable with
      featdata in output file for printing
    + faster data pasting with tidyr::unite

CITATION added

numerous other changes to documentation, parameter & error checking


Version 1.1.3 (2021-1-13)
-------------------------------
Package additions:
    + metabCombine(): main package workflow wrapper function
    + Parameter list functions for loading defaults of main workflow methods

Changes to labelRows():
    + "conflict" argument replaced with "delta", with default value (0.2)
    + default value of "minScore" argument increased to 0.5

Changes to calcScores():
    + default argument values for A (75), B (10), C (0.25)

Changes to fit_loess():
    + new argument "control" for controlling loess fit (list argument)
    - eliminated "iterLoess" parameter

Changes to selectAnchors():
    + default for "tolrtq" argument changed from 0.5 to 0.3


Version 1.1.2 (2020-12-28)
-------------------------------
Changes to fit_gam()/ fit_loess():
    + new outlier detection method based on boxplot / IQR added
    + new argument: outlier, which accepts "MAD" or "boxplot" as a value
    + altered argument names: "frac" to "prop", "ratio" to "coef"
    + documentation and minor code changes to main and supporting functions

Changes to plot_fit():
    + new options for showing, hiding, or highlighting (with a legend) outliers
    + new arguments: outlier, which accepts "show" / "s", "remove" / "r", or
      "highlight" / "h" as arguments ; ocol, outlier point color if outlier
      argument set to "highlight" / "h"
    - remove.outliers argument removed

Other changes:
    + new test case for fit_gam()


Version 1.1.1 (2020-12-02)
-------------------------------
Bug Fixes:
    + combinedTable check for missing group values (Issue #7)
    + calcScores / evaluateParams groups bug (Issue #8)
    + Warning for column names with bracket characters "{ ( [ ] ) }" (Issue #9)
    + QCol bug (Issue #10)

New Functionality
    + getExtra method added to metabCombiner objects (Issue #11)


Version 1.0.0 (2020-10-20)
------------------------------
   +Accepted to Bioconductor

    Functionality changes:
    + matrixStats function implementations for matrix calculations replace base
      implementations where appropriate, with notable improvements in adjustData()
      function within metabData()
    + filterRT() now gives an error rather than a warning if rtmin or rtmax are out
      of the bounds of the dataset RTs


Changes in version 0.99.0 (2020-09-11)
------------------------------------------
+ Submitted to Bioconductor