Closed matdoering closed 7 years ago
Are you ready for me to look at this again?
Just fyi, if you're going to have parallel evaluation it should be supported across all platforms. There are several packages that support this. If you're getting a windows-specific error it would be good to see what that is.
Previously you asked if you should submit the shiny package to this issue. Yes, that's fine.
Valerie
Dear Valerie, yes, it would be great if you could take another look now. Here's a short summary of the changes so far:
Regarding parallelization under Windows, I will investigate the issues once again and get back to you with more details.
Regarding the openPrimeRui package I was wondering whether there's any possibility of indicating that this is a frontend package such that BiocCheck warnings regarding runnable examples and evaluated vignette chunks are disabled? Since the package exports only a single function starting the shiny app, it's not possible to run this function or test it. To prevent the BiocCheck error due to too few runnable examples, I've added an example where the app is only run in interactive mode. The WARNING for the vignette still persists though.
Regarding the DESCRIPTION for the Shiny app - should it include the same SystemRequirements tag as the openPrimeR package or is it better to avoid the duplicated annotation?
Please note that I'm currently attaching the shinyBS package in UI.R because otherwise some shinyBS features do not work (e.g. bsButton, bsModal). For me it is not clear, why the functionality only works when shinyBS is attached, but I would like to prevent attaching the package if that is possible in any way.
I've looked at some Bioconductor repositories providing Shiny apps and I saw that most of them provide the code in the R/ folder itself rather than in inst/shiny. It seems that one advantage is that the NAMESPACE of the package is respected in this case, is that right? However, I'm not sure if it's possible to have a Docker container that directly starts the app independent of the package as then the NAMESPACE of the package won't be respected ... To summarize, I'm unsure what the most appropriate way of providing the code is.
Thanks and best regards Matthias
AdditionalPackage: https://github.com/matdoering/openPrimeRui
Received a valid push; starting a build. Commits are:
c6683dd parallelization works under windows too: unseriali...
Received a valid push; starting a build. Commits are:
3d45f99 secondary structure: windows bug fixed
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170906094343.html
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170906094614.html
Received a valid push; starting a build. Commits are:
90787c2 activated parallelization under windows
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170906122942.html
Two small updates:
Sorry for the delay. I'll take a look at this today. Valerie
Hi Matthias,
Thank you for making the changes, fixing parallel evaluation on Windows, etc. Did you add a webhook to openPrimeRui? I ask because we didn't get a build for it. If you think you've got it sorted I'll ask Lori to kick off another build.
openPrimeRui only needs to Depend on openPrimeR (as you've done). You don't need to re-list the system requirements.
I would suggest not using LazyData: true in DESCRIPTION This causes large packages to load very, very slowly. I've never seen this option to be an advantage - only one to cause problems.
If possible, add runable examples to these flagged man pages.
Checking exported objects have runnable examples...
If they must be interactive you can wrap them in
if (interactive()) { ... }
Please consolidate the man pages by topic. There are currently 405 pages. Let's aim for somewhere less than 20.
~/repos/git/software/openPrimeR/man >ls|wc
405 405 9684
As you mentioned, you'll need a vignette for the openPrimeRui package. It can be a static These are a couple of examples that may help
https://www.bioconductor.org/packages/devel/bioc/vignettes/cytofkit/inst/doc/cytofkit_shinyAPP.html http://bioconductor.org/packages/release/bioc/vignettes/twoddpcr/inst/doc/twoddpcr.html
Also, maybe useful is Andrzej's tutorial here:
https://www.bioconductor.org/help/course-materials/2015/CSAMA2015/lab/shiny.html#share-as-r-files
In response to this question:
"I've looked at some Bioconductor repositories providing Shiny apps and I saw that most of them provide the code in the R/ folder itself rather than in inst/shiny. It seems that one advantage is that the NAMESPACE of the package is respected in this case, is that right? However, I'm not sure if it's possible to have a Docker container that directly starts the app independent of the package as then the NAMESPACE of the package won't be respected ... "
I would avoid the use of the Docker. We can't support that on the build system.
I'm going to ask Andrzej's opinion here. He has quite a bit of experience with Shiny.
@aoles, have you worked with shinyBS? And if you have time, any comments on the structure of openPrimeRui wrt the location of server.R, ur.R etc.?
Valerie
AdditionalPackage: https://github.com/matdoering/openPrimeRui
Hi @matdoering,
Starting build on additional package https://github.com/matdoering/openPrimeRui.
IMPORTANT: Please read the instructions for setting up a push hook on your repository, or further changes to your additional package repository will NOT trigger a new build.
The DESCRIPTION file of this additional package is:
Package: openPrimeRui
Title: Shiny Application for Multiplex PCR Primer Design and Analysis
Version: 0.99.1
Authors@R: c(person("Matthias", "Döring",
email = "mdoering@mpi-inf.mpg.de",
role = c("aut", "cre")),
person("Nico", "Pfeifer",
email = "pfeifer@informatik.uni-tuebingen.de",
role = c("aut"))
)
Description: A Shiny application providing methods for designing, evaluating,
and comparing primer sets for multiplex polymerase chain reaction.
Primers are designed by solving a set cover problem such that
the number of covered template sequences is maximized with
the smallest possible set of primers.
To guarantee that high-quality primers are generated,
only primers fulfilling constraints on their physicochemical properties
are selected.
Depends:
R (>= 3.4.0),
openPrimeR (>= 0.99.0)
License: GPL-2
Encoding: UTF-8
LazyData: true
RoxygenNote: 6.0.1
Remotes: matdoering/openPrimeR
Imports:
shiny (>= 1.0.2),
shinyjs (>= 0.9),
shinyBS (>= 0.61),
DT (>= 0.2),
rmarkdown (>= 1.0)
Suggests:
knitr (>= 1.13)
SystemRequirements:
MAFFT (>= 7.305),
OligoArrayAux (>= 3.8),
ViennaRNA (>= 2.4.1),
MELTING (>= 5.1.1),
Pandoc (>= 1.12.3)
biocViews: Software, Technology
VignetteBuilder: knitr
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
On one or more platforms, the build results were: "WARNINGS". This may mean there is a problem with the package that you need to fix. Or it may mean that there is a problem with the build system itself.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeRui_buildreport_20170912034440.html
Received a valid push; starting a build. Commits are:
b691f11 removed lazydata; reduced size of man folder; upda...
Received a valid push; starting a build. Commits are:
92cda6d increased evaluated vignette chunks
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeRui_buildreport_20170912070846.html
Dear Valerie, regarding the openPrimeRui build I was already wondering why the build didn't start when I added it with AdditionalPackage initially. At that time, I didn't have the webhook set yet and when I set it later, it started transmitting data but didn't initialize the build. Hence, I just added another comment with AdditionalPackage to initialize the build and that made it work.
According to your suggestion, I just removed Lazydata: true for both packages and added runnable examples to the functions with missing examples - using if interactive() is extremely helpful.
The reason that there were 405 man/ files in the package was that these files included docs for many internal functions. Since the package itself doesn't expose these functions, I simply removed the corresponding .Rd files from the man/ folder. With this change, there's only 81 Rd files remaining. Is that sufficient? You mentioned that I should aim at less than 20, but I don't see how merging that many documentation files would be possible.
I've already created a vignette for the openPrimeRui package. Right now there's a warning because too few chunks are evaluated. In the new version, I've fixed this by requiring an interactive session when evaluating the chunk.
Thank you for asking about insights on the recommended package structure for Shiny apps and the shinyBS issue. I was just wondering about Docker because I was wondering if there was any limitation on the package structure as to running the Shiny app in a container. With the current structure of the package, I couldn't use the package namespace for many things as all the shiny code is located in inst/exdata/shiny, which can be quite bothersome, although it works fine.
Best Matthias
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
On one or more platforms, the build results were: "skipped, ERROR". This may mean there is a problem with the package that you need to fix. Or it may mean that there is a problem with the build system itself.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170912071713.html
Received a valid push; starting a build. Commits are:
83d293f version check for viennaRNA
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170912084445.html
I was wondering whether there's any updates on the review for openPrimeRui and whether the changes I've made to openPrimeR are already satisfactory. Looking forward to your feedback!
I've been out of the office. I'll try to look at this in the next couple of days. Valerie
Hi, openPrimeR looks good except for the man pages. Thank you for removing the non-exported function pages - that's great. We are still left with a large number and I'm wondering why you feel combining them is a problem. Do you think it's too much info per page or maybe you don't think they fall into logical categories ...? My concern is how will the user find all of these functions. The vignette can't cover the functionality of 80 functions so having them grouped on a single man page (e.g., all plot functions together) makes discovery easier.
Other than that we are good to go. Valerie
Received a valid push; starting a build. Commits are:
0024452 reduced the number of documentation entries
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170925064216.html
Received a valid push; starting a build. Commits are:
2809318 documentation update: names set to rdname to ensur...
Dear Valerie, I just updated the documentation of the package such that the manual entries are now logically consolidated. The PDF manual now only contains a total of 13 entries including the package description and the index. Please find the new listing attached. Is it fine like that?
Are there any updates regarding openPrimeRui
?
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
On one or more platforms, the build results were: "WARNINGS". This may mean there is a problem with the package that you need to fix. Or it may mean that there is a problem with the build system itself.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170925065751.html
Thanks for consolidating the man pages. No more updates for openPrimeRui. Please bump the versions on both packages so we get 2 clean builds. Once that's done we're good to go. Valerie
Received a valid push; starting a build. Commits are:
c8a5549 correct documentation aliasing
Received a valid push; starting a build. Commits are:
b8e9f62 version bump
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeRui_buildreport_20170925093842.html
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on Linux, Mac, and Windows.
Congratulations! The package built without errors or warnings on all platforms.
Please see the following build report for more details:
http://bioconductor.org/spb_reports/openPrimeR_buildreport_20170925094703.html
Dear Valerie, great! I've just bumped the versions of both packages and they were built successfully.
Thank you so much for your guidance Matthias
Great. All set. Thanks for your work on these packages. Valerie
Your package has been accepted. It will be added to the Bioconductor Git repository and nightly builds. Additional information will be sent to the maintainer email address in the next several days.
Thank you for contributing to Bioconductor!
The master branch of your GitHub repository has been added to Bioconductor's git repository.
To use the git.bioconductor.org repository, we need an 'ssh' key to associate with your github user name. If your GitHub account already has ssh public keys (https://github.com/matdoering.keys is not empty), then no further steps are required. Otherwise, do the following:
See further instructions at
https://bioconductor.org/developers/how-to/git/
for working with this repository. See especially
https://bioconductor.org/developers/how-to/git/new-package-workflow/ https://bioconductor.org/developers/how-to/git/sync-existing-repositories/
to keep your GitHub and Bioconductor repositories in sync.
Your package will be included in the next nigthly 'devel' build (check-out from git at about 6 pm Eastern; build completion around 2pm Eastern the next day) at
https://bioconductor.org/checkResults/
(Builds sometimes fail, so ensure that the date stamps on the main landing page are consistent with the addition of your package). Once the package builds successfully, you package will be available for download in the 'Devel' version of Bioconductor using biocLite(\"openPrimeR\")
. The package 'landing page' will be created at
https://bioconductor.org/packages/openPrimeR
If you have any questions, please contact the bioc-devel mailing list (https://stat.ethz.ch/mailman/listinfo/bioc-devel); this issue will not be monitored further.
Dear Martin, first of thank you for adding openPrimeR to Bioconductor. Since I didn't receive any information about openPrimeRui being added to Bioconductor I was wondering whether it is usual for additional packages being added later than the 'main package' or whether it would be necessary to open another issue for openPrimeRui? Thanks for the clarification!
Sorry, our workflow failed to catch the AdditionalPackage; I'll work on this today.
The problem was that the workflow only looked for additional packages in the first 30 comments; openPrimeR has been added to the Bioconductor git repository and manifest for nightly builds; it should be included in Thursday's build report.
Update the following URL to point to the GitHub repository of the package you wish to submit to Bioconductor
Confirm the following by editing each check box to '[x]'
[x] I understand that by submitting my package to Bioconductor, the package source and all review commentary are visible to the general public.
[x] I have read the Bioconductor Package Submission instructions. My package is consistent with the Bioconductor Package Guidelines.
[x] I understand that a minimum requirement for package acceptance is to pass R CMD check and R CMD BiocCheck with no ERROR or WARNINGS. Passing these checks does not result in automatic acceptance. The package will then undergo a formal review and recommendations for acceptance regarding other Bioconductor standards will be addressed.
[x] My package addresses statistical or bioinformatic issues related to the analysis and comprehension of high throughput genomic data.
[x] I am committed to the long-term maintenance of my package. This includes monitoring the support site for issues that users may have, subscribing to the bioc-devel mailing list to stay aware of developments in the Bioconductor community, responding promptly to requests for updates from the Core team in response to changes in R or underlying software.
I am familiar with the essential aspects of Bioconductor software management, including:
For help with submitting your package, please subscribe and post questions to the bioc-devel mailing list.