[R-pkg-devel] Status of R_ext/Connections.h
Jon Clayden
jon@c|@yden @end|ng |rom gm@||@com
Thu Mar 13 10:48:03 CET 2025
Dear all,
I know this has been discussed before, but I'm still confused about
how to interpret various signals regarding the R_ext/Connections.h
header and the functions it exposes.
The header itself says that it's non-API but if you use it you must
check the version number. That's slightly unclear but suggests it can
be used with care.
The current "Writing R Extensions" says "Facilities for defining
custom connection implementations are provided in R_ext/Connections.h,
but make sure you consult the file before use". Again that sounds like
weak support for use with care.
I have recently received a note regarding my {ore} regular expression
package, saying "This includes the non-API header
<R_ext/Connections.h> but does not test its version as required in its
comments. It seems unused." In fact, my code does test the version,
but the header was included in one extra source file where it wasn't
needed, so I assume that's what the issue is. I have corrected that.
Again, there is no implication here that use is prohibited.
And yet, R CMD check still produces a NOTE, which is grounds for
auto-rejection upon submission to CRAN.
Since builds of my package using these functions have historically
sometimes been let onto CRAN, sometimes not, I maintain a
CRAN-specific branch that disables this functionality via a
compile-time constant, and I can continue with that if I must, but the
connections interface is I think useful so I'd like to make it
available to all users if I can. Is this practicable, or should I give
up and continue disabling the feature for CRAN?
Thanks for your time.
All the best,
Jon
More information about the R-package-devel
mailing list