Submitting author: @AliYoussef96 (Ali Youssef)
Repository: https://github.com/AliYoussef96/BCAW-Tool
Version: v1.0.3
Editor: @mgymrek
Reviewer: @Benjamin-Lee
Archive: 10.5281/zenodo.3468557
Status badge code:
HTML: <a href="http://joss.theoj.org/papers/5c17f813c2eca6b9d7c4ecf5d2ea97e9"><img src="http://joss.theoj.org/papers/5c17f813c2eca6b9d7c4ecf5d2ea97e9/status.svg"></a>
Markdown: [](http://joss.theoj.org/papers/5c17f813c2eca6b9d7c4ecf5d2ea97e9)
Reviewers and authors:
Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)
@Benjamin-Lee, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @mgymrek know.
✨ Please try and complete your review in the next two weeks ✨
paper.md
file include a list of authors with their affiliations?Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @Benjamin-Lee it looks like you're currently assigned to review this paper :tada:.
:star: Important :star:
If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿
To fix this do the following two things:
For a list of things I can do to help you, just type:
@whedon commands
Attempting PDF compilation. Reticulating splines etc...
Kindly I'm asking when the reviewing process will start.
Hello @Benjamin-Lee, any updates on your review, or when you expect to complete it? Thanks!
Sorry, I've been swamped with travel. I'll start my review now.
Ok, I just added five initial issues to the repo. @AliYoussef96, I hope my issues are understandable but if not, please don't hesitate to reach out for more information. I'm excited to try this tool out!
Hi @AliYoussef96
I agree with the points raised by @Benjamin-Lee. See also my comments below.
I agree this should be structured more like a standard Python library with a setup.py file for easy installation of the tool and dependencies.
REAMDE: "automated workflow to analysis the codon usage " -> "automated workflow to analyze the codon usage'
There are now references in the paper. It would also be helpful for the paper to describe in more detail what the outputs are.
I do not see tests. It would be great to both tests functions with automated tests, and also to provide some indication that your overall results are correct. e.g. by comparing E. Coli results to previously published ones.
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
Hi @mgymrek
Install process
For setup.py is available now, as well as installation using pip.
pip install BCAWT
Usage/docs
1- BCAWT can now take all the arguments at once.
from BCAWT import BCAWT
BCAWT.BCAW('Ecoli','result_folder',genetic_code_=11,fasta=True,Auto=True)
2- Inputs, outputs and how to obtain such fasta files are now on README.
As well as I added Abbreviations table, Also, I added an introduction to codon usage bias and equations used in the BCAW tool with some useful references here.
3- All plots are described here.
Testing
For the BCAW tool, I did BCAWT_auto_test.py. I did describe how to use this test in README.md and in the documentation.
Also, I wrote test.py to tests functions with automated tests
paper
I am working on a summary to describe in more detail what the outputs are.
*
Hi @mgymrek
For the paper Output summary, I add a table summary, as well as a figure, shows all the output plots.
I'm Waiting for your feedback.
Hi @Benjamin-Lee
I finished working on the issues you added. And I'm Waiting for your feedback.
thanks @AliYoussef96 for the updates. The changes look good.
One comment on install: I wonder whether it is critical to require Python >=3.7? Many systems will still have earlier versions making it difficult to install and test with pip.
Also, comments on the paper:
Summary
Implementation
Output summary:
Thanks, @mgymrek for your comments.
1. Comment on install to require Python >=3.7.
(README).
2. Updates to the paper
Summary
Implementation
Output summary
Waiting for further comments.
Hi @Benjamin-Lee
Can we close the opened issues now?
@mgymrek — it looks like the author is waiting for a response here: what's the status of this submission?
Thanks for the updates. @Benjamin-Lee can you also finish going throug the checklist after these revisions to see if remaining requirements are met?
One point: the pip version is 0.2.0 but the version listed on this review is v1.0.0. Which one is the most recent release?
I updated the pip version to 1.0.0. to give the match with the GitHub release (v1.0.0).
I’ll get on it!
On Aug 5, 2019, at 10:04 AM, Ali Youssef notifications@github.com wrote:
I updated the pip version to 1.0.0. to give the match with the GitHub release (v1.0.0).
The pip version
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
@Benjamin-Lee and @mgymrek
About the checklist, any comments about the Functionality and the References?
Not yet. Please be aware that I am on vacation starting out of internet service, so I will get back to you in a week!
On Aug 18, 2019, at 1:19 PM, Ali Youssef notifications@github.com wrote:
@Benjamin-Lee and @mgymrek
About the checklist, any comments about the Functionality and the References?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
Hi @Benjamin-Lee just wanted to check in on this review. Thanks!
@AliYoussef96 I apologize for the delay in moving this forward. I have been waiting to hear back from the reviewer. Regardless of that I will update you with a decision by the end of this week.
Hi! I’ll get on this tomorrow. Sorry for the delay.
On Sep 12, 2019, at 1:12 AM, Melissa Gymrek notifications@github.com wrote:
@AliYoussef96 I apologize for the delay in moving this forward. I have been waiting to hear back from the reviewer. Regardless of that I will update you with a decision by the end of this week.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
@AliYoussef96 I apologize for the delay in moving this forward. I have been waiting to hear back from the reviewer. Regardless of that I will update you with a decision by the end of this week.
I appreciate your response. Thank You!
Hi! I’ll get on this tomorrow. Sorry for the delay.
…
On Sep 12, 2019, at 1:12 AM, Melissa Gymrek @.*> wrote: @AliYoussef96 I apologize for the delay in moving this forward. I have been waiting to hear back from the reviewer. Regardless of that I will update you with a decision by the end of this week. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.
I look forward to receiving updates. Thank You!
Just worked on trying it out and am currently running into an error on Mac. Once I can review the functionality, we'll be good to go.
Just worked on trying it out and am currently running into an error on Mac. Once I can review the functionality, we'll be good to go.
Hi @Benjamin-Lee
I made changes in the main function and I believe this will solve the error.
https://github.com/AliYoussef96/BCAW-Tool/issues/12#issuecomment-531560160
Hello,
I am testing out these changes. Using the version from pip and the example:
```from BCAWT import BCAWT_auto_test
path = "Test_folder" # or any!!
BCAWT_auto_test.auto_test(path)
BCAWT_auto_test.auto_check_files(path)
I get an error:
Bio.Data.CodonTable.TranslationError: Codon '
The main example (BCAWT.BCAW(['Ecoli.fasta'],'save_path',genetic_code_=11,Auto=True)
) worked smoothly.
Hello @mgymrek,
The error you got from biopython translate function when it tries to translate unknown codons. Any invalid codon (e.g. "TA?" or "T-A") will throw a TranslationError.
link to the error description: https://biopython.org/DIST/docs/api/Bio.Seq-module.html#translate
According to the error, a codon "
The automatic testing you trying to run expect this file.
from BCAWT import BCAWT_auto_test
path = "Test_folder" # or any!!
BCAWT_auto_test.auto_test(path)
#processing....
BCAWT_auto_test.auto_check_files(path)
So, kindly can you make sure you have the right file.
Ok, I got it to work for now. The usage on the site is misleading. I assumed "Test_folder" is a folder containing the fasta files to check. (The functionality seemed to change since I tried a couple days ago using the pip version, since earlier I gave a directory and it didn't complain that it couldn't find the Ecoli.fasta file)
The README mentions any fasta file can be downloaded under "Auto testing". However "Ecoli.fasta" appears to be hardcoded into the test function. The usage should clarify whether that specific file is needed. If it is, that should be part of the default install so that users don't have to seprately fetch that file to test.
Also, here are some comments on the paper:
"have been developed to analysis" -> "have been developed to analyze"
"of any organism genes" -> "of any organism's genes"
"Further, Using" -> "Further, using"
"CUB as;" -> "CUB such as;"
"statistical analysis as" -> "statistical analysis such as"
"with build in" -> "with built in"
"a bunch of analysis" -> "a variety of analyses"
Once the above are taken care of we should be ready to go.
1- I updated your comments on the paper.
2- I changed the test function to accept any fasta file and I made it clear in the README.
from BCAWT import BCAWT_auto_test
path = "Test_folder" # absolute path to the directory to save the result in
test_fasta = "Test_fasta_file" # absolute path to the fasta file that will be tested
BCAWT_auto_test.auto_test(path, test_fasta)
#processing....
BCAWT_auto_test.auto_check_files(path) # note: this test assumes that in the result folder nothing except the result files form the above function.
3- The pip version now : 1.0.3.
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
PDF failed to compile for issue #1500 with the following error:
[WARNING] Could not convert image '/tmp/tex2pdf.974/0872d19f51538b8f623dfc4af45d7772d82b17cf.shtml': Cannot load file
Jpeg Invalid marker used
PNG Invalid PNG file, signature broken
Bitmap Invalid Bitmap magic identifier
GIF Invalid Gif signature :
HDR Invalid radiance file signature
Tiff Invalid endian tag value
TGA Invalid bit depth (104)
Error producing PDF.
! LaTeX Error: Cannot determine size of graphic in /tmp/tex2pdf.974/0872d19f515
38b8f623dfc4af45d7772d82b17cf.shtml (no BoundingBox).
See the LaTeX manual or LaTeX Companion for explanation.
Type H
...
l.476 ...9f51538b8f623dfc4af45d7772d82b17cf.shtml}
Looks like we failed to compile the PDF
@labarba do you have any insights into why this proof is failing to generate?
You might try changing the path to the image in the .md file to
https://github.com/AliYoussef96/BCAW-Tool/raw/master/Plots/All%20plots.jpg
the current link is to https://github.com/AliYoussef96/BCAW-Tool/blob/master/Plots/All%20plots.jpg which is the github page containing the image, not the raw image itself
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@mgymrek I changed the path to the image in the .md, and it worked.
@mgymrek Can I ask what is next? Are we ready to go further?
Thanks for fixing the proof. We are almost there. Last step: Can you now create a Zenodo archive and report the DOI in this thread. Please make sure the Zenodo archive has the same title and author list as the paper. Also please indicate whether the version needs to be updated (it is listed as v1.0.0 on this thread).
@whedon set v1.0.3 as version
I'm sorry @AliYoussef96, I'm afraid I can't do that. That's something only editors are allowed to do.
@arfon and @mgymrek, who is responsible for copyediting the final paper?
@whedon set v1.0.3 as version
OK. v1.0.3 is the version.
@whedon set 10.5281/zenodo.3468557 as archive
OK. 10.5281/zenodo.3468557 is the archive.
@mgymrek, @Benjamin-Lee — Are you ready to recommend publication of this paper?
@openjournals/joss-eics we are ready to accept this.
@whedon check references
Attempting to check references...
```Reference check summary:
OK DOIs
MISSING DOIs
INVALID DOIs
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@AliYoussef96 some minor comments on the paper:
...codons described by (Hersh-berg & Petrov, 2009) is implemented...
See here. built in
in: ...with built in and third-party packages...
can
instead of could
in "...tool could be divided into three groups."BCAWT’s
be BCAW’s
? in "...are reported in the BCAWT’s documentation."The advantages for BCAW tool over the existing tools are; 1- Automated Workflow, 2- No limitations on the number of genes, 3- The method used to determine optimal codons named correlation method is only available in the BCAW tool, 4- Plots as violin plots for nucleotides contents, and other plots are generated by the BCAW tool and no need for using another software to draw such plots.
I propose (but correct it if I misunderstood): The advantages of BCAW tool over existing tools are; 1) the automated workflow, 2) the ability to handle large numbers of genes, 3) the method used to determine optimal codons, named the correlation method, is only available in the BCAW tool, 4) visualization and plotting capability, including the creation of violin plots for nucleotide contents, removing the need for other plotting software
. Further,
can you sue Furthermore,
in "Further, using the correlation method..."the BCAW tool
and BCAW tool
. Both read more awkward then BCAWT. I propose you use BCAWT throughout the paper instead of the aforementioned. a
in BCAW tool returns CSV file containing...
Such that it reads: BCAW tool returns a CSV file containing...
....containing the codon usage bias indices output ( Table 1 ).
, it seems you can use the acronym CUB instead. Table 1: Explain the CSV files output...
, rephrase this to Table 1: Explanation of the the CSV output file...
Also, it returns 11 plot ( Fig 1 ), so one could interpret the results easily.
to Furthermore, BCAWT returns 11 plots (Fig 1), enabling easy interpretation of the results.
Fig 1: All output plots from BCAW tool analysis for coding sequence from Escherichia
, should that be "codon sequence"? or "a code sequence"? or "genetic code sequence"? The usage of BCAW Tool is made to be very easy where users have only to input a fasta format file containing genes to be analyzed, and variety of analyses will be performed.
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
Hi @Kevin-Mattheus-Moerman
genes coding sequence
@AliYoussef96 thanks for implementing those. Some minor points remain:
the BCAWT
throughout or BCAWT
. I propose BCAWT
, so to remove all instances of the
in front of BCAWT. ....are reported in the BCAW’s
)For example, to analyze genes coding sequence within Ecoli.fasta, save the results to a folder named save_path and choosing genetic code for bacteria:
, I propose (unless I misunderstood): For example, the following code snippet shows how to analyze genes for a coding sequence within the file `Ecoli.fasta`, for a genetic code specified, and to save the results to a folder named save_path.
@Kevin-Mattheus-Moerman Thank you for your quick response!!
Ecoli.fasta
, for a genetic code specified, and to save the results to a folder named save_path.@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@AliYoussef96 getting close
... a folder named save_path
so it reads ... a folder named save_path.
the
in ...are reported in the BCAW’s
so it becomes: .....are reported in BCAW’s
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@whedon accept
Attempting dry run of processing paper acceptance...
```Reference check summary:
OK DOIs
MISSING DOIs
INVALID DOIs
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1035
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1035, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
@whedon accept deposit=true
Doing it live! Attempting automated processing of paper acceptance...
🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦
🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨
Here's what you must now do:
Party like you just published a paper! 🎉🌈🦄💃👻🤘
Any issues? notify your editorial technical team...
:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:
If you would like to include a link to your paper from your README use the following code snippets:
Markdown:
[](https://doi.org/10.21105/joss.01500)
HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.01500">
<img src="https://joss.theoj.org/papers/10.21105/joss.01500/status.svg" alt="DOI badge" >
</a>
reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.01500/status.svg
:target: https://doi.org/10.21105/joss.01500
This is how it will look in your documentation:
We need your help!
Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:
Huge thanks to @mgymrek, @Kevin-Mattheus-Moerman, and @Benjamin-Lee. Your effort is greatly appreciated!
Most helpful comment
I’ll get on it!