Re: [Rd] lapply and vapply Primitive Documentation

2020-07-10 Thread Martin Maechler
> Cole Miller 
> on Thu, 9 Jul 2020 20:38:10 -0400 writes:

> The documentation of ?lapply includes:
>> lapply and vapply are primitive functions.

> However, both evaluate to FALSE in `is.primitive()`:

> is.primitive(vapply) #FALSE

> is.primitive(lapply) #FALSE

> It appears that they are not primitives and that the
> documentation might be outdated. Thank you for your time
> and work.

Thank you, Cole.
Indeed, they were primitive originally (but e.g. lapply() seems
to have become .Internal with
   r7885 | ripley | 2000-01-31 08:58:59 +0100 
i.e. about 4 weeks *before* release of R 1.0.0

Changes made to both 'R-devel' and 'R-patched'.
Martin


> Cole Miller

> P.S. During research, my favorite `help()` is
> `?.Internal()`: "Only true R wizards should even consider
> using this function..." Thanks again!

;-)

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


Re: [Rd] lapply and vapply Primitive Documentation

2020-07-10 Thread Martin Morgan
Was hoping for an almost record old bug fix (older than some R users!), but 
apparently the documentation bug is only a decade old (maybe only older than 
some precious R users)

  
https://github.com/wch/r-source/blame/2118f1d0ff70c1ebd06148b6cb7659efe5ff4d99/src/library/base/man/lapply.Rd#L116

(I don't see lapply / vapply referenced as primitive in the original text 
changed by the commit).

Martin Morgan

On 7/10/20, 3:52 AM, "R-devel on behalf of Martin Maechler" 
 wrote:

> Cole Miller 
> on Thu, 9 Jul 2020 20:38:10 -0400 writes:

> The documentation of ?lapply includes:
>> lapply and vapply are primitive functions.

> However, both evaluate to FALSE in `is.primitive()`:

> is.primitive(vapply) #FALSE

> is.primitive(lapply) #FALSE

> It appears that they are not primitives and that the
> documentation might be outdated. Thank you for your time
> and work.

Thank you, Cole.
Indeed, they were primitive originally (but e.g. lapply() seems
to have become .Internal with
   r7885 | ripley | 2000-01-31 08:58:59 +0100 
i.e. about 4 weeks *before* release of R 1.0.0

Changes made to both 'R-devel' and 'R-patched'.
Martin


> Cole Miller

> P.S. During research, my favorite `help()` is
> `?.Internal()`: "Only true R wizards should even consider
> using this function..." Thanks again!

;-)

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


[Rd] Strange behaviour of methods::slot() when returning a tibble

2020-07-10 Thread Stephen Martin Pederson
I have an S4 object class defined in a Bioconductor package which contains 
multiple slots, some of which are tibbles, whilst others are vectors. If I call

slot(object, name)

where 'name' is an slot that contains a vector, everything works as expected. 
However, when I call slot(object, name) where 'name' is an slot that contains a 
tibble I get the following warning:


Warning message:
`...` is not empty.

We detected these problematic arguments:
* `needs_dots`

These dots only exist to allow future extensions and should be empty.
Did you misspecify an argument?
Making 'packages.html' ... done

Wrapping the call in suppressWarnings() doesn't stop this, and this warning is 
printed every time the resultant object is called, e.g. df <- slot(object, 
name); df, would not print the error on the first call, but would print the 
warning every time df is  printed.

For an MWE


setClass("track", slots = c(x="numeric", y="data.frame"))
myTrack <- new("track", x = -4:4, y = tibble(y = 1))

myTrack

df <- slot(myTrack, "y")
df

The package passes R CMD check even though this warning is produced in most 
examples. Changing to a generic S3 data.frame also doesn't produce this error. 
I'm running the following configuration:


R version 4.0.2 (2020-06-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
 [1] LC_CTYPE=en_AU.UTF-8   LC_NUMERIC=C   LC_TIME=en_AU.UTF-8
 [4] LC_COLLATE=en_AU.UTF-8 LC_MONETARY=en_AU.UTF-8
LC_MESSAGES=en_AU.UTF-8
 [7] LC_PAPER=en_AU.UTF-8   LC_NAME=C  LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_AU.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] parallel  stats graphics  grDevices utils datasets  methods   base

other attached packages:
[1] ngsReports_1.5.3tibble_3.0.2ggplot2_3.3.2   
BiocGenerics_0.34.0

Thanks in advance,

Steve

[[alternative HTML version deleted]]

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


Re: [Rd] Strange behaviour of methods::slot() when returning a tibble

2020-07-10 Thread Duncan Murdoch
I don't get any warning (but am using slightly different versions of 
everything than you are).


You can find where that message is coming from by running 
options(warn=2) first, which will convert it to an error.


Duncan Murdoch

On 10/07/2020 11:54 a.m., Stephen Martin Pederson wrote:

I have an S4 object class defined in a Bioconductor package which contains 
multiple slots, some of which are tibbles, whilst others are vectors. If I call

slot(object, name)

where 'name' is an slot that contains a vector, everything works as expected. 
However, when I call slot(object, name) where 'name' is an slot that contains a 
tibble I get the following warning:


Warning message:
`...` is not empty.

We detected these problematic arguments:
* `needs_dots`

These dots only exist to allow future extensions and should be empty.
Did you misspecify an argument?
Making 'packages.html' ... done

Wrapping the call in suppressWarnings() doesn't stop this, and this warning is 
printed every time the resultant object is called, e.g. df <- slot(object, 
name); df, would not print the error on the first call, but would print the 
warning every time df is  printed.

For an MWE


setClass("track", slots = c(x="numeric", y="data.frame"))
myTrack <- new("track", x = -4:4, y = tibble(y = 1))

myTrack

df <- slot(myTrack, "y")
df

The package passes R CMD check even though this warning is produced in most 
examples. Changing to a generic S3 data.frame also doesn't produce this error. 
I'm running the following configuration:


R version 4.0.2 (2020-06-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
  [1] LC_CTYPE=en_AU.UTF-8   LC_NUMERIC=C   LC_TIME=en_AU.UTF-8
  [4] LC_COLLATE=en_AU.UTF-8 LC_MONETARY=en_AU.UTF-8
LC_MESSAGES=en_AU.UTF-8
  [7] LC_PAPER=en_AU.UTF-8   LC_NAME=C  LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_AU.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] parallel  stats graphics  grDevices utils datasets  methods   base

other attached packages:
[1] ngsReports_1.5.3tibble_3.0.2ggplot2_3.3.2   
BiocGenerics_0.34.0

Thanks in advance,

Steve

[[alternative HTML version deleted]]

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel



__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


Re: [Rd] Strange behaviour of methods::slot() when returning a tibble

2020-07-10 Thread Stephen Martin Pederson
Thanks Duncan. Much appreciated & I can now see it's 
ellipsis::check_dots_empty() causing the trouble. I'll take the question to the 
github issues page for that package.

All the best,

Steve

From: Duncan Murdoch 
Sent: Saturday, 11 July 2020 1:38 AM
To: Stephen Martin Pederson ; 
r-devel@r-project.org 
Subject: Re: [Rd] Strange behaviour of methods::slot() when returning a tibble

I don't get any warning (but am using slightly different versions of
everything than you are).

You can find where that message is coming from by running
options(warn=2) first, which will convert it to an error.

Duncan Murdoch

On 10/07/2020 11:54 a.m., Stephen Martin Pederson wrote:
> I have an S4 object class defined in a Bioconductor package which contains 
> multiple slots, some of which are tibbles, whilst others are vectors. If I 
> call
>
> slot(object, name)
>
> where 'name' is an slot that contains a vector, everything works as expected. 
> However, when I call slot(object, name) where 'name' is an slot that contains 
> a tibble I get the following warning:
>
>
> Warning message:
> `...` is not empty.
>
> We detected these problematic arguments:
> * `needs_dots`
>
> These dots only exist to allow future extensions and should be empty.
> Did you misspecify an argument?
> Making 'packages.html' ... done
>
> Wrapping the call in suppressWarnings() doesn't stop this, and this warning 
> is printed every time the resultant object is called, e.g. df <- slot(object, 
> name); df, would not print the error on the first call, but would print the 
> warning every time df is  printed.
>
> For an MWE
>
>
> setClass("track", slots = c(x="numeric", y="data.frame"))
> myTrack <- new("track", x = -4:4, y = tibble(y = 1))
>
> myTrack
>
> df <- slot(myTrack, "y")
> df
>
> The package passes R CMD check even though this warning is produced in most 
> examples. Changing to a generic S3 data.frame also doesn't produce this 
> error. I'm running the following configuration:
>
>
> R version 4.0.2 (2020-06-22)
> Platform: x86_64-pc-linux-gnu (64-bit)
> Running under: Ubuntu 18.04.4 LTS
>
> Matrix products: default
> BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
> LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
>
> locale:
>   [1] LC_CTYPE=en_AU.UTF-8   LC_NUMERIC=C   
> LC_TIME=en_AU.UTF-8
>   [4] LC_COLLATE=en_AU.UTF-8 LC_MONETARY=en_AU.UTF-8
> LC_MESSAGES=en_AU.UTF-8
>   [7] LC_PAPER=en_AU.UTF-8   LC_NAME=C  LC_ADDRESS=C
> [10] LC_TELEPHONE=C LC_MEASUREMENT=en_AU.UTF-8 LC_IDENTIFICATION=C
>
> attached base packages:
> [1] parallel  stats graphics  grDevices utils datasets  methods   base
>
> other attached packages:
> [1] ngsReports_1.5.3tibble_3.0.2ggplot2_3.3.2   
> BiocGenerics_0.34.0
>
> Thanks in advance,
>
> Steve
>
>[[alternative HTML version deleted]]
>
> __
> R-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>


[[alternative HTML version deleted]]

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


[Rd] Compilation error for R 4.0.2

2020-07-10 Thread Wim R. Cardoen
Hello,

I experienced a compiler error when I tried to compile the latest version
of R i.e. R4.0.2
making iosupport.d from iosupport.c
making lapack.d from lapack.c
making list.d from list.c
making localecharset.d from localecharset.c
grep.c(74): catastrophic error: cannot open source file "pcre2.h"
  # include
(The pcre2.h header file is actually present!)


I used the following compiler flags:
# PCRE2:
# -
setenv CC gcc
setenv CFLAGS " -O2 -fPIC "
./configure --prefix=/uufs/chpc.utah.edu/sys/installdir/pcre2/10.35 \
--enable-pcre2-16 --enable-pcre2-32 --with-pic

module purge
module load intel/2019.5.281

# USe a modern version of curl & pcre2 (The current one on Centos 7 is TOO
old)
setenv CURLDIR "/uufs/chpc.utah.edu/sys/installdir/curl/7.65.3"
setenv PCRE2DIR "/uufs/chpc.utah.edu/sys/installdir/pcre2/10.35"

setenv PATH ${PCRE2DIR}/bin:$PATH

 Setting Compiler & linker flags:
setenv CC icc
setenv CXX icpc
setenv F77 ifort
setenv FC ifort
setenv CFLAGS   " -axCORE-AVX512,CORE-AVX2,AVX,SSE4.2 -O3 -qopenmp
-fp-model precise -fPIC -I${MKLROOT}/include -I${CURLDIR}/include
  -I${PCRE2DIR}/include "
setenv CXXFLAGS " ${CFLAGS} "
setenv FFLAGS   " ${CFLAGS} "
setenv FCFLAGS  " ${CFLAGS} "
setenv LDFLAGS  " -Wl,-rpath=${MKLROOT}/lib/intel64_lin
-L${MKLROOT}/lib/intel64_lin -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core
  -Wl,-rpath=/uufs/
chpc.utah.edu/sys/installdir/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin
   -L/uufs/
chpc.utah.edu/sys/installdir/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin
   -liomp5 -lpthread -ldl -Wl,-rpath=${CURLDIR}/lib
-L${CURLDIR}/lib -lcurl
   -Wl,-rpath=${PCRE2DIR}/lib -L${PCRE2DIR}/lib
 -lpcre2-8 -lpcre2-posix "

./configure --prefix=/uufs/chpc.utah.edu/sys/installdir/R/4.0.2i
--enable-R-profiling --enable-R-shlib --enable-memory-profiling
--enable-java --enable-shared=yes --with-blas="$LDFLAGS" --with-readline
--with-cairo --with-tcltk --with-libpng --with-jpeglib --with-libtiff
--with-ICU --with-pic --with-x --with-lapack --with-pcre2

I also appended the corresponding config.log:

Thank you,

Wim
__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel