Hi Martin,

I think you may be right that it is something odd about the configuration on the test machine, since I haven't been able to reproduce it anywhere else. But Duncan did say he could reproduce it in R-devel but not R-4.0.3, so there's that.

The error message is buried deep in this thread, but it was:

Check: whether package can be installed.
Result: WARN
    Found the following significant  warnings:
    Warning: namespace ‘flexmix’ is  not available and has been replaced

Check: data for non-ASCII characters
Result: WARN
    Warning: namespace 'flexmix'  is not available and has been replaced
    by .GlobalEnv when processing  object '<unknown>'

Best,
  Kevin

On 11/12/2020 10:13 AM, Martin Morgan wrote:
This seems more like a problem with the CRAN test machine, with the movMF 
package installed with flexmix available but loaded with flexmix not available, 
maybe interacting with a caching mechanism used by the methods package to avoid 
re-computing methods tables? Otherwise how would movMF ever know to create the 
flexmix class / method?

It seems like this could cause problems for the user if they installed movMV 
with flexmix available, but removed flexmix. This seems like a subtler 
variation of 'I installed package A but then removed dependency B and now A 
doesn't work', which could be a bug in R's remove.packages() but....

I tried to emulate the scenario of installing movMF and then removing flexmix 
in an interactive session, and then looking for the warning reported below. I 
was not successful, but the build report with the error is no longer available 
so I don't know what I'm looking for...

Martin Morgan

On 11/11/20, 4:44 PM, "R-package-devel on behalf of Duncan Murdoch" 
<r-package-devel-boun...@r-project.org on behalf of murdoch.dun...@gmail.com> wrote:

     Here's what I think is happening.

     In the movMF:::.onLoad function there's a test whether flexmix is
     installed.  If found, then it is loaded and some methods are set.  (I'm
     not sure what caused flexmix to be installed:  I didn't intentionally
     install it, but it ended up in there when I installed enough stuff to
     check Mercator.)

     In the R-devel --as-cran checks, some checks are run with only strong
     dependencies of your package visible.  Somehow I think that .onLoad
     function sees flexmix and loads it, but then some other part of the
     check can't see it.

     A workaround is to add flexmix to your Imports clause.  This is a strong
     enough dependency to make it visible, and the error goes away.

     HOWEVER, to me this is pretty clearly an R-devel bug:  you have no
     control over methods set by packages that you don't even use, so you
     shouldn't have to change your dependency lists if one of them sets a
     method that you're using.

     Duncan Murdoch

     On 11/11/2020 3:31 p.m., Kevin R. Coombes wrote:
     > Oh, I forgot to mention explicitly that checking (with --as-cran) on the
     > development version of R on Windows also produces no errors or warnings.
     >
     > On 11/11/2020 1:39 PM, Kevin R. Coombes wrote:
     >> Hi Duncan,
     >>
     >> I just sent a longer version of this message, but it looks to me like
     >> the underlying issue is the fact that flexmix and Mercator both define
     >> and export "show" methods for their S4 classes.  What confuses me is
     >> why the NAMESPACE of a package that is merely Suggest'ed by something
     >> several layers down the hierarchy should get attached and cause an
     >> issue like this one. (The attached NAMESPACE happens in current
     >> versions of R.)
     >>
     >> Thanks,
     >>    Kevin
     >>
     >> On 11/11/2020 1:07 PM, Duncan Murdoch wrote:
     >>> Okay, I've tried testing on my Mac with R 4.0.3 and R-devel for the
     >>> new one, 4.0.3 for the CRAN version.
     >>>
     >>> I'm not seeing any check error with the CRAN version.  I get an error
     >>> trying to check 0.11.4 from R-forge because I don't have flexmix
     >>> installed.  If I take flexmix out of the Suggests list, it checks
     >>> with no error on 4.0.3, but I get the error you saw on R-devel when
     >>> checked with --as-cran.
     >>>
     >>> I tried debugging this, and narrowed it down a bit.  It happens when
     >>> your package is installed, in particular in the do_install_source()
     >>> function in src/library/tools/R/install.R. But that function runs a
     >>> new R instance, and I didn't get to debugging that.  I'll try again
     >>> later today if nobody else figures it out.
     >>>
     >>> Duncan Murdoch
     >>>
     >>>
     >>>
     >>>
     >>> On 11/11/2020 12:03 p.m., Kevin R. Coombes wrote:
     >>>> Hi Duncan,
     >>>>
     >>>> Oops; I didn't realize I had forgotten to push updates to the OOMPA 
web
     >>>> site.
     >>>>
     >>>> The code for Mercator is contained as part of the Thresher project in
     >>>> the subversion repository on R-Forge.
     >>>> (https://r-forge.r-project.org/projects/thresher/) It's under
     >>>> pkg/Mercator below that URL
     >>>>
     >>>> Thanks,
     >>>>      Kevin
     >>>>
     >>>> On 11/11/2020 11:30 AM, Duncan Murdoch wrote:
     >>>>> Uwe suggested you suggest flexmix, but I see below you already tried
     >>>>> that.
     >>>>>
     >>>>> I'd like to take a look, but I can't find your package.  The existing
     >>>>> version on CRAN gives the URL as http://oompa.r-forge.r-project.org/,
     >>>>> but I can't see it mentioned there.
     >>>>>
     >>>>> Duncan Murdoch
     >>>>>
     >>>>> On 11/11/2020 8:44 a.m., Kevin R. Coombes wrote:
     >>>>>> Hi,
     >>>>>>
     >>>>>> I am trying to figure out how to fix warnings from two of the CRAN
     >>>>>> machines on the submission of an update to a package. The only
     >>>>>> change to
     >>>>>> my package was to add a "show" method to one of the S4 classes, 
which
     >>>>>> was requested by a reviewer of the paper we submitted. The
     >>>>>> inability to
     >>>>>> get this updated package into CRAN  is the only thing holding up the
     >>>>>> revision (and probable acceptance) of the manuscript.
     >>>>>>
     >>>>>> The same "warnings"s were found in the previous version. The
     >>>>>> package is
     >>>>>> called Mercator, and the CRAN check results from the  last version
     >>>>>> are here:
     >>>>>> https://cran.r-project.org/web/checks/check_results_Mercator.html
     >>>>>>
     >>>>>> I get warnings from the two fedora machine instances (clang and 
gcc).
     >>>>>> They both report
     >>>>>>
     >>>>>>> Check: whether package can be installed.
     >>>>>>> Result: WARN
     >>>>>>>         Found the following significant  warnings:
     >>>>>>>         Warning: namespace ‘flexmix’ is  not available and has been
     >>>>>>> replaced
     >>>>>>     >
     >>>>>>     > Check: data for non-ASCII characters
     >>>>>>> Result: WARN
     >>>>>>>          Warning: namespace 'flexmix'  is not available and has 
been
     >>>>>>> replaced
     >>>>>>>          by .GlobalEnv when processing  object '<unknown>'
     >>>>>>
     >>>>>> The relationships in the DESCRIPTION files are:
     >>>>>>
     >>>>>> 1. Mercator depends on Thresher
     >>>>>> 2. Thresher imports moVMF
     >>>>>> 3. moMVF suggests flexmix
     >>>>>>
     >>>>>> On my Windows machine, the package builds and installs with no
     >>>>>> errors or
     >>>>>> warnings even if flexmix is not available (which I believe to be the
     >>>>>> correct behavior). On R-Forge, both the Windows and LINUX versions
     >>>>>> build
     >>>>>> and install with no errors or warnings. On R-Hub, tested on multiple
     >>>>>> LINUX versions, the package builds and installs with no errors or
     >>>>>> warnings.
     >>>>>>
     >>>>>> And flexmix is still clearly available from CRAN:
     >>>>>> https://cran.r-project.org/web/packages/flexmix/index.html
     >>>>>>
     >>>>>> In the latest attempt to get things to work, I added
     >>>>>>       Suggests: flexmix
     >>>>>> into the DESCRIPTION file for Mercator, but this didn't help fix the
     >>>>>> problem on CRAN.
     >>>>>>
     >>>>>> Is there anything I can do to fix this problem (other than moan
     >>>>>> here on
     >>>>>> this list and hope that CRAN can just install flexmix on those
     >>>>>> machines)?
     >>>>>>
     >>>>>> Thanks in advance for your help,
     >>>>>>       Kevin
     >>>>>>
     >>>>>>       [[alternative HTML version deleted]]
     >>>>>>
     >>>>>> ______________________________________________
     >>>>>> R-package-devel@r-project.org mailing list
     >>>>>> https://stat.ethz.ch/mailman/listinfo/r-package-devel
     >>>>>>
     >>>>>
     >>>>
     >>>
     >>
     >

     ______________________________________________
     R-package-devel@r-project.org mailing list
     https://stat.ethz.ch/mailman/listinfo/r-package-devel

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to