Timothy P. Jurka
Timothy P. Jurka

Reputation: 918

Warning: replacing previous import ‘head’ when loading ‘utils’ in R

When loading the RTextTools package from CRAN, I get the following warnings:

Warning messages:
1: replacing previous import ‘head’ when loading ‘utils’
2: replacing previous import ‘tail’ when loading ‘utils’

How do I get rid of these warnings? I'm the author of the package, so I can manipulate the source code; I'm looking for a solution that gets rid of the warnings rather than suppresses them. They seem to have appeared when I upgraded to R 2.14. Thank you in advance!

Upvotes: 20

Views: 9760

Answers (2)

Richie Cotton
Richie Cotton

Reputation: 121177

In general, this problem is often caused by having import(somepackage) in the namespace as well as importFrom(somepackage, somefunction).

Equivalently, using roxygen2, having both #' @import somepackage and #' @importFrom somepackage somefunction.

The best practice solution is to remove the import statement and keep only importFrom.

Upvotes: 27

Simon Urbanek
Simon Urbanek

Reputation: 13942

This is not your issue - it's an issue in the glmnet package that you depend on: it explicitly imports all functions from both Matrix and utils but in the wrong order which causes a conflict since they both define head and tail (Matrix depends on utils so utils must be first). It is easy to fix - the order of imports has to be reversed in the glmnet/NAMESPACE but only the maintainer of glmnet can do that.

PS: This would be better asked on R-devel

Upvotes: 26

Related Questions