Closed tanlabcode closed 2 years ago
Hi @tanlabcode
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: CytoTalk
Title: Signal Transduction Networks from scRNA-seq
Version: 0.99.0
Authors@R: c(
person("Yuxuan", "Hu",
role = c("aut"),
comment = c(ORCID = "0000-0002-8830-6893")),
person("Shane", "Drabing",
role = c("aut")),
person("Kai", "Tai",
role = c("cre"),
email = "tank1@chop.edu",
comment = c(ORCID = "0000-0002-9104-5567")))
Description: Perform de novo construction of signal transduction networks using
single-cell transcriptomic data (scRNA-seq). The CytoTalk process
constructs an integrated network of intra- and inter-cellular functional
gene interactions, generating useful graphical output for investigation of
cell-cell communication within and between cell types. CytoTalk attempts to
find the optimal subnetwork in the integrated network that includes genes
with high levels of cell-type-specific expression and close connection to
highly active ligand-receptor pairs. It takes into account metrics like as
Preferential Expression Measure (PEM), mutual information between proteins,
gene relevance, and non-self-talk score.
License: MIT + file LICENSE
Encoding: UTF-8
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.1.2
Imports:
DiagrammeR,
DiagrammeRsvg,
Matrix,
corpcor,
doParallel,
foreach,
infotheo,
parmigene,
reticulate,
tibble,
vroom
Suggests:
markdown,
knitr,
rmarkdown,
testthat (>= 3.0.0)
VignetteBuilder: knitr
biocViews: Software, SingleCell, GeneExpression, Network, Pathways
SystemRequirements:
Cytoscape,
Graphviz,
pcst_fast
Config/testthat/edition: 3
I have made changes regarding that issue.
Thank you. Very nice vignette. Now the question arises -- why is Bioconductor infrastructure for representation of single cell experiments not used? It seems that csv files are the main data representation. Please look at the SingleCellExperiment package and its vignettes for approaches to unifying data on features, samples and quantifications that are central to Bioconductor package/data interoperability.
I have not yet seen the SingleCellExperiment class, although we did work on trying to use Seurat objects with the package, those ended up being overkill. The SingleCellExperiment class does appear to be more in line with what CytoTalk requires, which we simply use a named list
where one item is a matrix
and another item is a vector
of the column names (cell types).
CytoTalk allows inputs beyond CSV, so the main data representation is rather the small named list mentioned above. Shall we convert that representation to the SingleCellExperiment?
For reference, if a user has a SingleCellExperiment, they would input data into CytoTalk as follows:
# extract list from SingleCellExperiment
lst_scrna <- CytoTalk:::new_named_list(logcounts(sce), colnames(sce))
# set required parameters
type_a <- "Fibroblasts"
type_b <- "LuminalEpithelialCells"
# run CytoTalk process
results <- CytoTalk::run_cytotalk(lst_scrna, type_a, type_b)
That's good. I'd be happy to give some more detailed recommendations but
> example(run_cytotalk)
rn_cyt> {
rn_cyt+ cell_type_a <- "Macrophages"
rn_cyt+ cell_type_b <- "LuminalEpithelialCells"
rn_cyt+ cutoff_a <- 0.8
rn_cyt+ cutoff_b <- 0.8
rn_cyt+ result <- CytoTalk::run_cytotalk(CytoTalk::scrna_cyto,
rn_cyt+ cell_type_a, cell_type_b,
rn_cyt+ cutoff_a, cutoff_b,
rn_cyt+ cores = 2)
rn_cyt+ }
[1 / 8] (13:27:52) Preprocessing...
Loading required package: Matrix
Error in expm1(mat_scrna) : non-numeric argument to mathematical function
with sessionInfo
> sessionInfo()
R Under development (unstable) (2021-11-29 r81258)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.3 LTS
Matrix products: default
BLAS: /home/stvjc/R-dev-dist/lib/R/lib/libRblas.so
LAPACK: /home/stvjc/R-dev-dist/lib/R/lib/libRlapack.so
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
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] Matrix_1.4-0 CytoTalk_0.99.0 rmarkdown_2.11
loaded via a namespace (and not attached):
[1] lattice_0.20-45 codetools_0.2-18 digest_0.6.29 foreach_1.5.1
[5] grid_4.2.0 evaluate_0.14 rlang_0.4.12 doParallel_1.0.16
[9] startup_0.16.0 iterators_1.0.13 tools_4.2.0 xfun_0.29
[13] parallel_4.2.0 fastmap_1.1.0 compiler_4.2.0 htmltools_0.5.2
[17] knitr_1.37
are you testing on R-devel?
I see I have a lot of out-of-date packages so hold off .... unless that looks like a genuine error ....
are you testing on R-devel?
Not sure I know what this means. I'll try to run that example on my end.
I see I have a lot of out-of-date packages so hold off .... unless that looks like a genuine error ....
Looks like a real error! I'll try patching it.
Edit: Uploaded a new test data sample, the example is working on my end now.
@vjcitn Any updates on what to do now?
Please bump the version so the single package builder will test it. Be sure to use R 4.2 and BiocManager::valid() true because I am still seeing errors. Bump the version whenever you make any change. 0.99.1, 2, ...
Okay I bumped the version in the DESCRIPTION file, ran BiocManager::valid
and everything is up to date on my end.
We will initiate review. Did you introduce SingleCellExperiment? I do not see it in DESCRIPTION. You will probably be asked to do this.
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/CytoTalk
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
I've added an input option for SingleCellExperiment, changed the maintainer email address to match between the DESCRIPTION, Biocondutor support forum, and the Bioc-devel mailing list (Dr. Tan signed up for both).
As for following the version bump procedure, I am running into this error after adding the remotes:
> git fetch --all
Fetching origin
Fetching upstream
git@git.bioconductor.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
error: Could not fetch upstream
Be sure you have followed guidelines for SSH key handling in git credentials app. @nturaga
The only person that has push access currently is the listed maintainer and associated github user id that the package was submitted under tank1@chop.edu / @tanlabcode -- @tanlabcode should activate the git credentials account, add any additional keys (there is already the github associated key added), and push changes.
For clarification this is because @tanlabcode submitted the package and is the listed maintainer of the package. We can grant access to @shanedrabing but would need @tanlabcode to request it; along with a valid email to set up a credentials account for @shanedrabing
Thanks @vjcitn and @Ishep, I have one question regarding the git credentials activation. When we first submitted, we had the tank1 email in the DESCRIPTION file, but signed up for the forum and mailing list with the tanlabcode email address. So, we decided to change the DESCRIPTION file to match tanlabcode (shared email). While we could probably sign up with the tank1 email, it would be preferable to activate the git remote with the tanlabcode email:
Any suggestions?
I have updated the email in the git credentials app. You should now be able to activate tanlab4generegulation@gmail.com
Hi, We have activated our git account. Thanks,
On Fri, Feb 18, 2022 at 6:59 AM lshep @.***> wrote:
I have updated the email in the git credentials app. You should now be able to activate @.***
— Reply to this email directly, view it on GitHub https://github.com/Bioconductor/Contributions/issues/2508#issuecomment-1044410265, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJKBBBFRC2ZTMQUDLGVD5HDU3YYAZANCNFSM5MIBRNRA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>
@lshep I'm on a terminal that is signed in with the tanlabcode
account for git authorization, we have the credentials account activated, but I still get this error when trying to fetch:
> git fetch --all
Fetching origin
Fetching upstream
git@git.bioconductor.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
error: Could not fetch upstream
Hi,
Please check https://bioconductor.org/developers/how-to/git/faq/ #13 to #16 on the FAQ.
Let us know if any of those helped.
Best,
Nitesh Turaga Scientist II, Department of Data Science, Bioconductor Core Team Member Dana Farber Cancer Institute
Received a valid push on git.bioconductor.org; starting a build for commit id: d2c3da8240de3f7ef6f1a0639ff9347c6b31cff9
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/CytoTalk
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
@nturaga Thanks so much! Was able to add a new public key to the account.
Received a valid push on git.bioconductor.org; starting a build for commit id: 92ee7c1878402a775cf4f344d6ca1fb0ebf2baa2
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/CytoTalk
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
On this newest error report, the Bioconductor environment does not have access to a Python module that is a required prerequisite for the package:
https://github.com/tanlabcode/CytoTalk#prerequisites
Since this environment doesn't have the module, these test will fail (including the test of a small sample for the overall process). How shall we proceed? I know that Bioconductor advises that all prereqs be installed by the user, not the devs automatically (and I agree!)
Received a valid push on git.bioconductor.org; starting a build for commit id: 9f223d6f50f0a6fe7cfd77f27a530430758ea5a3
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/CytoTalk
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
@nturaga @vjcitn We have signed up for the bioc-devel mailing list with the tanlab4generegulation
email address, but still getting an error from the check:
* Checking for bioc-devel mailing list subscription...
* ERROR: Maintainer must subscribe to the bioc-devel mailing list.
Subscribe here: https://stat.ethz.ch/mailman/listinfo/bioc-devel
Could this be because the mailing list is expecting the tank1
email address?
@shanedrabing No it uses whatever is currently listed as the maintainer in the DESCRIPTION for the check. Did you get a verification for the bioc-devel mailing list? There is often a confirmation email sent and it sometimes gets filtered as spam/trash? I just searched the mailing list registrations and do not see tanlab4generegulation@gmail.com as a valid registered email
Received a valid push on git.bioconductor.org; starting a build for commit id: 0fbb2a56927fd739f7b7f2cd9e3d5a20957999b9
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/CytoTalk
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: 68e83f2ac1e607335234ec9ba4c0d79a5abc5260
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/CytoTalk
to trigger a new build.
A quick tutorial for setting up remotes and pushing to upstream can be found here.
Hi @tanlabcode and @shanedrabing,
Thank you for your submission to Bioconductor. There are a few Required points, as well as some Recommended points, that I would ask you to first please address before acceptance into Bioconductor.
Cheers, Pete
run_cytotalk()
, which uses the CytoTalk::scrna_cyto
dataset. Is CytoTalk::scrna_cyto
the same dataset as used in the vignette?
CytoTalk::scrna_cyto
(or a cut-down version of this if running time is a concern) in the vignette to make a more streamlined and coherent introduction for new users that includes runnable and reproducible code examples.read_cytotalk()
uses cell_type_a = "Macrophages"
and cell_type_b= "LuminalEpithelialCells"
whereas the cell_type_a = "Fibroblasts"
and cell_type_b= "LuminalEpithelialCells"
; using the same cell types in all the examples and documentation might make the documentation more consistent for new users.sessionInfo()
is incomplete (e.g., CytoTalk is not listed in the output of sessionInfo()
in the vignette).README
advises to use command-line Python. Why not make full use of reticulate and use it to install the Python modules (https://rstudio.github.io/reticulate/articles/python_packages.html)?BiocCheck::BiocCheck()
BiocCheck::BiocCheck()
on the package. There are a number of notes that could be addressed. In particular, these should be addressed:
NOTE: 'LazyData:' in the 'DESCRIPTION' should be set to false or removed
NOTE: Update R version dependency from 3.5.0 to 4.2.0.
NOTE: Avoid 'suppressWarnings'/'*Messages' if possible (found 3 times)
; can these be avoided by passing appropriate arguments to the called functions?NOTE: Consider adding a NEWS file, so your package news will be included in Bioconductor release announcements.
NOTE: Consider adding runnable examples to the following man pages which document exported objects
read_*()
functions and the run_cytotalk()
function, so perhaps you could significantly reduce the number of exported functions??lrp_human
doesn't tell the user where the data come from; ?pcg_human
doesn't tell the user which annotation version these come from.
?protetta
I have no idea what that is (and this particular object doesn't appear to be used in the package).?doc_integrated
documents 5 functions but I have no idea what any of them do by reading the man page. Title
and Description
and more-or-less the same info is in the Value
sections).from_single_cell_experiment()
: The documentation says "A named list containing a sparse data matrix" but in general there's no guarantee the data matrix is sparse in a SingleCellExperiment object.from_single_cell_experiment()
does not.run_cytotalk()
has a commented out example; please instead use \dontrun{}
or \donttest{}
(see https://r-pkgs.org/man.html) so that the code isn't commented out but can be skipped if it takes to long to run as part of the package checks.covr::report()
shows that most of the R code is not covered by the unit tests.README.md
: "See the Cytoscape downloads page for more information." Should that be 'See the Graphiz downloads page'? Because that's where the link goes.results$pathways
item." doesn't match what a user would get when running CytoTalk::result_cyto$pathways
.Title
in DESCRIPTION
might be expanded to 'Signal Transduction Networks From scRNA-seq Data'BugReports
field to DESCRIPTION
. It is encouraged to include the relevant links to GitHub for reporting issues (usually the issues page).inst/CITATION
file (https://contributions.bioconductor.org/news.html)
citation("CytoTalk")
and decide if you're happy with the default. Otherwise, recommend adding a CITATION file (https://contributions.bioconductor.org/citation.html)Hi @tanlabcode and @shanedrabing,
How are you going with addressing the review comments? 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. Please also bear in mind some upcoming deadlines for the potential inclusion of CytoTalk into Bioconductor 3.15 (https://bioconductor.org/developers/release-schedule/); (FYI you've met the April 1 deadline, it's the 'Wednesday April 20' I'm mostly drawing your attention to).
Cheers, Pete
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.
When you are ready with changes, simply comment back here that you would like the issue reopened.
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.