New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[REVIEW]: Viash: A meta-framework for building reusable workflow modules #6089
Comments
Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks. For a list of things I can do to help you, just type:
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
|
|
Wordcount for |
|
👋 @wilkinson, @abhishektiwari, and @mberacochea - Thanks for agreeing to review this submission. As you can see above, you each should use the command As you go over the submission, please check any items that you feel have been satisfied. There are also links to the JOSS reviewer guidelines. The JOSS review is different from most other journals. Our goal is to work with the authors to help them meet our criteria instead of merely passing judgment on the submission. As such, reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention We aim for reviews to be completed within about 2-4 weeks. Please let me know if either of you require some more time. We can also use editorialbot (our bot) to set automatic reminders if you know you'll be away for a known period of time. Please feel free to ping me (@danielskatz) if you have any questions/concerns. |
Review checklist for @abhishektiwariConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
👋 @wilkinson and @mberacochea - I would appreciate it if you could use the command |
Review checklist for @mberacocheaConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
@rcannood Please see my initial feedback. DocumentationCommunity GuidelinesPlease add community guidelines. I also think project will benefit from issue and pull request templates. PaperTitleFor consistency, I would suggest paper headline to use State of the fieldCurrent state of the field can be further improved. Given the focus on Bioinformatics related computation/data pipeline frameworks, Viash, and it's counterparts Nextflow, Snakemake, CWL belong to Suggested improvements (non-blocking)Given the Viash has broader applicability beyond Bioinformatics particularly MLOps Pipelines, I suggest adding starter using other more generic frameworks such Airflow. In case of Apache Airflow, Airflow BashOperator will works just fine with standalone executable generated by Viash. Overall commentsI applaud the author's for providing a very frictionless experience. Both Guide and Reference are well documented. I was able to finish everything from installation to functional testing to example in less than an hour. I really liked the use of GitHub template to create a quickstarter. Furthermore, I was able to add new modules on top of existing quickstarter very quickly and run end-to-end pipeline. Finally, it was great to see that authors provided guidance on IDE setup and testing of modules created using Viash. |
Review checklist for @wilkinsonConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
@danielskatz mostly done with my review. Just waiting for @rcannood response on state of field and title before I can mark this review completed from my side. |
This comment is almost the same as a previous one that I've deleted, but fixes an error I made in tagging. 👋 @wilkinson, @abhishektiwari, @mberacochea, @rcannood - I'm just checking in post-holidays on how this is going. It looks like @abhishektiwari provided some comments, but I'm unsure if @rcannood has acted on them. And that @wilkinson and @mberacochea have started reviews, but I'm unsure if there's anything blocking them from making further progress. Any feedback on status is welcome |
@rcannood Please see my feedback. General CommentsThe paper is well-written and clearly explains the purpose and functionality of Viash. The authors provide detailed instructions on using the tool to describe modules with it. It is impressive in both the scope and the way it handles the whole process of pipeline writing, from initial module creation to fully functional pipelines using Nextflow. DocumentationThe documentation provided is comprehensive and allowed me to successfully follow the tutorial to create a fully operational pipeline. It consists of a practical tutorial and extensive usage guidelines, as well as documentation on the tool's API. I encountered one minor issue (viash-io/viash#617) which the authors promptly resolved. Source CodeWhile I am not familiar with Scala, I was able to understand the high-level logic by reading through the codebase, it is well structured and contains explanatory comments on complex sections. Generated Nextflow CodeThe Nextflow code generated by Viash differs from the canonical style users may be accustomed to in other pipelines. This is not a flaw, but worth noting as it may cause initial confusion. Even though the produced modules are not meant to be modified, the ability to read and modify the code improves the developer experience, specially for the workflow developers. The paper could explore this a bit, as it’s mainly focus on modules and not so much on workflow development. One question I have - could the custom Nextflow helper methods in Viash be abstracted/pushed into a Nextflow plugin or some kind of library? This question shouldn’t be considered a blocker for this PR. State of the fieldMy impression is that Viash provides functionality comparable to nf-core/nf-tools or Snakemake Wrappers, though their approaches are different. Specially around the re-usable modules or components to build pipelines. Nf-core uses a different paradigm but it shares some of concepts with Viash. Explicitly contrasting nf-core/nf-tools - Snakemake Wrappers and Viash would benefit potenial users. The authors may also want to briefly mention OpenPipelines as a repository of Viash modules. PaperApplications in BioinformaticsI don't think Viash is restricted solely to single cell analysis. Based on the underlying technologies, it seems widely applicable in bioinformatics (at least in omics). In Figure 3, Tables B and C appear inadvertently merged. The authors may want to separate them for clarity |
👋 @rcannood - there are now two reviewers with comments for you to respond to. |
Thanks @abhishektiwari @mberacochea for your reviews! I'm currently sorting through my post-holiday workload and will go through your valuable feedback ASAP! |
Hey all! I went through the comments I received so far and tried to address each of the reviewers' concerns. Please let me know if you have any further feedback. @abhishektiwari's commentsCommunity Guidelines
Done, done, and done! Thanks for the suggestion! Title consistency
Good point! For the sake of consistency, I ended up replacing all instances of "pipeline" with "workflow" in viash-io/viash@5029fe0 State of the field
Thanks for this suggestion! I completely rewrote the state of the field in viash-io/viash@6a21f69 . Rather than only compare Viash to Snakemake, Nextflow, CWL and WDL, I instead compare Viash to workflow managers and portability solutions. Based on https://doi.org/10.1038/s41592-021-01254-9, we then discuss the different types of workflow managers (graphical, programmatic, specification-based) and portability solutions (package manager, containerization). Suggested improvements (non-blocking)
Thanks for your suggestion, we will definitely take this into account when extending our documentation with different workflow frameworks! @mberacochea's commentsGenerated Nextflow Code
I would really like that! The latest release of Viash already split up the helper functions into separate helper files per function so we can unit test them separately. I would like some of this functionality to be included in a Groovy library so we don't need to include it in every Nextflow module that is generated. State of the field
Thanks for making the connection with nf-core tools (I think you mean nf-core/modules instead?), Snakemake wrappers and OpenPipelines. I did not include references to these projects in the paper as I felt that creating a repository with reusable commonly used bioinformatics tools goes way beyond the scope of this manuscript. Applications in bioinformatics
Good point. I dropped the word "single-cell" in viash-io/viash@874169a Paper figures
Thanks, I fixed this in viash-io/viash@758db0f ! |
@editorialbot generate pdf |
👋 @abhishektiwari & @mberacochea - I look forward to hearing from you about @rcannood's changes |
👋 @wilkinson - it looks like you are fairly close to done as well. Do the latest changes from @rcannood help you, and if not, what else do you need to complete your review? |
@editorialbot set 10.5281/zenodo.10563479 as archive |
Done! archive is now 10.5281/zenodo.10563479 |
@editorialbot recommend-accept |
|
|
👋 @openjournals/csism-eics, this paper is ready to be accepted and published. Check final proof 👉📄 Download article If the paper PDF and the deposit XML files look good in openjournals/joss-papers#4947, then you can now move forward with accepting the submission by compiling again with the command |
@editorialbot accept |
|
Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository. If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file. You can copy the contents for your CITATION.cff file here: CITATION.cff
If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation. |
🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘 |
🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨 Here's what you must now do:
Any issues? Notify your editorial technical team... |
Congratulations to @rcannood (Robrecht Cannoodt) and co-authors on your publication!! And thanks to @wilkinson, @abhishektiwari, and @mberacochea for reviewing! |
🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉 If you would like to include a link to your paper from your README use the following code snippets:
This is how it will look in your documentation: We need your help! The 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:
|
A big thank you to @abhishektiwari @mberacochea @wilkinson and @danielskatz ! 🙇 🙇 🙇 🙇 I see the names of Eric and Dries are split up incorrectly. Should I create a PR to amend openjournals/joss-papers#4948? |
Yes, please do |
Hi @danielskatz ! I created openjournals/joss-papers#4949 . Is there somebody I could ask to take a look at this PR? 🙇 Thanks! |
@rcannood - The files you are trying to change in your PR are automatically generated by JOSS. So please delete this PR, and instead, make changes in your paper source. See https://joss.readthedocs.io/en/latest/submitting.html#names in the JOSS documentation for how to do this. Let me know when this is done, and I'll redo the generation, so we can check the xml and jats files, then when we are happy, I'll republish those versions. |
Hi @danielskatz! Thanks for your help! I had missed your reply until Arfon pointed it out to me. I made the necessary changes to the author names in the Thanks you so much for your time! 🙇 |
@editorialbot re-accept |
I'm sorry human, I don't understand that. You can see what commands I support by typing:
|
@editorialbot reaccept |
|
🌈 Paper updated! New PDF and metadata files 👉 openjournals/joss-papers#5004 |
@rcannood - I hope this has fixed the problem - it looks like it did to me. |
Yes -- thank you so much @danielskatz ! |
Submitting author: @rcannood (Robrecht Cannoodt)
Repository: https://github.com/viash-io/viash
Branch with paper.md (empty if default branch): paper
Version: 0.8.4
Editor: @danielskatz
Reviewers: @wilkinson, @abhishektiwari, @mberacochea
Archive: 10.5281/zenodo.10563479
Status
Status badge code:
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.)
Reviewer instructions & questions
@wilkinson & @abhishektiwari & @mberacochea, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review.
First of all you need to run this command in a separate comment to create the checklist:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @danielskatz know.
✨ Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest ✨
Checklists
📝 Checklist for @abhishektiwari
📝 Checklist for @mberacochea
📝 Checklist for @wilkinson
The text was updated successfully, but these errors were encountered: