[R-pkg-devel] Strange error from CRAN on package submission

Kevin R. Coombes kev|n@r@coombe@ @end|ng |rom gm@||@com
Wed Nov 11 23:31:21 CET 2020


Hi Duncan,

Thanks for the help. For now (since I want my package to get into CRAN 
so I can resubmit my paper), I'll add the "Import" clause, and write 
myself a note to try removing it later.

Best,
   Kevin

On 11/11/2020 4:44 PM, Duncan Murdoch 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 using r-project.org mailing list
>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>



More information about the R-package-devel mailing list