On 18 January 2017 at 13:49, Thierry Onkelinx wrote: | Another solution is to start a new package. This is what Hadley did with | the ggplot package (https://cran.r-project.org/src/contrib/Archive/ggplot/). | The new version (ggplot2) would break existing code. Users were informed | that the old package is not longer maintained. So the user has the choice | between using the old version which still works but no longer maintained or | the switched to the new version which is maintained but will break existing | code.
AFAIK that practice of package inflation is outlawed by CRAN Policy now: * Changes to CRAN packages causing significant disruption to other packages must be agreed with the CRAN maintainers well in advance of any publicity. Introduction of packages providing back-compatibility versions of already available packages is not allowed. R itself has mechanisms for this: .Deprecated was already mentioned. Many other packages "warn now", phase in new code and then offer a toggle (maybe via options()) to get the old behaviour. As package authors, we have a "contract" with our users. Sure, we can break it willy-nilly (and the informal reputation mechanism may make us pay for this) or we can try to hold the contract and accomodate. It's programming. There is always another layer we can insert. Dirk -- http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org ______________________________________________ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel