Bioconductor / Contributions

Contribute Packages to Bioconductor
134 stars 33 forks source link

(inactive) CITEViz #2738

Closed gartician closed 1 year ago

gartician commented 2 years ago

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]'

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.

PeteHaitch commented 1 year ago

Hi @gartician,

Thank you making the changes to CITEViz following the pre-review comments. The interoperability with SingleCellExperiment requirement is great to have and, overall, I now find the app much simpler to try out and use.

For acceptance into Bioconductor, there are a number of Required points, as well as Recommended points, that I would ask you to first please address. Would you please provide line-by-line comments to my initial review so that I know what changes I'm looking for in my re-review.

Cheers, Pete

Required

# Error without Seurat loaded/attached.
suppressPackageStartupMessages(library(ExperimentHub))
eh <- ExperimentHub()
#> snapshotDate(): 2022-11-21
# Download and load the Seurat-formatted object.
eh[["EH7739"]]
#> see ?CITEVizTestData and browseVignettes('CITEVizTestData') for documentation
#> loading from cache
#> require("SeuratObject")
#> Loading required package: Seurat
#> Error: package or namespace load failed for 'Seurat' in .doLoadActions(where, attach):
#>  error in load action .__A__.1 for package RcppAnnoy: loadModule(module = "AnnoyAngular", what = TRUE, env = ns, loadNow = TRUE): Unable to load module "AnnoyAngular": attempt to apply non-function
#> Error: failed to load resource
#>   name: EH7739
#>   title: CITEVizTestDataSeurat
#>   reason: unable to find required package 'Seurat'

Created on 2022-11-22 with reprex v2.0.2

Session info ``` r sessionInfo() #> R Under development (unstable) (2022-11-18 r83369) #> Platform: x86_64-apple-darwin17.0 (64-bit) #> Running under: macOS Big Sur ... 10.16 #> #> Matrix products: default #> BLAS: /Library/Frameworks/R.framework/Versions/4.3/Resources/lib/libRblas.0.dylib #> LAPACK: /Library/Frameworks/R.framework/Versions/4.3/Resources/lib/libRlapack.dylib #> #> locale: #> [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 #> #> time zone: Australia/Melbourne #> tzcode source: internal #> #> attached base packages: #> [1] stats graphics grDevices utils datasets methods base #> #> other attached packages: #> [1] SeuratObject_4.1.3 sp_1.5-1 CITEVizTestData_0.99.4 #> [4] ExperimentHub_2.7.0 AnnotationHub_3.7.0 BiocFileCache_2.7.0 #> [7] dbplyr_2.2.1 BiocGenerics_0.45.0 #> #> loaded via a namespace (and not attached): #> [1] tidyselect_1.2.0 dplyr_1.0.10 #> [3] blob_1.2.3 filelock_1.0.2 #> [5] Biostrings_2.67.0 bitops_1.0-7 #> [7] fastmap_1.1.0 RCurl_1.98-1.9 #> [9] RANN_2.6.1 promises_1.2.0.1 #> [11] reprex_2.0.2 digest_0.6.30 #> [13] mime_0.12 lifecycle_1.0.3 #> [15] ellipsis_0.3.2 KEGGREST_1.39.0 #> [17] interactiveDisplayBase_1.37.0 RSQLite_2.2.18 #> [19] ROCR_1.0-11 magrittr_2.0.3 #> [21] compiler_4.3.0 rlang_1.0.6 #> [23] tools_4.3.0 utf8_1.2.2 #> [25] yaml_2.3.6 knitr_1.41 #> [27] bit_4.0.5 curl_4.3.3 #> [29] RColorBrewer_1.1-3 KernSmooth_2.23-20 #> [31] withr_2.5.0 purrr_0.3.5 #> [33] grid_4.3.0 stats4_4.3.0 #> [35] fansi_1.0.3 xtable_1.8-4 #> [37] future_1.29.0 progressr_0.11.0 #> [39] MASS_7.3-58.1 globals_0.16.2 #> [41] cli_3.4.1 rmarkdown_2.18 #> [43] crayon_1.5.2 generics_0.1.3 #> [45] future.apply_1.10.0 rstudioapi_0.14 #> [47] httr_1.4.4 DBI_1.1.3 #> [49] cachem_1.0.6 stringr_1.4.1 #> [51] zlibbioc_1.45.0 parallel_4.3.0 #> [53] assertthat_0.2.1 AnnotationDbi_1.61.0 #> [55] BiocManager_1.30.19 XVector_0.39.0 #> [57] vctrs_0.5.1 Matrix_1.5-3 #> [59] IRanges_2.33.0 S4Vectors_0.37.0 #> [61] bit64_4.0.5 listenv_0.8.0 #> [63] parallelly_1.32.1 glue_1.6.2 #> [65] codetools_0.2-18 stringi_1.7.8 #> [67] BiocVersion_3.17.1 later_1.3.0 #> [69] GenomeInfoDb_1.35.5 tibble_3.1.8 #> [71] pillar_1.8.1 rappdirs_0.3.3 #> [73] htmltools_0.5.3 GenomeInfoDbData_1.2.9 #> [75] R6_2.5.1 evaluate_0.18 #> [77] shiny_1.7.3 Biobase_2.59.0 #> [79] lattice_0.20-45 highr_0.9 #> [81] png_0.1-7 memoise_2.0.1 #> [83] httpuv_1.6.6 Rcpp_1.0.9 #> [85] xfun_0.35 fs_1.5.2 #> [87] pkgconfig_2.0.3 ```
# Things work fine if Seurat is loaded/attached.
suppressPackageStartupMessages(library(ExperimentHub))
suppressPackageStartupMessages(library(Seurat))
eh <- ExperimentHub()
#> snapshotDate(): 2022-11-21
# Download and load the Seurat-formatted object.
eh[["EH7739"]]
#> see ?CITEVizTestData and browseVignettes('CITEVizTestData') for documentation
#> loading from cache
#> An object of class Seurat 
#> 20957 features across 2500 samples within 2 assays 
#> Active assay: SCT (20729 features, 5000 variable features)
#>  1 other assay present: ADT
#>  6 dimensional reductions calculated: apca, aumap, pca, spca, umap, wnn.umap

Created on 2022-11-22 with reprex v2.0.2

Session info ``` r sessionInfo() #> R Under development (unstable) (2022-11-18 r83369) #> Platform: x86_64-apple-darwin17.0 (64-bit) #> Running under: macOS Big Sur ... 10.16 #> #> Matrix products: default #> BLAS: /Library/Frameworks/R.framework/Versions/4.3/Resources/lib/libRblas.0.dylib #> LAPACK: /Library/Frameworks/R.framework/Versions/4.3/Resources/lib/libRlapack.dylib #> #> locale: #> [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 #> #> time zone: Australia/Melbourne #> tzcode source: internal #> #> attached base packages: #> [1] stats graphics grDevices utils datasets methods base #> #> other attached packages: #> [1] CITEVizTestData_0.99.4 SeuratObject_4.1.3 Seurat_4.3.0 #> [4] ExperimentHub_2.7.0 AnnotationHub_3.7.0 BiocFileCache_2.7.0 #> [7] dbplyr_2.2.1 BiocGenerics_0.45.0 #> #> loaded via a namespace (and not attached): #> [1] RColorBrewer_1.1-3 rstudioapi_0.14 #> [3] jsonlite_1.8.3 magrittr_2.0.3 #> [5] spatstat.utils_3.0-1 rmarkdown_2.18 #> [7] fs_1.5.2 zlibbioc_1.45.0 #> [9] vctrs_0.5.1 ROCR_1.0-11 #> [11] spatstat.explore_3.0-5 memoise_2.0.1 #> [13] RCurl_1.98-1.9 htmltools_0.5.3 #> [15] curl_4.3.3 sctransform_0.3.5 #> [17] parallelly_1.32.1 KernSmooth_2.23-20 #> [19] htmlwidgets_1.5.4 ica_1.0-3 #> [21] plyr_1.8.8 plotly_4.10.1 #> [23] zoo_1.8-11 cachem_1.0.6 #> [25] igraph_1.3.5 mime_0.12 #> [27] lifecycle_1.0.3 pkgconfig_2.0.3 #> [29] Matrix_1.5-3 R6_2.5.1 #> [31] fastmap_1.1.0 GenomeInfoDbData_1.2.9 #> [33] fitdistrplus_1.1-8 future_1.29.0 #> [35] shiny_1.7.3 digest_0.6.30 #> [37] colorspace_2.0-3 patchwork_1.1.2 #> [39] AnnotationDbi_1.61.0 S4Vectors_0.37.0 #> [41] tensor_1.5 irlba_2.3.5.1 #> [43] RSQLite_2.2.18 filelock_1.0.2 #> [45] progressr_0.11.0 spatstat.sparse_3.0-0 #> [47] fansi_1.0.3 polyclip_1.10-4 #> [49] abind_1.4-5 httr_1.4.4 #> [51] compiler_4.3.0 bit64_4.0.5 #> [53] withr_2.5.0 DBI_1.1.3 #> [55] highr_0.9 MASS_7.3-58.1 #> [57] rappdirs_0.3.3 tools_4.3.0 #> [59] lmtest_0.9-40 interactiveDisplayBase_1.37.0 #> [61] httpuv_1.6.6 future.apply_1.10.0 #> [63] goftest_1.2-3 glue_1.6.2 #> [65] nlme_3.1-160 promises_1.2.0.1 #> [67] grid_4.3.0 Rtsne_0.16 #> [69] reshape2_1.4.4 cluster_2.1.4 #> [71] generics_0.1.3 spatstat.data_3.0-0 #> [73] gtable_0.3.1 tidyr_1.2.1 #> [75] data.table_1.14.6 sp_1.5-1 #> [77] utf8_1.2.2 XVector_0.39.0 #> [79] spatstat.geom_3.0-3 RcppAnnoy_0.0.20 #> [81] ggrepel_0.9.2 RANN_2.6.1 #> [83] BiocVersion_3.17.1 pillar_1.8.1 #> [85] stringr_1.4.1 later_1.3.0 #> [87] splines_4.3.0 dplyr_1.0.10 #> [89] lattice_0.20-45 deldir_1.0-6 #> [91] survival_3.4-0 bit_4.0.5 #> [93] tidyselect_1.2.0 Biostrings_2.67.0 #> [95] miniUI_0.1.1.1 pbapply_1.6-0 #> [97] knitr_1.41 gridExtra_2.3 #> [99] IRanges_2.33.0 scattermore_0.8 #> [101] stats4_4.3.0 xfun_0.35 #> [103] Biobase_2.59.0 matrixStats_0.63.0 #> [105] stringi_1.7.8 lazyeval_0.2.2 #> [107] yaml_2.3.6 evaluate_0.18 #> [109] codetools_0.2-18 tibble_3.1.8 #> [111] BiocManager_1.30.19 cli_3.4.1 #> [113] uwot_0.1.14 xtable_1.8-4 #> [115] reticulate_1.26 munsell_0.5.0 #> [117] Rcpp_1.0.9 GenomeInfoDb_1.35.5 #> [119] spatstat.random_3.0-1 globals_0.16.2 #> [121] png_0.1-7 parallel_4.3.0 #> [123] ellipsis_0.3.2 ggplot2_3.4.0 #> [125] assertthat_0.2.1 blob_1.2.3 #> [127] reprex_2.0.2 bitops_1.0-7 #> [129] listenv_0.8.0 viridisLite_0.4.1 #> [131] scales_1.2.1 ggridges_0.5.4 #> [133] leiden_0.4.3 purrr_0.3.5 #> [135] crayon_1.5.2 rlang_1.0.6 #> [137] cowplot_1.1.1 KEGGREST_1.39.0 ```

Recommended

PeteHaitch commented 1 year ago

Sorry, I previously forgot to include some Recommended points and have just added them to the above list.

PeteHaitch commented 1 year ago

Hi @gartician,

Do you intend to continue with this submission? We like to see some activity on the issue within 3 weeks. It's no problem if it's taking longer, but we will close the issue and you can re-open it when you are ready.

If you wish to procees, when you are ready with changes, simply comment back here that you would like the issue reopened.

Cheers, Pete

bioc-issue-bot commented 1 year ago

This issue is being closed because there has been no progress for an extended period of time. You may reopen the issue when you have the time to actively participate in the review / submission process. Please also keep in mind that a package accepted to Bioconductor requires a commitment on your part to ongoing maintenance.

Thank you for your interest in Bioconductor.

kevinrue commented 1 year ago

I hope I'm not re-opening this by commenting, but the notification reminded me that I was pinged.

Please include in the vignette a brief comparison to any other CRAN or Bioconductor-hosted packages that implement similar functionality. For example, and in particular, iSEE includes similar functionality to the 'Quality Assurance', 'Clustering', and 'Feature Expression' panels of CITEViz. However, CITEViz's raison d'etre, 'Classifying Cell Clusters in CITE-Seq Data using the Flow Cytometry Gating Workflow', is where CITEViz distinguishes itself, I think, both in terms of purpose and implementation. There is some basic gating functionality in iSEE (see https://www.bioconductor.org/packages/devel/bioc/vignettes/iSEE/inst/doc/links.html#22_Selection_effects) and the add-on iSEEu includes some more advanced gating functionality (see iSEEu::modeGating()), so some comparison to these would be good, but they don't seem as immediately powerful or smooth as what's available in CITEViz (although @kevinrue as developer of iSEE may well disagree with me :) ). In any case, the purpose of such a comparison is not about establishing superiority of one package over another, but to help a user navigate through the various options available to them.

I don't disagree. I actually fully agree with the motivation of the comment. iSEE does provide gating functionality, but since it was designed as a general-purpose tool rather than a cytometry-specific one, there are some design choices that prevent us from competing with the performance of specialised tools, no doubt about that.

Without asking excessive work from the author, I think it would be beneficial to the community and prospective users if the author could add "a brief comparison to other CRAN or Bioconductor-hosted packages that implement similar functionality", indeed.