[Rd] Bug in RScript.exe for 3.5.0

Tomas Kalibera
Sat, 28 Apr 2018 21:36:14 -0000

I don't have an opinion if this requires 3.5.1 to be released soon(er),
but I have ported to R-patched now. The bug existed in R-devel for a
year without being spotted, which is quite a long time - but it may be
these bugs are hard to find before release, because people testing and
using an unreleased version of R would not use space in file names. As
apparently users of released versions do, we should do better about
testing, perhaps test regularly with space in path names on a system
that supports it. I think normal regression tests should not depend on
such support.

In either case, I would recommend users to avoid space in file names to
be safe. One known problem is that some packages will not build when
RHOME has space in its name (on Windows, this is not a problem on drives
with short file names supported, but that is not always the case) - CRAN
is now checking the most common source of this issue, but there may be more.

Tomas


On 04/28/2018 07:23 PM, Yihui Xie wrote:
> It seems the fix has not been ported to the patched version of R on
> Windows yet. I just tested R version 3.5.0 Patched (2018-04-27
> r74667).
>
> IMHO this bug is so bad that it is worth a new release R 3.5.1 before
> it starts biting more users like this one
> https://stackoverflow.com/q/50077412/559676. BTW, although the bug has
> been fixed (https://github.com/wch/r-source/commit/c29f694), I think
> it will be even better if a corresponding test is added at the same
> time to prevent this from happening again in the future.
>
> Thanks!
>
> Yihui
>
> On Fri, Apr 27, 2018 at 7:03 AM, Kerry Jackson <Kerry.Jackson at
ipsos.com> wrote:
>> Thanks Tomas,
>>
>> I confirm the R Under development (unstable) (2018-04-26 r74651)
version works for Rscript when the file name has a space, and no arguments are
specified.
>>
>> C:\>"C:\Program Files\R\R-devel\bin\x64\Rscript.exe"
"C:\foo bar.R"
>> R Under development (unstable) (2018-04-26 r74651)
>> Platform: x86_64-w64-mingw32/x64 (64-bit)
>> Running under: Windows 7 x64 (build 7601) Service Pack 1
>>
>> Matrix products: default
>>
>> locale:
>> [1] LC_COLLATE=English_United States.1252
>> [2] LC_CTYPE=English_United States.1252
>> [3] LC_MONETARY=English_United States.1252
>> [4] LC_NUMERIC=C
>> [5] LC_TIME=English_United States.1252
>>
>> attached base packages:
>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>
>> loaded via a namespace (and not attached):
>> [1] compiler_3.6.0
>>
>> C:\>
>>
>> -----Original Message-----
>> From: Tomas Kalibera [mailto:tomas.kalibera at gmail.com]
>> Sent: Thursday, April 26, 2018 10:22 AM
>> To: Kerry Jackson <Kerry.Jackson at Ipsos.com>
>> Cc: r-devel at r-project.org
>> Subject: Re: [Rd] Bug in RScript.exe for 3.5.0
>>
>> Thanks, actually this is because the snapshot build is still one
version behind (74642, the fix is in 74643). When I build my own installer and
install it seems to be working fine. Sorry for the confusion,
>>
>> Tomas
>>
>> On 04/26/2018 02:49 PM, Kerry Jackson wrote:
>>> Hi Tomas,
>>>
>>> Thanks for the info about the binary builds; I did install it,
however the bug still seems to be there in the current build.  The workaround
you suggested does work:
>>>
>>> C:\>"C:\Program Files\R\R-devel\bin\x64\Rscript.exe"
"C:\foo bar.R"
>>> Fatal error: cannot open file 'C:\foo': No such file or
directory
>>>
>>>
>>> C:\>"C:\Program Files\R\R-devel\bin\x64\Rscript.exe"
--vanilla "C:\foo bar.R"
>>> What do you get when you multiply 6 * 9?
>>> C:\>
>>>
>>> -----Original Message-----
>>> From: Tomas Kalibera [mailto:tomas.kalibera at gmail.com]
>>> Sent: Thursday, April 26, 2018 8:35 AM
>>> To: Kerry Jackson <Kerry.Jackson at Ipsos.com>; r-devel at
r-project.org
>>> Subject: Re: [Rd] Bug in RScript.exe for 3.5.0
>>>
>>> On 04/26/2018 02:23 PM, Kerry Jackson wrote:
>>>> Thanks Tomas.
>>>>
>>>> I confirm the quick workaround works for me in the DOS prompt,
and when having a shortcut to RScript in SendTo, and when used in the Task
Scheduler.  I have not tested the R-devel version, due to my unfamiliarity with
installing from source code.
>>> Thanks, Kerry.
>>>
>>> There are binary builds for daily snapshots of R-devel
>>> (development/unstable version of R) at
>>> https://cran.r-project.org/bin/windows/base/rdevel.html
>>>
>>> At this time the build should already have the fix.
>>>
>>> Best
>>> Tomas
>>>
>>>> -----Original Message-----
>>>> From: Tomas Kalibera [mailto:tomas.kalibera at gmail.com]
>>>> Sent: Thursday, April 26, 2018 6:34 AM
>>>> To: Kerry Jackson <Kerry.Jackson at Ipsos.com>; r-devel
at r-project.org
>>>> Subject: Re: [Rd] Bug in RScript.exe for 3.5.0
>>>>
>>>> Fixed in R-devel. I will port to R-patched after more testing.
>>>> Tomas
>>>>
>>>> On 04/26/2018 01:52 AM, Tomas Kalibera wrote:
>>>>> Thanks for the report. A quick workaround before this gets
fixed is
>>>>> to add an extra first argument that has no space in it,
e.g.
>>>>>
>>>>> Rscript --vanilla "foo bar.R"
>>>>>
>>>>> The problem exists on all systems, not just Windows.
>>>>>
>>>>> Best
>>>>> Tomas
>>>>>
>>>>> On 04/25/2018 09:55 PM, Kerry Jackson wrote:
>>>>>> Hi R Developers,
>>>>>> I have found what I think is a bug in the RScript.exe
in version
>>>>>> 3.5.0 of R for Windows.
>>>>>> When I call Rscript.exe for Version 3.5 of R, it is
unable to open
>>>>>> the file if the file name or path has a space in it.
>>>>>> As an example of what happens, I saved 2 files with the
code:
>>>>>> cat("What do you get when you multiply 6 *
9?") as C:\foo bar.R and
>>>>>> as C:\foo_bar.R When I in a DOS command window try to
run these
>>>>>> using version 3.4.3 and 3.5:
>>>>>> C:\>"C:\Program
Files\R\R-3.4.3\bin\x64\Rscript.exe" "C:\foo bar.R"
>>>>>> What do you get when you multiply 6 * 9?
>>>>>> C:\>"C:\Program
Files\R\R-3.4.3\bin\x64\Rscript.exe" "C:\foo_bar.R"
>>>>>> What do you get when you multiply 6 * 9?
>>>>>> C:\>"C:\Program
Files\R\R-3.5.0\bin\x64\Rscript.exe" "C:\foo bar.R"
>>>>>> Fatal error: cannot open file 'C:\foo': No such
file or directory
>>>>>>
>>>>>>
>>>>>> C:\>"C:\Program
Files\R\R-3.5.0\bin\x64\Rscript.exe" "C:\foo_bar.R"
>>>>>> What do you get when you multiply 6 * 9?
>>>>>> C:\>
>>>>>> When I try to run the file with a space in the name in
version
>>>>>> 3.5.0 of R, there is a fatal error saying there is no
such file.
>>>>>>
>>>>>>
>>>>>> Kerry Jackson
>>>>>> Job title: Senior Account Manager, Ipsos Connect US RA
Testing GMU
>>>>>> Phone: (203) 840-3443
>>>>>>
>>>>>>
>>>>>>        [[alternative HTML version deleted]]
>>>>>>
>>>>>> ______________________________________________
>>>>>> 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