[Rd] Custom connections

Gábor Csárdi csardi.gabor at gmail.com
Tue Jun 13 01:03:11 CEST 2017


Dear all,

I hope somebody can help me understand if package authors are allowed
to create custom R connections or not.

Until today, I thought that R had an "official" way to define custom
connections. E.g. this is an old commit message that was supposed to
create an API, maybe internal, though.

> r62016 | urbaneks | 2013-02-21 14:29:44 -0500 (Thu, 21 Feb 2013) | 1 line
> add API to create custom connections

The /src/include/R_ext/Connections.h file mentions "connection APIs".
"Writing R Extensions" has:

> Facilities for defining custom connection implementations are provided in
> R_ext/Connections.h, but make sure you consult the file before use.

This appeared in the R 3.3.0 NEWS:

> The connections API now includes a function R_GetConnection() which allows packages
>  implementing connections to convert R connection objects to Rconnection handles used in the
> API. Code which previously used the low-level R-internal getConnection() entry point should
> switch to the official API.

However, from today, the R 3.3.0 NEWS item reads somewhat differently:
https://github.com/wch/r-source/commit/7e9889fa9bb9269ffadfe67f3ded4bdca51b8ed9

And perhaps more importantly, R CMD check gives a NOTE about
R_new_custom_connection and some other connection related functions
now:
https://github.com/wch/r-source/commit/e55605767570fc424b6c281e0b7489e8dc77b53f

I am not sure what this means for package authors.

Can package authors use R_new_custom_connection to create custom connections?

If not, is there another way to create custom connections?

Thank you,
Gabor



More information about the R-devel mailing list