It works! Thank you so much! Best wishes, Kamil Stachowski
On Mon, 16 Nov 2020 at 11:53, Duncan Murdoch <murdoch.dun...@gmail.com> wrote: > On 16/11/2020 4:55 a.m., Kamil Stachowski wrote: > > I did briefly wonder why your reply to me cited an email from Akshit > Achara > > who asked about third party C++ API. I assumed it was because the > solution > > to his problem and mine was the same. > > > > In the meantime, I got a reply from Kurt Hornik who said I have a > top-level > > call > > > > soundcorrsGUI <- shiny::shinyApp (ui, server) > >> > > > > so what I should really do is to move "shiny" from "Suggests" to > "Imports". > > I don't want to do this, however, because the GUI is just an addition, > the > > package is perfectly usable without it. I wrapped "soundcorrsGUI" in a > > function: > > > > soundcorrsGUI <- function () { > >> > >> if (!requireNamespace("shiny",quietly=T) || > >> !requireNamespace("shinyjqui",quietly=T)) > >> stop ("\"soundcorrsGUI\" requires packages \"shiny\" and > \"shinyjqui\".") > >> > >> shiny::shinyApp (ui, server) > >> > >> } > >> > > > > and this seems to solve the problem with "shiny", but now I have a > problem > > with "shinyjqui". I actually only need one function from it: in the call > to > > "shinyApp" above, > > > > ui <- shiny::navbarPage ([…] ui.soundchanges […]) > >> > > > > where > > > > ui.soundchanges <- shiny::fluidPage ([…] > >> shinyjqui::sortableCheckboxGroupInput […]) > >> > > > > I tried wrapping "ui.soundchanges" in a function in the same way as I did > > with "soundcorrsGUI" but this doesn't help. > > > > Is there a way to make it work without turning "shiny" and "shinyjqui" > into > > obligatory dependencies? > > If you never call shinyjqui::sortableCheckboxGroupInput except in that > one place, then you should put that call within the requireNamespace > test. Things I'd change there: > > - Do not use T, use TRUE. > > - Wrap *everything* that requires those packages in the > requireNamespace test. > > - Make sure your example code in help pages never calls that function > unless shiny and shinyjqui are present, by a test similar to the above > but a positive one: > > if (requireNamespace("shiny") && requireNamespace("shinyjqui")) { > > # example code > > } > > Duncan Murdoch > > > > > > Best wishes, > > Kamil Stachowski > > > > On Mon, 16 Nov 2020, 00:55 Uwe Ligges, <lig...@statistik.tu-dortmund.de> > > wrote: > > > >> On 14.11.2020 19:53, Kamil Stachowski wrote: > >>> This is actually what I do. Before you replied, I was told to write to > >> CRAN > >>> and explain, and they will decide whether the packages will be > installed > >> on > >>> CRAN machines. Thank you for your help nonetheless. > >> > >> No, I told you about a "third party C++ API" you asked for, not about an > >> R package. R packages from BioC + CRAN should be availabe on CRAN, in > >> that case it is a problem in your package. > >> > >> Best, > >> Uwe Ligges > >> > >> > >>> > >>> Best, > >>> Kamil > >>> > >>> On Sat, 14 Nov 2020 at 19:39, Gábor Csárdi <csardi.ga...@gmail.com> > >> wrote: > >>> > >>>> You probably import functions from shiny. Don't do that, refer to them > >>>> with the `::` operator instead. > >>>> > >>>> Gabor > >>>> > >>>> On Sat, Nov 14, 2020 at 6:12 PM Kamil Stachowski > >>>> <kamil.stachow...@gmail.com> wrote: > >>>>> > >>>>> I wrote a package that contains a graphical interface written with > >>>> packages > >>>>> "shiny" and "shinyjqui". My package can also be used from the CLI, > so I > >>>>> listed both "shiny" and "shinyjqui" as optional dependencies. I ran R > >> CMD > >>>>> check --as-cran on my computer in R 3.6.3 and devel, and both passed > >>>>> without any errors or warnings. However, when I tried uploading the > >>>> package > >>>>> to CRAN, I got this error: > >>>>> > >>>>> Error in loadNamespace(x) : there is no package called ‘shiny’ > >>>>> Error: unable to load R code in package ‘soundcorrs’ > >>>>> Execution halted > >>>>> ERROR: lazy loading failed for package ‘soundcorrs’ > >>>>> > >>>>> How can I fix this? > >>>>> > >>>>> [[alternative HTML version deleted]] > >>>>> > >>>>> ______________________________________________ > >>>>> R-package-devel@r-project.org mailing list > >>>>> https://stat.ethz.ch/mailman/listinfo/r-package-devel > >>>> > >>> > >>> > >> > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-package-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-package-devel > > > > -- Kamil Stachowski, PhD Chair of General and Indo-European Linguistics Jagiellonian University, Cracow, Poland http://info.filg.uj.edu.pl/zhjij/~stachowski.kamil/ [[alternative HTML version deleted]] ______________________________________________ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel