]> git.donarmstrong.com Git - ape.git/blobdiff - ChangeLog
new pic.ortho() and varCompPhylip() + fix in dist.nodes()
[ape.git] / ChangeLog
index 5705d9abd1fbd4e8ced94b76af8e0ecb5510d468..94d9816f25afd2f3ca0a76b58d2918b99f01788e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+               CHANGES IN APE VERSION 2.6-2
+
+
+NEW FEATURES
+
+    o Two new functions, pic.ortho and varCompPhylip, implements the
+      orthonormal contrasts of Felsenstein (2008, Am Nat, 171:713). The
+      second function requires Phylip to be installed on the computer.
+
+    o bd.ext() has a new option conditional = TRUE to use probabilities
+      conditioned on no extinction for the taxonomic data.
+
+
+BUG FIXES
+
+    o write.tree() failed to output correctly tree names.
+
+    o dist.nodes() returned duplicated column(s) with unrooted and/or
+      multichotomous trees.
+
+
+
+               CHANGES IN APE VERSION 2.6-1
+
+
+NEW FEATURES
+
+    o The new function speciesTree calculates the species tree from a set
+      of gene trees. Several methods are available including maximum tree
+      and shallowest divergence tree.
+
+
+BUG FIXES
+
+    o A bug introduced in write.tree() with ape 2.6 has been fixed.
+
+    o as.list.DNAbin() did not work correctly with vectors.
+
+    o as.hclust.phylo() failed with trees with node labels (thanks to
+      Filipe Vieira for the fix).
+
+
+
+               CHANGES IN APE VERSION 2.6
+
+
+NEW FEATURES
+
+    o The new functions rlineage and rbdtree simulate phylogenies under
+      any user-defined time-dependent speciation-extinction model. They
+      use continuous time algorithms.
+
+    o The new function drop.fossil removes the extinct species from a
+      phylogeny.
+
+    o The new function bd.time fits a user-defined time-dependent
+      birth-death model. It is a generalization of yule.time() taking
+      extinction into account.
+
+    o The new function MPR does most parsimonious reconstruction of
+      discrete characters.
+
+    o The new function Ftab computes the contingency table of base
+      frequencies from a pair of sequences.
+
+    o There is now an 'as.list' method for the class "DNAbin".
+
+    o dist.dna() can compute the number of transitions or transversions
+      with the option model = "Ts" or model = "Tv", respectively.
+
+    o [node|tip|edge]labels() gain three options with default values to
+      control the aspect of thermometers: horiz = TRUE, width = NULL,
+      and height = NULL.
+
+    o compar.gee() has been improved with the new option 'corStruct' as an
+      alternative to 'phy' to specify the correlation structure, and
+      calculation of the QIC (Pan 2001, Biometrics). The display of the
+      results has also been improved.
+
+    o read.GenBank() has a new option 'gene.names' to return the name of
+      the gene (FALSE by default).
+
+
+BUG FIXES
+
+    o extract.clade() sometimes shuffled the tip labels.
+
+    o plot.phylo(type = "unrooted") did not force asp = 1 (thanks to Klaus
+      Schliep for the fix)
+
+    o dist.dna(model = "logdet") used to divide distances by 4. The
+      documentation has been clarified on the formulae used.
+
+
+OTHER CHANGES
+
+    o rTraitCont(model = "OU") has an option 'linear = TRUE' to possibly
+      change the parameterisation (see ?rTraitCont for details).
+
+    o pic() now returns a vector with the node labels of the tree (if
+      available) as names.
+
+    o write.tree() and read.tree() have been substantially improved thanks
+      to contributions by Klaus Schliep.
+
+
+
+               CHANGES IN APE VERSION 2.5-3
+
+
+NEW FEATURES
+
+    o The new function mixedFontLabel helps to make labels with bits of
+      text to be plotted in different fonts.
+
+    o There are now replacement operators for [, [[, and $ for the class
+      "multiPhylo" (i.e., TREES[11:20] <- rmtree(10, 100)). They possibly
+      check that the tip labels are the same in all trees.
+
+    o Objects of class "multiPhylo" can be built with c(): there are
+      methods for the classes "phylo" and "multiPhylo".
+
+    o The internal functions .compressTipLabel and .uncompressTipLabel are
+      now documented.
+
+
+BUG FIXES
+
+    o bind.tree(x, y, where, position = 0) did not work correctly if 'y'
+      was a single-edge tree and 'where' was a tip.
+
+    o rTraitCont() did not use the square-root of branch lengths when
+      simulating a Brownian motion model.
+
+
+
+               CHANGES IN APE VERSION 2.5-2
+
+
+NEW FEATURES
+
+    o There is now a print method for results from ace().
+
+    o There is a labels() method for objects of class "DNAbin".
+
+    o read.dna() has a new option 'as.matrix' to possibly force sequences
+      in a FASTA file to be stored in a matrix (see ?read.dna for details).
+
+
+BUG FIXES
+
+    o as.phylo.hclust() used to multiply edge lengths by 2.
+
+    o A minor bug was fixed in rTraitDisc().
+
+    o ace() sometimes failed (parameter value was NaN and the optimisation
+      failed).
+
+
+DEPRECATED & DEFUNCT
+
+    o evolve.phylo() and plot.ancestral() have been removed.
+
+    o chronogram(), ratogram(), and NPRS.criterion() have been removed.
+
+
+OTHER CHANGES
+
+    o nj() has been improved and is now about 30% faster.
+
+    o The default option 'drop' of [.DNAbin has been changed to FALSE to
+      avoid dropping rownames when selecting a single sequence.
+
+    o print.DNAbin() has been changed to summary.DNAbin() which has been
+      removed.
+
+
+
+               CHANGES IN APE VERSION 2.5-1
+
+
+NEW FEATURES
+
+    o The new function stree generates trees with regular shapes.
+
+    o It is now possible to bind two trees with x + y (see ?bind.tree for
+      details).
+
+    o drop.tip(), extract.clade(), root(), and bind.tree() now have an
+      'interactive' option to make the operation on a plotted tree.
+
+    o cophyloplot() gains two new arguments 'lwd' and 'lty' for the
+      association links; they are recycled like 'col' (which wasn't before).
+
+
+BUG FIXES
+
+    o rTraitDisc() did not use its 'freq' argument correctly (it was
+      multiplied with the rate matrix column-wise instead of row-wise).
+
+    o [node|tip|edge]labels(thermo = ) used to draw empty thermometers
+      with NA values. Nothing is drawn now like with 'text' or 'pch'.
+      The same bug occurred with the 'pie' option.
+
+    o A bug was fixed in compar.ou() and the help page was clarified.
+
+    o bind.tree() has been rewritten fixing several bugs and making it
+      more efficient.
+
+    o plot.phylo(type = "p") sometimes failed to colour correctly the
+      vertical lines representing the nodes.
+
+    o plot.phylo(direction = "l", x.lim = 30) failed to plot the branches
+      in the correct direction though the tip labels were displayed
+      correctly.
+
+
+OTHER CHANGES
+
+    o The c, cbind, and rbind methods for "DNAbin" objetcs now check that
+      the sequences are correctly stored (in a list for c, in a matrix
+      for the two other functions).
+
+
+
+               CHANGES IN APE VERSION 2.5
+
+
+NEW FEATURES
+
+    o The new function parafit by Pierre Legendre tests for the
+      coevolution between hosts and parasites. It has a companion
+      function, pcoa, that does principal coordinate decomposition.
+      The latter has a biplot method.
+
+    o The new function lmorigin by Pierre Legendre performs multiple
+      regression through the origin with testing by permutation.
+
+    o The new functions rTraitCont and rTraitDisc simulate continuous and
+      discrete traits under a wide range of evolutionary models.
+
+    o The new function delta.plot does a delta plot following Holland et
+      al. (2002, Mol. Biol. Evol. 12:2051).
+
+    o The new function edges draws additional branches between any nodes
+      and/or tips on a plotted tree.
+
+    o The new function fancyarrows enhances arrows from graphics with
+      triangle and harpoon heads; it can be called from edges().
+
+    o add.scale.bar() has a new option 'ask' to draw interactively.
+
+    o The branch length score replaces the geodesic distance in dist.topo.
+
+    o Three new data sets are included: the gopher-lice data (gopher.D),
+      SO2 air pollution in 41 US cities (lmorigin.ex1, from Sokal &
+      Rohlf 1995), and some host-parasite specificity data
+      (lmorigin.ex2, from Legendre & Desdevises 2009).
+
+
+BUG FIXES
+
+    o add.scale.bar() drew the bar outside the plotting region with the
+      default options with unrooted or radial trees.
+
+    o dist.topo() made R stuck when the trees had different sizes (thanks
+      to Otto Cordero for the fix).
+
+
+OTHER CHANGES
+
+    o The geodesic distance has been replaced by the branch length score
+      in dist.topo().
+
+
+
+               CHANGES IN APE VERSION 2.4-1
+
+
+NEW FEATURES
+
+    o rtree() and rcoal() now accept a numeric vector for the 'br'
+      argument.
+
+    o vcv() is a new generic function with methods for the classes "phylo"
+      and "corPhyl" so that it is possible to calculate the var-cov matrix
+      for "transformation models". vcv.phylo() can still be used for trees
+      of class "phylo"; its argument 'cor' has been renamed 'corr'.
+
+
+BUG FIXES
+
+    o bind.tree() failed when 'y' had no root edge.
+
+    o read.nexus() shuffled tip labels when the trees have no branch
+      lengths and there is a TRANSLATE block.
+
+    o read.nexus() does not try to translate node labels if there is a
+      translation table in the NEXUS file. See ?read.nexus for a
+      clarification on this behaviour.
+
+    o plot.multiPhylo() crashed R when plotting a list of trees with
+      compressed tip labels.
+
+    o write.nexus() did not translate the taxa names when asked for.
+
+    o plot.phylo(type = "fan") did not rotate the tip labels correctly
+      when the tree has branch lengths.
+
+    o ace(type = "continuous", method = "ML") now avoids sigma² being
+      negative (which resulted in an error).
+
+    o nj() crashed with NA/NaN in the distance matrix: an error in now
+      returned.
+
+
+
+               CHANGES IN APE VERSION 2.4
+
+
+NEW FEATURES
+
+    o base.freq() has a new option 'freq' to return the counts; the
+      default is still to return the proportions.
+
+
+BUG FIXES
+
+    o seg.sites() did not handle ambiguous nucleotides correctly: they
+      are now ignored.
+
+    o plot(phy, root.edge = TRUE) failed if there was no $root.edge in
+      the tree: the argument is now ignored.
+
+    o add.scale.bar() failed when 'x' and 'y' were given (thanks to Janet
+      Young for the fix).
+
+
+OTHER CHANGES
+
+    o Trying to plot a tree with a single tip now returns NULL with a
+      warning (it returned an error previously).
+
+    o The way lines representing nodes are coloured in phylograms has
+      been modified (as well as their widths and types) following some
+      users' request; this is only for dichotomous nodes.
+
+    o The argument 'adj' in [node][tip][edge]labels() now works when
+      using 'pie' or 'thermo'.
+
+    o A more informative message error is now returned by dist.dna() when
+      'model' is badly specified (partial matching of this argument is
+      done now).
+
+    o Deprecated functions are now listed in a help page: see
+      help("ape-defunct") with the quotes.
+
+
+DEPRECATED & DEFUNCT
+
+    o The functions heterozygosity, nuc.div, theta.h, theta.k and
+      theta.s have been moved from ape to pegas.
+
+    o The functions mlphylo, DNAmodel and sh.test have been removed.
+
+
+
+               CHANGES IN APE VERSION 2.3-3
+
+
+BUG FIXES
+
+    o add.scale.bar() always drew a horizontal bar.
+
+    o zoom() shuffled tips with unrooted trees.
+
+    o write.nexus() failed to write correctly trees with a "TipLabel"
+      attribute.
+
+    o rcoal() failed to compute branch lengths with very large n.
+
+    o A small bug was fixed in compar.cheverud() (thanks to Michael
+      Phelan for the fix).
+
+    o seg.sites() failed when passing a vector.
+
+    o drop.tip() sometimes shuffled tip labels.
+
+    o root() shuffled node labels with 'resolve.root = TRUE'.
+
+
+
+               CHANGES IN APE VERSION 2.3-2
+
+
+BUG FIXES
+
+    o all.equal.phylo() did not compare unrooted trees correctly.
+
+    o dist.topo(... method = "PH85") did not treat unrooted trees
+      correctly (thanks to Tim Wallstrom for the fix).
+
+    o root() sometimes failed to test for the monophyly of the
+      outgroup correctly.
+
+    o extract.clade() sometimes included too many edges.
+
+    o vcv.phylo() did not work correctly when the tree is in
+      "pruningwise" order.
+
+    o nj() did not handle correctly distance matrices with many 0's.
+      The code has also been significantly improved: 7, 70, 160 times
+      faster with n = 100, 500, 1000, respectively.
+
+
+
                CHANGES IN APE VERSION 2.3-1
 
 
 NEW FEATURES
 
+    o The new function is.monophyletic tests the monophyly of a group.
+
     o There is now a c() method for lists of class "DNAbin".
 
     o yule.cov() now fits the null model, and its help page has been
       corrected with respect to this change.
 
+    o drop.tip() has a new option 'rooted' to force (or not) a tree
+      to be treated as (un)rooted.
+
 
 BUG FIXES
 
@@ -26,6 +447,10 @@ BUG FIXES
       the fix. With other improvements, this function is now about 6
       times faster.
 
+    o write.tree() failed with objects of class "multiPhylo".
+
+    o drop.tip(, subtree = TRUE) sometimes shuffled tip labels.
+
 
 OTHER CHANGES
 
@@ -37,6 +462,11 @@ OTHER CHANGES
     o rcoal() is now faster.
 
 
+DEPRECATED & DEFUNCT
+
+    o klastorin() has been removed.
+
+
 
                CHANGES IN APE VERSION 2.3
 
@@ -93,7 +523,7 @@ BUG FIXES
 
 OTHER CHANGES
 
-    o There is now a general help page displayed with '?ape' 
+    o There is now a general help page displayed with '?ape'.
 
 
 
@@ -128,7 +558,7 @@ OTHER CHANGES
 
     o ape has now a namespace.
 
-    o drip.tip() has been improved: it should be much faster and work
+    o drop.tip() has been improved: it should be much faster and work
       better in some cases (e.g., see the example in ?zoom).
 
 
@@ -1046,6 +1476,8 @@ OTHER CHANGES
 
     o dist.taxo() has been renamed as weight.taxo().
 
+    o dist.phylo() has been replaced by the method cophenetic.phylo().
+
     o Various error and warning messages have been improved.