[R-pkg-devel] New API in R-devel & minimum version of R

Michael Chirico m|ch@e|ch|r|co4 @end|ng |rom gm@||@com
Wed Mar 19 17:29:46 CET 2025


data.table is doing the same in a number of places, Ivan even went so far
as to pin down a specific SVN commit for those as well:

#if R_VERSION < R_Version(4, 5, 0) || R_SVN_REVISION < 86702
#  define isDataFrame(x) isFrame(x) // #6180
#endif

https://github.com/Rdatatable/data.table/blob/0909048017d35f8b8a910c74549650f5de5a74a9/src/data.table.h#L21-L23

Sneaking onto my soapbox to complain that it really seems incorrect that R
CMD check started complaining about these issues before the API-compliant
functions were included in an R release. I was really surprised to see
these functions were not included in the most recent past release, for
example.

Anyway, 4.5.0 is due for release in a few weeks so this will become moot
momentarily.

On Wed, Mar 19, 2025 at 8:19 AM Ben Bolker <bbolker using gmail.com> wrote:

>    FWIW  Rcpp handles this (for CLOENV) with an ifdef:
>
>              #if (defined(R_VERSION) && R_VERSION >= R_Version(4,5,0))
>              return R_ClosureEnv(fun);
>              #else
>              return CLOENV(fun);
>              #endif
>
>
> https://github.com/RcppCore/Rcpp/blob/257e1977cd6e251d0a3d691050ad43fa29cf9666/inst/include/Rcpp/Function.h#L102-L106
>
> On 3/19/25 11:08, Josiah Parry wrote:
> > I'm trying to work through some new WARNINGs that I am experiencing
> *only* in
> > R-devel.
> >
> >   Found non-API calls to R: ‘BODY’, ‘CLOENV’, ‘ENCLOS’, ‘FORMALS’
> >
> > Take FORMALS, for example. IIUC, we should now be using R_ClosureFormals
> > instead. However, my understanding is that this is available only in R
> 4.5
> > main trunk.
> >
> > If migrating to the R_ClosureFormals, should the minimum version of R for
> > the package be recorded in the DESCRIPTION as R >= 4.5?
> >
> > Additionally, I'm somewhat at a loss for how to pass CRAN checks for
> > R-release and R-devel while using only R_ClosureFormals to adhere to
> > R-devel WARNING.
> >
> > Should old versions have an upper bound on the supported R version as
> well
> > as a lower one e.g. Depends may have R >=4.1.0 <4.5.0?
> >
> > Thanks in advance for your advice / insight!
> >
> > - Josiah
> >
> >       [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-package-devel using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-package-devel
>
> --
> Dr. Benjamin Bolker
> Professor, Mathematics & Statistics and Biology, McMaster University
> Director, School of Computational Science and Engineering
> * E-mail is sent at my convenience; I don't expect replies outside of
> working hours.
>
> ______________________________________________
> R-package-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel
>

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list