-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release on R-universe #25
Comments
That would be very awesome. I read the discussion. I don't mind if we run msvc or gnu on windows if it works. |
If polars build requires nightly toolchains, we may need to do the following on the Makefile anyway. rustup:
rustup toolchain install nightly || true |
I looked into it and it seems that the dependency arrow2 cannot be used without installing the nightly tool chain, but the Linux builder in R-universe does not have rustup installed, so the nightly tool chain cannot be used...... Perhaps it is necessary to use the pre-build binaries and install method as string2path has done? |
Nice thanks for noticing. Does R universe reject any build that fails R CMD check or can that be disabled? |
oh btw I swapped to Swatinem/rust-cache@v2 in check-workflow, which main polars is also using. It brings down compile times a bit more and does not need much customizing. I flushes the cache once daily it seems, which is nice too. |
If the first time Linux build failed, I believe it was not registered in R-universe. If the Linux build is successful, the source will be released. |
The rpolars R-universe homepage Some failed packages might appear within some hours |
Now r-polars here has a branch "hello_r_universe" and in rpolars/universe packages.json points to that branch. @eitsupi if it works R-universe should be building from that branch and you can freely push anything to that branch as you like |
Thank you very much. Just not sure how much I can do...... There are several ways to do this, I think.
1 maybe not worth doing since it is almost the same considering that it can currently be installed from GitHub Releases. @jeroen Sorry for tagging you, but do you have any advice? Thanks. |
There are two typos (trailing commas) in your packages.json and therefore it is not valid json and fails to parse, as you can also see from the ❌ in that repo. |
like this? ... seems to work now thx |
Yes it now builds from that branch...
|
polars-core inherits versions, etc. from the workspace, and this feature is not available in Rust installed in the R-universe builder, so polars-core download from GitHub fails. |
1 - As a prologue I try to resolve #4 in branch "long_arms64" based on @yutannihilation string2path recipe the following week. That is quite similar to option 1, and perhaps the makevars script can be adapted to do both. I don't mind having 1 as a backup option. It is not unlikely we have to support GPU's and/or quantum computers one day 😂
oh ok, r-polars and nodejs-polars subscribe to some non public features of the rust-polars crate and to bleeding edge. I guess it would be possible to make a PR to rust-polars exposing all non-public features, and only depend on the rust-polars crate. However that could slow down how fast r-polars can keep up with py-polars features. |
Which version of rustc is required? We have 1.63 now, is that too old? |
Not entirely sure, I run 1.68 locally now and I think I had to update rustc locally once or twice since March'22 to compile. |
It seems to be a feature implemented in 1.64.
https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1640-2022-09-22 |
Fast search on r-polars use of polars_core. 8 results - 5 files src/rust/src/rdatatype.rs:
4 use polars::prelude::{self as pl};
5: use polars_core::prelude::QuantileInterpolOptions;
6 //expose polars DateType in R
src/rust/src/rlib.rs:
9 use polars::prelude as pl;
10: use polars_core::functions as pl_functions;
11 #[extendr]
14
15: use polars_core::error::PolarsResult;
16: use polars_core::utils::rayon::prelude::*;
17
23
24: let result = polars_core::POOL
25 .install(|| {
45 fn diag_concat_df(dfs: &VecDataFrame) -> List {
46: let df = pl_functions::diag_concat_df(&dfs.0[..]).map(|ok| DataFrame(ok));
47 r_result_list(df)
51 pub fn hor_concat_df(dfs: &VecDataFrame) -> List {
52: let df = pl_functions::hor_concat_df(&dfs.0[..]).map(|ok| DataFrame(ok));
53 r_result_list(df)
src/rust/src/rdataframe/mod.rs:
23 use polars::prelude::ArrowField;
24: use polars_core::utils::arrow;
25 |
I'm upgrading it to rust 1.65... should be done in 20min. |
OK that worked but you now have a new build failure (in the arrow dependency I think): https://github.com/r-universe/rpolars/actions/runs/4068667337/jobs/7021313109 |
I'll try to flip the simd switch |
Is this because R package
hmm more switches needs to be flipped, I will just check up with the polars forum, I'm sure some wanted to do this also recently |
i uploaded to "hello_r_universe " branch and pressed refresh button but that actually rerun a yesterday commit on main with simd switched on. I tried to increment r-polars version to v0.4.4 and now Runiverse says 0.4.3 is old I guess. I guess the version maybe will show up in a little time @jeroen ? |
@sorhawell R-universe builds are executed once an hour, so wait a while 👍 |
Yes the new version is in the process of being built: https://github.com/r-universe/rpolars/actions/runs/4075440344 |
It could be some exoteric char like a tilde in a subsection that causes the error. I guess the nuclear option if we can't find the error is to drop most R source files an incrementally add them back in until the error appears. |
On Windows it fail with this message:
|
Latex gives an error:
If we search the rpolars html manual for this character, it appears in the arguments under lazy_csv_reader
I have no idea why latex can't handle this but perhaps it's worth trying to remove that character from the text? |
Just curious, polars says the MSRV is 1.58, but is it that this turned out wrong? If so, I think we should report this to the upstream. |
It could still be correct for someone using only public features of the rust-polars crate. Not sure, I will try to test this. |
I'll try to fix the hello_r_universe branch for the windows error |
I see more Tex errors I will try do debug and fix them locally |
very minimal rust-polars does not work before 1.62 it seems |
FYI, when checking MSRV with CI, it seems that cargo-msrv can be configured as follows. Since Rust on Debian testing on CRAN is 3 to 4 versions behind, perhaps the R package would benefit from setting up such a CI. |
uhh that is very elegant 👍 |
@jeroen I tried to remove toolchain specification from makevars to be able to build to target https://github.com/r-universe/rpolars/actions/runs/4083526250/jobs/7039673240
do you have a wise suggestion here? |
all big lateX are likely fixed in upcomming build, I used \link instead of \url at one place |
Oh, sorry that problem continues to occur in prqlr but I forgot to create a new issue....... |
wow so many green builds now :) ! I think there is a last missing target https://github.com/r-universe/rpolars/actions/runs/4086679575/jobs/7056707957
|
I'd recommend you to just abandon the version. R 4.3 is coming and the "old release" will be R 4.2 soon. |
Indeed dont worry too much about 32bit...
Op zo 5 feb. 2023 01:37 schreef Hiroaki Yutani ***@***.***>:
… I'd recommend you to just abandon the version. R 4.3 is coming and the
"old release" will be R 4.2 soon.
—
Reply to this email directly, view it on GitHub
<#25 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABUZ776YJMZSXNBS3WVVE3WV3Y6FANCNFSM6AAAAAAT3FBHSQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
By the way, does a search on R-universe not seem to hit rpolars? |
A package can be included in many different universes. To prevent duplicates, the search by default only includes packages from it's own universe, i.e. you would need to include it in the universe I am thinking how to improve this. Maybe using a field in the DESCRIPTION. |
I have added a new feature that if your package DESCRIPTION file contains the url to your universe in the URL field, then it will also show up in search. I'll send a PR to test this. |
The R-universe release works well now (except for the functionality needs the nightly tool chain), so I'm closing this for now. See also #80. |
How about releasing on R-universe?
It should be possible to build on R-universe with a few modifications to the Makefile.
Like r-universe-org/help#219 (comment)
The text was updated successfully, but these errors were encountered: