extendr / helloextendr

Minimal Example of the Rust extendr Crate
Other
18 stars 10 forks source link

CRAN release? #18

Open eitsupi opened 1 year ago

eitsupi commented 1 year ago

It is currently quite difficult to release packages using extendr to CRAN. I think one of the reasons is that there are no example packages available. (There are several packages that use extendr, but I think none of them use the template provided by rextendr as is)

If this package could be released on CRAN like https://github.com/r-rust/hellorust, it would be a very clear example for beginners.

eitsupi commented 1 year ago

@extendr Could you take a look at this?

Ilia-Kosenkov commented 1 year ago

Noted, let us think of this. I do not know if a package without any functionality is a good fit for CRAN, but we can try. If it is not, we could create a tiny useful extendr-powered package and illustrate submission process using it

yutannihilation commented 1 year ago

a package without any functionality is a good fit for CRAN

I don't think so. CRAN repository policy says:

CRAN hosts packages of publication quality and is not a development platform. A package’s contribution has to be non-trivial. https://cran.r-project.org/web/packages/policies.html

It's not that I take on CRAN's side, but, in my opinion, helloextendr is not worth publishing on CRAN just to prove the templates are good enough. Rather, what we should think here

(There are several packages that use extendr, but I think none of them use the template provided by rextendr as is)

is that the templates might not be good enough to use it as-is. There are so much room for discussion on what the default template should be, but we've talked very little so far, imho.

eitsupi commented 1 year ago

It's not that I take on CRAN's side, but, in my opinion, helloextendr is not worth publishing on CRAN just to prove the templates are good enough.

That said, I recall that https://github.com/r-rust/hellorust was submitted to CRAN because of the following discussion. (Of course I assume you know this.)

Would you be able to provide a sample package, say, "hello.rust", that does that to guide us all?

No, because I don't use Rust. That's why I was saying that the Rust users should get together and create a such package. Some of the packages listed have experience in fixing the problems, so I would hope they can provide guidance or a good starting point. This is something for the interested community to do.

https://stat.ethz.ch/pipermail/r-package-devel/2022q4/008640.html

My point is that here (@extendr) is no such package as a reference implementation. (Maybe that was https://github.com/extendr/r-rust-bio)

yutannihilation commented 1 year ago

I don't think that conversation intended the example should be on CRAN. A good example is a good example whether or not it's on CRAN. Actually, users cannot easily read code of a package on CRAN, so I don't think it's a suitable place for the example package.

eitsupi commented 1 year ago

I don't think that conversation intended the example should be on CRAN. A good example is a good example whether or not it's on CRAN. Actually, users cannot easily read code of a package on CRAN, so I don't think it's a suitable place for the example package.

That makes sense.

Surely the essential problem, as you say, is that this repository is not a good example.

yutannihilation commented 1 year ago

Thanks. To be fair, I just found Rcpp has such a package on CRAN, so Dirk might actually mean it in that post...

https://cran.r-project.org/web/packages/RcppExamples/index.html