From spencer.graves at prodsyse.com  Thu Mar  9 17:32:57 2017
From: spencer.graves at prodsyse.com (Spencer Graves)
Date: Thu, 9 Mar 2017 10:32:57 -0600
Subject: [Rd] Error in formatDL(nm, txt, indent = max(nchar(nm,
	"w")) + 3)
In-Reply-To: <CAF8bMcYKk_m3OY7u3yGPJsqX7awra3PDi-=O42MtAUZ7FZLqsA@mail.gmail.com>
References: <a99693c0-1152-a367-d0e1-bd54edfa4319@prodsyse.com>
	<584764a2-5345-61bb-131f-c3e59083c896@prodsyse.com>
	<CAF8bMcYhwPKYeRX=XYM9qTPYsxiGH_2oqvmaM0BBvAyfsoNcKw@mail.gmail.com>
	<CAF8bMcYKk_m3OY7u3yGPJsqX7awra3PDi-=O42MtAUZ7FZLqsA@mail.gmail.com>
Message-ID: <187bd418-125a-4028-f523-d5f3375c6b4b@prodsyse.com>

Hi, Bill et al.:


On 2017-03-09 9:58 AM, William Dunlap wrote:
> It happens in the fda package because some of the headers are longer
> than typical (e.g., "Repository/R-Forge/DateTimeStamp") and formatDL
> dies if the indent argument is too large compared to the width argument.
>
> It might be nice to change formatDL so it never gave such an error, but
> did something reasonable when the 'indent' argument was too big.
> Changing
>     if (indent > width/2) stop("incorrect values of 'indent' and 'width'")
> to
>     indent <- min(indent, width/2)
> seems reasonable to me.


       Thanks.  That sounds like a useful patch to me.


       Per "www.r-project.org/bugs.html", I will forward this thread 
with your suggested patch to the maintainer for formatDL{base} = "R Core 
Team <R-core at r-project.org>".


       Spencer Graves


p.s.  Per your earlier email, I changed the code in PackageSum2{sos} to 
include the following before the first call to help{utils}:


   w0 <-options(width=80)
   on.exit(options(w0))


       This eliminated the specific error I reported but may not work 
with other packages with even longer headers.
>
> Bill Dunlap
> TIBCO Software
> wdunlap tibco.com
>
>
> On Thu, Mar 9, 2017 at 7:28 AM, William Dunlap <wdunlap at tibco.com> wrote:
>> This error can arise when getOption("width") is too small.  80 seems to be the
>> limit for me with R-3.3.2 on Windows.
>> Bill Dunlap
>> TIBCO Software
>> wdunlap tibco.com
>>
>>
>> On Wed, Mar 8, 2017 at 10:28 PM, Spencer Graves
>> <spencer.graves at prodsyse.com> wrote:
>>> Hello:
>>>
>>>
>>>        I tried "debug(help)" with the problem mentioned below.  It stopped
>>> with a call to "library", from which I generate the following simple
>>> replication of this error:
>>>
>>>
>>>> library(help = 'fda', character.only = TRUE)
>>> Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3) :
>>>    incorrect values of 'indent' and 'width'
>>>
>>>
>>>        This was using R 3.3.3 inside RStudio on a Mac, as noted below.  This
>>> same "library(help='fda', character.only=TRUE)" ran fine using R Console
>>> 3.2.1 under Windows 7.
>>>
>>>
>>>        I also tried debug(library).  It died in line 298:
>>>
>>>
>>>      for (i in which(file.exists(docFiles))) pkgInfo[[i]] <-
>>> readDocFile(docFiles[i])
>>>
>>>
>>>        with i = 1 and docFiles[i] =
>>> "/Library/Frameworks/R.framework/Versions/3.3/Resources/library/fda/Meta/package.rds".
>>>
>>>
>>>        This looks like a bug to me.  I don't know if it's new since R 3.2.1
>>> or it works fine under Windows 7 but not a Mac.
>>>
>>>
>>>        Thanks,
>>>        Spencer Graves
>>>
>>>
>>> *** NOTES:
>>>
>>>
>>>        1.  When I tried "Q" to exit debug mode, I got, "Error retrieving
>>> help:  R code execution error."  This suggests a bug in "debug", which could
>>> be replicated by trying debug(help) with "help(package='fda',
>>> help_type='text')".  It does not want to exit from "help" using "Q".  "c"
>>> also fails.
>>>
>>>
>>>        2.  For sessionInfo(), see below.
>>>
>>>
>>> On 2017-03-08 4:06 PM, Spencer Graves wrote:
>>>> Hello:
>>>>
>>>>
>>>>        A call to help(..., help_type='text') fails with "package='fda":
>>>>
>>>>
>>>>> install.packages('fda')
>>>>> help(package='fda', help_type='text')
>>>> Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3) :
>>>>    incorrect values of 'indent' and 'width'
>>>>
>>>>
>>>>        I have this wrapped inside "try" in PackageSum2{sos}, so it doesn't
>>>> die, but it also doesn't give me the additional information I want from
>>>> help(..., help_type='text')
>>>>
>>>>
>>>>        Is this a bug?
>>>>        Thanks,
>>>>        Spencer Graves
>>>>
>>>> Using RStudio 1.0.136 with
>>>>
>>>>
>>>>> sessionInfo()
>>>> R version 3.3.3 (2017-03-06)
>>>> Platform: x86_64-apple-darwin13.4.0 (64-bit)
>>>> Running under: macOS Sierra 10.12.3
>>>>
>>>> locale:
>>>> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
>>>>
>>>> attached base packages:
>>>> [1] stats     graphics  grDevices utils     datasets
>>>> [6] methods   base
>>>>
>>>> loaded via a namespace (and not attached):
>>>> [1] tools_3.3.3
>>>>
>>>> ______________________________________________
>>>> R-devel at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>>
>>> ______________________________________________
>>> R-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel



[Rd] Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3)
Spencer Graves