[R-pkg-devel] CRAN Policy on Go using Packages
Sounkou Mahamane Toure
@ounkoutoure @end|ng |rom gm@||@com
Sat Oct 18 13:35:28 CEST 2025
Dear All,
I have recently submitted a Go using Package to CRAN and it was
archived (i have yet to receive the rejection email).
I have anticipated the warnings (at least on Unix) and made comments
during the submission. A pointer from Ivan Krylov around the potential
of crashing R in the case of loading multiple go buildmode c-shared
loaded in the same process suggests that my comments may have been
misguided (even though I used the c-archive mode).
I figure for the fairly limited use case and the existing design
strategy of limiting communication between the go and C runtime to
pipes, I can execute an external go process instead. One issue remains
tough, is that in order to build this binary at installation time, a
golang toolchain is required.My package failed on win-builder on
windows because go was not found on the PATH of that machine. And as
it happens that shipping with the package pre-built cross-compiled
binaries like it is done in the pmtiles package is not advisable,
options become limited.
Krilov also referenced the case of the adbcbigquery and allied
packages that are likely published on r-multiverse instead of CRAN for
similar reasons.
It would be great if CRAN were to clarify its views on go using
packages and the toolchain.
Thank you in advance
Best regards,
Sounkou Mahamamane Toure
References :
The check on debian can be found here :
https://win-builder.r-project.org/incoming_pretest/goserveR_0.1.3_20251005_222222/Debian/00check.log
golang c-shared restrictions : https://github.com/golang/go/issues/65050
The check on windows :
https://win-builder.r-project.org/incoming_pretest/goserveR_0.1.3_20251005_222222/Windows/00install.out
pmtiles builder of cross-compiled binaries :
https://github.com/walkerke/pmtiles/blob/5fcd3082bb21d5f442d458c42d5165c64c1cf173/tools/build_binaries.sh
arrow-adbc issue : the https://github.com/apache/arrow-adbc/pull/2262
[[alternative HTML version deleted]]
More information about the R-package-devel
mailing list