Question

On Cran packages that use non-api entry points are not allowed. I did not find a suitable definition what a non-api entry point is (in R or in general) and why packages that use them are not allowed on Cran:

(1) What is a non-api entry point?

(2) Why are packages that use non-api entry points not allowed on Cran?

(3) If this should not come up while answering (2): What are possible ramifications of using non-api entry points?

Thanks for any help!

Was it helpful?

Solution

A quick take:

  1. Something not exported in a public header -- and the comments in the R header files generally give you an idea

  2. Because R Core reserves the right to change behavior of non-API functions. If nobody uses them ( in public packages), then upon a change in behavior no (public) packages break.

  3. You don't get your package onto CRAN, and it may break.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top