Closed jokergoo closed 3 years ago
Hi @jokergoo
Thanks for submitting your package. We are taking a quick look at it and you will hear back from us soon.
The DESCRIPTION file for this package is:
Package: InteractiveComplexHeatmap
Type: Package
Title: Make Complex Heatmaps Interactive
Version: 0.99.0
Date: 2020-12-19
Author: Zuguang Gu
Maintainer: Zuguang Gu <z.gu@dkfz.de>
Depends: R (>= 4.0.0), ComplexHeatmap (>= 2.7.2)
Imports: grDevices, stats, shiny, grid, GetoptLong, S4Vectors (>= 0.26.1),
digest, IRanges
Suggests: knitr, rmarkdown, testthat
VignetteBuilder: knitr
Description: This package can easily make interactive heatmaps produced
by the ComplexHeatmap package. It provides two types of interactivities:
1. on the interactive graphics device, and 2. on a Shiny app. It also provides
functions for integrating the interactive heatmap widgets into other Shiny apps.
biocViews: Software, Visualization, Sequencing
URL: https://github.com/jokergoo/InteractiveComplexHeatmap
License: MIT + file LICENSE
A reviewer has been assigned to your package. Learn what to expect during the review process.
IMPORTANT: Please read this documentation for setting up remotes to push to git.bioconductor.org. It is required to push a version bump to git.bioconductor.org to trigger a new build.
Bioconductor utilized your github ssh-keys for git.bioconductor.org access. To manage keys and future access you may want to active your Bioconductor Git Credentials Account
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: "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 build report for more details. This link will be active for 21 days.
Remember: if you submitted your package after July 7th, 2020,
when making changes to your repository push to
git@git.bioconductor.org:packages/InteractiveComplexHeatmap
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Received a valid push on git.bioconductor.org; starting a build for commit id: f8176bc6e9a9b66c2ce7350f38a43b04555f4701
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 build report for more details. This link will be active for 21 days.
Remember: if you submitted your package after July 7th, 2020,
when making changes to your repository push to
git@git.bioconductor.org:packages/InteractiveComplexHeatmap
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Received a valid push on git.bioconductor.org; starting a build for commit id: d775570a67adc11ae0b47d80e70d5c6a33bd0377
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 build report for more details. This link will be active for 21 days.
Remember: if you submitted your package after July 7th, 2020,
when making changes to your repository push to
git@git.bioconductor.org:packages/InteractiveComplexHeatmap
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Received a valid push on git.bioconductor.org; starting a build for commit id: 1ebcb7a7ff5ded93a8a97087b73d289c99c7b4cf
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 build report for more details. This link will be active for 21 days.
Remember: if you submitted your package after July 7th, 2020,
when making changes to your repository push to
git@git.bioconductor.org:packages/InteractiveComplexHeatmap
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Hi ZuGuang, @jokergoo
Thank you for your submission to Bioconductor. Sorry for the delay in getting back to you over the break. Please see the review below. Remember to respond to the review line by line.
Best regards, Marcel
BugReports
fieldAuthors@R
fieldInstallation
section in one of the vignettes to show users how
to install the package from Bioconductor.implementation.Rmd
and
shiny_dev.Rmd
) and use actual data.onAttach
messages. A user wishing to report a
bug or see the package version would use bug.report()
or even
packageVersion()
for just the package version.title = "ComplexHeatmap Shiny App"
in ht_shiny
). This
way, you don't have to worry about whether the argument is NULL
or not since
you have a working default. It reduces the overall cyclomatic complexity.demo
subdirectory instead of the ht_shiny_example
function. It seems like you
already have a script that is ready-to-run. For more details, see here:
https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Package-subdirectorieslibrary
calls in package code. Your examples can have library
calls as long as those packages are added to the Suggests
field.build_pkg_site.R
or put it in inst/scripts
.docs
should also be removedRmd
file and rendering to md
so that code chunks are
evaluated.Hi Marcel @LiNk-NY,
Thanks for your time and review on the InteractiveComplexHeatmap package! Following are my point-to-point reply:
- Add a
BugReports
field- (optional) Add your ORCID ID to the
Authors@R
field
Both are added.
- Looks good.
- Consider using all 'camelCase' or all 'snake_case' for your function names instead of a mix of both.
All function names now are written in camelCase style.
- Provide an
Installation
section in one of the vignettes to show users how to install the package from Bioconductor.
Added.
- If possible, avoid static code chunks (as in
implementation.Rmd
andshiny_dev.Rmd
) and use actual data
In implementation.Rmd
, some static code chunks demonstrate the output from
interactive manipulations on the interactive graphics device, e.g. clicks on the graphics device,
so they cannot be generated on the fly.
Similarlly, the static code chunks in shiny_dev.Rmd
are only used to
demonstrate the format of the objects. They cannot be obtained in the
Rmarkdown generation and the exact values are not important there.
- We encourage all developers to remove the noisy messages when loading a package. Consider removing the
.onAttach
messages. A user wishing to report a bug or see the package version would usebug.report()
or evenpackageVersion()
for just the package version.
It is removed.
- There is some value in having sensible defaults. For example, use the defaults that you have defined in the function body in the function's arguments (e.g.,
title = "ComplexHeatmap Shiny App"
inht_shiny
). This way, you don't have to worry about whether the argument isNULL
or not since you have a working default. It reduces the overall cyclomatic complexity.
Yes, they are moved to function arguments.
- Because you have interactive demonstrations, consider using the
demo
subdirectory instead of theht_shiny_example
function. It seems like you already have a script that is ready-to-run. For more details, see here: https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Package-subdirectories
The reason is, the example code will be post-processed so that the source code of the example is also shown in the Shiny app. For example, for the following example:
library(InteractiveComplexHeatmap)
library(ComplexHeatmap)
ht = Heatmap(matrix(rnorm(100), 10))
htShiny(ht)
to put in demo/
and to also print the source code of this example in the shiny app, it needs to be adapted to:
library(InteractiveComplexHeatmap)
library(ComplexHeatmap)
ht = Heatmap(matrix(rnorm(100), 10))
htShiny(ht, html = "
<h3>Description</h3>
<pre>blablabla</p>
<h3>source code</h3>
<pre>
library(InteractiveComplexHeatmap)
library(ComplexHeatmap)
ht = Heatmap(matrix(rnorm(100), 10))
htShiny(ht)
</pre>
")
As you see, the example code is repeated twice, which is very bad for examples with huge block of code,
while in htShinyExample()
, the value for html
can be automatically processed.
- Avoid any
library
calls in package code. Your examples can havelibrary
calls as long as those packages are added to theSuggests
field.
All packages used in examples are now put in Suggests
field.
- Remove
build_pkg_site.R
or put it ininst/scripts
.docs
should also be removed
build_pkg_site.R
and docs
are used for building the package website and
they are only available in the Github repo. They are actually excluded in .Rbuildignore
.
- Add a Bioconductor installation section after acceptance.
Added.
- Consider using an
Rmd
file and rendering tomd
so that code chunks are evaluated.
There is no executable code chunk in README.md
, so I think it is fine to only use the .md
file.
Hi ZuGuang, @jokergoo
Thank you for making those changes and addressing the points.
I would still argue that the docs
folder and the build_pkg_site.R
file can be moved to more suitable locations.
Usually, the docs
folder is a product (of pkgdown::build_site()
) and its contents are put on a gh-pages
branch
on GitHub for hosting.
We would like to only host the source of the package rather than all its by-products.
Consider using GitHub Actions via biocthis::use_bioc_github_action()
for possibly easier setup.
Best, Marcel
Hi Marcel,
Yes, you are right! I haven't considered that. I have moved docs/
and build_pkg_site.R
to gh-pages
branch. Now it is clean.
Best, Zuguang
Hi Zuguang, @jokergoo Thanks for making those changes! :pray: I have accepted your package. Thank you for your contribution. Best regards, Marcel
Your package has been accepted. It will be added to the Bioconductor nightly builds.
Thank you for contributing to Bioconductor!
Thank you @LiNk-NY Marcel too for your time and valuable suggestions!
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/jokergoo.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 BiocManager::install("InteractiveComplexHeatmap")
. The package 'landing page' will be created at
https://bioconductor.org/packages/InteractiveComplexHeatmap
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.
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.
[x] I am familiar with the Bioconductor code of conduct and agree to abide by it.
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.