Closed dunstone-a closed 1 year ago
Hi @dunstone-a
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: QTLExperiment
Type: Package
Date: 2022-11-08
Title: S4 classes for QTL summary statistics and metadata
Version: 0.99.0
Authors@R: c(
person("Christina", "Del Azodi", role=c("aut"), email="cazodi@svi.edu.au"),
person("Davis","McCarthy", role=c("ctb"), email="dmccarthy@svi.edu.au"),
person("Amelia","Dunstone", role=c("cre", "ctb"), email="amelia.dunstone@svi.edu.au", comment=c(ORCID="0009-0009-6426-1529")))
License: GPL-3
Encoding: UTF-8
Depends:
SummarizedExperiment
Imports:
methods,
rlang,
checkmate,
dplyr,
collapse,
vroom,
tidyr,
tibble,
utils,
stats,
ashr,
S4Vectors,
BiocGenerics
Suggests:
testthat,
BiocStyle,
knitr,
rmarkdown,
covr
Description: QLTExperiment defines an S4 class for storing and manipulating summary statistics from QTL mapping experiments in one or more states.
It is based on the 'SummarizedExperiment' class and contains functions for creating, merging, and subsetting objects.
'QTLExperiment' also stores experiment metadata and has checks in place to ensure that transformations apply correctly.
biocViews: FunctionalGenomics, DataImport, DataRepresentation, Infrastructure, Sequencing, SNP, Software
VignetteBuilder: knitr
RoxygenNote: 7.2.3
In your vignette you are pulling example data directly from github ebi <- read.csv("https://raw.githubusercontent.com/eQTL-Catalogue/eQTL-Catalogue-resources/master/data_tables/dataset_metadata.tsv", sep = "\t")
. This smaller subset of data should be included in the package as we do not allow download of external data from github.
Hi @lshep , thanks for this. I have now updated the package so that the relevant data is included in the folder inst/extdata
. There is a script in inst/script
that downloads the data from the EBI database and saves 4 data files which are used in the vignette, tests, and examples.
Your package has been added to git.bioconductor.org to continue the pre-review process. A build report will be posted shortly. Please fix any ERROR and WARNING in the build report before a reviewer is assigned or provide a justification on why you feel the ERROR or WARNING should be granted an exception.
IMPORTANT: Please read this documentation for setting up remotes to push to git.bioconductor.org. All changes should be pushed to git.bioconductor.org moving forward. It is required to push a version bump to git.bioconductor.org to trigger a new build report.
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 the Bioconductor Build System.
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.
The following are build products from R CMD build on the Bioconductor Build System: Linux (Ubuntu 22.04.2 LTS): QTLExperiment_0.99.2.tar.gz macOS 12.6.5 Monterey: QTLExperiment_0.99.2.tar.gz
Links above 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/QTLExperiment
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
A reviewer has been assigned to your package for an indepth review. Please respond accordingly to any further comments from the reviewer.
Received a valid push on git.bioconductor.org; starting a build for commit id: eb66ecd3f81dec90de4becb24a77252a21832409
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on the Bioconductor Build System.
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.
The following are build products from R CMD build on the Bioconductor Build System: Linux (Ubuntu 22.04.2 LTS): QTLExperiment_0.99.3.tar.gz macOS 12.6.5 Monterey: QTLExperiment_0.99.3.tar.gz
Links above 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/QTLExperiment
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Quick round of initial comments to get the ball rolling... please comment back with what has/has not been addressed, or anything you would like to discuss/more details on; thanks!
majorish
QTLExperiment
object for standard analyses, but I notice that the following operations pass without issues, and make rowData
, int_rowData
, and rownames
appear out of synch (though the latter is anyways optional, I guess). Would this cause downstream operations to break? Would it be worth considering to revise any replacement method(s)? I think my confusion comes from the fact that I am reading the word "protected" here and there, but don't see this being implemented# run `QTLExperiment` example to obtain
qtle <- ...
# both of these work/don't affect anything else
# so that things appear out of synch afterwards
rowData(qtle)$feature_id <- sample(rowData(qtle)$feature_id)
int_rowData(qtle)$.feature_id <- sample(int_rowData(qtle)$.feature_id)
# similarly, this works
rowData(qtle) <- NULL
int_rowData(qtle) <- DataFrame()
minor
[ ] in the README, please update Bioc installation instructions (i.e., how to install the package - not its dependencies - using BiocManager::install()
)
[ ] in the vignette, please also update installation instructions to use BiocManager::install()
[ ] in the vignette, considering using BiocStyle
functions to directly hyperlink external packages, e.g., r BiocStyle::Biocpkg("SummarizedExperiment")
(there are analogous functions for packages hosten through CRAN, GitHub etc.)
[ ] unit test coverage is ok, but might be worth improving (devtools::test_coverage()
gives me 60%, mostly due to missing tests for qtle_internals.R)
[ ] in the NEWS, remember to keep track of changes, in non-technical language, in the code from one version to the next
[ ] in the DESCRIPTION, consider adding URL:
and BugReports:
fields pointing to https://github.com/dunstone-a/QTLExperiment and .../issues, respectively
[ ] BiocCheck()
WARNING: missing value sections (roxygen tag #' @return
) for assays.Rd, internals.Rd and miscellaneous.Rd
[ ] I understand coding styles are a personal thing, but we (inspired by Hadley Wickham, I think) recommend 4-space tab indentation vs. vertical alignment, and spaces around assignment and logical operators, but not equality signs as used for arguments; this makes the code a lot easier to read by producing less unnecessary white space (see here for details) ...especially in the vignette, which is typically displayed online in HTML format, adhering to this style consistently makes things a little easier to grasp
Received a valid push on git.bioconductor.org; starting a build for commit id: 0d7079ba0d86982ef884234a1ef688e67559a538
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on the Bioconductor Build System.
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.
The following are build products from R CMD build on the Bioconductor Build System: macOS 12.6.5 Monterey: QTLExperiment_0.99.4.tar.gz Linux (Ubuntu 22.04.2 LTS): QTLExperiment_0.99.4.tar.gz
Links above 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/QTLExperiment
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: 773ac0c3ff2f8c485a922611ebf9780cd3f23865
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on the Bioconductor Build System.
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.
The following are build products from R CMD build on the Bioconductor Build System: Linux (Ubuntu 22.04.2 LTS): QTLExperiment_0.99.5.tar.gz macOS 12.6.5 Monterey: QTLExperiment_0.99.5.tar.gz
Links above 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/QTLExperiment
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Thank you for your comments @HelenaLC ! Really appreciate you looking into this.
admittedly not 100% sure about what is fixed/flexible in a given QTLExperiment object for standard analyses, but I notice that the following operations pass without issues, and make rowData, int_rowData, and rownames appear out of synch (though the latter is anyways optional, I guess). Would this cause downstream operations to break? Would it be worth considering to revise any replacement method(s)? I think my confusion comes from the fact that I am reading the word "protected" here and there, but don't see this being implemented
It is intended that feature_id, state_id and variant_id are modified through the specal setters feature_id()
, state_id()
and variant_id()
. As you point out, if these fields are altered manually then it can lead to inconsistencies between the rownames and the rowData(), which is definitely not ideal. This is talked about a little in the section "Manually syncing metadata" in the vignette. The function recover_qtle_ids
can be used if rowData becomes out of sync, by replacing colData and rowData with the internal versions of these (which should not be altered by the end user).
It would be nice if the following were equivalent:
rowData(qtle)$feature_id <- sample(rowData(qtle)$feature_id)
feature_id(qtle) <- sample(rowData(qtle)$feature_id)
But as it is currently, feature_id will only be properly changed using the dedicated setter. I will look to implement this in the future as it does affect functions in the additional package multistateQTL (to be submitted next round of Bioconductor).
in the README, please update Bioc installation instructions (i.e., how to install the package - not its dependencies - using BiocManager::install()) in the vignette, please also update installation instructions to use BiocManager::install()
The installation instructions for both have been updated to use Bioconductor.
in the vignette, considering using BiocStyle functions to directly hyperlink external packages, e.g., r BiocStyle::Biocpkg("SummarizedExperiment") (there are analogous functions for packages hosted through CRAN, GitHub etc.)
I have hyperlinked to SummarizedExperiment and vroom using Biocpkg and CRANpkg.
unit test coverage is ok, but might be worth improving (devtools::test_coverage() gives me 60%, mostly due to missing tests for qtle_internals.R)
I've added some tests for the internal functions but will also add more tomorrow.
in the NEWS, remember to keep track of changes, in non-technical language, in the code from one version to the next
I have started the NEWS file and will add to this with changes relevant to the operation of the package.
in the DESCRIPTION, consider adding URL: and BugReports: fields pointing to https://github.com/dunstone-a/QTLExperiment and .../issues, respectively
Added to the description.
BiocCheck() WARNING: missing value sections (roxygen tag #' @return) for assays.Rd, internals.Rd and miscellaneous.Rd
I have split up the "Miscellaneous" documentation file into two files, one for the object version information and one for the name of the object. Hopefully this will be a bit clearer.
I have added a return section for the remaining documentation pages now, in version 0.99.6.
I understand coding styles are a personal thing, but we (inspired by Hadley Wickham, I think) recommend 4-space tab indentation vs. vertical alignment, and spaces around assignment and logical operators, but not equality signs as used for arguments; this makes the code a lot easier to read by producing less unnecessary white space (see here for details)
I have removed spaces around the equality signs in arguments. As for vertical alignment vs 4 spaces, should I switch to B or C below?
# A: what I was doing
input <- data.frame(state=state,
path=paste0(input_path, "/GTEx_tx_", state, ".tsv"))
# B:
input <- data.frame(state=state,
path=paste0(input_path, "/GTEx_tx_", state, ".tsv"))
# C:
input <- data.frame(
state=state,
path=paste0(input_path, "/GTEx_tx_", state, ".tsv"))
Also not sure what is best for cases with two or more levels, e.g.
new_colData <- DataFrame(list(some_info1=LETTERS[1:ncol(qtle4)],
some_info2=c(1:ncol(qtle4))))
Thanks, Amelia
Received a valid push on git.bioconductor.org; starting a build for commit id: f0b351a2ebaf116ad35c4c9160716f4b0fe83b6d
Dear Package contributor,
This is the automated single package builder at bioconductor.org.
Your package has been built on the Bioconductor Build System.
Congratulations! The package built without errors or warnings on all platforms.
Please see the build report for more details.
The following are build products from R CMD build on the Bioconductor Build System: Linux (Ubuntu 22.04.2 LTS): QTLExperiment_0.99.6.tar.gz macOS 12.6.5 Monterey: QTLExperiment_0.99.6.tar.gz
Links above 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/QTLExperiment
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Thanks for addressing earlier comments - all looks in order to me now (regarding strikt Bioc requirements); just leaving these comments for your information/something to consider in the future perhaps (especially the last one!):
(
...)rowData<-
: Yeah, I agree that this should definitely be addressed in the future. You mentioned that "ideally this should be the same", and it can be! The idea behind implementing an S4 class that inherits from another is that you can control specific requirements for your class, e.g., implementing a custom rowData<-
replacement method. See for example SpatialExperiment
where this is done to assure sample_id
s adhere to certain requirements. I encourage trying to come up with a more robust solution here then "let the user figure it out or, well, bad luck and things just go out of things" ;) Your package has been accepted. It will be added to the Bioconductor nightly builds.
Thank you for contributing to Bioconductor!
Reviewers for Bioconductor packages are volunteers from the Bioconductor community. If you are interested in becoming a Bioconductor package reviewer, please see Reviewers Expectations.
The default branch of your GitHub repository has been added to Bioconductor's git repository as branch devel.
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/dunstone-a.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("QTLExperiment")
. The package 'landing page' will be created at
https://bioconductor.org/packages/QTLExperiment
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 Bioconductor Package Naming Policy and acknowledge Bioconductor may retain use of package name.
[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 questions/help about the submission process, including questions about the output of the automatic reports generated by the SPB (Single Package Builder), please use the #package-submission channel of our Community Slack. Follow the link on the home page of the Bioconductor website to sign up.