Closed Ilia-Kosenkov closed 1 year ago
@yutannihilation, it seems extendr is still using VECTOR_PTR
, and recent PR to libR-sys
broke stuff. Can you confirm? What is our plan then?
Well, extendr shouldn't. And in fact I'm actually sure that it doesn't use it in the sense that it doesn't do anything. It might be in there. It needs to be deleted anyways.
it seems extendr is still using
VECTOR_PTR
,
As @CGMossa answered, it shouldn't because it's already removed by https://github.com/extendr/extendr/pull/512. So, if the test uses the GitHub version of extendr and the GitHub version of libR-sys, it shouldn't have any problem. Does the error mean it uses the release version of extendr with the GitHub version of libR-sys?
Ha, you are right, we are using dev version of libR-sys but crates version of extendr-api. https://github.com/extendr/rextendr/blob/f8f964ba268f4330188ddeb4255b1db4b676eedb/.github/workflows/R-CMD-check.yaml#L32
I guess I should remove this so we test against crates version. Or, on the contrary, test against all-dev versions.
Oh, I see. I think rextendr should test against the crate version because it's probably what the most users want to use. But, it seems there's a reason to use the GitHub version... Can you pin the specific revision before the current HEAD
for a workaround?
https://github.com/extendr/rextendr/pull/254
This probably means the new version of libR-sys and extendr should be released as soon as possible.
Ok, how about I test against dev for now, then we release libR-sys & extendr and we switch back to crates version? Here I needed dev version (I think) only to enable various feature tests like support for gated features & extendr attribute arguments.
And yes, we can pin whatever revision we want, since this env var contains basically toml representation of dependency.
I don't know the intricacies of the CI system or how extendr really works, but my 2 cents is this: the CI should mimic exactly what is going to be available to the CRAN version of the package. If the CRAN version of the package will not use github dev versions of libR-sys & extender it should utilize the crates version. Otherwise there is a disconnect in expectations from what users will (likely) install
I recall from tests, I don't think this package is currently tested on CRAN at all. https://github.com/extendr/rextendr/blob/f8f964ba268f4330188ddeb4255b1db4b676eedb/tests/testthat.R#L8-L10
Ideally, tests that can also be run on CRAN should be modified to run on CRAN. (But I know this is work that necessarily has to be done at this release.)
Yep we do not run tests on CRAN (though we could run some there). Since CRAN seems to have added rust support in some form, I guess we could revisit this at some point in the future after this release.
Ready for re-review
Ok so given the time & a couple of approves, I will merge this and cautiously proceed with submission.
Address small issues revealed while preparing for
0.3.0
release (#277).