Skip to content
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

Adding missing packages to webr #383

Open
tstubbs-evolution opened this issue Mar 13, 2024 · 18 comments
Open

Adding missing packages to webr #383

tstubbs-evolution opened this issue Mar 13, 2024 · 18 comments
Labels
packages This is an issue related to Wasm packages

Comments

@tstubbs-evolution
Copy link

Hello,

I am hoping to use statscloud to design some teaching material. statscloud uses WebR for its R terminal interface. When trying to install a package, it gave the error "Requested package XXXXX not found in webR binary repo". I wanted to ask, can packages be added to the webR binary repo?

I wanted to use the the R package 'phytools', but when installing the dependencies, it stated:

Requested package mnormt not found in webR binary repo.
Requested package phangorn not found in webR binary repo

Would it be possible to add mnormt, phangorn and phytools to the binary repo?

Best wishes,
Tom

@georgestagg georgestagg added the packages This is an issue related to Wasm packages label Mar 14, 2024
@adrianolszewski
Copy link

adrianolszewski commented Mar 17, 2024

Oh yes, also: tseries, nloptr, glmnet, muhaz, arrangements, robustbase, curl - used itself
Rmpfr, RcppZiggurat, gsl, deSolve - serving as auxiliary dependencies

These packages make key dependency in multiple important packages.

library(MKinfer)
Downloading webR package: MKdescr
Downloading webR package: boot
Warning in install(dep, repos, lib, quiet) :
  Requested package arrangements not found in webR binary repo.
Downloading webR package: exactRankTests
Downloading webR package: ellipsis

[...]

Downloading webR package: MKinfer
Error: could not find function "perm.t.test"
Error: package or namespace load failed for ‘MKinfer’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
 there is no package called ‘arrangements’

@tylermorganwall
Copy link

Just wanted to add my +1 to nloptr: this package is imported by lme4, which is a core mixed effects modelling package.

@georgestagg
Copy link
Member

georgestagg commented Apr 3, 2024

The nloptr/lme4 packages are being tracked in r-wasm/rwasm#31.

@adrianolszewski
Copy link

I'm also wondering what makes the arrangements package to be missing - is this because making it a web assembly fails for some reason, or because it wasn't yet recompiled for web assembly?

This package seems to be rather rarely updated (looking at the GitHub metrics), but maybe the author will be willing to help ( https://github.com/randy3k/arrangements ). If not, then I will contact the author of the MKinfer package ( https://github.com/stamats/MKinfer ), which is just awesome set of permutation and bootstrap tests (so extensively using permutation generator), to maybe switch to something else, that is supported by web R.

@SimoneBrazzi
Copy link

I am also going to ask to add curl to webR. I am developing a website with quarto and I would like to have interactive plot with shinylive. I know it is possible to use iframe and recall a published shiny app, but the project will have tons of interactive plots.

@laceym14
Copy link

Adding my +1 for curl, and would also like to request scrypt, MASS, Matrix, and V8 as I am developing a password-protected shiny app containing interactive plots and maps that include these packages as dependencies. Thank you!

@pawelru
Copy link

pawelru commented Sep 18, 2024

Upvote on MASS, Matrix and curl

@georgestagg
Copy link
Member

georgestagg commented Sep 18, 2024

MASS and Matrix should already be there, are they not working for you?

curl and V8 will be difficult, but are on our radar.

@pawelru
Copy link

pawelru commented Sep 18, 2024

Oh gosh, I was looking at the old logs! Yes - I confirm that both MASS and Matrix are already there!

@laceym14
Copy link

Oh interesting, I see them there now too but for some reason I'm still getting the following warnings when I run shinylive::export(appdir = "app-dir", destdir = "export-dir"):
1: Can't find MASS in webR binary repository.
2: Can't find Matrix in webR binary repository.
I'm using v0.2.0 of shinylive, I'm not sure why those two aren't recognized in the binary repo.

@bakered
Copy link

bakered commented Sep 19, 2024

Also getting
Warning messages: 1: Can't find MASS in webR binary repository. 2: Can't find Matrix in webR binary repository.
on rendering quarto with shinylive. Although, it worked yesterday.

@quartermaine
Copy link

quartermaine commented Oct 17, 2024

I would like also to ask to add forecast, xgboost and modeltime?

@LeafYeeXYZ
Copy link

I'm currently working on a web statistic app and would like also to use WebR and some statistical packages (like psych). But they all have a missing dependency mnormt. 😭

Hoping to use it in the future version of WebR. Thanks for your wonderful project! ❤️

@manuelgirbal
Copy link

Adding curl would be great. Is there any workaroud for loading packages like httr and/or working with APIs using GET?

@gerhi
Copy link

gerhi commented Nov 29, 2024

Hi, thanks a lot for your work. Is there a way to support the development? I would also wellcome the addition of the mnormt package because I rely heavily on lavvan for which this is a dependency.

@georgestagg
Copy link
Member

Thanks again for taking the time to report useful missing packages. We will get around to looking at them in time, but each package can take a long time to debug so I unfortunately cannot provide any timelines.


Also getting
Warning messages: 1: Can't find MASS in webR binary repository. 2: Can't find Matrix in webR binary repository.
on rendering quarto with shinylive. Although, it worked yesterday.

Could you please post a new issue with a reproducible example shiny app leading to this error message?


Adding curl would be great. Is there any workaroud for loading packages like httr and/or working with APIs using GET?

Not yet. We're planning on taking a look at creating a minimal curl shim in the future, which will allow packages like httr to work in certain situations.


Is there a way to support the development?

If you have experience building software for WebAssembly and are able to create patches to build currently broken R packages, we'd be happy to setup our rwasm package builder to point to them. Simply create a GitHub fork of the R package source, setup a branch containing the patches, and open an issue on the https://github.com/r-wasm/rwasm repo with further details.


Package unmarked requires specific patching, c.f. r-wasm/rwasm#42.

@georgestagg
Copy link
Member

brms and rstan, #503.

@georgestagg
Copy link
Member

rstanarm, likely also requires rstan: #506.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
packages This is an issue related to Wasm packages
Projects
None yet
Development

No branches or pull requests