The R Project SVN R

Rev

Rev 42167 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

            Dear Emacs, please make this -*-Text-*- mode!
    **************************************************
    *    Windows-specific changes to R       *
    *    See the file NEWS for changes that  * 
    *        affect all versions of R.       *
    *                        *
    *          2.6 SERIES NEWS           *
    *                        *
    **************************************************
    
        CHANGES IN R VERSION 2.6.0
        
GUI CHANGES

    o   The console now handles cut and paste and mouse clicks in the
    input line in a more Windows standard way.  It also indicates
    insert and overwrite mode with different cursors.


FUNCTION CHANGES

    o   embedFonts() now accepts paths in 'GS_CMD' which contain spaces.


INSTALLER

    o   The components now have two levels, and the Tcl/Tk docs can be
    deselected independently.  Only CHM help for Tcl/Tk is shipped
    (since Winhelp does not work on Vista).


OTHERS

    o   The windows() device supports semi-transparent colours under
    Windows 2000 and later, for lines, fills and text.

    o   Cross-building does now lazy-load the base package.

    o   The Lea malloc is now used by regex.c, src/extra/pcre and
    src/extra/xdr.  (This is for potential performance gains.)

    o   Rcmd INSTALL --docs=chm now means 'CHM only' and not 'all' as
    in earlier versions of R.

    o   The afm files in library/grDevices/afm are now compressed,
    which reduces the installation size by ca 2Mb.

    o   [The default for a build environment is to use gcc >= 4.2.0.
    Set BUILD=GCC3 if you have gcc 3.4.5.  (Binary tools for gcc
    4.2.0 are not yet released but were expected in June 2007.)
    This change has been reverted until then.]




    **************************************************
    *                        *
    *          2.5 SERIES NEWS           *
    *                        *
    **************************************************


        CHANGES IN R VERSION 2.5.1 patched
        
BUG FIXES

    o   .Platform$GUI would report "Rgui" when no GUI was present in
    R(D)COM.



        CHANGES IN R VERSION 2.5.1

GUI CHANGES

    o   Within Rgui, completion can be turned on or off from the 'Misc'
    menu, and if completion is on, file name completion can be
    turned off (or back on again).

    The list of possible completions is removed once any further
    key is pressed.

    o   The "Paste commands only" context menu is slightly better at
    recognizing and removing prompts, e.g. from example() output
    or debug sessions.

    o   Using a modal widget from Rterm (e.g. select.list) is now far
    likely to be forced to the front.


OTHERS

    o   file.access() has been rewritten using Win32 functions and
    should be more reliable, particularly on NT-based versions of
    Windows.  (PR#7234)

    o   The version number of the installer now includes the SVN
    revision number (which is handy for R-patched and R-devel
    daily builds).


BUG FIXES

    o   unlink() was not accepting wildcards.

    o   Since Windows will not unlink the current working directory,
    we change working directories before clearing the session
    temporary directory.

    o   The PDF version of the 'R Internals' manual was missing its
    indices.

    o   Rcmd BATCH did not accept input file paths with spaces in
    2.5.0.  (PR#9652)

    o   R_LIBS_SITE and R_LIBS_USER did not accept paths on network
    shares (starting \\).  (Rcmd INSTALL will not work with
    libraries on network shares, however.)

    o   path.expand() and other uses of '~' (e.g. filepaths) now take
    the value of the home directory from the environmental
    variable R_USER and not from the pre-2.0.0 definition of
    'home'.  This means that if HOME is unset, the value defaults
    to the personal directory and not %HOMEDRIVE%HOMEDIR.

    o   The setting of R_TEXOPTS has been moved from MkRules to
    doc/manual/Makefile.win.  This avoids error messages if 'latex'
    is not in the path.

    o   Rcmd INSTALL now sets up lazloading earlier if explicitly
    requested in the DESCRIPTION file.  This is needed for
    packages that use 'methods' and need to load themselves to
    process their data.

    o   winMenuDel() was not automatically deleting sub-menus when a
    user menu was deleted.  (PR#9702)

    o   Rcnd INSTALL --docs=txt etc works (for a single type, except
    'chm' which is equivalent to 'all' nowadays).



        CHANGES IN R VERSION 2.5.0

GUI CHANGES

    o   In MDI mode there is a new View menu when the console is in
    focus which allows the toolbar and statusbar to be
    (de)selected, with the initial settings taken from the
    Rconsole file as before.  The default setting for the
    statusbar has been changed to 'no', as it is barely used by
    default.

    o   There is a new menu item in Rgui to 'Stop all computations'
    which kills all R computations immediately, skips any on.exit
    conditions and returns to the command prompt.

    o   The 'Install packages ...' menu item now only installs essential
    dependencies ('Depends' and 'Imports' but not 'Suggests'),
    using install.packages(dependencies = NA).

    o   The 'save as' file dialogs from the 'File' menu in a graphics
    window now add an appropriate extension to the file name.  To
    specify a file name without an extension, put the name in
    quotes, e.g.  "foo".  (As requested in PR#9336.)

    o   There is support in both Rgui and Rterm for object/file name
    completion via the TAB key using package rcompgen.  This can
    be disabled by setting the environment variable
    R_COMPLETION=FALSE when starting R (e.g. in ~/.Renviron).
    (Words within quotes are interpreted as file names, others as
    R object names.  Use library(rcompgen); ?rc.options for more
    details, including tuning the behaviour.)


FUNCTION CHANGES

    o   Sys.getenv() has been changed to use the C-level environment and
    not the Windows environment block for the process, for
    consistency with Sys.getenv("FOO"), Sys.setenv() and
    Sys.unsetenv().  A few Windows-specific environment variables
    (such as =C:) no longer appear.

    o   https:// URLs can be accessed by download.file() and url() if
    --internet2 is used (and provided the certificate is accepted as
    valid).

    o   bitmap() and dev2bitmap() will now accept paths in 'GS_CMD' and
    'file' which contain spaces (by converting to short path names
    inside the functions).

    o   system() gains an 'ignore.stderr' argument for consistency with
    Unix.  (This changes the order of arguments.)  The defaults
    have been changed to 'show.output.on.console=TRUE,
    invisible=TRUE' which make system() in Rgui more consistent
    with Rterm and with other ports of R.

    o   For consistency with Unix, system(intern=TRUE) and pipe(, "r")
    connections no longer capture stderr, only stdout (except on
    Rgui if ignore.stderr = FALSE, since Rgui has no separate
    stderr).


INSTALLER

    o   The Inno Setup installer now installs the desktop icon (if
    selected) for all users if run from an account with
    administrative privileges.


OTHERS

    o   This file (CHANGES) has been reformatted to be readable by the
        readNEWS() function.

    o   The C-level printf function used for printing has been altered
    to implement a round-to-even rule.  This means that output is
    more likely to be identical to that on Unix-alikes.

    o   R CMD INSTALL now installs by default into the first library on
    the library path if R was run in the current environment.
    Similarly, R CMD REMOVE by default removes from that library.
    R CMD INSTALL does a better job of removing its temporary
    directory.

    o   R CMD BATCH now prints the result of proc.time() at the end of
    the output, as it long has on Unix-alikes.

    o   More of the messages from the script editor are translatable.

    o   There is support for x86_64 cross-compilers as well as for ix86.

    o   mingw-runtime >= 3.11 is needed to build R.  (E.g., it provides
    isblank that was previously missing.)

    o   src/extra/trio has been updated to 1.12.

    o   malloc.c has been updated to version 2.8.3.  This version has a
    slightly different allocation strategy, and is likely to work
    a little better close to address space limits but may give
    more warnings about reaching the total allocation before
    successfully allocating.

    o   file.access() would give an error if asking about execute
    permission on Vista: the underlying C function has been
    changed to be incompatible with POSIX and we now work around this.

    o   Packages are now compiled with -O3.  (R itself has been since
    2.3.0.)

    o   Packages can have a 'cleanup.win' script to cleanup after
    configure.win etc.

    o   The toolset described in the R Installation and Administration
    manual for building on Windows is now partially available in
    an executable installer.

    o   The messages about being unable to update package and search
    index files when installing packages without sufficient
    permissions to update R are now suppressed (as Windows often
    reports inaccurately about file permissions).


BUG FIXES

    o   md5check.exe works again (it was throwing spurious differences
    after a compiler update).
    
    o   Some links in .chm help files were not working.  (PR#9586)
    
    o   rcmd Rdiff was not working (used by R CMD check).
    
    o   Workaround a Windows' mktime bug that affected the POSIXct to
    POSIXlt conversion during leap days in leap years prior to
    1970 in timezones which were on DST at the time.  (PR#9572)

    o   system() could have overflowed a buffer with a very long
    command line that contained quotes.




    **************************************************
    *                        *
    *          2.4 SERIES NEWS           *
    *                        *
    **************************************************



        CHANGES IN R VERSION 2.4.1 patched

BUG FIXES

    o   Using the AltGr key in the script editor was treated as a control key.
    This was fixed for the rest of Rgui in R 0.9.1, and unfixed by the
    contributed code implementing the script editor.  (PR#9430)

    o   Returning focus to a window (e.g. the script editor after
    saving) no longer changes the size or position, e.g. leaving a
    maximized window maximized.

    o   When reading from pipes (which includes pipe(open="r") and
    system() with intern=TRUE or show.output.on.console=TRUE in
    Rgui) it is now possible to interrupt the command and the Rgui
    console will be responsive whilst it is running (and R will
    take up far less of the CPU).  (Probably also fixes PR#7634.)

    o   menu.ttest2() in example package 'windlgs' was broken.

    o   CHM help is now converted with support for the \encoding{} section.
    
    o   etc/Makeconf was being left out of builds of the installer.



        CHANGES IN R VERSION 2.4.1
        
UNCATEGORIZED

    o   Inno Setup >= 5.1.7 is now required to build the installer.

    o   Reverted 2.4.0 change that required case-sensitive specification of
    commands to R CMD.

    o   The Simplified Chinese menu messages were in the wrong format,
    causing Rgui to crash on startup. (PR#9277)

    o   Menu messages are now available in a Spanish translation.

    o   The pointsize of fonts in the windows() graphics device may now
    be set to any positive integer.

    o   Building customized installers failed because the startup
    options weren't being handled properly.

    o   If Rconsole settings were such that R could not start properly,
    it crashed.  It now suggests starting with the --vanilla
    option, which now does not load Rconsole.  Additionally, an
    option --no-Rconsole has been added for completeness and
    debugging.

    o   shell.exec() now gives an error and a reason when it fails
    (rather than continuing silently as before).

    o   R CMD SHLIB again uses PKG_LIBS in files Makevars[.win] (it did
    not in R 2.4.0).



        CHANGES IN R VERSION 2.4.0
        
UNCATEGORIZED

    o   The language for menus and messages can be set in the 'Rconsole'
    file and (for future messages/sessions) from the GUI
    preferences.

    o   The initial setting for console buffering can be set in the
    'Rconsole' file and (for future sessions) from the GUI
    preferences.

    o   The installer can set defaults for MDI/SDI display, help style,
    and use of the --internet2 startup option.  Custom builds of R
    can change these defaults.  The standard build now defaults to
    CHM help.

    o   If CHM help is selected, but is not present (e.g. a package was
    cross- compiled on Unix), the help system defaults to text
    help.

    o   getGraphicsEvent() now writes its prompt to the standard output
    stream, so it can be captured by sink() or capture.output().

    o   getGraphicsEvent() now leaves the standard graphics window menus
    in place, so those functions are available while waiting for
    an event.

    o   iconv.dll has been updated to 1.11, which has some improvements
    for CJK languages under Windows (e.g. support for the Euro).

    o   Rcmd and R CMD check the name of Perl scripts, so errors like 'R
    CMD install' are detected.

    o   The default limit for --max-mem-size has been changed: see the rw-FAQ.

    o   The .chm files are now given a title identifying the package.

    o   There are new utilities 'Rcmd Sweave' and 'Rcmd Stangle' for
    processing of Sweave documentation.


INSTALLING PACKAGES

    o   It is now possible to use relative paths as 'lib' in
    install.packages(), not just absolute ones.

    o   Installing packages (in particular saving an image and preparing
    for lazy-loading and lazydata) is now done in a C locale for
    consistency with Unix.  (This will only possibly affect CJK
    locales, where some checks on the validity of symbols and
    strings might be locale-dependent.)

    o   There is a new file etc/Makeconf that provides an approximation
    to the Unix version and may help with src/Makefile's.


C-LEVEL CHANGES

    o   There is now a similar embedding interface to that under Unix,
    using Rf_initEmbeddedR / Rf_endEmbeddedR.

    o   The C-level *printf functions have been replaced by those from
    the trio library, which ensures a higher level of C99
    compliance without the need for lots of Windows-specific
    workarounds.

    o   Entry points which are hidden in libR.so on Unix are now also
    hidden in R.dll.  (Just over half the entry points are hidden,
    which speeds up loading.)

    o   It is possible to select (in MkRules) the type of debug symbol
    used, and this now defaults to 'dwarf-2' (which is more
    efficient than the previous default of 'stabs').  More parts
    of R are now built with debug symbols when DEBUG=T.

    o   The symbols in graphapp are now remapped to start with GA_, so
    any code making use of graphapp will need to be recompiled.


BUILDING R

    o   mingw-runtime >= 3.10 is required to build R (a bug fix in the
    handling of MBCS code is required).  This is enforced by a
    check in building Rpwd.exe.

    o   At the time of writing mingw-runtime-3.10 was not listed on the
    MinGW downloads page, but it is available from
    http://prdownloads.sourceforge.net/mingw/mingw-runtime-3.10.tar.gz?download


BUG FIXES

    o   The menu items for source and load/save workspace/history and
    drag-and-drop can now be used for paths on network shares
    (starting with \\).

    o   Using lines of more than 1000 chars in an R file in batch mode
    could crash R.

    o   If the input line limit (1024 bytes) was exceeded whilst pasting
    in, a byte was lost and the last byte input from the keyboard
    was repeated after the paste.

    o   The script editor would only load 1000 bytes if the locale in
    use was not the system locale.  (PR#9254)




    **************************************************
    *                        *
    *          2.3 SERIES NEWS           *
    *                        *
    **************************************************



        CHANGES IN R VERSION 2.3.1 patched
        
BUG FIXES

    o   winMenuAdd() could crash when too many menus were added.  (PR#8961)

    o   The data editor could crash when too much was pasted into it.

    o   dirname() converted paths involving network shares to forward slashes.
    (PR#8892)

    o   R could crash when very low on memory. (PR#8981)

    o   Due to a typo, R CMD Rd2dvi would not work with MiKTeX.

    o   Objects from Fortran 9X sources no longer need to be declared to
    R CMD SHLIB/INSTALL via OBJS in Makevars.win.

    o   There is a new option to make a .msi Microsoft Installer,
    intended for use by sysadmins doing automated installs.  See
    the 'R Installation and Administration Manual'.  (Thanks to
    David del Campo (Dept of Statistics, University of Oxford) for
    suggesting WiX and building a prototype installer.)

    o   It was intended that saving the GUI preferences would default to
    the home directory, but Windows only accepted paths with \
    separators at that point, ignoring others with no error
    message.



        CHANGES IN R VERSION 2.3.1

UNCATEGORIZED

    o   In the GUI preferences editor, the font size can be set to
    values not in the drop down list.  (The number of choices in
    the list has been increased.)  Font names not in the drop-down
    font list can be chosen.

    o   The MinGW C function wcrtomb was only working for Latin-1
    characters, and it had been replaced.  This affected the
    specification of 'pch' as a character, and some little-used
    aspects of plotmath.

    o   The installer generated a link in the Program menu to a
    no-longer existent help page.

    o   Opening a device via windows(resize="fixed") would sometimes
    fail with a message about 'outer margins too large'. (PR#8857)

    o   Sys.setlocale() interprets LC_CTYPE=C as a request for CP1252,
    as the startup code long has.  (This is necessary to avoid
    various crashes in the MinGW runtime code.)



        CHANGES IN R VERSION 2.3.0
        
UNCATEGORIZED

    o   There is an error handler for access violations and illegal
    instructions, which issues a traceback and error message, then
    returns to the top level.  This is switched off after 10 uses
    in a session.  Note that such errors can be the result of
    damage to the code or objects in memory, so it is advisable to
    save your work and restart R unless you know exactly what
    happened.

    o   There is a new function choose.dir() to choose a folder (as used
    for 'Change dir...' on the File menu in Rgui.)

    o   New function shortPathName() to convert names to DOS-style paths
    (8+3 names and no spaces).

    o   Added workaround to Windows graphics devices (windows(),
    win.metafile(), etc.) to allow callers to choose not to
    restore the focus to the console.  The interface to this will
    likely change in a future release.

    o   For compatibility with Unix, the following environment variables
    are checked for a writable directory for the R session
    temporary directory:

        TMPDIR TMP TEMP R_USER

    (the last will always succeed).  The changes are that TMPDIR
    is checked first and that the values are checked to be a
    directory.

    o   sprintf() now tries to ensure the output is C99-compliant, with
    e.g. 1.23e+08 not 1.23e+008 as given by MSVCRT.dll.

    o   Rterm now responds to Ctrl-C during input (Ctrl-Break always
    worked).  This means ^C is no longer echoed.

    o   The minimum value for --max-mem-size is now 32M (rather than 16M).

    o   file.info() now supports files bigger than 2Gb (the size was
    reported incorrectly before, since Windows' stat call only
    supports smaller files).

    o   The installer executable now has the file version information
    set appropriately.

    o   The DLL version number is now 2.xy.svn_revision.

    o   There is now aggressive protection of the setting of the FPU
    control word: it is reset to 64-bit mantissa and rounding mode
    before evaluating every expression.  This should prevent the
    implicit loading of DLLs changing to 53-bit mantissa, but has
    a small performance penalty.

    o   The file open dialogs now list *.ssc and *.S files in addition
    to *.q files as "S files".

    o   readClipboard() and writeClipboard() now support formats other
    than text.  A new function getClipboardFormats() reports on
    available formats.

    o   The Rgui console now supports '\r' in output as a
    non-destructive return to the left margin in the same way as
    Rterm (it was previously ignored).  Note that copy/cut of
    overtyped output will not necessarily pick up the visible
    layer of text.

    o   The "Edit|GUI preferences..." dialog now allows Rconsole files
    to be loaded as well as saved.  A new function loadRconsole()
    has also been added.


INTERNATIONALIZATION

    o   There is no longer a separate 'East Asian' version of R.dll.
    (Also, msvcp60.dll is no longer used as libmingwex now
    supplies suitable functions.)

    o   There is now MBCS support for the line editor in Rterm.exe.
    (Contributed by Haruki Koyanagi.)

    o   On NT-based versions of Windows, Unicode characters are used to
    draw on the console, pager, editor and windows() family of
    devices in multi-byte locales.  (This allows the user to
    select a locale other than the one Windows is running in, and
    with suitable fonts see the intended characters.  Menus and
    dialogs should also work in the selected locale.  A Windows
    quirk means that window titles (which includes the legends for
    the buttons used in the Preferences dialog box) use a font in
    the system locale.

    o   Added a few mappings from Windows locale names (e.g. "chinese",
    "chs", "cht", "ptb", "spanish", "esp", "esm", "esn") to
    language names.  There is still scope for confusion: LC_ALL=es
    is Estonian, and LANGUAGE=es is Spanish.

    o   Spanish (as used in Spain) has been added to the list of
    installation languages.


INSTALLING PACKAGES

    o   R CMD INSTALL will now clean up after interruption (by Ctrl-C, at
    least where supported by the shell).

    o   R CMD INSTALL --docs now has more options.

    o   Links to package 'methods' are now fixed up, and R CMD INSTALL
    no longer reports as missing links to 'datasets' and
    'grDevices' which would be fixed up.

    o   There is now support for compiling Fortran 90/95 code in
    packages: see 'Writing R Extensions'.

    o   Packages can now supply export files pkgname/src/pkgname-win.def:
    package 'stats' does so.

    o   The restriction on the number of dots in a package name (which
    stemmed from an undocumented restriction in ld.exe) has been worked
    around.


C-LEVEL CHANGES

    o   This version of R expects a complete double-complex BLAS to be
    available, and so customized (e.g. ATLAS and ACML) versions of
    Rblas.dll need to be rebuilt.  (The pre-compiled ones available on
    CRAN have been updated.)

    o   The ACML optimized BLAS can be used for LAPACK: see the 'R
    Installation and Administration Manual'.

    o   Since the Goto BLAS is no longer available for Windows, support
    for it has been withdrawn.

    o   The assembler exponentiation code has been updated to that from
    glibc 2.3.6.

    o   The import libraries libR.a, libRblas.a, libRlapack.a and
    libproxy.a are no longer used, as we now link directly to the
    corresponding DLL (except that a local version of libRblas.a
    is needed to build R.dll, since R.dll and Rblas.dll are
    mutually dependent).

    o   Import libraries are now made by default without -k (--kill-at).
    This might be relevant for contributed software using R's
    macros.

    o   The default optimization level for code in R (but not packages)
    has been changed from -O2 to -O3, since space taken by
    compiled code is no longer much of an issue.  This will result
    is a small performance increase.

    o   When making DLLs, the objects are no longer wrapped in an
    archive en route (this was needed to avoid line-length limits
    on an earlier shell).

    o   When making standalone Rmath, the static library is now
    libRmath.a and the import library is called libRmath.dll.a.


BUG FIXES

    o   iconv() was not always getting the current charset ("") right,
    especially if the locale was set in a running R session.

    o   gzfile() now always ensures that the underlying file is opened
    in binary mode (this is only an issue on Windows).  This
    solves some problems with reading compressed data files via
    gzfile().

    o   winMenuAdd() now has no limits on the number of menus or items,
    and names are now limited to 500 (not 50) bytes.

    o   Several fixes to Rproxy have been submitted by Thomas Baier, so
    it handles more types of objects.

    o   Outputting \b in Rgui deleted the last byte and not the last
    character.




    **************************************************
    *                        *
    *          2.2 SERIES NEWS           *
    *                        *
    **************************************************



        CHANGES IN R VERSION 2.2.1 patched
        
BUG FIXES

    o   Opening any window (pager/editor/windows() device) was resetting
    the LC_CTYPE in the locale to the system default.

    o   formatC() sometimes gave spurious leading spaces on Windows (PR#8337).

    o   Workaround in unlink() for a Windows-run-time problem with
    deleting directories with leading spaces in the name.

    o   tempdir() and tempfile() use all backslashes again (2.2.1 did not).

    o   When a graphics window was double-buffered, it would update too
    frequently while waiting for input, overloading some remote
    display utilities.



        CHANGES IN R VERSION 2.2.1
        
UNCATEGORIZED

    o   Using the latest binutils allows us to distribute Rgui.exe and
    Rterm.exe as large-address-aware (see the rw-FAQ Q2.9).

    o   The maximum C stack size for Rgui.exe and Rterm.exe has been
    increased to 10Mb (from 2Mb); this is comparable with the
    default on Linux systems and may allow some larger programs to
    run without crashes.

    o   Overwrite mode in the console now works for MBCS charsets.
    (Patch contributed by Haruki Koyanagi.)

    o   Input from the Rgui console was changing the letter 255 (ΓΏ in Latin-2)
    in the character set to letter 1.

    o   R CMD REMOVE in 2.2.0 removed the package(s) but failed to remake the
    indices.

    o   The windows() family of devices did not find the right character width
    in MBCS locales for non-ASCII characters.  (Pointed out by Ei-ji
    Nakama.)

    o   The installer was missing doc/html/index.html.

    o   Windows was sometimes incorrectly labelling times on BST as on GMT,
    e.g. "1972-07-01 01:00:00 GMT Standard Time".

    o   Closing the script editor could leave Rgui in an unstable
    state. (PR#8288)

    o   Support has been added for the ACML optimized BLAS: see the 'R
    Installation and Administration Manual'.

    o   winMenuAdd() had a limit of 16 additional menus but only
    allocated 10: it now has the limit of 16 as intended.

    o   Clicking on the left part of the MDI radiobutton in the
    preferences dialog failed.

    o   A different algorithm is used to find the R session temporary
    directory, one that is more likely to succeed.

    o   For compatibility with Unix, tempfile() names have a random hex
    suffix (and not a decimal one), and there are many more values
    to choose from.



        CHANGES IN R VERSION 2.2.0
        
UNCATEGORIZED

    o   The installer will be called R-2.2.0-win32.exe and by default
    install into (the local equivalent of) C:/Program
    Files/R/R-2.2.0.  The 'rw2010' notation has been dropped.

    o   file:// URLs are now interpreted by download.file(),
    download.packages() and url() in the same way as Mozilla-based
    browsers.  That is, the expected form is

        file:///d:/path/to/file

    with *three* slashes.

    o   library.dynam() temporarily adds the <package>/libs dir to the
    path so that dependent DLLs can be put there and found with no
    further action.

    o   The (D)COM support has been updated, and header files and an
    import library (src/gnuwin32/librproxy.a) are now installed.
    See the rcom package for usage.

    o   There are now Brazilian Portuguese, Chinese (Traditional) and
    Russian translations of the Rgui menus.

    o   win.graph(), x11() and X11() now behave in the same way as
    windows() in respect of the xpinch, ypinch, graphics.record,
    gamma and windowsBuffered options.

    o   savePlot() now allows extensions '.emf' and '.eps'.

    o   The script editor menu no longer has an option to exit R (as the
    pager and graphics menus do not).

    o   Installation is now available in Finnish.

    o   install.packages() now detect members of a bundle which are in use
    and so skips the bundle (as it does for packages).

    o   MiKTeX is now recognised and the command-line set suitably for it.

    o   If the user chooses to register R during installation, a
    registry entry
    HKEY_LOCAL_MACHINE\Software\R-core\R\{version}\InstallPath
    will be added.  Users require administrative privileges to
    create this key.  For others, the same key will be put under
    the HKEY_CURRENT_USER root.

    o   The sample R_HOME/etc/Rprofile file has been renamed to
    Rprofile.site (the documented name for such a file for some
    years).

    o   mingw-runtime-3.8 is now required to build R (as it contains
    expm1).




    **************************************************
    *                        *
    *          2.1 SERIES NEWS           *
    *                        *
    **************************************************



        CHANGES IN R VERSION 2.1.1 patched
        
BUG FIXES

    o   The progress bar was being left behind when a download was
    aborted.  (PR#7964).  In addition, it now retains its position
    from one download to the next, rather than always moving back
    to the center of the screen.

    o   Added workaround in Sys.timezone() for Windows' confusion over
    the GMT timezone.

    o   Windows was sometimes leaving behind temporary files associated
    with anonymous file() connections - we now try to clean up
    after it.

    o   The default type of file for saving a script was not being set
    by the contributed C code for the script editor, so it
    reverted to the type of the last file dialog (PR#8018).

    o   formatC() with an exponential format sometimes did not line the
    fields up correctly.

    o   The 'Open Script' button shown from the pager toolbar in MDI
    mode was set up incorrectly and liable to crash R.  (PR#8060)

    o   seek(origin = "end") was repositioning to the wrong
    location. (PR#7896)



        CHANGES IN R VERSION 2.1.1
        
UNCATEGORIZED

    o   The installer allows a choice of languages.  Note that
    uninstallation will happen in the language chosen for
    installation.

    o   A menu item has been added for RSiteSearch().

    o   localeToCharset() was failing on some unknown (to the maintainers)
    locales such as

        LC_CTYPE=Chinese_People's Republic of China.936

    and that affected example().

    o   Translation of the filters in file load/save dialog spaces was
    being handled incorrectly by gettext, and is now not
    attempted.

    o   Attempting to plot repeatedly to the same metafile sometimes
    crashed R.  (PR#7821: it is unclear why Windows does not allow
    this.)

    o   Using the mouse scroll wheel in the data editor sometimes caused
    it to scroll out of range and crash or display garbage.

    o   The support for mitred lines encountered a Windows problem with
    a dramatic slowdown if more than 1000 or so segments were
    plotted in a polyline.  We now plot in bunches of 1000, which
    is less accurate but works around the Windows problem.

    o   There is a workaround for the Windows-specific problems that
    Sys.putenv(TZ="GMT") was not recognized by the OS and that
    Windows believes that there is such a thing as "GMT Standard
    Time".

    o   Inno Setup >= 5.1.2 is now required to build the installer.

    o   For some operations on windows() and related devices the first
    text drawn could be improperly sized. (PR#7860).

    o   R would crash when ESC was pressed during locator(). (PR#7873).

    o   seek() was not always reporting the correct position on files >
    2Gb. (PR#7879)



        CHANGES IN R VERSION 2.1.0
        
UNCATEGORIZED

    o   There is no longer a miniR distribution.

    o   Support for seek() on > 2Gb files has been added.

    o   You will be asked to select a CRAN mirror when
    downloading/updating packages unless options("repos") has
    already been set in your session, e.g. in your .Rprofile file
    or from the 'Select CRAN mirror' menu item.  (In batch use,
    not having set a mirror will lead to an error.)  BDR's
    supplementary collection is now included in the default
    options("repos"): if you want to include it explicitly set
    something like options(repos=c(some_cran_mirror,
    http://www.stats.ox.ac.uk/pub/RWin"))

    o   There is a new item on the Packages menu to set repositories,
    e.g.  CRAN, Bioconductor, Omegahat.  You can modify the list
    (and its defaults): see the rw-FAQ Q2.9.  This supersedes the
    menu items for Bioconductor.

    o   The new (in R 2.0.0) graphics pars "lend", "ljoin" and "lmitre"
    are now implemented for the Windows devices.

    o   `Writing R Extensions' now documents how to interface a
    front-end directly to R.dll, and there are some new
    convenience functions for such front-ends.

    o   R CMD / Rcmd now set HOME if unset, e.g. for use in Rcmd check.

    o   The installer now offers the option (by default unchecked) of a
    `quick launch icon" for R.

    o   par(ask = TRUE) now takes input from the graphics window, rather
    than from the console.

    o   Rcmd REMOVE works more similarly to Unix, setting the default
    library from R_LIBS if the latter is set.

    o   install.packages() can install source packages as well as binary
    ones.

    o   shQuote() now defaults to type="cmd" on Windows.

    o   R can now be built with Unicode support on Win9x and WinME.  See
    src/gnuwin32/MkRules: this is currently experimental and not
    needed for standard builds.

    o   R can now be built with support for multibyte and variable-width
    character sets, e.g. for Japanese. See README.rw????.  The
    standard installer includes both single-byte and multi-byte
    builds.

    o   select.list() now looks up the current font size and chooses its
    window size based on that.  It allows multiple preselections
    if multiple=TRUE.

    o   The instructions for compiling packages from source and for
    compiling R itself have been moved to the R Installation and
    Administration manual; the PDF copy of that manual has been
    added to the Rgui Help | Manuals menu list.

    o   The way the command history works has been changed to be more
    like readline.  All the commands used in a session are kept,
    but only the last R_HISTSIZE (default 512) lines are saved.
    The environment variable R_HISTSIZE can be changed during the
    session (by Sys.putenv) as the current value is used.

    o   The font list in the Preferences screen has been expanded to
    include fonts used in `East Asian' terminals.

    o   A bug with font changing in Preferences introduced with the
    script editor in R 2.0.0 had been fixed.  This should fix
    PR#7271,7277,7749.

    o   Line widths on windows() devices (including win.print()) are now
    interpreted as multiples of 1/96" (or the pixel size if it is
    larger, as it may be for a screen device).  This follows the
    postscript() and pdf() drivers.  It is now possible to set lwd
    < 1 provided this corresponds to lines of at least one pixel
    width.




    **************************************************
    *                        *
    *          2.0 SERIES NEWS           *
    *                        *
    **************************************************



        CHANGES IN R VERSION 2.0.1 patched
        
BUG FIXES

    o   We work around reported bugs in Windows XP as to which
    characters are printable by attempting to print all
    non-control characters when using print().

    o   There are now facilities (documented in file
    src/gnuwin32/INSTALL) to add packages when building the R
    installer, and to rebuild a customized installer from the
    existing binary distribution.

    o   Tcl/Tk could crash Rgui during shutdown by trying to print an
    error message after the console had been shut down.  Such
    messages are now redirected to message boxes.

    o   bug.report() failed to open the internal editor.  We have
    changed it to use file.edit() to edit the report, with the
    consequence that there is no longer a "wait" parameter.



        CHANGES IN R VERSION 2.0.1
        
GUI CHANGES

    o   There is a new menu item to set a CRAN mirror.


BUG FIXES

    o   jpeg(), png() and bmp() were not handling background colours properly.

    o   It seems that on some systems (but not the maintainers') Mozilla
    1.7.3 requires \ not / in filepaths, so help(topic,
    htmlhelp=TRUE) now uses \.  (PR#7269) Hopefully no system
    requires / not \ !

    o   Changes to help() meant that help(topic, chmhelp=TRUE) was no
    longer working if `topic' was an alias.  (PR#7269)

    o   Recent changes caused (D)COM to sometimes go into infinite loops.

    o   Any change in the GUI preferences via the dialog box changed
    font (even if to the same font as before).  This is causing
    problems in MDI mode with toolbars (PR#7277), where real font
    changes are not working properly.

    o   Control keys in Tcl/Tk windows were not handled properly; Tcl/Tk
    interacted badly with Rgui in other ways as well.

    o   R CMD SHLIB gave spurious error messages for inputs like all.f
    and all.c.

    o   `make recommended' was not consulting the setting of WINHELP or
    HELP, so failed if HHW was not installed.

    o   We have increased the chances that installing a source package
    from an explicit path with spaces in will work, so e.g.

        R CMD INSTALL "/Documents and Settings/myname/Source Files/mypkg"

    will probably work -- it is still not recommended.  You can
    also get away with backslashes here, but forward slashes are
    safer.

    o   select.list(preselect=) was not working. (PR#7328)

    o   The graphics recording mechanism windows(record = TRUE) could
    cause memory corruption.




    *********************************************************
    *                           *
    *   News of 1.x.y and 2.0.0 is in file `CHANGES1'   *
    *   News of 1.0.0 and earlier is in file `CHANGES0' *
    *   These files are available in the source     *
    *   distribution.                   *
    *                           *
    *********************************************************