New Release | Documents | Misc. Code

ape is a package in evolution: the first version of ape was released on 27 August 2002. The current version on CRAN is 5.8 and has been released on 11 April 2024. There have been, up to now, 103 releases of ape, with a very substantial increase in the quantity of code.


You can find a detailed log file HERE listing all changes (new features, bug fixes, ...) since the first release of ape. The CRAN keeps an archive of previous releases of the package.

The following sections give some details on how a new release of ape is prepared, a list of documents useful for developers, and some miscellaneous code not included in ape.

New Release

ape is used in many applications (for instance, see the CRAN package covid19.analytics), so everything that is changed, included or removed from the package must be considered carefully. With the release of ape 5.5, the core of ape has reached a state where major changes are unlikely—at least in the near future. The main data classes (detailed in the next section) are now stable, efficient, versatile, portable, and scalable. A relatively large number of functions are provided to read, manipulate, analyse, simulate, and write these data.

Releasing a new version of ape has become a tedious process over the past few years. However, the protocol involved in this process has been improved and clarified recently; it is sketched below using the release of ape 6.0 as an example (ARDs: ape's reverse dependencies).

As the maintainer of ape, I am in charge of what's included into or removed from the package. This is not trivial since more than 300 packages on CRAN depend on ape, and (according to CRAN's rules) any new version of the latter should not break these reverse dependencies. Besides, in my experience, contributions must usually be checked more or less carefully and additional files might have to be updated (NAMESPACE, cross-links among .Rd files, ...)

Contributions to ape usually fall into two categories:

NEW! It has appeared recently that a small change in ape can create issues in other packages on CRAN. Because of the CRAN policy, any new version of ape should not create such difficulties. Generally, these are not detectable until those packages are checked as sketched above.
Therefore, any change in ape must be assessed and pondered carefully. It might be that I reject a PR on GitHub which does not mean that the suggested change is not interesting, but maybe it had to be edited to avoid issues in other packages. The whole process is still in evolution and could change in the future.

The function is.binary.tree is obsolete before being deprecated: see the details HERE.

Documents

Misc. Code

Some time ago, I posted some code to visualize trees in ape: it is HERE.


Updated: 14 April 2023
Crédits