/
CHANGES.Rd
801 lines (657 loc) · 30.3 KB
/
CHANGES.Rd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
\newcommand{\PR}{\Sexpr[results=rd]{tools:::Rd_expr_PR(#1)}}
\name{CHANGES}
\title{Windows-specific changes to R}
\encoding{UTF-8}
\section{CHANGES IN R VERSION 2.14.2}{
\subsection{NEW FEATURES}{
\itemize{
\item \code{bitmap()} and \code{dev2bitmap()} look for
\command{gswin64c.exe} (as used by 64-bit GhostScript), in
preference to \command{gswin32c.exe}.
}
}
\subsection{INSTALLATION}{
\itemize{
\item The sources (and packages) can now be compiled using the
multilib toolchain developed for \R 2.15.x: see the
\samp{MULTI} macro in \file{MkRules.dist}. This toolchain is used
for the CRAN binary distribution.
}
}
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item The preferred toolchain has changed since the one used for
\R 2.12.0 to 2.14.1: see the\sQuote{R Installation and
Administration manual}. Compiled code (except DLLs) may be
incompatible with previous toolchains (and compiled C++ code
almost certainly will be: users of \pkg{Rcpp} take care).
Ensure that the settings in \file{MkRules.local} are appropriate
to the toolchain you use.
\item There is a new macro (aka make variable)
\samp{SHLIB_PTHREAD_FLAGS}. This is set to \option{-pthread} on
builds using toolchains which support it, and should be included
in both \samp{PKG_CPPFLAGS} (or the Fortran or F9x equivalents)
and \samp{PKG_LIBS}.
}
}
\subsection{BUG FIXES}{
\itemize{
\item Using a prompt of more than 80 characters in
\code{readline()} could cause a buffer overflow in Rterm.
(Reported by Henrik Bengtsson.)
\item Some of the custom messages in the installer were corrupted:
add a BOM mark to the file as now required by Unicode Inno Setup.
(\PR{14816})
}
}
}
\section{CHANGES IN R VERSION 2.14.1}{
\subsection{NEW FEATURES}{
\itemize{
\item The \code{Save as} menu item on the script
editor adds extension \file{.R} to a file name without an extension.
\item In package \pkg{parallel}, \code{detectCores(logical =
FALSE)} makes an OS-dependent attempt to find the number of
physical cores. It usually succeeds, even on XP.
}
}
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item The directory pointed to by \env{USER_LOCAL} can now have
architecture-specific sub-directories \file{lib/i386} and
\file{lib/x64}.
}
}
\subsection{BUG FIXES}{
\itemize{
\item The fix for \PR{14543} caused stack problems with outputting
large \R objects (e.g. data frames of 25,000 items). (\PR{14698})
\item In a double-byte locale (Chinese, Japanese, Korean),
\code{grep()} and friends might have used byte-wise matching of
strings in the native encoding. (\PR{14622})
}
}
}
\section{CHANGES IN R VERSION 2.14.0}{
\subsection{NEW FEATURES}{
\itemize{
\item The \code{yLineBias} of the \code{windows()} family of
devices has been changed from 0.1 to 0.2: this changes slightly
the vertical positioning of text (including axis annotations).
This can be overridden by setting the new \code{"ylbias"} graphical
parameter. This was done for consistency with other devices
such as \code{pdf()}.
\item \command{R CMD build} once again attempts to preserve file
permissions on Windows.
\item There is support for cairographics-based devices using the
same code as on Unix-alikes. This can be selected by the new
\code{type} argument of the bitmap devices \code{bmp()},
\code{jpeg()}, \code{png()} and \code{tiff()}, and devices
\code{svg()}, \code{cairo_pdf()} and \code{cairo_ps()} are now
available on Windows.
These are not compiled in by default when building from source:
see the instructions in the \sQuote{R Installation and
Administration Manual}.
\item All the Windows-specific graphics devices now have a
\code{family} argument. If non-empty this specifies an initial
family to be used for fonts 1--4. If empty the fonts specified in
the \file{Rdevga} configuration file are used for the Windows GDI
devices and \code{"sans"} for cairographics-based devices.
This will generally be a Windows font name such as
\code{"Lucida Bright"} or one of the device-independent names
(\code{"sans"}, \code{"serif"} and \code{"mono"}). Outside
Western Europe you may need to select a family that better
supports your locale such as \code{"Arial MS Unicode"} or one
specific to Chinese/Korean/Thai \dots{}.
\item There is a new \file{antialias} argument to
\code{windows()}, \code{win.print()} and the bitmap devices.
This is an option that can be set in \code{windows.options()} to
set the default for \code{windows()} (and \code{win.graph()}).
This gives a hint to the Windows plotting system. Whether
anti-aliasing is actually used principally depends on the OS
settings: this argument should at least be able to turn it
off. The default behaviour (unchanged from before) is that Windows
will use anti-aliasing for screen devices (and bitmap devices, as
they plot on a hidden screen) if ClearType has been enabled. For
those not using ClearType, \code{windows.options(antialias =
"cleartype")} will make this the default, and it will probably
give more legible plots.
The argument can also be used for the cairographics-based versions
of the bitmap devices.
\item The \sQuote{Update packages ...} menu item now runs
\code{update.packages(ask="graphics", checkBuilt=TRUE)}.
\item \code{R CMD INSTALL} preserves the package-directory
modification time when it restores an earlier install of the package.
\item File extensions \code{.xz}, \code{.rda} and \code{.RData}
have been added to those which default to binary transfer for
\code{download.file()}.
\item \code{install.packages()} and \command{R CMD check} have a
small delay after removing a directory to counteract some
interference from anti-virus software.
\item There is a Danish translation of the RGui menus.
}
}
\subsection{INSTALLATION}{
\itemize{
\item Compilation of C and Fortran code now uses the optimization
flag \option{-mtune=core2}: this will improve performance a few
percent on recent CPUs at the expense of those which are several
years old. Its effect is particularly evident on 64-bit builds.
This can be overridden when building from the sources: see the
\samp{EOPTS} macro defined in file \file{MkRules.dist}.
\item Where both 32- and 64-bit versions of R are installed, the
file association for \file{.RData} files defaults to 64-bit R (it
defaulted to 32-bit in R 2.12.x and 2.13.x).
\item There is preliminary support for \sQuote{multilib}
toolchains which use options \option{--m32} or \option{--m64} to
select the architecture; set the appropriate macros in
\file{MkRules.local}.
It is the intention to move to such a toolchain when they become
mature enough.
}
}
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item \file{Rzlib.dll} (sometimes used in packages \emph{via}
\samp{$(ZLIB_LIBS)}) does not include the buggy gzio % for balance: $
interface from zlib 1.2.5.
}
}
\subsection{DEFUNCT}{
\itemize{
\item{zip.unpack()} (deprecated in \R 2.13.0) is defunct:
use \code{unzip()} instead.
}
}
\subsection{BUG FIXES}{
\itemize{
\item Raster drawing on \code{win.metafile()} (or copying a plot
that includes a raster image from another device to a Metafile)
now does not crash. (Reported by Stefan Gelissen.)
}
}
}
\section{CHANGES IN R VERSION 2.13.2}{
\subsection{BUG FIXES}{
\itemize{
\item The fix for \PR{14583} caused inconsistent behaviour in other
areas, e.g. \PR{14628}, extra lines appearing in image displays,
and uneven bases on histograms. (\PR{14632}).
\item Opening large numbers of \code{windows()} graphics devices
could cause some of them to fail to redraw (\PR{14668}).
}
}
}
\section{CHANGES IN R VERSION 2.13.1}{
\subsection{NEW FEATURES}{
\itemize{
\item \command{R CMD build} no longer attempts to preserve file
permissions on Windows, because Windows (unlike POSIX-compliant
OSes) stops read-only files being deleted in version-control
directories.
\item \code{shell.exec()} now interprets files relative to the current
working directory (rather than \samp{R_HOME}).
\item \code{file.info()} now accepts \sQuote{file} names with
trailing directory separators, even though such names are invalid
on Windows.
\item The \code{windows()} family of devices now supports()
per-pixel alpha for raster images.
}
}
\subsection{BUG FIXES}{
\itemize{
\item Launching the PDF manuals from the Rgui menus did not work
on some versions of Windows.
\item The windows() screen device would sometimes fail to plot
(visibly) points with \code{pch="."}. \PR{14583}
\item \code{system()} and related functions sometimes failed
when run in \file{Rgui}.
\item Saving to PDF from the menu of a \code{windows()} device
used defaults for \code{family}, \code{fg} and \code{bg} from
\code{ps.options()} rather than \code{pdf.options()} (but
the factory-fresh defaults were the same).
\item Shutting down the \R session cleaned up the temporary
directory before closing all graphics devices. On Windows this
necessitated changing the working directory, so some devices
(e.g. \code{tiff()}) could write files in the wrong directory if
closed during shutdown. The order has been reversed.
}
}
}
\section{CHANGES IN R VERSION 2.13.0}{
\subsection{WINDOWS VERSION}{
\itemize{
\item Windows 2000 is no longer supported. (It went end-of-life in
July 2010.)
}
}
\subsection{NEW FEATURES}{
\itemize{
\item \code{win_iconv} has been updated: this version has a change
in the behaviour with BOMs on UTF-16 and UTF-32 files -- it
removes BOMs when reading and adds them when writing. (This is
consistent with Microsoft applications, but Unix versions of
\code{iconv} usually ignore them.)
\item Support for repository type \samp{win64.binary} (used for
64-bit Windows binaries for \R 2.11.x only) has been removed.
\item The installers no longer put an \sQuote{Uninstall} item on
the start menu (to conform to current Microsoft UI guidelines).
\item Running \R always sets the environment variable \env{R_ARCH}
(as it does on a Unix-alike from the shell-script front-end).
\item The defaults for \code{options("browser")} and
\code{options("pdfviewer")} are now set from environment variables
\env{R_BROWSER} and \env{R_PDFVIEWER} respectively (as on a
Unix-alike). A value of \code{"false"} suppresses display (even
if there is no \command{false.exe} present on the path).
\item If \code{options("install.lock")} is set to \code{TRUE},
binary package installs are protected against failure similar to
the way source package installs are protected.
\item \code{file.exists()} and \code{unlink()} have more support
for files > 2GB.
\item The versions of \command{R.exe} in
\file{R_HOME/bin/{i386,x64}/bin} now support options such as
\command{R --vanilla CMD}: there is no comparable interface for
\file{Rcmd.exe}.
\item A few more file operations will now work with >2GB files.
\item The environment variable \env{R_HOME} in an \R session now
uses slash as the path separator (as it always has when set by
\command{Rcmd.exe}).
\item \command{Rgui} has a new menu item for the PDF
\sQuote{Sweave User Manual}.
}
}
\subsection{DEPRECATED}{
\itemize{
\item{zip.unpack()} is deprecated: use \code{unzip()}.
}
}
\subsection{INSTALLATION}{
\itemize{
\item There is support for \samp{libjpeg-turbo} \emph{via}
setting \code{JPEGDIR} to that value in \file{MkRules.local}.
Support for \samp{jpeg-6b} has been removed.
\item The sources now work with \samp{libpng-1.5.1},
\samp{jpegsrc.v8c} (which are used in the CRAN builds) and
\samp{tiff-4.0.0beta6} (CRAN builds use 3.9.1). It is possible
that they no longer work with older versions than
\samp{libpng-1.4.5}.
}
}
\subsection{BUG FIXES}{
\itemize{
\item Workaround for the incorrect values given by Windows'
\code{casinh} function on the branch cuts.
\item Bug fixes for drawing raster objects on \code{windows()}. The
symptom was the occasional raster image not being drawn, especially
when drawing multiple raster images in a single expression.
Thanks to Michael Sumner for report and testing.
\item Printing extremely long string values could overflow the
stack and cause the GUI to crash. (\PR{14543})
}
}
}
\section{CHANGES IN R VERSION 2.12.2}{
\subsection{NEW FEATURES}{
\itemize{
\item Building badly-written vignettes which used the default
device (\code{pdf(file = "Rplots.pdf")} could leave the device
open and hence the file \file{Rplots.pdf} could not be removed on
Windows: all devices are now closed.
}
}
\subsection{BUG FIXES}{
\itemize{
\item In some circumstances the caret (cursor) could be positioned
incorrectly. (\PR{14460})
\item When loading \file{Rconsole} from disk, a spurious warning
message was sometimes shown.
\item In \R 2.12.1, \code{system()} sometimes passed an empty
input stream to the new process rather than allowing user input.
\item The internal method for \code{untar()} does a better job of
unravelling symbolic links in the tarball (but still with many
limitations).
\item The graphical dialog version of \code{select.list()} could
cause later dialogs to fail if Windows events were not processed
between the calls.
}
}
}
\section{CHANGES IN R VERSION 2.12.1}{
\subsection{NEW FEATURES}{
\itemize{
\item \code{system()} and \code{system2()} with output redirected
to a character vector now give a warning if the command returns a
non-zero error code. (This is what a Unix-alike does as from \R
2.12.0.)
\item \code{system()} and \code{system2()} no longer discard
output from the command to stdout and stderr as often as they used
to, and more cases of \code{system2()} are implemented.
\item \code{stdout} is now flushed after echoing the input line.
\item The internal implementation of \code{tar()} (package
\pkg{utils}) is now supported on Windows.
}
}
\subsection{INSTALLATION}{
\itemize{
\item The MSI installer is now made by an \R script, and there is
now support for 64-bit builds. (Unlike the Inno Setup installer,
there are separate MSI installers for 32- and 64-bit Windows.)
It is now built using \command{WiX 3.x} rather than \command{WiX
2.0}. (As a result it is about 25\% smaller.)
}
}
\subsection{BUG FIXES}{
\itemize{
\item Some warning/error messages from \code{dyn.load()} could be
masked in \command{Rgui} on Windows 7, as that OS can return
messages containing carriage returns and \command{Rgui} does not
support overwriting.
\item Filenames could not be specified using backslashes in
\code{Sweave()}.
\item In \R 2.12.0, \code{system(intern = TRUE)} captured
\file{stderr} on \command{Rterm} when it was documented to only do
so on \command{Rgui}.
\item \command{Rgui} in \R 2.12.0 (only) did not always handle lines
containing carriage returns (\samp{\r}) correctly: sometimes
random characters where shown.
Since carriage returns have been supported in \command{Rgui},
the cursor positioning after outputting a line containing a
carriage return had been unreliable.
}
}
}
\section{CHANGES IN R VERSION 2.12.0}{
\subsection{NEW FEATURES}{
\itemize{
\item A sub-architecture is used for 32-bit (i386) as well as
64-bit (x64) builds. 32-bit packages containing compiled code
need to re-installed for this release (64-bit packages built
for 2.11.x will most likely still work).
Architecture-specific files (such as \file{Rgui.exe} and
\file{Rscript.exe}) are now in \file{R_HOME/bin/i386} or
\file{R_HOME/bin/x64}.
Because many people expect it, there is an executable
\file{R_HOME/bin/R.exe}, which accepts \option{--arch} and
launches either \file{R_HOME/bin/i386/R.exe} or
\file{R_HOME/bin/x64/R.exe}, and analogously for
\file{Rscript.exe}. If not specified by their argument
\option{--arch}, these check the environment variable
\env{R_ARCH} for the architecture to use.
\item The \command{Rgui} console now has an optional blinking
caret (cursor) to assist screen readers for the visually
impaired.
\item \code{normalizePath()} now signals a warning instead of an
error when the input path does not exist. It attempts partial
normalization, or if that fails, returns the original input.
\item All the \command{Rcmd} sub-commands except \code{config} and
\code{Sd2d} are now handled internally rather by shell scripts.
\item \command{Rcmd} has a new sub-command \command{texify} to run
MiKTeX's \file{texify.exe} with arguments to find files such as
\file{Sweave.sty}. See the examples in \code{?Sweave}.
\item \code{system(intern = FALSE)} now returns \code{127} (the
same as Unix-alikes) rather than \code{-1} if the command cannot
be run, and (like Unix-alikes) no longer gives a warning.
\item \command{Rscript -e} and similar use a temporary file, and
now work harder to ensure that filename is not the same as some
other simultaneous \R process.
}
}
\subsection{INSTALLATION}{
\itemize{
\item The preferred toolchain for 32-bit builds (including
packages) is now based on \command{gcc 4.5.0}: see the \sQuote{R
Installation and Administration Manual}.
\item It is now possible to build \R and the standard installer
without Perl: only maintainer-mode tasks now need Perl.
}
}
\subsection{64-bit NEWS}{
\itemize{
\item The 32- and 64-bit distributions have been merged:
There is a combined installer (called
\file{R-<version>-win.exe}). When used under 32-bit Windows
this works as before and installs 32-bit \R. When used under
64-bit Windows there are options to install either or both of
32- and 64-bit \R: the default is to install both.
The default package type is \code{"win.binary"} on both 32- and
64-bit builds: a single repository contains binary packages for
both architectures. This is in place for CRAN, CRAN extras and
BioC: \code{type = "win64.binary"} can still be used for any
repositories which follow the \R 2.11.x convention. With the
default filters (see \code{?available.packages}) packages will
only be offered if they are available for the current
architecture.
The default personal library, e.g. \file{~/R/win-library/2.12}
is now the same for both 32- and 64-bit \R.
\item The recommended 64-bit toolchain has been changed to one
that does not add leading underscores. See
\url{http://www.murdoch-sutherland.com/Rtools/} or
\url{http://www.stats.ox.ac.uk/pub/Rtools/}. Any static or import
libraries for external software used in installing packages will
need to be re-compiled for this toolchain, but the use of DLLs is
unaffected.
\item For those building \R from the sources, the 64-bit
\code{Tcl} binary distribution for 2.12.x is in file
\file{R64a_Tcl_8-5-8.zip} and contains e.g. directory
\file{Tcl/bin64} and not \file{Tcl/bin}.
}
}
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item The deprecated environment variable \env{RHOME} is no longer
set when a package is installed: use \env{R_HOME} instead (and
depend on \code{R (>= 2.9)} ).
\item Package installation, including \file{configure.win}
scripts, can use \code{$\{R_HOME\}/bin$\{R_ARCH_BIN\}} as a
portable way to find the binaries such as \file{Rscript.exe}.
}
}
\subsection{BUG FIXES}{
\itemize{
\item \command{R.exe} when used in place of \command{Rterm.exe}
set the environment variables set by \command{R CMD}. Conversely,
\command{R CMD BATCH} did not.
}
}
}
\section{CHANGES IN R VERSION 2.11.1 patched}{
\subsection{BUG FIXES}{
\itemize{
\item \code{file.rename()} now waits for the rename to complete
before returning, so that operations on the new filename will
not fail.
\item \code{Sys.info()} and \code{win.version()} now report
Windows 7 as such (and not as Vista), and \code{Sys.info()} now
reports the machine type as \code{"x86-64"} on 64-bit platforms.
\item \code{serialize()} to a raw vector works around the dismal
performance of Windows' memory manager by allocating much larger
chunks of memory less frequently.
\item \code{readClipboard()} could cause a segfault with certain
clipboard data.
\item A fix intended for Mac OS X was incorrectly applied to
Windows, so \code{iconv(x, from, "")} in a C locale was
interpreted as requesting translation to UTF-8.
\item \code{system(intern=TRUE)} often returned \code{0}
rather than an error status if the command could not be found, if
run from \code{Rterm} or from \code{Rgui} with
\code{show.output.on.console = FALSE}.
\item \code{memory.limit()} did not allow sizes greater than
4095 on 64 bit builds. (\PR{14372})
}
}
}
\section{CHANGES IN R VERSION 2.11.1}{
\subsection{NEW FEATURES}{
\itemize{
\item The \command{Rgui} console, pagers and editor on the 64-bit
build now have a title bar icon.
\item The outer frame/console for \command{Rgui/Rterm} mentions
'(64-bit)' to make it easier to distinguish running copies of \R.
\item The package entries in listbox shown by the \code{Install
package(s) ...} menu are now explicitly sorted in the current
locale (as they were in most previous releases, but not in
2.11.0).
\item \command{R CMD INSTALL} can install zipfiles as binary
packages.
\item Errors in the \file{Rconsole} file are ignored: silently on
startup, with a warning when \file{Rconsole} is loaded
interactively.
}
}
}
\section{CHANGES IN R VERSION 2.11.0}{
\subsection{NEW FEATURES}{
\itemize{
\item There is now a native x64 Windows port, with a binary installer
and binaries of packages available on CRAN. See the 'R
Administration and Installation Manual' and the 'R for Windows FAQ'.
\item \command{Rcmd cmd} (or \command{R CMD cmd}) now runs an
arbitrary '\option{cmd}' if '\option{cmd}' is not one of the
builtin commands, and does not have extension '\file{.sh}' or
'\file{.pl}' (when it is run as a shell or Perl script
respectively). This is done by passing '\option{cmd}' to the
command interpreter determined by the \env{COMSPEC} environment
variable (which in a vanilla Windows system points to
\file{cmd.exe}).
\item \code{X11()} and \code{x11()} gain additional arguments to
be more similar to the Unix \code{X11()} device.
\item \code{file.rename()} can work across volumes (by copy-and-delete).
\item The main HTML help page now links to this \file{CHANGES} file.
(Suggested by Henrik Bengtsson.)
\item \code{strftime(format = "\%z")} now gives the timezone names
used by the Olson database and not those used by Windows.
\item \code{iconv(to = "ASCII")} no longer transliterates, but
\code{iconv(to = "ASCII//TRANSLIT")} will. This makes
\code{tools::showNonASCII()} work the same way as on other platforms.
\item \code{readRegistry()} can look at either the 32- or 64-bit view
of the Registry on 64-bit Windows.
}
}
\subsection{INSTALLATION}{
\itemize{
\item The \code{Tcl} timezone files (3Mb on disc) are now an
optional part of the installation: they would be very rarely used
with \R.
\item \file{RSetReg.exe} has been updated to (un)set the
version-specific keys in the same way as the main installer, and
to have the optional argument \option{/Personal} to (un)set the
per-user rather than the per-machine keys (which need
administrative access).
\item When building \R, the recommended way is now to supply a file
\file{R_HOME/src/gnuwin32/MkRules.local} instead of editing
\file{MkRules}: there is now no \file{MkRules} file in the
distribution, but one is generated during the build process.
\file{MkRules.local} can be generated by copying and editing
\file{MkRules.dist}.
\item The MSI installer defaults to an all-user (per machine)
install (by setting the \code{ALLUSERS} property to \code{1}).
This can be changed at installation, and it can be built for a
user-mode install (see \file{MkRules.dist}).
}
}
\subsection{BUG FIXES}{
\itemize{
\item Using \code{ESC} to interrupt a \code{system()} call could
cause \R to become unstable.
\item \code{0^1i} (which should be complex \code{NAN}) was
incorrect.
}
}
}
\section{CHANGES IN R VERSION 2.10.1 patched}{
\subsection{BUG FIXES}{
\itemize{
\item Some of the MDI toolbar buttons (e.g. \code{"Open Script"})
did not return the focus to the console if the user cancelled the
action.
\item \code{system()} (and hence \code{shell()}) did not always
set the standard file handles properly, so some programs would
not run.
\item \code{setWinProgressBar()} did not check the type of its
\code{'title'} and \code{'label'} arguments and might have
crashed if they were mis-specified. It now does, thanks to a
report by Greg Snow.
}
}
}
\section{CHANGES IN R VERSION 2.10.1}{
\subsection{BUG FIXES}{
\itemize{
\item The installer did not properly record help type choices in
\file{R_HOME/etc/Rprofile.site}.
\item \command{Rcmd INSTALL} once again uses
\option{--no-restore}, for consistency with the Unix version and
\R 2.9.2.
\item The HTML package index was not constructed properly when the
library path was specified with backslashes. (Patch submitted
by Gabor Grothendieck.)
}
}
}
\section{CHANGES IN R VERSION 2.10.0}{
\subsection{NEW FEATURES}{
\itemize{
\item \code{windows()} now has a parameter \code{fillOddEven}
(default \code{TRUE}), which controls the mode used for polygon
fills of self-intersecting shapes.
\item The functions \code{arrangeWindows()} and
\code{getWindowsHandles()} have been added to give more
programmatic control to the appearance of windows in an R
session.
\item A \sQuote{Windows} menu has been added to the SDI version of
the \R GUI, and the corresponding menu in the MDI version has
been expanded slightly.
\item The \code{libpng} library has been updated to version 1.2.40.
\item The remaining Perl scripts \code{build}, \code{check},
\code{Rprof}, \code{Sd2Rd} in \file{R_HOME/bin} now have extension
\file{.pl}.
\item \code{Rcmd} (or \code{R CMD}) can now run \file{.sh} (shell)
and \file{.pl} (Perl) scripts anywhere on the path (as well as
\file{.bat} and \file{.exe} files as before).
}
}
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item \command{Rcmd SHLIB} (which is used by \command{Rcmd
INSTALL}) now calls \code{make} without a target, rather than
target \code{'all'}. This is now the same as on Unix, and was
announced in the \file{NEWS} file for 2.9.0.
\item Help files are no longer zipped: rendering as text, HTML,
latex or examples is now done when needed.
Options \option{--use-zip} and \option{--use-zip-help} in
\command{R CMD INSTALL} are no longer available and
\option{--auto-zip} only zips data (or not).
Help in packages installed under 2.9.x may not work correctly,
and a warning is given when such a package is attached by
\code{library()}. Re-installation of all packages is strongly
recommended (use \code{update.packages(checkBuilt = TRUE)}).
Binary packages are installed without CHM help if they contain
it (as those intended for 2.9.x may).
\item It is possible to install source packages without Rtools
provided they have no compiled code and no \file{configure.win} or
\file{cleanup.win} script.
}
}
\subsection{INSTALLATION}{
\itemize{
\item Support for memory profiling is enabled in a standard build
(this can be changed by editing \file{config.h}).
\item CHM help is no longer supported.
\item The help default for the standard installer is HTML help rather
than CHM help.
\item The categories in the installers have been simplified. Now the
files to support installation of source packages are always
installed (they are now only 0.7Mb), and there are no longer
categories 'chtml', 'html/help', 'latex' and 'Rd'.
}
}
\subsection{BUG FIXES}{
\itemize{
\item \command{Rcmd open} now works as documented: previously
\command{Rcmd open.exe} was required.
\item \code{cat(x, file=)} in \command{Rgui} tried to interpret
UTF-8-encoded strings for the console rather than converting them
to the native encoding.
}
}
}