]> git.donarmstrong.com Git - ape.git/blob - Changes
bug fix in collapsed.singles()
[ape.git] / Changes
1                 CHANGES IN APE VERSION 2.2-1
2
3
4 NEW FEATURES
5
6     o The new function del.gaps() removes insertion gaps ("-") in a
7       set of DNA sequences.
8
9
10 BUG FIXES
11
12     o root() failed with 'resolve.root = TRUE' when the root was
13       already the specified root.
14
15     o Several bugs were fixed in mlphylo().
16
17     o collapsed.singles() did not propagate the 'Nnode' and
18       'node.labels' elements (thanks to Elizabeth Purdom for the fix.
19
20
21 OTHER CHANGES
22
23     o unique.multiPhylo() is faster thanks to a suggestion by Vladimir
24       Minin.
25
26
27
28                 CHANGES IN APE VERSION 2.2
29
30
31 NEW FEATURES
32
33     o Four new functions have been written by Damien de Vienne for the
34       graphical exploration of large trees (cophyloplot, subtrees,
35       subtreeplot), and to return the graphical coordinates of tree
36       (without plotting).
37
38     o The new functions corPagel and corBlomberg implement the Pagel's
39       "lambda" and Blomberg et al.'s "ACDC" correlation structures.
40
41     o chronopl() has been improved and gains several options: see its
42       help page for details.
43
44     o boot.phylo() has now an option 'trees' to possibly return the
45       bootstraped trees (the default is FALSE).
46
47     o prop.part() has been improved and should now be faster in all
48       situations.
49
50
51 BUG FIXES
52
53     o read.dna() failed if "?" occurred in the first 10 sites of the
54       first sequence.
55
56     o The x/y aspect of the plot is now respected when plotting a
57       circular tree (type = "r" or "f").
58
59     o Drawing the tip labels sometimes failed when plotting circular
60       trees.
61
62     o zoom() failed when tip labels were used instead of their numbers
63       (thanks to Yan Wong for the fix).
64
65     o drop.tip() failed with some trees (fixed by Yan Wong).
66
67     o seg.sites() failed with a list.
68
69     o consensus() failed in some cases. The function has been improved
70       as well and is faster.
71
72
73
74                 CHANGES IN APE VERSION 2.1-3
75
76
77 BUG FIXES
78
79     o A bug in read.nexus() made the Windows R-GUI crash.
80
81     o An error was fixed in the computation of ancestral character
82       states by generalized least squares in ace().
83
84     o di2multi() did not modify node labels correctly.
85
86     o multi2di() failed if the tree had its attribute "order" set to
87       "cladewise".
88
89
90
91                 CHANGES IN APE VERSION 2.1-2
92
93
94 NEW FEATURES
95
96     o There three new methods for the "multiPhylo" class: str, $,
97       and [[.
98
99     o root() gains the options 'node' and 'resolve.root'
100       (FALSE by default) as well as its code being improved.
101
102     o mltt.plot() has now an option 'log' used in the same way
103       than in plot.default().
104
105
106 BUG FIXES
107
108     o mltt.plot() failed to display the legend with an unnamed
109       list of trees.
110
111     o nodelabels() with pies now correcly uses the argument
112       'cex' to draw symbols of different sizes (which has
113       worked already for thermometers).
114
115     o read.nexus() generally failed to read very big files.
116
117
118 OTHER CHANGES
119
120     o The argument 'family' of compar.gee() can now be a function
121       as well as a character string.
122
123     o read.tree() and read.nexus() now return an unnamed list if
124       'tree.names = NULL'.
125
126     o read.nexus() now returns a modified object of class "multiPhylo"
127       when there is a TRANSLATE block in the NEXUS file: the individual
128       trees have no 'tip.label' vector, but the list has a 'TipLabel'
129       attribute. The new methods '$' and '[[' set these elements
130       correctly when extracting trees.
131
132
133
134                 CHANGES IN APE VERSION 2.1-1
135
136
137 NEW FEATURES
138
139     o The new function rmtree generates lists of random trees.
140
141     o rcoal() now generates a genuine coalescent tree by default
142       (thanks to Vladimir Minin for the code).
143
144
145 BUG FIXES
146
147     o nuc.div() returned an incorrect value with the default
148       pairwise.deletion = FALSE.
149
150
151 OTHER CHANGES
152
153     o The internal codes of bionj(), fastme.bal(), and fastme.ols()
154       have been improved so that they are stabler and faster.
155
156     o R packages used by ape are now loaded silently; lattice and gee
157       are loaded only when needed.
158
159
160
161                 CHANGES IN APE VERSION 2.1
162
163
164 NEW FEATURES
165
166     o The new function identify.phylo identifies clades on a plotted
167       tree using the mouse.
168
169     o It is now possible to subset a list of trees (object of class
170       "multiPhylo") with "[" while keeping its class correct.
171
172     o The new function as.DNAbin.alignment converts DNA sequences
173       stored in the "alignment" format of the package seqinr into
174       an object of class "DNAbin".
175
176     o The new function weight.taxo2 helps to build similarity matrices
177       given two taxonomic levels (usually called by other functions).
178
179     o write.tree() can now take a list of trees (class "multiPhylo")
180       as its main argument.
181
182     o plot.correlogram() and plot.correlogramList() have been
183       improved, and gain several options (see the help page for
184       details). A legend is now plotted by default.
185
186
187 BUG FIXES
188
189     o dist.dna() returned some incorrect values with `model = "JC69"'
190       and `pairwise.deletion = TRUE'. This affected only the
191       distances involving sequences with missing values. (Thanks
192       to Bruno Toupance for digging this bug out.)
193
194     o write.tree() failed with some trees: this is fixed by removing
195       the `multi.line' option (trees are now always printed on a
196       single line).
197
198     o read.nexus() did not correctly detect trees with multiple root
199       edges (see OTHER CHANGES).
200
201
202 OTHER CHANGES
203
204     o The code of mlphylo() has almost entirely rewritten, and should
205       be much stabler. The options have been also greatly simplified
206       (see ?mlphylo and ?DNAmodel for details).
207
208     o The internal function nTips has been renamed klastorin_nTips.
209
210     o The code of is.ultrametric() contained redundancies and has
211       been cleaned-up.
212
213     o The code of Moran.I() and of correlogram.formula() have been
214       improved.
215
216     o read.tree() and read.nexus() now return an error when trying to
217       read a tree with multiple root edges (see BUG FIXES). The
218       correction applied in previous version did not work in all
219       situations.
220
221     o The class c("multi.tree", "phylo") has been renamed
222       "multiPhylo".
223
224
225 DOCUMENTATION
226
227     o There is now a vignette in ape: see vignette("MoranI", "ape").
228
229
230 DEPRECATED & DEFUNCT
231
232     o as.matching() and as.phylo.matching() do not support branch
233       lengths.
234
235     o correlogram.phylo() and discrete.dist() have been removed.
236
237
238
239                 CHANGES IN APE VERSION 2.0-2
240
241
242 NEW FEATURES
243
244     o The new function matexpo computes the exponential of a square
245       matrix.
246
247     o The new function unique.multi.tree removes duplicate trees from
248       a list.
249
250     o yule() has a new option `use.root.edge = FALSE' that specifies
251       to ignore, by default, the root edge of the tree if it exists.
252
253
254 BUG FIXES
255
256     o which.edge() failed when the index of a single terminal edge was
257       looked for.
258
259     o In diversi.time(), the values returned for model C were
260       incorrect.
261
262     o A bug was fixed in yule() that affected the calculation of the
263       likelihood in the presence of ties in the branching times.
264
265     o There was a bug in the C function mat_expo4x4 affecting the
266       calculations of the transition probabilities for models HKY and
267       GTR in mlphylo().
268
269     o A small bug was fixed in as.matrix.DNAbin (thanks to James
270       Bullard).
271
272     o rtree() did not `shuffle' the tip labels by default, so only a
273       limited number of labelled topologies could be generated.
274
275
276
277                 CHANGES IN APE VERSION 2.0-1
278
279
280 NEW FEATURES
281
282     o The three new functions bionj, fastme.ols, and fastme.bal
283       perform phylogeny estimation by the BIONJ and fastME methods in
284       OLS and balanced versions. This is a port to R of previous
285       previous programs done by Vincent Lefort.
286
287     o The new function chronoMPL performs molecular dating with the
288       mean path lengths method of Britton et al. (2002, Mol. Phyl.
289       Evol. 24: 58).
290
291     o The new function rotate, contributed by Christoph Heibl, swaps
292       two clades connected to the same node. It works also with
293       multichotomous nodes.
294
295     o The new `method' as.matrix.DNAbin() may be used to convert
296       easily DNA sequences stored in a list into a matrix while
297       keeping the names and the class.
298
299
300 BUG FIXES
301
302     o chronopl() failed when some branch lengths were equal to zero:
303       an error message is now returned.
304
305     o di2multi() failed when there was a series of consecutive edges
306       to remove.
307
308
309
310                 CHANGES IN APE VERSION 1.10-2
311
312
313 NEW FEATURES
314
315     o plot.phylo() can now plot circular trees: the option is type =
316       "fan" or type = "f" (to avoid the ambiguity with type = "c").
317
318     o prop.part() has a new option `check.labels = FALSE' which allows
319       to considerably speed-up the calculations of bipartitions. As a
320       consequence, calculations of bootstrap values with boot.phylo()
321       should be much faster.
322
323
324 BUG FIXES
325
326     o read.GenBank() did not return correctly the list of species as
327       from ape 1.10: this is fixed in this version
328
329     o Applying as.phylo() on a tree of class "phylo" failed: the
330       object is now returned unchanged.
331
332
333
334                 CHANGES IN APE VERSION 1.10-1
335
336
337 NEW FEATURES
338
339     o The three new functions Ntip, Nnode, and Nedge return, for a
340       given tree, the number of tips, nodes, or edges, respectively.
341
342
343 BUG FIXES
344
345     o read.nexus() did not set correctly the class of the returned
346       object when reading multiple trees.
347
348     o mllt.plot() failed with objects of class c("multi.tree",
349       "phylo").
350
351     o unroot() did not work correctly in most cases.
352
353     o reorder.phylo() made R freeze in some occasions.
354
355     o Plotting a tree in pruningwise order failed.
356
357     o When plotting an unrooted tree, the tip labels where not all
358       correctly positioned if the option `cex' was used.
359
360
361
362                 CHANGES IN APE VERSION 1.10
363
364
365 NEW FEATURES
366
367     o Five new `method' functions have been introduced to manipulate
368       DNA sequences in binary format (see below).
369
370     o Three new functions have been introduced to convert between the
371       new binary and the character formats.
372
373     o The new function as.alignment converts DNA sequences stored as
374       single characters into the class "alignment" used by the package
375       seqinr.
376
377     o read.dna() and read.GenBank() have a new argument `as.character'
378       controlling whether the sequences are returned in binary format
379       or as character.
380
381
382 BUG FIXES
383
384     o root() failed when the tree had node labels: this is fixed.
385
386     o plot.phylo() did not correctly set the limits on the y-axis with
387       the default setting: this is fixed.
388
389     o dist.dna() returned a wrong result for the LogDet, paralinear,
390       and BH87 models with `pairwise.deletion = TRUE'.
391
392
393 OTHER CHANGES
394
395     o DNA sequences are now internally stored in a binary format. See
396       the document "A Bit-Level Coding Scheme for Nucleotides" for the
397       details. Most functions analyzing DNA functions have been
398       modified accordingly and are now much faster (dist.dna is now
399       ca. 60 times faster).
400
401
402
403                 CHANGES IN APE VERSION 1.9-4
404
405
406 BUG FIXES
407
408     o A bug was fixed in edgelabels().
409
410     o as.phylo.hclust() did not work correctly when the object of
411       class "hclust" has its labels set to NULL: the returned tree has
412       now its tip labels set to "1", "2", ...
413
414     o consensus could fail if some tip labels are a subset of others
415       (e.g., "a" and "a_1"): this is now fixed.
416
417     o mlphylo() failed in most cases if some branch lengths of the
418       initial tree were greater than one: an error message is now
419       issued.
420
421     o mlphylo() failed in most cases when estimating the proportion of
422       invariants: this is fixed.
423
424
425
426                 CHANGES IN APE VERSION 1.9-3
427
428
429 NEW FEATURES
430
431     o The new function edgelabels adds labels on the edge of the tree
432       in the same way than nodelabels or tiplabels.
433
434
435 BUG FIXES
436
437     o multi2di() did not handle correctly branch lengths with the
438       default option `random = TRUE': this is now fixed.
439
440     o A bug was fixed in nuc.div() when using pairwise deletions.
441
442     o A bug occurred in the analysis of bipartitions with large
443       numbers of large trees, with consequences on prop.part,
444       prop.clades, and boot.phylo.
445
446     o The calculation of the Billera-Holmes-Vogtmann distance in
447       dist.topo was wrong: this has been fixed.
448
449
450
451                 CHANGES IN APE VERSION 1.9-2
452
453
454 NEW FEATURES
455
456     o The new function ladderize reorganizes the internal structure of
457       a tree to plot them left- or right-ladderized.
458
459     o The new function dist.nodes computes the patristic distances
460       between all nodes, internal and terminal, of a tree. It replaces
461       the option `full = TRUE' of cophenetic.phylo (see below).
462
463
464 BUG FIXES
465
466     o A bug was fixed in old2new.phylo().
467
468     o Some bugs were fixed in chronopl().
469
470     o The edge colours were not correctly displayed by plot.phylo
471       (thank you to Li-San Wang for the fix).
472
473     o cophenetic.phylo() failed with multichotomous trees: this is
474       fixed.
475
476
477 OTHER CHANGES
478
479     o read.dna() now returns the sequences in a matrix if they are
480       aligned (interleaved or sequential format). Sequences in FASTA
481       format are still returned in a list.
482
483     o The option `full' of cophenetic.phylo() has been removed because
484       it could not be used from the generic.
485
486
487 DEPRECATED & DEFUNCT
488
489     o rotate() has been removed; this function did not work correctly
490       since ape 1.9.
491
492
493
494                 CHANGES IN APE VERSION 1.9-1
495
496
497 BUG FIXES
498
499     o Trees with a single tip were not read correctly in R as the
500       element `Nnode' was not set: this is fixed.
501
502     o unroot() did not set correctly the number of nodes of the
503       unrooted tree in most cases.
504
505     o read.GenBank() failed when fetching very long sequences,
506       particularly of the BX-series.
507
508     o A bug was introduced in read.tree() with ape 1.9: it has been
509       fixed
510
511
512
513                 CHANGES IN APE VERSION 1.9
514
515
516 NEW FEATURES
517
518     o There are two new print `methods' for trees of class "phylo" and
519       lists of trees of class "multi.tree", so that they are now
520       displayed in a compact and informative way.
521
522     o There are two new functions, old2new.phylo and new2old.phylo,
523       for converting between the old and new coding of the class
524       "phylo".
525
526     o dist.dna() has three new models: Barry and Hartigan ("BH87"),
527       LogDet ("logdet"), and paralinear ("paralin").
528
529     o compute.brlen() has been extended: several methods are now
530       available to compute branch lengths.
531
532     o write.dna() can now handle matrices as well as lists.
533
534
535 BUG FIXES
536
537     o cophenetic.phylo() sometimes returned a wrong result with
538       multichotomous trees: this is fixed.
539
540     o rotate() failed when a single tip was specified: the tree is now
541       returned unchanged.
542
543     o ace() did not return the correct index matrix with custom
544       models: this is fixed.
545
546     o multi2di() did not work correctly when resolving multichotomies
547       randomly: the topology was always the same, only the arrangement
548       of clades was randomized: this is fixed. This function now
549       accepts trees with no branch lengths.
550
551     o The output of diversi.gof() was blurred by useless prints when a
552       user distribution was specified. This has been corrected, and
553       the help page of this function has been expanded.
554
555
556 OTHER CHANGES
557
558     o The internal structure of the class "phylo" has been changed:
559       see the document "Definition of Formats for Coding Phylogenetic
560       Trees in R" for the details. In addition, the code of most
561       functions has been improved.
562
563     o Several functions have been improved by replacing some R codes
564       by C codes: pic, plot.phylo, and reorder.phylo.
565
566     o There is now a citation information: see citation("ape") in R.
567
568     o write.tree() now does not add extra 0's to branch lengths so
569       that 1.23 is printed "1.23" by default, not "1.2300000000".
570
571     o The syntax of bind.tree() has been simplified. This function now
572       accepts trees with no branch lengths, and handles correctly node
573       labels.
574
575     o The option `as.numeric' of mrca() has been removed.
576
577     o The unused options `format' and `rooted' of read.tree() have
578       been removed.
579
580     o The unused option `format' of write.tree() has been removed.
581
582     o The use of node.depth() has been simplified.
583
584
585
586                 CHANGES IN APE VERSION 1.8-5
587
588
589 NEW FEATURES
590
591     o Two new functions read.nexus.data() and write.nexus.data(),
592       contributed by Johan Nylander, allow to read and write molecular
593       sequences in NEXUS files.
594
595     o The new function reorder.phylo() reorders the internal structure
596       of a tree of class "phylo". It is used as the generic, e.g.,
597       reorder(tr).
598
599     o read.tree() and read.nexus() can now read trees with a single
600       edge.
601
602     o The new data set `cynipids' supplies a set of protein sequences
603       in NEXUS format.
604
605
606 BUG FIXES
607
608     o The code of all.equal.phylo() has been completely rewritten
609       (thanks to Benoît Durand) which fixes several bugs.
610
611     o read.tree() and read.nexus() now checks the labels of the tree
612       to remove or substitute any characters that are illegal in the
613       Newick format (parentheses, etc.)
614
615     o A negative P-value could be returned by mantel.test(): this is
616       now fixed.
617
618
619
620                 CHANGES IN APE VERSION 1.8-4
621
622
623 NEW FEATURES
624
625     o The new function sh.test() computes the Shimodaira-
626       Hasegawa test.
627
628     o The new function collapse.singles() removes the nodes with a
629       single descendant from a tree.
630
631     o plot.phylo() has a new argument `tip.color' to specify the
632       colours of the tips.
633
634     o mlphylo() has now an option `quiet' to control the display of
635       the progress of the analysis (the default is FALSE).
636
637
638 BUG FIXES
639
640     o read.dna() did not read correctly sequences in sequential format
641       with leading alignment gaps "-": this is fixed.
642
643     o ace() returned a list with no class so that the generic
644       functions (anova, logLik, ...) could not be used directly. This
645       is fixed as ace() now returns an object of class "ace".
646
647     o anova.ace() had a small bug when computing the number of degrees
648       of freedom: this is fixed.
649
650     o mlphylo() did not work when the sequences were in a matrix or
651       a data frame: this is fixed.
652
653     o rtree() did not work correctly when trying to simulate an
654       unrooted tree with two tips: an error message is now issued.
655
656
657 OTHER CHANGES
658
659     o The algorithm of rtree() has been changed: it is now about 40,
660       100, and 130 times faster for 10, 100, and 1000 tips,
661       respectively.
662
663
664
665                 CHANGES IN APE VERSION 1.8-3
666
667
668 NEW FEATURES
669
670     o There are four new `method' functions to be used with the
671       results of ace(): logLik(), deviance(), AIC(), and anova().
672
673     o The plot method of phymltest has two new arguments: `main' to
674       change the title, and `col' to control the colour of the
675       segments showing the AIC values.
676
677     o ace() has a new argument `ip' that gives the initial values used
678       in the ML estimation with discrete characters (see the examples
679       in ?ace). This function now returns a matrix giving the indices
680       of the estimated rates when analysing discrete characters.
681
682     o nodelabels() and tiplabels() have a new argument `pie' to
683       represent proportions, with any number of categories, as
684       piecharts. The use of the option `thermo' has been improved:
685       there is now no limitation on the number of categories.
686
687
688 BUG FIXES
689
690     o mlphylo() did not work with more than two partitions: this is
691       fixed.
692
693     o root() failed if the proposed outgroup was already an outgroup
694       in the tree: this is fixed.
695
696     o The `col' argument in nodelabels() and tiplabels() was not
697       correctly passed when `text' was used: this is fixed.
698
699     o Two bugs were fixed in mlphylo(): parameters were not always
700       correctly output, and the estimation failed in some cases.
701
702     o plot.phylo() was stuck when given a tree with a single tip: this
703       is fixed and a message error is now returned.
704
705     o An error was corrected in the help page of gammaStat regarding
706       the calculation of P-values.
707
708     o Using gls() could crash R when the number of species in the tree
709       and in the variables were different: this is fixed.
710
711
712
713                 CHANGES IN APE VERSION 1.8-2
714
715
716 NEW FEATURES
717
718     o The new function mlphylo() fits a phylogenetic tree by maximum
719       likelihood from DNA sequences. Its companion function DNAmodel()
720       is used to define the substitution model which may include
721       partitioning. There are methods for logLik(), deviance(), and
722       AIC(), and the summary() method has been extended to display in
723       a friendly way the results of this model fitting. Currently, the
724       functionality is limited to estimating the substitution and
725       associated parameters and computing the likelihood.
726
727     o The new function drop1.compar.gee (used as, e.g., drop1(m))
728       tests for single effects in GEE-based comparative method. A
729       warning message is printed if there is not enough degrees of
730       freedom.
731
732
733 BUG FIXES
734
735     o An error message was sometimes issued by plot.multi.tree(),
736       though with no consequence.
737
738
739
740                 CHANGES IN APE VERSION 1.8-1
741
742
743 NEW FEATURES
744
745     o There is a new plot method for lists of trees (objects of class
746       "multi.tree"): it calls plot.phylo() internally and is
747       documented on the same help page.
748
749
750 BUG FIXES
751
752     o A bug was fixed in the C code that analyzes bipartitions: this
753       has impact on several functions like prop.part, prop.clades,
754       boot.phylo, or consensus.
755
756     o root() did not work correctly when the specified outgroup had
757       more than one element: this is fixed.
758
759     o dist.dna() sometimes returned a warning inappropriately: this
760       has been corrected.
761
762     o If the distance object given to nj() had no rownames, nj()
763       returned a tree with no tip labels: it now returns tips labelled
764       "1", "2", ..., corresponding to the row numbers.
765
766
767 OTHER CHANGES
768
769     o nj() has been slightly changed so that tips with a zero distance
770       are first aggregated with zero-lengthed branches; the usual NJ
771       procedure is then performed on a distance matrix without 0's.
772
773
774
775                 CHANGES IN APE VERSION 1.8
776
777
778 NEW FEATURES
779
780     o The new function chronopl() estimates dates using the penalized
781       likelihood method by Sanderson (2002; Mol. Biol. Evol., 19:101).
782
783     o The new function consensus() calculates the consensus tree of a
784       list of trees.
785
786     o The new function evolve.phylo() simulates the evolution of
787       continuous characters along a phylogeny under a Brownian model.
788
789     o The new plot method for objects of class "ancestral" displays a
790       tree together with ancestral values, as returned by the above
791       function.
792
793     o The new function as.phylo.formula() returns a phylogeny from a
794       set of nested taxonomic variables given as a formula.
795
796     o The new function read.caic() reads trees in CAIC format.
797
798     o The new function tiplabels() allows to add labels to the tips
799       of a tree using text or plotting symbols in a flexible way.
800
801     o The new function unroot() unroots a phylogeny.
802
803     o multi2di() has a new option, `random', which specifies whether
804       to resolve the multichotomies randomly (the default) or not.
805
806     o prop.part() now returns an object of class "prop.part" for which
807       there are print (to display a partition in a more friendly way)
808       and summary (to extract the numbers) methods.
809
810     o plot.phylo() has a new option, `show.tip.label', specifying
811       whether to print the labels of the tips. The default is TRUE.
812
813     o The code of nj() has been replaced by a faster C code: it is now
814       about 10, 25, and 40 times faster for 50, 100, and 200 taxa,
815       respectively.
816
817     o write.nexus() now writes whether a tree is rooted or not.
818
819
820 BUG FIXES
821
822     o Two bugs have been fixed in root(): unrooted trees are now
823       handled corretly, and node labels are now output normally.
824
825     o A bug was fixed in phymltest(): the executable couldn't be found
826       in some cases.
827
828     o Three bug have been fixed in ace(): computing the likelihood of
829       ancestral states of discrete characters failed, custom models
830       did not work, and the function failed with a null gradient (a
831       warning message is now returned; this latter bug was also
832       present in yule.cov() as well and is now fixed).
833
834     o pic() hanged out when missing data were present: a message error
835       is now returned.
836
837     o A small bug was fixed in dist.dna() where the gamma correction
838       was not always correctly dispatched.
839
840     o plot.phylo() plotted correctly the root edge only when the tree
841       was plotted rightwards: this works now for all directions.
842
843
844 OTHER CHANGES
845
846     o dist.taxo() has been renamed as weight.taxo().
847
848     o Various error and warning messages have been improved.
849
850
851
852                 CHANGES IN APE VERSION 1.7
853 NEW FEATURES
854
855     o The new function ace() estimates ancestral character states for
856       continuous characters (with ML, GLS, and contrasts methods), and
857       discrete characters (with ML only) for any number of states.
858
859     o The new function compar.ou() fits the Ornstein-Uhlenbeck model
860       of directional evolution for continuous characters. The user
861       specifies the node(s) of the tree where the character optimum
862       changes.
863
864     o The new function is.rooted() tests whether a tree (of class
865       "phylo") is rooted.
866
867     o The new function rcoal() generates random ultrametric trees with
868       the possibility to specify the function that generates the
869       inter-nodes distances.
870
871     o The new function mrca() gives for all pairs of tips in a tree
872       (and optionally nodes too) the most recent common ancestor.
873
874     o nodelabels() has a new option `thermo' to plot proportions (up
875       to three classes) on the nodes of a tree.
876
877     o rtree() has been improved: it can now generate rooted or
878       unrooted trees, and the mathematical function that generates the
879       branch lengths may be specified by the user. The tip labels may
880       be given directly in the call to rtree. The limit cases (n = 2,
881       3) are now handled correctly.
882
883     o dist.topo() has a new argument `method' with two choices: "PH85"
884       for Penny and Henny's method (already available before and now
885       the default), and "BHV01" for the geometric distance by Billera
886       et al. (2001, Adv. Appl. Math. 27:733).
887
888     o write.tree() has a new option, `digits', which specifies the
889       number of digits to be printed in the Newick tree. By default
890       digits = 10. The numbers are now always printed in decimal form
891       (i.e., 1.0e-1 is now avoided).
892
893     o dist.dna() can now compute the raw distances between pairs of
894       DNA sequences by specifying model = "raw".
895
896     o dist.phylo() has a new option `full' to possibly compute the
897       distances among all tips and nodes of the tree. The default if
898       `full = FALSE'.
899
900
901 BUG FIXES
902
903     o Several bugs were fixed in all.equal.phylo().
904
905     o dist.dna() did not handle correctly gaps ("-") in alignments:
906       they are now considered as missing data.
907
908     o rotate() did not work if the tips were not ordered: this is
909       fixed.
910
911     o mantel.test() returned NA in some special cases: this is fixed
912       and the function has been improved and is now faster.
913
914     o A bug was fixed in diversi.gof() where the calculation of A² was
915       incorrect.
916
917     o cherry() did not work correctly under some OSs (mainly Linux):
918       this is fixed.
919
920     o is.binary.tree() has been modified so that it works with both
921       rooted and unrooted trees.
922
923     o The documentation of theta.s() was not correct: this has been
924       fixed.
925
926     o plot.mst() did not work correctly: this is fixed.
927
928
929
930                 CHANGES IN APE VERSION 1.6
931
932
933 NEW FEATURES
934
935     o The new function dist.topo() computes the topological distances
936       between two trees.
937
938     o The new function boot.phylo() performs a bootstrap analysis on
939       phylogeny estimation.
940
941     o The new functions prop.part() and prop.clades() analyse
942       bipartitions from a series of trees.
943
944
945 OTHER CHANGES
946
947     o read.GenBank() now uses the EFetch utility of NCBI instead of
948       the usual Web interface: it is now much faster (e.g., 12 times
949       faster to retrieve 8 sequences, 37 times for 60 sequences).
950
951
952 BUG FIXES
953
954     o Several bugs were fixed in read.dna().
955
956     o Several bugs were fixed in diversi.time().
957
958     o is.binary.tree() did not work correctly if the tree has no edge
959       lengths: this is fixed.
960
961     o drop.tip() did not correctly propagated the `node.label' of a
962       tree: this is fixed.
963
964
965
966                 CHANGES IN APE VERSION 1.5
967
968
969 NEW FEATURES
970
971     o Two new functions, as.matching.phylo() and as.phylo.matching(),
972       convert objects between the classes "phylo" and "matching". The
973       latter implements the representation of binary trees introduced by
974       Diaconis and Holmes (1998; PNAS 95:14600). The generic function
975       as.matching() has been introduced as well.
976
977     o Two new functions, multi2di() and di2multi(), allow to resolve
978       and collapse multichotomies with branches of length zero.
979
980     o The new function nuc.div() computes the nucleotide diversity
981       from a sample a DNA sequences.
982
983     o dist.dna() has been completely rewritten with a much faster
984       (particularly for large data sets) C code. Eight models are
985       available: JC69, K80, F81, K81, F84, T92, TN93, and GG95 (the
986       option `method' has been renamed `model'). Computation of variance
987       is available for all models. A gamma-correction is possible for
988       JC69, K80, F81, and TN93. There is a new option, pairwise.deletion,
989       to remove sites with missing data on a pairwise basis. The option
990       `GCcontent' has been removed.
991
992     o read.GenBank() has a new option (species.names) which specifies
993       whether to return the species names of the organisms in addition
994       to the accession numbers of the sequences (this is the default
995       behaviour).
996
997     o write.nexus() can now write several trees in the same NEXUS file.
998
999     o drop.tip() has a new option `root.edge' that allows to specify the
1000       new root edge if internal branches are trimmed.
1001
1002
1003 BUG FIXES
1004
1005     o as.phylo.hclust() failed if some labels had parentheses: this
1006       is fixed.
1007
1008     o Several bugs were fixed in all.equal.phylo(). This function now
1009       returns the logical TRUE if the trees are identical but with
1010       different representations (a report was printed previously).
1011
1012     o read.GenBank() did not correctly handle ambiguous base codes:
1013       this is fixed.
1014
1015
1016 OTHER CHANGES
1017
1018     o birthdeath() now returns an object of class "birthdeath" for
1019       which there is a print method.
1020
1021
1022
1023                 CHANGES IN APE VERSION 1.4
1024
1025
1026 NEW FEATURES
1027
1028     o The new function nj() performs phylogeny estimation with the
1029       neighbor-joining method of Saitou and Nei (1987; Mol. Biol.
1030       Evol., 4:406).
1031
1032     o The new function which.edge() identifies the edges of a tree
1033       that belong to a group specified as a set of tips.
1034
1035     o The new function as.phylo.phylog() converts an object of class
1036       "phylog" (from the package ade4) into an object of class
1037       "phylo".
1038
1039     o The new function axisPhylo() draws axes on the side of a
1040       phylogeny plot.
1041
1042     o The new function howmanytrees() calculates the number of trees
1043       in different cases and giving a number of tips.
1044
1045     o write.tree() has a new option `multi.line' (TRUE by default) to
1046       write a Newick tree on several lines rather than on a single
1047       line.
1048
1049     o The functionalities of zoom() have been extended. Several
1050       subtrees can be visualized at the same time, and they are marked
1051       on the main tree with colors. The context of the subtrees can be
1052       marked with the option `subtree' (see below).
1053
1054     o drop.tip() has a new option `subtree' (FALSE by default) which
1055       specifies whether to output in the tree how many tips have been
1056       deleted and where.
1057
1058     o The arguments of add.scale.bar() have been redefined and have
1059       now default values (see ?add.scale.bar for details). This
1060       function now works even if the plotted tree has no edge length.
1061
1062     o plot.phylo() can now plot radial trees, but this does not take
1063       edge lengths into account.
1064
1065     o In plot.phylo() with `type = "phylogram"', if the values of
1066       `edge.color' and `edge.width' are identical for sister-branches,
1067       they are propagated to the vertical line that link them.
1068
1069
1070 BUG FIXES
1071
1072     o Repeated calls to as.phylo.hclust() or as.hclust.phylo() made R
1073       crashing. This is fixed.
1074
1075     o In plot.phylo(), the options `edge.color' and `edge.width' are
1076       now properly recycled; their default values are now "black" and
1077       1, respectively.
1078
1079     o A bug has been fixed in write.nexus().
1080
1081
1082 OTHER CHANGES
1083
1084     o The function node.depth.edgelength() has been removed and
1085       replaced by a C code.
1086
1087
1088
1089                 CHANGES IN APE VERSION 1.3-1
1090
1091
1092 NEW FEATURES
1093
1094     o The new function nodelabels() allows to add labels to the nodes
1095       of a tree using text or plotting symbols in a flexible way.
1096
1097     o In plot.phylo() the arguments `x.lim' and `y.lim' can now be two
1098       numeric values specifying the lower and upper limits on the x-
1099       and y-axes. This allows to leave some space on any side of the
1100       tree. If a single value is given, this is taken as the upper
1101       limit (as before).
1102
1103
1104
1105                 CHANGES IN APE VERSION 1.3
1106
1107
1108 NEW FEATURES
1109
1110     o The new function phymltest() calls the software PHYML and fits
1111       28 models of DNA sequence evolution. There are a print method to
1112       display likelihood and AIC values, a summary method to compute
1113       the hierarchical likelihood ratio tests, and a plot method to
1114       display graphically the AIC values of each model.
1115
1116     o The new function yule.cov() fits the Yule model with covariates,
1117       a model where the speciation rate is affected by several species
1118       traits through a generalized linear model. The parameters are
1119       estimated by maximum likelihood.
1120
1121     o Three new functions, corBrownian(), corGrafen(), and
1122       corMartins(), compute the expected correlation structures among
1123       species given a phylogeny under different models of evolution.
1124       These can be used for GLS comparative phylogenetic methods (see
1125       the examples). There are coef() and corMatrix() methods and an
1126       Initialize.corPhyl() function associated.
1127
1128     o The new function compar.cheverud() implements Cheverud et al.'s
1129       (1985; Evolution 39:1335) phylogenetic comparative method.
1130
1131     o The new function varcomp() estimates variance components; it has
1132       a plot method.
1133
1134     o Two new functions, panel.superpose.correlogram() and
1135       plot.correlogramList(), allow to plot several phylogenetic
1136       correlograms.
1137
1138     o The new function node.leafnumber() computes the number of leaves
1139       of a subtree defined by a particular node.
1140
1141     o The new function node.sons() gets all tags of son nodes from a
1142       given parent node.
1143
1144     o The new function compute.brlen() computes the branch lengths of
1145       a tree according to a specified method.
1146
1147     o plot.phylo() has three new options: "cex" controls the size of
1148       the (tip and node) labels (thus it is no more needed to change
1149       the global graphical parameter), "direction" which allows to
1150       plot the tree rightwards, leftwards, upwards, or downwards, and
1151       "y.lim" which sets the upper limit on the y-axis.
1152
1153
1154 BUG FIXES
1155
1156     o Some functions which try to match tip labels and names of
1157       additional data (e.g. vector) are likely to fail if there are
1158       typing or syntax errors. If both series of names do not perfectly
1159       match, they are ignored and a warning message is now issued.
1160       These functions are bd.ext, compar.gee, pic. Their help pages
1161       have been clarified on this point.
1162
1163
1164
1165                 CHANGES IN APE VERSION 1.2-7
1166
1167
1168 NEW FEATURES
1169
1170     o The new function root() reroots a phylogenetic tree with respect
1171       to a specified outgroup.
1172
1173     o The new function rotate() rotates an internal branch of a tree.
1174
1175     o In plot.phylo(), the new argument "lab4ut" (labels for unrooted
1176       trees) controls the display of the tip labels in unrooted trees.
1177       This display has been greatly improved: the tip labels are now not
1178       expected to overlap with the tree (particularly if lab4ut =
1179       "axial"). In all cases, combining appropriate values of "lab4ut"
1180       and the font size (via "par(cex = )") should result in readable
1181       unrooted trees. See ?plot.phylo for some examples.
1182
1183     o In drop.tip(), the argument `tip' can now be numeric or character.
1184
1185
1186 BUG FIXES
1187
1188     o drop.tip() did not work correctly with trees with no branch
1189       lengths: this is fixed.
1190
1191     o A bug in plot.phylo(..., type = "unrooted") made some trees being
1192       plotted with some line crossings: this is now fixed.
1193
1194
1195
1196                 CHANGES IN APE VERSION 1.2-6
1197
1198
1199 NEW FEATURES
1200
1201     o Six new functions (Moran.I, correlogram.formula, discrete.dist,
1202       correlogram.phylo, dist.taxo, plot.correlogram) have been added
1203       to implement comparative methods with an autocorrelation approach.
1204
1205     o A new data set describing some life history traits of Carnivores
1206       has been included.
1207
1208
1209 BUG FIXES
1210
1211     o A fix was made on mcmc.popsize() to conform to R 2.0.0.
1212
1213
1214 OTHER CHANGES
1215
1216     o When plotting a tree with plot.phylo(), the new default of the
1217       option `label.offset' is now 0, so the labels are always visible.
1218
1219
1220
1221                 CHANGES IN APE VERSION 1.2-5
1222
1223
1224 NEW FEATURES
1225
1226     o The new function bd.ext() fits a birth-death model with combined
1227       phylogenetic and taxonomic data, and estimates the corresponding
1228       speciation and extinction rates.
1229
1230
1231 OTHER CHANGES
1232
1233     o The package gee is no more required by ape but only suggested
1234       since only the function compar.gee() calls gee.
1235
1236
1237
1238                 CHANGES IN APE VERSION 1.2-4
1239
1240
1241 NEW FEATURES
1242
1243     o Four new functions (mcmc.popsize, extract.popsize, plot.popsize,
1244       and lines.popsize) implementing a new approach for inferring the
1245       demographic history from genealogies using a reversible jump
1246       MCMC have been introduced.
1247
1248     o The unit of time in the skyline plot and in the new plots can
1249       now be chosen to be actual years, rather than substitutions.
1250
1251
1252
1253                 CHANGES IN APE VERSION 1.2-3
1254
1255
1256 NEW FEATURES
1257
1258     o The new function rtree() generates a random binary tree with or
1259       without branch lengths.
1260
1261     o Two new functions for drawing lineages-through-time (LTT) plots
1262       are provided: ltt.lines() adds a LTT curve to an existing plot,
1263       and mltt.plot() does a multiple LTT plot giving several trees as
1264       arguments (see `?ltt.plot' for details).
1265
1266
1267 BUG FIXES
1268
1269     o Some taxon names made R crashing when calling as.phylo.hclust():
1270       this is fixed.
1271
1272     o dist.dna() returned an error with two identical DNA sequences
1273       (only using the Jukes-Cantor method returned 0): this is fixed.
1274
1275
1276 OTHER CHANGES
1277
1278     o The function dist.phylo() has been re-written using a different
1279       algorithm: it is now about four times faster.
1280
1281     o The code of branching.times() has been improved: it is now about
1282       twice faster.
1283
1284
1285
1286                 CHANGES IN APE VERSION 1.2-2
1287
1288
1289 NEW FEATURES
1290
1291     o The new function seg.sites() finds the segregating sites in a
1292       sample of DNA sequences.
1293
1294
1295 BUG FIXES
1296
1297     o A bug introduced in read.tree() and in read.nexus() with version
1298       1.2-1 was fixed.
1299
1300     o A few errors were corrected and a few examples were added in the
1301       help pages.
1302
1303
1304
1305                 CHANGES IN APE VERSION 1.2-1
1306
1307
1308 NEW FEATURES
1309
1310     o plot.phylo() can now draw the edge of the root of a tree if it
1311       has one (see the new option `root.edge', its default is FALSE).
1312
1313
1314 BUG FIXES
1315
1316     o A bug was fixed in read.nexus(): files with semicolons inside
1317       comment blocks were not read correctly.
1318
1319     o The behaviour of read.tree() and read.nexus() was corrected so
1320       that tree files with badly represented root edges (e.g., with
1321       an extra pair of parentheses, see the help pages for details)
1322       are now correctly represented in the object of class "phylo";
1323       a warning message is now issued.
1324
1325
1326
1327                 CHANGES IN APE VERSION 1.2
1328
1329
1330 NEW FEATURES
1331
1332     o plot.phylo() has been completely re-written and offers several
1333       new functionalities. Three types of trees can now be drawn:
1334       phylogram (as previously), cladogram, and unrooted tree; in
1335       all three types the branch lengths can be drawn using the edge
1336       lengths of the phylogeny or not (e.g., if the latter is absent).
1337       The vertical position of the nodes can be adjusted with two
1338       choices (see option `node.pos'). The code has been re-structured,
1339       and two new functions (potentially useful for developpers) are
1340       documented separately: node.depth.edgelength() and node.depth();
1341       see the respective help pages for details.
1342
1343     o The new function zoom() allows to explore very large trees by
1344       focusing on a small portion of it.
1345
1346     o The new function yule() fits by maximum likelihood the Yule model
1347       (birth-only process) to a phylogenetic tree.
1348
1349     o Support for writing DNA sequences in FASTA format has been
1350       introduced in write.dna() (support for reading sequences in
1351       this format was introduced in read.dna() in version 1.1-2).
1352       The function has been completely re-written, fixing some bugs
1353       (see below); the default behaviour is no more to display the
1354       sequences on the standard output. Several options have been
1355       introduced to control the sequence printing in a flexible
1356       way. The help page has been extended.
1357
1358     o A new data set is included: a supertree of bats in NEXUS format.
1359
1360
1361 BUG FIXES
1362
1363     o In theta.s(), the default of the option `variance' has
1364       been changed to `FALSE' (as was indicated in the help page).
1365
1366     o Several bugs were fixed in the code of all.equal.phylo().
1367
1368     o Several bugs were fixed in write.dna(), particularly this
1369       function did not work with `format = "interleaved"'.
1370
1371     o Various errors were corrected in the help pages.
1372
1373
1374 OTHER CHANGES
1375
1376     o The argument names of as.hclust.phylo() have been changed
1377       from "(phy)" to "(x, ...)" to conform to the definition of
1378       the corresponding generic function.
1379
1380     o gamma.stat() has been renamed gammaStat() to avoid confusion
1381       since gamma() is a generic function.
1382
1383
1384
1385                 CHANGES IN APE VERSION 1.1-3
1386
1387
1388 BUG FIXES
1389
1390     o base.freq() previously did not return a value of 0 for
1391       bases absent in the data (e.g., a vector of length 3 was
1392       returned if one base was absent). This is now fixed (a
1393       vector of length 4 is always returned).
1394
1395     o Several bugs were fixed in read.nexus(), including that this
1396       function did not work in this absence of a "TRANSLATE"
1397       command in the NEXUS file, and that the commands were
1398       case-sensitive.
1399
1400
1401
1402                 CHANGES IN APE VERSION 1.1-2
1403
1404
1405 NEW FEATURES
1406
1407     o The Tamura and Nei (1993) model of DNA distance is now implemented
1408       in dist.dna(): five models are now available in this function.
1409
1410     o A new data set is included: a set of 15 sequences of the
1411       cytochrome b mitochondrial gene of the woodmouse (Apodemus
1412       sylvaticus).
1413
1414
1415 BUG FIXES
1416
1417     o A bug in read.nexus() was fixed.
1418
1419     o read.dna() previously did not work correctly in most cases.
1420       The function has been completely re-written and its help page
1421       has been considerably extended (see ?read.dna for details).
1422       Underscores (_) in taxon names are no more replaced with
1423       spaces (this behaviour was undocumented).
1424
1425     o A bug was fixed in write.dna().
1426
1427
1428
1429                 CHANGES IN APE VERSION 1.1-1
1430
1431
1432 BUG FIXES
1433
1434     o A bug in read.tree() introduced in APE 1.1 was fixed.
1435
1436     o A bug in compar.gee() resulted in an error when trying to fit
1437       a model with `family = "binomial"'. This is now fixed.
1438
1439
1440
1441                 CHANGES IN APE VERSION 1.1
1442
1443
1444 NEW FEATURES
1445
1446     o The Klastorin (1982) method as suggested by Misawa and Tajima
1447       (2000, Mol. Biol. Evol. 17:1879-1884) for classifying genes
1448       on the basis of phylogenetic trees has been implemented (see
1449       the function klastorin()).
1450
1451     o Functions have been added to convert APE's "phylo" objects in
1452       "hclust" cluster objects and vice versa (see the help page of
1453       as.phylo for details).
1454
1455     o Three new functions, ratogram(), chronogram() and NPRS.criterion(),
1456       are introduced for the estimation of absolute evolutionary rates
1457       (ratogram) and dated clock-like trees (chronogram) from
1458       phylogenetic trees using the non-parametric rate smoothing approach
1459       by MJ Sanderson (1997, Mol. Biol. Evol. 14:1218-1231).
1460
1461     o A summary method is now provided printing a summary information on a
1462       phylogenetic tree with, for instance, `summary(tree)'.
1463
1464     o The behaviour of read.tree() was changed so that all spaces and
1465       tabulations in tree files are now ignored. Consequently, spaces in tip
1466       labels are no more allowed. Another side effect is that read.nexus()
1467       now does not replace the underscores (_) in tip labels with spaces
1468       (this behaviour was undocumented).
1469
1470     o The function plot.phylo() has a new option (`underscore') which
1471       specifies whether the underscores in tip labels should be written on
1472       the plot as such or replaced with spaces (the default).
1473
1474     o The function birthdeath() now computes 95% confidence intervals of
1475       the estimated parameters using profile likelihood.
1476
1477     o Three new data sets are included: a gene tree estimated from 36
1478       landplant rbcL sequences, a gene tree estimated from 32 opsin
1479       sequences, and a gene tree for 50 BRCA1 mammalian sequences.
1480
1481
1482 BUG FIXES
1483
1484     o A bug was fixed in dist.gene() where nothing was returned.
1485
1486     o A bug in plot.mst() was fixed.
1487
1488     o A bug in vcv.phylo() resulted in false correlations when the
1489       option `cor = TRUE' was used (now fixed).
1490
1491
1492
1493                 CHANGES IN APE VERSION 1.0
1494
1495
1496 NEW FEATURES
1497
1498     o Two new functions, read.dna() and write.dna(), read/write in a file
1499       DNA sequences in interleaved or in sequential format.
1500
1501     o Two new functions, read.nexus() and write.nexus(), read/write trees
1502       in a NEXUS file.
1503
1504     o The new function bind.tree() allows to bind two trees together,
1505       possibly handling root edges to give internal branches.
1506
1507     o The new function drop.tip() removes the tips in a phylogenetic tree,
1508       and trims (or not) the corresponding internal branches.
1509
1510     o The new function is.ultrametric() tests if a tree is ultrametric.
1511
1512     o The function plot.phylo() has more functionalities such as drawing the
1513       branches with different colours and/or different widths, showing the
1514       node labels, controling the position and font of the labels, rotating
1515       the labels, and controling the space around the plot.
1516
1517     o The function read.tree() can now read trees with no branch length,
1518       such as "(a,b),c);". Consequently, the element `edge.length' in
1519       objects of class "phylo" is now optional.
1520
1521     o The function write.tree() has a new default behaviour: if the default
1522       for the option `file' is used (i.e. file = ""), then a variable of
1523       mode character containing the tree in Newick format is returned which
1524       can thus be assigned (e.g., tree <- write.tree(phy)).
1525
1526     o The function read.tree() has a new argument `text' which allows
1527       to read the tree in a variable of mode character.
1528
1529     o A new data set is included: the phylogenetic relationships among
1530       the orders of birds from Sibley and Ahlquist (1990).
1531
1532
1533
1534                 CHANGES IN APE VERSION 0.2-1
1535
1536
1537 BUG FIXES
1538
1539     o Several bugs were fixed in the help pages.
1540
1541
1542
1543                 CHANGES IN APE VERSION 0.2
1544
1545
1546 NEW FEATURES
1547
1548     o The function write.tree() writes phylogenetic trees (objects of class
1549       "phylo") in an ASCII file using the Newick parenthetic format.
1550
1551     o The function birthdeath() fits a birth-death model to branching times
1552       by maximum likelihood, and estimates the corresponding speciation and
1553       extinction rates.
1554
1555     o The function scale.bar() adds a scale bar to a plot of a phylogenetic
1556       tree.
1557
1558     o The function is.binary.tree() tests whether a phylogeny is binary.
1559
1560     o Two generic functions, coalescent.intervals() and collapsed.intervals(),
1561       as well as some methods are introduced.
1562
1563     o Several functions, including some generics and methods, for computing
1564       skyline plot estimates (classic and generalized) of effective
1565       population size through time are introduced and replace the function
1566       skyline.plot() in version 0.1.
1567
1568     o Two data sets are now included: the phylogenetic relationships among
1569       the families of birds from Sibley and Ahlquist (1990), and an
1570       estimated clock-like phylogeny of HIV sequences sampled in the
1571       Democratic Republic of Congo.
1572
1573
1574 DEPRECATED & DEFUNCT
1575
1576     o The function skyline.plot() in ape 0.1 has been deprecated and
1577       replaced by more elaborate functions (see above).
1578
1579
1580 BUG FIXES
1581
1582     o Two important bugs were fixed in plot.phylo(): phylogenies with
1583       multichotomies not at the root or not with only terminal branches,
1584       and phylogenies with a single node (i.e. only terminal branches)
1585       did not plot. These trees should be plotted correctly now.
1586
1587     o Several bugs were fixed in diversi.time() in the computation of
1588       AICs and LRTs.
1589
1590     o Various errors were corrected in the help pages.