xptr 1.2.0 on CRAN: New(ly Adopted) Package!

Thu, 09 Oct 2025 09:14:00 CDT

Excited to share that xptr is back on CRAN! The xptr package helps to create, check, modify, use, share, … external pointer objects.

External pointers are used quite extensively throughout R to manage external ‘resources’ such as datanbase connection objects and alike, and can be very useful to pass pointers to just about any C / C++ data structure around. While described in Writing R Extensions (notably Section 5.13), they can be a little bare-bones—and so this package can be useful. It had been created by Randy Lai and maintained by him during 2017 to 2020, but then fell off CRAN. In work with nanoarrow and its clean and minimal Arrow interface xptr came in handy so I adopted it.

Several extensions and updates have been added: (compiled) function registration, continuous integration, tests, refreshed and extended documentation as well as a print format extension useful for PyCapsule objects when passing via reticulate. The package documentation site was switched to altdoc driving the most excellent Material for MkDocs framework (providing my first test case of altdoc replacing my older local scripts; I should post some more about that …).

The first NEWS entry follow.

Changes in version 1.2.0 (2025-10-03)

New maintainer

Compiled functions are now registered, .Call() adjusted

README.md and DESCRIPTION edited and update

Simple unit tests and continunous integration have been added

The package documentation site has been recreated using altdoc

All manual pages for functions now contain \value{} sections

For more, see the package page, the git repo or the documentation site.