Bioconductor / Contributions

Contribute Packages to Bioconductor
131 stars 33 forks source link

gatom #3170

Closed assaron closed 8 months ago

assaron commented 9 months 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.

bioc-issue-bot commented 9 months ago

Hi @assaron

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: gatom
Title: Finding an Active Metabolic Module in Atom Transition Network
Version: 0.99.0
Authors@R: 
    c(
    person("Anastasiia", "Gainullina", role = c("aut")),
    person("Mariia", "Emelianova", role = c("aut")),
    person("Alexey", "Sergushichev", email = "alsergbox@gmail.com", role = c("aut", "cre")))
Description: This package implements a metabolic network analysis pipeline to 
    identify an active metabolic module based on high throughput data. 
    The pipeline takes as input transcriptional and/or metabolic data 
    and finds a metabolic subnetwork (module) most regulated between the two 
    conditions of interest. The package further provides functions for module 
    post-processing, annotation and visualization.
biocViews: GeneExpression, DifferentialExpression, Pathways, Network
Depends:
    R (>= 4.3.0)
Imports:
    data.table,
    igraph,
    BioNet,
    plyr,
    methods,
    XML,
    sna,
    intergraph,
    network,
    GGally,
    grid,
    ggplot2,
    mwcsr,
    pryr,
    htmlwidgets,
    htmltools,
    shinyCyJS
Suggests:
    testthat,
    knitr,
    rmarkdown,
    KEGGREST,
    AnnotationDbi,
    org.Mm.eg.db,
    reactome.db,
    fgsea,
    readr,
    BiocStyle,
    R.utils
License: MIT + file LICENCE
Encoding: UTF-8
LazyData: true
RoxygenNote: 7.2.3
VignetteBuilder: knitr
URL: https://github.com/ctlab/gatom/
BugReports: https://github.com/ctlab/gatom/issues
bioc-issue-bot commented 9 months ago

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

bioc-issue-bot commented 9 months ago

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, 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.

The following are build products from R CMD build on the Bioconductor Build System: macOS 12.6.5 Monterey: gatom_0.99.0.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/gatom to trigger a new build. A quick tutorial for setting up remotes and pushing to upstream can be found here.

bioc-issue-bot commented 9 months ago

A reviewer has been assigned to your package for an indepth review. Please respond accordingly to any further comments from the reviewer.

bioc-issue-bot commented 9 months ago

Received a valid push on git.bioconductor.org; starting a build for commit id: 225fb9d89580da6434fc8e1f4f9cf7aab48f306e

bioc-issue-bot commented 9 months ago

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): gatom_0.99.1.tar.gz macOS 12.6.5 Monterey: gatom_0.99.1.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/gatom to trigger a new build. A quick tutorial for setting up remotes and pushing to upstream can be found here.

lshep commented 9 months ago

Thank you for your submission. Please see some initial comments:

data and data-raw

inst

man

vignette

Please make updates and push changes. When ready please comment here on updates.

bioc-issue-bot commented 9 months ago

Received a valid push on git.bioconductor.org; starting a build for commit id: b59259c944421bce38b097712d716abda71f15f9

bioc-issue-bot commented 9 months ago

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): gatom_0.99.2.tar.gz macOS 12.6.5 Monterey: gatom_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/gatom to trigger a new build. A quick tutorial for setting up remotes and pushing to upstream can be found here.

bioc-issue-bot commented 9 months ago

Received a valid push on git.bioconductor.org; starting a build for commit id: 0e4fdf624316e23600f55be5699a1bca0dfa2c09

bioc-issue-bot commented 9 months ago

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): gatom_0.99.3.tar.gz macOS 12.6.5 Monterey: gatom_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/gatom to trigger a new build. A quick tutorial for setting up remotes and pushing to upstream can be found here.

assaron commented 9 months ago

@lshep thank you for the comments, we've updated the package to address them.

data-raw isn't a standard top level directory. Normally we encourage scripts that create data to be in a directory inst/scripts

We've moved these files into inst/scripts directory.

inst is a bit messy. Please have inst/scripts and inst/extdata. There should also be a file that describes how the data in inst/extdata is created. Where are these files used? I see only a reference to mets2mask.lst in the package.

We've added inst/scripts and inst/extdata folders. We removed all of the unused files.

We recommend a package level man page that gets naive users started if they did ?gatom

We've added a package level man page.

The data man pages say to reference data-raw/example.R but then the start simply downloads more data from an external source that doesn't explain how or where those starter files are generated. Are they raw output from instrumentations? Are they results from running a different package pipeline? Are they generated with a file that is in inst/extdata?

We've added more comments and references in the example.R file. Hopefully it should be more clear now. There are three groups of files: differential analysis tables we've taken from our previous publications, network files are generated with a separate pipeline (https://github.com/ctlab/KEGG-network-pipeline), and organism-specific object is generated using make_annotations.R script.

Please include a abstract/intro section in your vignette that provides motivation for inclusion in Bioconductor and when appropriate a review and comparison to existing Bioconductor packages with similar functionality or scope.

We've added a few introduction paragraphs with references to the examples of the pipeline usage.

Overall can there be more text describing what is being done and why at each step?

We've expanded vignette descriptions with more detailed steps and more references.

What does the set.seed control when you use it in the vignette before the shiny app?

Graph layout is randomly initialized, so we used set.seed() to make it more reproducible. However, the final layout depends on the user interface parameters and it's probably more confusing then helpful, so we removed it.

When I try to run createShinyCyJSWidget(m) I get a file not found /tmp/RtmpgLnBdn/viewhtml8b92a7b4629/index.html And this is true for trying to run any of the subsequent calls to createShinyCyJSWidget

We had a similar problem at some point, but it was resolved somehow. Also the vignette appears to be correctly rendered on the Bioconductor servers (there are no problems in the html files included in the generated package archives). If you still have the problem, can you please provide more details on the steps you are doing, along with your session info?

When showing saving or writing functions, it should use a tempdir()

We've added tempdir() usage for these examples.

lshep commented 8 months ago

Bioconductor servers would not be running or testing the shiny apps as its not interactive. And yes I continue to have this issue when trying to run the shiny function createShinyCyJSWidget(m) . Step by step of what I am doing is running any code displayed in your vignette.

> sessionInfo()
R version 4.3.1 Patched (2023-08-28 r85034)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 22.04.3 LTS

Matrix products: default
BLAS:   /home/lorikern/R-Installs/bin/R-4-3-branch/lib/libRblas.so 
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

time zone: America/New_York
tzcode source: system (glibc)

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] mwcsr_0.1.7         igraph_1.5.1        data.table_1.14.8  
[4] gatom_0.99.3        praise_1.0.0        BiocManager_1.30.22

loaded via a namespace (and not attached):
 [1] KEGGREST_1.41.4         gtable_0.3.4            ggplot2_3.4.4          
 [4] htmlwidgets_1.6.2       Biobase_2.61.0          GGally_2.1.2           
 [7] vctrs_0.6.4             tools_4.3.1             bitops_1.0-7           
[10] generics_0.1.3          stats4_4.3.1            tibble_3.2.1           
[13] fansi_1.0.5             AnnotationDbi_1.63.2    RSQLite_2.3.1          
[16] blob_1.2.4              pkgconfig_2.0.3         pryr_0.1.6             
[19] RColorBrewer_1.1-3      S4Vectors_0.39.3        lifecycle_1.0.3        
[22] GenomeInfoDbData_1.2.11 compiler_4.3.1          stringr_1.5.0          
[25] Biostrings_2.69.2       munsell_0.5.0           codetools_0.2-19       
[28] GenomeInfoDb_1.37.6     htmltools_0.5.6.1       yaml_2.3.7             
[31] RCurl_1.98-1.12         pillar_1.9.0            crayon_1.5.2           
[34] ellipsis_0.3.2          cachem_1.0.8            BioNet_1.61.0          
[37] shinyCyJS_1.0.0         tidyselect_1.2.0        digest_0.6.33          
[40] stringi_1.7.12          dplyr_1.1.3             fastmap_1.1.1          
[43] grid_4.3.1              colorspace_2.1-0        cli_3.6.1              
[46] magrittr_2.0.3          XML_3.99-0.14           utf8_1.2.3             
[49] scales_1.2.1            bit64_4.0.5             XVector_0.41.1         
[52] httr_1.4.7              bit_4.0.5               png_0.1-8              
[55] memoise_2.0.1           IRanges_2.35.3          rlang_1.1.1            
[58] Rcpp_1.0.11             glue_1.6.2              DBI_1.1.3              
[61] BiocGenerics_0.47.0     jsonlite_1.8.7          reshape_0.8.9          
[64] R6_2.5.1                plyr_1.8.9              zlibbioc_1.47.0        
assaron commented 8 months ago

@lshep Just to clarify createShinyCyJSWidget produces not an interactive shiny app, but an interactive html. So as long as the html is correctly generated it should be OK, whether it's a Bioconductor server or an interactive session. That's what I meant when I was talking about an vignette successfully rendered on Bioconductor server: you can open it locally and there will be an interactive widget with a graph. Here is an example of the rendered vignette: https://rpubs.com/asergushichev/gatom-tutorial - it doesn't depend on R environment after it's rendered.

That said, it's still strange that you have this problem. I'm sorry, but I have to ask you for more details, as we can't reproduce it on our side yet (we've tried several people and several machines):

1) Are you using RStudio for running? What version it is?

2) If instead of using the widget function you run saveModuleToHtml(m, file="m.html", name = "module") and open the resulting m.html, is there a graph displayed correctly?

3) Does html widgets works in your environment? For example, can you install a simple boxly package (https://cran.r-project.org/package=boxly) and run the functions from it's vignette (https://cran.r-project.org/web/packages/boxly/vignettes/boxly-cran.html)? Does it produce an interactive widget for you?

4) If you render the vignette as a whole (either with Knit button in RStudio or, preferably, with rmarkdown::render("vignettes/gatom-tutorial.Rmd")) do you have the graphs correctly displayed (similar to how they are displayed in https://rpubs.com/asergushichev/gatom-tutorial?

lshep commented 8 months ago

I don't get anything. I get a file not found error again when I run it as before

I am not using Rstudio. I run R on a terminal and provided the sessionInfo above.

Yes if I do saveModuleToHtml(m, file="m.html", name = "module") and open the file saved in a web browser, that does work.

No I also cannot run the vignette for boxly. But then if something else needs to be installed for things to work correctly they should be specified.

assaron commented 8 months ago

Thank you, that clarifies things a bit! It still works for us though, even in the bare R. We have the following behavior: calling createShinyCyJSWidget leads to a new tab opening in a web-browser with an URL of the form file:///tmp/RtmpkOk9l6/viewhtml116420782e7b65/index.html.

  1. At which stage do you have 404 error? Is it in the browser? Or the browser is not opening for you at all, and the error is in R terminal?

  2. When you have 404 error, can you actually check, whether the file exists at your machine? If yes can you open it in a browser (before finishing R session)?

  3. Does browseURL function work for you? For example, what happens if you first save module html with saveModuleToHtml(m, file="m.html", name = "module") and then open the resulting file with browseURL("m.html")?

lshep commented 8 months ago
  1. It is in the browser that I get the file not found error.
  2. The file does exist. If I do firefox index.html on the file it gives file not found. If I open the file with google-chrome index.html it works.
  3. saving the file and then opening in browseURL works (and opens in firefox)
assaron commented 8 months ago

I'm not sure what to do in this case. It seems it depends on some kind of system configuration, but I'm not sure what exactly should be done, or how to mention this in the documentation.

On Mon, Oct 16, 2023, 11:58 lshep @.***> wrote:

  1. It is in the browser that I get the file not found error.
  2. The file does exist. If I do firefox index.html on the file it gives file not found. If I open the file with google-chrome index.html it works.
  3. saving the file and then opening in browseURL works (and opens in firefox)

— Reply to this email directly, view it on GitHub https://github.com/Bioconductor/Contributions/issues/3170#issuecomment-1764897212, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAH56WJRZYQIQEVBDYSKORDX7VRR3AVCNFSM6AAAAAA5J2DBLSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONRUHA4TOMRRGI . You are receiving this because you were mentioned.Message ID: @.***>

lshep commented 8 months ago

Sounds good. I agree this shouldn't hold up since it seems a configuration issue but good to know in case others encounter and at least there seems to be some workarounds. I'm okay with accepting

bioc-issue-bot commented 8 months ago

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.

assaron commented 8 months ago

@lshep thank you for your comments!

Regarding the issue, actually I think I know what could be the problem. Apparently there is an issue that Firefox installed using snap can't open files from /tmp folder: https://support.mozilla.org/en-US/questions/1377872 and https://bugs.launchpad.net/snapd/+bug/1972762 I think we'll just add recommendation to use these interactive widgets with RStudio or in markdown files.

lshep commented 8 months ago

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/assaron.keys is not empty), then no further steps are required. Otherwise, do the following:

  1. Add an SSH key to your github account
  2. Submit your SSH key to Bioconductor

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("gatom"). The package 'landing page' will be created at

https://bioconductor.org/packages/gatom

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.