[Bioc-devel] 80% of man pages must have runnable examples (package with numerous Shiny apps)

Kevin RUE kevinrue67 @ending from gm@il@com
Wed Nov 21 19:10:36 CET 2018


Glad to be of help!

Nice package too! I managed to install it and give it a run!

Best wishes,
Kevin

On Wed, Nov 21, 2018 at 4:29 PM L Rutter <lindsayannerutter using gmail.com>
wrote:

> Hi Lori and Kevin:
>
> Thank you for your helpful responses! I was able to use "if
> (interactive()) { ... }" format and return the appDir object for the
> user. Thanks again!
>
> Lindsay
> On Mon, Nov 19, 2018 at 3:02 PM Kevin RUE <kevinrue67 using gmail.com> wrote:
> >
> > Hi Lindsay,
> >
> > Check out https://github.com/csoneson/iSEE/blob/master/R/iSEE-main.R
> function "iSEE" for an example of both the function return value, and the
> man page.
> >
> > First, I would suggest that your function _returns_ the "appDir" object
> to the user, and that you leave it to the user to call "shiny::runApp" with
> options appropriate to their system or preferences (e.g
> launch.browser=FALSE, port=1234, etc).
> >
> > Second, for the man page, you don't have to put the _entire_ @example
> block inside \dontrun{}. You can put everything that doesn't launch the
> Shiny app outside the \dontrun{} block and only put the one "shiny" line
> inside the \dontrun{}. The one line will represent less than 80% of the man
> page.
> >
> > However, even better, you can avoid the \dontrun{} option altogether and
> put the "shiny" statement within a "if (interactive()) { ... }" block.
> >
> > So adapting you existing code, I would have
> > #' @examples
> > #' # Example 1: Create an interactive litre plot for the logged data
> using
> > #' # default background of hexagons.
> > #'
> > #' data(soybean_ir_sub)
> > #' data(soybean_ir_sub_metrics)
> > #' soybean_ir_sub_log <- soybean_ir_sub
> > #' soybean_ir_sub_log[,-1] <- log(soybean_ir_sub[,-1]+1)
> > #' if (interactive()){
> > #' plotLitreApp(data = soybean_ir_sub_log, dataMetrics =
> soybean_ir_sub_metrics)
> > #' }
> > #'
> > #' # Example 2: Repeat the same process, only now plot background data as
> > #' # individual points. Note this may be too slow now that all points
> are drawn
> > #' # in the background.
> > #' if (interactive()){
> > #' plotLitreApp(data = soybean_ir_sub_log, dataMetrics =
> soybean_ir_sub_metrics,
> > #' option = "allPoints", pointColor = "red")
> > #' }
> >
> > However, once more, I suggest that you return "appDir", and you would
> then have something like:
> > #' app <- plotLitreApp(data = soybean_ir_sub_log, dataMetrics =
> soybean_ir_sub_metrics)
> > #' if (interactive()){
> > #'    shiny::runApp(app, [options defined by your user])
> > #' }
> >
> > I hope this helps. Otherwise, let me know and I can chime in the review
> of your package
> >
> > Best wishes
> > Kevin
> >
> > On Mon, Nov 19, 2018 at 7:00 PM Shepherd, Lori <
> Lori.Shepherd using roswellpark.org> wrote:
> >>
> >> Submit with the dontrun{} and temporarily ignore the ERROR -  when
> submitting please reference the explanation below.  Your reviewer could
> provide more information and will decide how to proceed -  generally
> examples will be run manually to check for accuracy and an exception can be
> made.
> >>
> >>
> >> Lori Shepherd
> >>
> >> Bioconductor Core Team
> >>
> >> Roswell Park Cancer Institute
> >>
> >> Department of Biostatistics & Bioinformatics
> >>
> >> Elm & Carlton Streets
> >>
> >> Buffalo, New York 14263
> >>
> >> ________________________________
> >> From: Bioc-devel <bioc-devel-bounces using r-project.org> on behalf of L
> Rutter <lindsayannerutter using gmail.com>
> >> Sent: Monday, November 19, 2018 1:49:50 PM
> >> To: bioc-devel using r-project.org
> >> Subject: [Bioc-devel] 80% of man pages must have runnable examples
> (package with numerous Shiny apps)
> >>
> >> Hello all:
> >>
> >> I am planning to submit a package to Bioconductor and have one last
> >> item from BiocCheck (error, warning, note) I have been unable to
> >> resolve:
> >>
> >> ERROR: At least 80% of man pages documenting exported objects must
> >> have runnable examples. The following pages do not: plotLitreApp.Rd,
> >> plotPCPApp.Rd, plotSMApp.Rd, plotVolcanoApp.Rd
> >>
> >> I have 18 man pages (9 function-related, 8 data-related, and 1
> >> package-related). Of these, 4 of the function-related man pages (the
> >> ones listed in the ERROR) are Shiny applications of the following
> >> format:
> >>
> >> appDir <- system.file("shiny-examples", "plotLitreApp", package =
> "bigPint")
> >> shiny::runApp(appDir, display.mode = "normal")
> >>
> >> If I do not have \dontrun{} around these shiny app examples, then R
> >> CMD check permanently halts on the "checking examples..." step. If I
> >> do have \dontrun{} around these shiny app examples, then R CMD
> >> BiocCheck gives me the error above. My question is: What is the
> >> recommended procedure in such a situation where the package is being
> >> prepared for Bioconductor submission?
> >>
> >> An example of one script causing the error can be found at:
> >> https://github.com/lrutter/bigPint/blob/master/R/plotLitreApp.R
> >>
> >> Thank you for any advice!
> >> Lindsay
> >>
> >> _______________________________________________
> >> Bioc-devel using r-project.org mailing list
> >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>
> >>
> >> This email message may contain legally privileged and/or confidential
> information.  If you are not the intended recipient(s), or the employee or
> agent responsible for the delivery of this message to the intended
> recipient(s), you are hereby notified that any disclosure, copying,
> distribution, or use of this email message is prohibited.  If you have
> received this message in error, please notify the sender immediately by
> e-mail and delete this email message from your computer. Thank you.
> >>         [[alternative HTML version deleted]]
> >>
> >> _______________________________________________
> >> Bioc-devel using r-project.org mailing list
> >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list