Commit 2df84411 authored by Dirk Eddelbuettel's avatar Dirk Eddelbuettel

New upstream version 3.5.1.20181215

parent fe6d74d9
......@@ -82,7 +82,8 @@ vignettes: stamp-recommended
## This needs packages built, hence 'R' dependence on 'javaconf'
## javareconf gets remade often.
stamp-java : etc/javaconf $(srcdir)/src/scripts/javareconf.in
## If configure is re-run, etc/Makeconf gets reset to initial Java state
stamp-java : etc/Makeconf etc/javaconf $(srcdir)/src/scripts/javareconf.in
@WANT_JAVA_TRUE@ @$(ECHO) "configuring Java ..."
@WANT_JAVA_TRUE@ @-bin/R CMD javareconf
@touch stamp-java
......
Revision: 74947
Last Changed Date: 2018-07-02
Revision: 75850
Last Changed Date: 2018-12-13
Feather Spray
Eggshell Igloo
......@@ -353,3 +353,10 @@
## SHLIB_OPENMP_FFLAGS=
## For R itself (src/main/array.c and src/library/stats/src/distance.c)
## R_OPENMP_CFLAGS=
## POSIX threads setting
## pthreads is used in src/main/eval.c. The configure code sees if
## any flag is needed to link to pthread functions (after the OpenMP
## CFLAGS) and if so tries -pthread. Setting this allows an
## alternative to be tried immediately before -pthread.
## PTHREAD_OPT=
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for R 3.5.1.
# Generated by GNU Autoconf 2.69 for R 3.5.2.
#
# Report bugs to <https://bugs.r-project.org>.
#
......@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='R'
PACKAGE_TARNAME='R'
PACKAGE_VERSION='3.5.1'
PACKAGE_STRING='R 3.5.1'
PACKAGE_VERSION='3.5.2'
PACKAGE_STRING='R 3.5.2'
PACKAGE_BUGREPORT='https://bugs.r-project.org'
PACKAGE_URL='https://www.r-project.org'
......@@ -860,6 +860,7 @@ ac_ct_OBJC
OBJCFLAGS
OBJC
F77_VISIBILITY
CXX_VISIBILITY
C_VISIBILITY
CXXCPP0
CXXCPP
......@@ -1705,7 +1706,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures R 3.5.1 to adapt to many kinds of systems.
\`configure' configures R 3.5.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
......@@ -1780,7 +1781,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of R 3.5.1:";;
short | recursive ) echo "Configuration of R 3.5.2:";;
esac
cat <<\_ACEOF
......@@ -2067,7 +2068,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
R configure 3.5.1
R configure 3.5.2
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
......@@ -3219,7 +3220,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by R $as_me 3.5.1, which was
It was created by R $as_me 3.5.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
......@@ -8119,7 +8120,60 @@ case "${CC}" in
C_VISIBILITY=
;;
esac
r_save_CXXFLAGS=$CXXFLAGS
CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -fvisibility" >&5
$as_echo_n "checking whether $CXX accepts -fvisibility... " >&6; }
if ${r_cv_prog_cxx_vis+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
;
return 0;
}
_ACEOF
if ac_fn_cxx_try_compile "$LINENO"; then :
r_cv_prog_cxx_vis=yes
else
r_cv_prog_cxx_vis=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $r_cv_prog_cxx_vis" >&5
$as_echo "$r_cv_prog_cxx_vis" >&6; }
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
CXXFLAGS=$r_save_CXXFLAGS
if test "${r_cv_prog_cxx_vis}" = yes; then
if test "${r_cv_visibility_attribute}" = yes; then
CXX_VISIBILITY="-fvisibility=hidden"
fi
fi
## Need to exclude Intel compilers, where this does not work correctly.
## The flag is documented and is effective, but also hides
## unsatisfied references. We cannot test for GCC, as icc passes that test.
case "${CXX}" in
## Intel compiler
*icc*|*icpc*)
CXX_VISIBILITY=
;;
esac
ac_ext=f
ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
......@@ -8168,6 +8222,8 @@ esac
ac_ext=m
ac_cpp='$OBJCPP $CPPFLAGS'
ac_compile='$OBJC -c $OBJCFLAGS $CPPFLAGS conftest.$ac_ext >&5'
......@@ -25268,7 +25324,7 @@ _ACEOF
# flags.
r_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS $r_verb"
(eval echo $as_me:25271: \"$ac_link\") >&5
(eval echo $as_me:25327: \"$ac_link\") >&5
r_c_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$r_c_v_output" >&5
CFLAGS=$r_save_CFLAGS
......@@ -25343,7 +25399,7 @@ _ACEOF
# flags.
r_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS $r_cv_prog_c_v"
(eval echo $as_me:25346: \"$ac_link\") >&5
(eval echo $as_me:25402: \"$ac_link\") >&5
r_c_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$r_c_v_output" >&5
CFLAGS=$r_save_CFLAGS
......@@ -32002,6 +32058,118 @@ fi
## OPENMP_CFLAGS to the respective linker flags, and add the OPENMP
## flags to all (C, C++, Fortran and Fortran 77) compiler flags.
case "${host_os}" in
mingw*|windows*|winnt)
;;
*)
r_save_CFLAGS=${CFLAGS}
CFLAGS="${CFLAGS} ${OPENMP_CFLAGS}"
## Other things one might want to try for ancient systems
## -Kthread (Sequent) -pthreads (Solaris/gcc, but -pthread works)
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for option providing pthread_kill" >&5
$as_echo_n "checking for option providing pthread_kill... " >&6; }
if ${r_cv_search_pthread_kill+:} false; then :
$as_echo_n "(cached) " >&6
else
r_opts_save_CFLAGS=$CFLAGS
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char pthread_kill ();
#ifdef F77_DUMMY_MAIN
# ifdef __cplusplus
extern "C"
# endif
int F77_DUMMY_MAIN() { return 1; }
#endif
int
main ()
{
return pthread_kill ();
;
return 0;
}
_ACEOF
for r_opt in '' ${PTHREAD_OPT} -pthread; do
if test -z "$r_opt"; then
r_res="none required"
else
r_res=$r_opt
CFLAGS="$r_opt $r_opts_save_CFLAGS"
fi
if ac_fn_c_try_link "$LINENO"; then :
r_cv_search_pthread_kill=$r_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
if ${r_cv_search_pthread_kill+:} false; then :
break
fi
done
if ${r_cv_search_pthread_kill+:} false; then :
else
r_cv_search_pthread_kill=no
fi
rm conftest.$ac_ext
CFLAGS=$r_save_CFLAGS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $r_cv_search_pthread_kill" >&5
$as_echo "$r_cv_search_pthread_kill" >&6; }
r_res=$r_cv_search_pthread_kill
CFLAGS=${r_save_CFLAGS}
case "${r_cv_search_pthread_kill}" in
"none required")
## expected on macOS and Solaris, and other platforms with OpenMP in use
have_pthread=1
;;
no)
;;
*)
have_pthread=1
PTHREAD_OPT=${r_cv_search_pthread_kill}
separator=""
test -z "${separator}" && separator=" "
if test -z "${MAIN_LDFLAGS}"; then
MAIN_LDFLAGS="${PTHREAD_OPT}"
else
MAIN_LDFLAGS="${MAIN_LDFLAGS}${separator}${PTHREAD_OPT}"
fi
separator=""
test -z "${separator}" && separator=" "
if test -z "${DYLIB_LDFLAGS}"; then
DYLIB_LDFLAGS="${PTHREAD_OPT}"
else
DYLIB_LDFLAGS="${DYLIB_LDFLAGS}${separator}${PTHREAD_OPT}"
fi
;;
esac
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads are supported" >&5
$as_echo_n "checking whether POSIX threads are supported... " >&6; }
if test -n "${have_pthread}"; then
$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
## <FIXME>
## Need to do this after configuring Fortran 90/95 support, which comes
## way below: should this be moved up to the compiler section?
......@@ -50170,7 +50338,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by R $as_me 3.5.1, which was
This file was extended by R $as_me 3.5.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
......@@ -50237,7 +50405,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
R config.status 3.5.1
R config.status 3.5.2
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
......@@ -1781,6 +1781,8 @@ AC_SUBST(R_OPENMP_FFLAGS)
## OPENMP_CFLAGS to the respective linker flags, and add the OPENMP
## flags to all (C, C++, Fortran and Fortran 77) compiler flags.
R_PTHREAD
## <FIXME>
## Need to do this after configuring Fortran 90/95 support, which comes
## way below: should this be moved up to the compiler section?
......
R News
CHANGES IN R 3.5.0 patched:
CHANGES IN R 3.5.2:
PACKAGE INSTALLATION:
* New macro CXX_VISIBILITY analogous to C_VISIBILITY (which several
packages have been misusing for C++ code) for the default C++
compiler (but not necessarily one used for non-default C++
dialects like C++14).
TESTING:
* The random number generator tests in tests/p-r-random-tests.R no
longer fail occasionally as they now randomly sample from
"certified" random seeds.
BUG FIXES:
* The "glm" method of drop1() miscalculated the score test
(test="Rao") when the model contained an offset.
* Linear multiple empty models such as lm(y ~ 0) now have a
correctly dimensioned empty coefficient matrix; reported by Brett
Presnell.
* vcov(<empty mlm>) and hence confint() now work (via a consistency
change in summary.lm()).
* confint(<multiple lm()>) now works correctly; reported on R-devel
by Steven Pav.
* quade.test() now also works correctly when its arguments are not
yet sorted along groups, fixing PR#15842.
* Installation on a Unix-alike tries harder to link to the pthread
library where required (rather than relying on OpenMP to provide
it: configuring with --disable-openmp was failing on some Linux
systems).
* The data.frame method for print(x) is fast now also for large
data frames x and got an optional argument max, thanks to
suggestions by Juan Telleria.
* hist() no longer integer overflows in very rare cases, fixing
PR#17450.
* untar() ignored a character compressed argument: however many
external tar programs ignore the flags which should have been set
and automagically choose the compression type, and if appropriate
gzip or bzip2 compression would have been chosen from the magic
header of the tarball.
* zapsmall(x) now works for more "number-like" objects.
* The tools-internal function called from R CMD INSTALL now gets a
warnOption = 1 argument and only sets options(warn = warnOption)
when that increases the warning level (PR#17453).
* Analogously, the tools-internal function called from R CMD check
gets a warnOption = 1 argument and uses the larger of that and
getOption("warn"), also allowing to be run with increased warning
level.
* Parse data now have deterministic parent nodes (PR#16041).
* Calling match() with length one x and POSIXlt table gave a
segfault (PR#17459).
* Fork clusters could hang due to a race condition in cluster
initialization (makeCluster()).
* nextn(n) now also works for larger n and no longer loops
infinitely for e.g, n <- 214e7.
* cooks.distance() and rstandard() now work correctly for multiple
linear models ("mlm").
* polym() and corresponding lm() prediction now also work for a
boundary "vector" case fixing PR#17474, reported by Alexandre
Courtiol.
* With a very large number of variables terms() could segfault
(PR#17480).
* cut(rep(0, 7)) now works, thanks to Joey Reid and Benjamin Tyner
(PR#16802).
* download.file(*, method = "curl", cacheOK = FALSE) should work
now on Windows, thanks to Kevin Ushey's patch in PR#17323.
* duplicated(<dataframe with 'f'>) now works, too, thanks to
Andreas Kersting's PR#17485; ditto for anyDuplicated().
* legend(*, cex = 1:2) now works less badly.
* The print() method for POSIXct and POSIXlt now correctly obeys
getOption("max.print"), fixing a long-standing typo, and it also
gets a corresponding optional max argument.
* Unserialization of raw vectors serialized in ASCII representation
now works correctly.
* <data frame>[TRUE, <new>] <- list(c1, c2) now works correctly,
thanks to Suharto Anggono's PR#15362 and Emil Bode's patch in
PR#17504.
* seq.int(*, by=by, length=n) no longer wrongly "drops fractional
parts" when by is integer, thanks to Suharto Anggono's report
PR#17506.
* Buffering is disabled for file() connections to non-regular files
(like sockets), as well as fifo() and pipe() connections. Fixes
PR#17470, reported by Chris Culnane.
CHANGES IN R 3.5.1:
BUG FIXES:
......@@ -133,8 +246,8 @@ CHANGES IN R 3.5.0:
* available.packages() has two new arguments which control if the
values from the per-session repository cache are used (default
true, as before) and if so how old cached values can be to be
used (default one hour).
true, as before) and if so how old cached values can be used
(default one hour).
These arguments can be passed from install.packages(),
update.packages() and functions calling that: to enable this
......@@ -294,6 +407,8 @@ CHANGES IN R 3.5.0:
slight non-back-compatible change producing typically both more
informative and shorter output.
* gc() gets new argument full.
* write.dcf() gets optional argument useBytes.
* New, partly experimental packageDate() which tries to get a valid
......
......@@ -5,7 +5,133 @@
\title{R News}
\encoding{UTF-8}
\section{\Rlogo CHANGES IN R 3.5.0 patched}{
\section{\Rlogo CHANGES IN R 3.5.2}{
\subsection{PACKAGE INSTALLATION}{
\itemize{
\item New macro \samp{CXX_VISIBILITY} analogous to
\samp{C_VISIBILITY} (which several packages have been misusing for
C++ code) for the default C++ compiler (but not necessarily one used
for non-default C++ dialects like C++14).
}
}
\subsection{TESTING}{
\itemize{
\item The random number generator tests in
\file{tests/p-r-random-tests.R} no longer fail occasionally as
they now randomly sample from \dQuote{certified} random seeds.
}
}
\subsection{BUG FIXES}{
\itemize{
\item The \code{"glm"} method of \code{drop1()} miscalculated the
score test (\code{test="Rao"}) when the model contained an offset.
\item Linear multiple empty models such as \code{lm(y ~ 0)}
now have a correctly dimensioned empty coefficient matrix;
reported by Brett Presnell.
\item \code{vcov(<empty mlm>)} and hence \code{confint()} now
work (via a consistency change in \code{summary.lm()}).
\item \code{confint(<multiple lm()>)} now works correctly;
reported on R-devel by Steven Pav.
\item \code{quade.test()} now also works correctly when its
arguments are not yet sorted along \code{groups}, fixing \PR{15842}.
\item Installation on a Unix-alike tries harder to link to the
\samp{pthread} library where required (rather than relying on
OpenMP to provide it: configuring with \option{--disable-openmp}
was failing on some Linux systems).
\item The \code{data.frame} method for \code{print(x)} is fast now
also for large data frames \code{x} and got an optional argument
\code{max}, thanks to suggestions by Juan Telleria.
\item \code{hist()} no longer integer overflows in very rare
cases, fixing \PR{17450}.
\item \code{untar()} ignored a character \code{compressed}
argument: however many external \command{tar} programs ignore
the flags which should have been set and automagically choose the
compression type, and if appropriate \command{gzip} or
\command{bzip2} compression would have been chosen from the magic
header of the tarball.
\item \code{zapsmall(x)} now works for more \dQuote{number-like} objects.
\item The tools-internal function called from \command{R CMD
INSTALL} now gets a \code{warnOption = 1} argument and only sets
\code{options(warn = warnOption)} when that increases the warning
level (\PR{17453}).
\item Analogously, the tools-internal function called from \command{R CMD
check} gets a \code{warnOption = 1} argument and uses the larger
of that and \code{getOption("warn")}, also allowing to be run with
increased warning level.
\item Parse data now have deterministic parent nodes (\PR{16041}).
\item Calling \code{match()} with length one \code{x} and POSIXlt
\code{table} gave a segfault (\PR{17459}).
\item Fork clusters could hang due to a race condition in cluster
initialization (\code{makeCluster()}).
\item \code{nextn(n)} now also works for larger \code{n} and no
longer loops infinitely for e.g, \code{n <- 214e7}.
\item \code{cooks.distance()} and \code{rstandard()} now work
correctly for multiple linear models (\code{"mlm"}).
\item \code{polym()} and corresponding \code{lm()} prediction now
also work for a boundary "vector" case fixing \PR{17474},
reported by Alexandre Courtiol.
\item With a very large number of variables \code{terms()} could
segfault (\PR{17480}).
\item \code{cut(rep(0, 7))} now works, thanks to Joey Reid and
Benjamin Tyner (\PR{16802}).
\item \code{download.file(*, method = "curl", cacheOK = FALSE)}
should work now on Windows, thanks to Kevin Ushey's patch in
\PR{17323}.
\item \code{duplicated(<dataframe with 'f'>)} now works, too,
thanks to Andreas Kersting's \PR{17485}; ditto for
\code{anyDuplicated()}.
\item \code{legend(*, cex = 1:2)} now works less badly.
\item The \code{print()} method for \code{POSIXct} and
\code{POSIXlt} now correctly obeys \code{getOption("max.print")},
fixing a long-standing typo, and it also gets a corresponding
optional \code{max} argument.
\item Unserialization of raw vectors serialized in ASCII
representation now works correctly.
\item \code{<data frame>[TRUE, <new>] <- list(c1, c2)} now works
correctly, thanks to Suharto Anggono's \PR{15362} and Emil Bode's
patch in \PR{17504}.
\item \code{seq.int(*, by=by, length=n)} no longer wrongly
\dQuote{drops fractional parts} when \code{by} is integer, thanks
to Suharto Anggono's report \PR{17506}.
\item Buffering is disabled for \code{file()} connections to
non-regular files (like sockets), as well as \code{fifo()} and
\code{pipe()} connections. Fixes \PR{17470}, reported by Chris
Culnane.
}
}
}
\section{\Rlogo CHANGES IN R 3.5.1}{
\subsection{BUG FIXES}{
\itemize{
......@@ -62,9 +188,11 @@
default searched for in user documents directory when invoked
\emph{via} the launcher icon. Reported by Jeroen Ooms.
\item \code{printCoefmat()} now also works with explicit \code{right=TRUE}.
\item \code{printCoefmat()} now also works with explicit
\code{right=TRUE}.
\item \code{print.noquote()} now also works with explicit \code{quote=FALSE}.
\item \code{print.noquote()} now also works with explicit
\code{quote=FALSE}.
\item The default method for \code{pairs(.., horInd=*, verInd=*)}
now gets the correct order, thanks to reports by Chris Andrews and
......@@ -147,7 +275,7 @@
\item \code{available.packages()} has two new arguments which
control if the values from the per-session repository cache are
used (default true, as before) and if so how old cached values can
be to be used (default one hour).
be used (default one hour).
These arguments can be passed from \code{install.packages()},
\code{update.packages()} and functions calling that: to enable
......@@ -327,6 +455,8 @@
change producing typically both more informative and shorter
output.
\item \code{gc()} gets new argument \code{full}.
\item \code{write.dcf()} gets optional argument \code{useBytes}.
\item New, partly experimental \code{packageDate()} which tries to
......
No preview for this file type
......@@ -7,7 +7,176 @@
<h2>R News</h2>
<h3><img src="../help/figures/../../html/Rlogo.svg" class="toplogo" alt="[R logo]" /> CHANGES IN R 3.5.0 patched</h3>
<h3><img src="../help/figures/../../html/Rlogo.svg" class="toplogo" alt="[R logo]" /> CHANGES IN R 3.5.2</h3>
<h4>PACKAGE INSTALLATION</h4>
<ul>
<li><p> New macro <span class="samp">CXX_VISIBILITY</span> analogous to
<span class="samp">C_VISIBILITY</span> (which several packages have been misusing for
C++ code) for the default C++ compiler (but not necessarily one used
for non-default C++ dialects like C++14).
</p>
</li></ul>
<h4>TESTING</h4>
<ul>
<li><p> The random number generator tests in
&lsquo;<span class="file">tests/p-r-random-tests.R</span>&rsquo; no longer fail occasionally as
they now randomly sample from &ldquo;certified&rdquo; random seeds.
</p>