Closed LaraSellesVidal closed 4 years ago
Hi @LaraSellesVidal
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: ncRNAtools
Type: Package
Title: An R toolkit for non-coding RNA
Version: 0.99.0
Date: 2020-07-24
Author: Lara Selles Vidal, Rafael Ayala, Guy-Bart Stan, Rodrigo Ledesma-Amaro
Maintainer: Lara Selles Vidal <lara.selles12@imperial.ac.uk>,
Rafael Ayala <r.ayala14@imperial.ac.uk>
Description: ncRNAtools provides a set of basic tools for handling and
analyzing non-coding RNAs. These include tools to access the RNAcentral
database, to predict and visualize the secondary structure of non-coding
RNAs and to read and write the file formats most commonly for representing
such secondary structures.
License: GPL-3
Imports: httr, rvest, utils, grDevices, ggplot2, stringr, stringi, reshape2,
IRanges, GenomicRanges, S4Vectors
Suggests: knitr, BiocStyle, rmarkdown, BiocGenerics
VignetteBuilder: knitr
biocViews: FunctionalGenomics, DataImport, ThirdPartyClient, Visualization,
StructuralPrediction
NeedsCompilation: no
Encoding: UTF-8
LazyData: true
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/ncRNAtools
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: 0e4027f4f8c7dddee4b71791551ad3d55e33557c
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/ncRNAtools
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: b19a1ad1e1c1aa50e4fb861797d08a2ed70810fa
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/ncRNAtools
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: 9b7a34d72ec6182e88d37058c31cd7639ea4395b
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/ncRNAtools
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Hi Lara, @LaraSellesVidal Thank you for your submission. Sorry for the delay in reviewing your package. There are a couple of packages ahead of yours. I hope to get to yours in the next couple of days.
Best regards, Marcel
Hi Lara, @LaraSellesVidal I'm sorry that I missed your package. I am reviewing it now. Best, Marcel
Hi Marcel, @Link-NY
No worries! We look forward to reading your comments.
Best wishes,
Lara
On 28 Aug 2020, at 21:54, Marcel Ramos notifications@github.com wrote:
This email from notifications@github.com originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders listhttps://spam.ic.ac.uk/SpamConsole/Senders.aspx to disable email stamping for this address.
Hi Lara, @LaraSellesVidalhttps://github.com/LaraSellesVidal I'm sorry that I missed your package. I am reviewing it now. Best, Marcel
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/Bioconductor/Contributions/issues/1575#issuecomment-683118911, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APCRI6GDU6JMQKE5FFKSCVDSDADQ3ANCNFSM4PNKA7VA.
Hi Lara, @LaraSellesVidal
Thank you for your submission.
Please see the review below. If you have any questions, feel free to post here.
Best regards, Marcel
rapilclient
.Biostrings
that you could use?reshape2
since the package is in the 'retired'
phase. If possible, perform the operations using base R.BugReports:
field that points to the GitHub issues link.Suggests:
package BiocGenerics
ORCID
IDs as comments in Authors@R.flattenDotBracket
, readDotBracket
, and writeDotBracket
seem to be
helper functions. Should they be exported? Update: This seems to be a
useful format that is used an input for the tool.base
R (~ stringr
,
stringi
, rvest
, reshape2
).BiocManager
to demo how the
package would be installed (see Bioconductor landing pages for examples).inst/extdata
foldersessionInfo
section to the end of the vignette (before References)checkInferenceEngine
are the same. Perhaps
you meant to add a different method (centroidHomFold
)?||
to ensure that conditions on either side
evaluate to length 1 (R/ncRNAtools_checkInputFunction:L#32
).getOption("width") == 80
).globalVariables
function to avoid using Var1 <- NULL
in every
plotting function.filename
argument. The user should
be able to call ggsave
themselves with the return of your function.[[:alnum:]]
GRanges
sapply
. Use either lapply
or vapply
if the return is
predictable.function(x, text) { unlist(strsplit(x, text)) }
Minor:
match(method, c("centroidFold", "centroidHomFold", "IPknot"))
in
R/ncRNAtools_otherSupportFunctions.R:L#4-12
)A-Z
inside the regex
or using regex classes.Received a valid push on git.bioconductor.org; starting a build for commit id: bdba764c1a740600b84d1b80c69c55989281fdd5
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: "TIMEOUT, skipped". 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/ncRNAtools
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: db4e403d6c3dfdad9ac58b6bf13ce23ab5190c79
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/ncRNAtools
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Hi Marcel, @LiNk-NY
Thanks a lot for your comments and sorry for the delay in our reply.
We have now addressed your suggestions. Please find below some comments for each specific points.
ncRNAtools #1575
- General comments: It would be great if the API had a formal protocol that you could use to feed into a package such as
rapiclient
.
Thanks for pointing us towards rapiclient
. Unfortunately, it seems the API we used do not have formal specifications in the OpenAPI/Swagger format, which from my understanding seems to be required to operate with rapiclient
.
- Is there functionality in
Biostrings
that you could use?
In its current version, there are no functionalities in ncRNAtools that relate to alignments of sequences or subsetting sequences. However, the package could be easily modified to accept RNAString
and DNAString
objects, in addition to plain strings. Let us know if you think this would be an useful addition and we will perform the required changes!
- Overall it looks solid. Object naming is descriptive. It could use a bit more code formatting for readability.
DESCRIPTION
- Please reconsider the use of
reshape2
since the package is in the 'retired' phase. If possible, perform the operations using base R.
Dependency on melt
from reshape2
has now been removed and the operation is performed with base R.
- Include a
BugReports:
field that points to the GitHub issues link.
Included
- Re-evaluate the
Suggests:
packageBiocGenerics
We have included Suggests: RUnit, BiocGenerics
as instructed at http://bioconductor.org/developers/how-to/unitTesting-guidelines/ in order to perform unit tests. Would there be another preferred way to do this?
- (optional) Include
ORCID
IDs as comments in Authors@R.
Included
- Everything else looks good.
NAMESPACE
flattenDotBracket
,readDotBracket
, andwriteDotBracket
seem to be helper functions. Should they be exported? Update: This seems to be a useful format that is used an input for the tool.
As you commented in the update, we believe these functions allow to generate files in useful input formats.
- Based on the number of functions imported, reconsider imports from functions whose operations can be readily preformed using
base
R (~stringr
,stringi
,rvest
,reshape2
).
Dependencies on stringr
,stringi
, and reshape2
have been removed.
Dependency on rvest
was based on its html_text
function to parse the HTML content of a query response. After checking in detail, this seems to be just a wrapper for xml_text
from xml2
. We have now changed our code to use directly xml_text
, and included xml2
as a dependency. This leads to importing only xml2
, instead of rvest
and xml2
as was previously the case. Would this be fine?
vignettes
- Please stay within the 80 column width limit. It makes it easier for the reviewer to read and even maintain.
We have now changed the vignette to stay within the 80 column width limit.
- Include an installation section that uses
BiocManager
to demo how the package would be installed (see Bioconductor landing pages for examples).
Included
- Avoid direct download of resources (e.g., from the Broad) within the vignette and even package code (if any).
These have been removed and instead small example files are included in the inst/extdata
folder as suggested-
- Place small illustrative data formats in the
inst/extdata
folder
Included
- Add a
sessionInfo
section to the end of the vignette (before References)
Included
R
- The first two conditions in
checkInferenceEngine
are the same. Perhaps you meant to add a different method (centroidHomFold
)?
This has now been corrected, thanks
- Use double vertical bars
||
to ensure that conditions on either side evaluate to length 1 (R/ncRNAtools_checkInputFunction:L#32
).
Changed
- I would recommend that you keep warnings and error messages as brief as possible and within the default R width (
getOption("width") == 80
).
Messages have now been wrapped with strwrap
, which should automatically wrap them to 0.9 * getOption("width")
. Please let us know if this would be a better solution.
- Use
globalVariables
function to avoid usingVar1 <- NULL
in every plotting function.
Due to the removal of the melt
function from reshape2
, these variables can now be explicitly named with more informative names (nucleotide1
, nucleotide2
and probability
). We have now included globalVariables(c("nucleotide1", "nucleotide2", "probability"))
in R/ncRNAtools_variableDefinitions.R
- Avoid saving plots for the user. Remove
filename
argument. The user should be able to callggsave
themselves with the return of your function.
This has been removed from plotting functions
- Use the alpha-numeric regex class to match numbers and letters
[[:alnum:]]
We have now introduced [:alnum:]
or [:digit:]
where possible
- Good use of
GRanges
Thanks!
- Avoid using
sapply
. Use eitherlapply
orvapply
if the return is predictable.
We have now removed all occurrences of sapply
.
- Format the code so that it fits the 80 character width limit where possible.
We have now tried to format the code to fit into the 80 character width limit as much as possible. We believe splitting the remaining lines into smaller lines could make code readability worse. Would be fine to keep it in this way? Otherwise, we can split the remaining lines as well
- (optional) Create helper functions for repetitive operations, for example
function(x, text) { unlist(strsplit(x, text)) }
Thanks! splitString
and removeNewLines
have now been defined for such repetitive operations
- Avoid downloading data in the examples (see vignette section above)
Changed
- It would be good to have more unit tests in the package.
We have now added unit tests for all exported functions except writeCT
and writeDotBracket
, which are used to write files. Would these be enough? Otherwise, we would be happy to add additional tests
Minor:
- To avoid the 'cyclomatic' complexity, use strategies that save you space (e.g.,
match(method, c("centroidFold", "centroidHomFold", "IPknot"))
inR/ncRNAtools_otherSupportFunctions.R:L#4-12
)
Thanks! We have implemented this.
- Avoid using all the letters in the alphabet by doing
A-Z
inside the regex or using regex classes.
Changed
- Use 4 space indentation
We have checked how the code would look like with 4 space indentation instead of the current general 2 space indentation, and we believe that, due to the frequent occurrence of multiple nested function calls, this might make code readability worse. However, if you believe it might still be desirable to use 4 space indentation, we can certainly modify the package.
Thanks a lot in advance!
Best wishes,
Lara
Hi Lara, @LaraSellesVidal
In its current version, there are no functionalities in ncRNAtools that relate to alignments of sequences or subsetting sequences. However, the package could be easily modified to accept RNAString and DNAString objects, in addition to plain strings. Let us know if you think this would be an useful addition and we will perform the required changes!
Yes, if possible integrate with Biostrings
. You will be able to implement
this feature after it is added to the Bioc-git repository.
We have included Suggests: RUnit, BiocGenerics as instructed at http://bioconductor.org/developers/how-to/unitTesting-guidelines/ in order to perform unit tests. Would there be another preferred way to do this?
Sounds good! Sorry I wasn't aware of this alternative method.
Dependency on rvest was based on its html_text function to parse the HTML content of a query response. After checking in detail, this seems to be just a wrapper for xml_text from xml2. We have now changed our code to use directly xml_text, and included xml2 as a dependency. This leads to importing only xml2, instead of rvest and xml2 as was previously the case. Would this be fine?
Yes, this is perfect.
We have now tried to format the code to fit into the 80 character width limit as much as possible. We believe splitting the remaining lines into smaller lines could make code readability worse. Would be fine to keep it in this way? Otherwise, we can split the remaining lines as well
Yes, this is fine. There are some instances where this is not readily possible, for example, URLs in RMarkdown files.
We have now added unit tests for all exported functions except writeCT and writeDotBracket, which are used to write files. Would these be enough? Otherwise, we would be happy to add additional tests
You are welcome to add more tests. In an ideal scenario, all functions would have accompanying tests.
We have checked how the code would look like with 4 space indentation instead of the current general 2 space indentation, and we believe that, due to the frequent occurrence of multiple nested function calls, this might make code readability worse. However, if you believe it might still be desirable to use 4 space indentation, we can certainly modify the package.
I don't think it would make readability worse. Perhaps you could un-nest function calls by creating intermediate steps, but this is a minor issue.
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!
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/LaraSellesVidal.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("ncRNAtools")
. The package 'landing page' will be created at
https://bioconductor.org/packages/ncRNAtools
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.
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.