Patrick Giraudoux
2022-Jan-30 17:52 UTC
[Rd] trouble with package loading: Function found when exporting methods from the namespace ‘raster’ which is not S4 generic: ‘all.equal’
Dear listers, After having exchanged on the R-package-devel at r-project.org list, I feel that the question should now be adressed on the R developper list. You'll find below the trouble I met, and one of the answers that Zhian Kamvar has been kind enough to provide. Il looks like the origin might be found in the way R deploys methods and namespace is managed, which is by far out my skills... Suspect some bug somewhere (?) Best, Patrick ------------------------------------------------------------------------ THE PROBLEM One user (in cc) has signaled a problem installing the package pgirmess (version 1.7.1 on CRAN), with this message on loading:> library(pgirmess)Error: package or namespace load failed for ?pgirmess?: Function found when exporting methods from the namespace ?raster? which is not S4 generic: ?all.equal? In addition: Warning message: no function found corresponding to methods exports from ?raster? for: ?direction?, ?gridDistance? I cannot identify where the trouble comes from since: - pgirmess goes through OK in all the checks on CRAN - I can install/remove it with correct loading on my own platform (Windows 10) - pgirmess 1.7.1 does not import 'raster' and the functions mentioned above The user has installed the last R version on Windows.? However, she gets a correct loading only if she loads 'Matrix' before (or 'lme4' - but to my knowlege, lme4 actually loads Matrix). She meets also the same issue with pgirmess 2.0 (not on CRAN yet, see https://github.com/pgiraudoux/pgirmess however this version (still on test) has deprecated/dropped all functions related to dealing with rasters. This occurs in R directly (not necessarily within RStudio). On the web, Iook likes this issue has is already been spotted for some other packages (e.g. mapview, tmap, etc.). Checking help-lists I saw that installing rtools might solve the problem (e.g. https://community.rstudio.com/t/error-package-or-namespace-load-failed-for-mapview/126914) however, it seems to me a strange workaround since rtools should not be made necessary for lay R user (not developers). Best, ------------------------------------------------------------------------ ZHIAN's ANSWER Le 28/01/2022 ? 17:35, Zhian Kamvar wrote : I've run into deep dependencies registering methods that mess things up before: https://github.com/thibautjombart/adegenet/issues/308. AFAICT, it has something to do with the way R deploys methods where they can be available if the namespace is available. In this case, it's via spdep -> spData -> raster. That being said, I am NOT an expert on this and would?like to know more if anyone has better insight. [[alternative HTML version deleted]]
Duncan Murdoch
2022-Jan-30 18:09 UTC
[Rd] trouble with package loading: Function found when exporting methods from the namespace ‘raster’ which is not S4 generic: ‘all.equal’
Can you reproduce the problem? If so, please post the recipe for doing so here, e.g. "install x from Github, y from CRAN, ..." If not, it's unlikely anyone will be able to help. If you don't know how to do it, I'd contact the original reporter, and at least ask the original reporter for sessionInfo() just before and after the error occurs. Duncan Murdoch On 30/01/2022 12:52 p.m., Patrick Giraudoux wrote:> Dear listers, > > After having exchanged on the R-package-devel at r-project.org list, I feel > that the question should now be adressed on the R developper list. > > You'll find below the trouble I met, and one of the answers that Zhian > Kamvar has been kind enough to provide. > > Il looks like the origin might be found in the way R deploys methods and > namespace is managed, which is by far out my skills... > > Suspect some bug somewhere (?) > > Best, > > Patrick > > ------------------------------------------------------------------------ > > THE PROBLEM > > One user (in cc) has signaled a problem installing the package pgirmess > (version 1.7.1 on CRAN), with this message on loading: > >> library(pgirmess) > > Error: package or namespace load failed for ?pgirmess?: > > Function found when exporting methods from the namespace ?raster? which > is not S4 generic: ?all.equal? > > In addition: Warning message: > > no function found corresponding to methods exports from ?raster? for: > ?direction?, ?gridDistance? > > I cannot identify where the trouble comes from since: > > - pgirmess goes through OK in all the checks on CRAN > > - I can install/remove it with correct loading on my own platform > (Windows 10) > > - pgirmess 1.7.1 does not import 'raster' and the functions mentioned above > > The user has installed the last R version on Windows.? However, she gets > a correct loading only if she loads 'Matrix' before (or 'lme4' - but to > my knowlege, lme4 actually loads Matrix). > > She meets also the same issue with pgirmess 2.0 (not on CRAN yet, see > https://github.com/pgiraudoux/pgirmess however this version (still on > test) has deprecated/dropped all functions related to dealing with rasters. > > This occurs in R directly (not necessarily within RStudio). > > On the web, Iook likes this issue has is already been spotted for some > other packages (e.g. mapview, tmap, etc.). Checking help-lists I saw > that installing rtools might solve the problem (e.g. > https://community.rstudio.com/t/error-package-or-namespace-load-failed-for-mapview/126914) > however, it seems to me a strange workaround since rtools should not be > made necessary for lay R user (not developers). > > Best, > > ------------------------------------------------------------------------ > > ZHIAN's ANSWER > > Le 28/01/2022 ? 17:35, Zhian Kamvar wrote : > I've run into deep dependencies registering methods that mess things up > before: https://github.com/thibautjombart/adegenet/issues/308. > AFAICT, it has something to do with the way R deploys methods where they > can be available if the namespace is available. In this case, it's via > spdep -> spData -> raster. That being said, I am NOT an expert on this > and would?like to know more if anyone has better insight. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel