pyOpenSci / software-submission

Submit your package for review by pyOpenSci here! If you have questions please post them here: https://pyopensci.discourse.group/
92 stars 36 forks source link

Pynteny: a Python package to perform synteny-aware, profile HMM-based searches in sequence databases #67

Closed Robaina closed 1 year ago

Robaina commented 1 year ago

Submitting Author: Semidán Robaina (@Robaina) All current maintainers: @Robaina Package Name: Pynteny One-Line Description of Package: Query sequence database by HMMs arranged in predefined synteny structure Repository Link: https://github.com/Robaina/Pynteny Version submitted: v0.0.5 Editor: @arianesasso Reviewer 1: @Batalex Reviewer 2: @c-thoben
Archive: DOI JOSS DOI: DOI Version accepted: 1.0.0 Date accepted (month-day-year): 03-10-2023


Description

Pynteny is Python tool to search for synteny blocks in (prokaryotic) sequence data through HMMs of the ORFs of interest and HMMER. By leveraging genomic context information, Pynteny can be employed to decrease the uncertainty of functional annotation of unlabelled sequence data due to the effect of paralogs. Pynteny can be accessed (i) through the command line, (ii) as a Python module, or (iii) as a (locally served) web application.

Scope

Please fill out a pre-submission inquiry before submitting a data visualization package. For more info, see notes on categories of our guidebook.

Pynteny's main objective is to provide a means to query NGS (unannotated) sequence databases, such as metagenomic/metatranscriptomic datasets using syntenic blocks (i.e. spatial arrangements of genes) rather than single target genes/protein domains. In this sense, I would classify Pynteny within Data Extraction.

Pynteny was designed to be used by researchers working with large, unannotated sequence databases, such as those typically encountered in metagenomic analyses. It can be accessed through a command line interface or easily integrated into pipelines as a Python package. Pynteny can also be used through a graphical interface running locally in the browser, which is more suitable for educational purposes.

To the extent of my knowledge, there isn't any Python package that provides the functionality provided by Pynteny.

Technical checks

For details about the pyOpenSci packaging requirements, see our packaging guide. Confirm each of the following by checking the box. This package:

Publication options

I had submitted this package for publication at JOSS prior to pyOpenSci. The submission is currently under consideration for scope in this issue: https://github.com/openjournals/joss-reviews/issues/4978

JOSS Checks - [x] The package has an **obvious research application** according to JOSS's definition in their [submission requirements][JossSubmissionRequirements]. Be aware that completing the pyOpenSci review process **does not** guarantee acceptance to JOSS. Be sure to read their submission requirements (linked above) if you are interested in submitting to JOSS. - [x] The package is not a "minor utility" as defined by JOSS's [submission requirements][JossSubmissionRequirements]: "Minor ‘utility’ packages, including ‘thin’ API clients, are not acceptable." pyOpenSci welcomes these packages under "Data Retrieval", but JOSS has slightly different criteria. - [x] The package contains a `paper.md` matching [JOSS's requirements][JossPaperRequirements] with a high-level description in the package root or in `inst/`. - [x] The package is deposited in a long-term repository with the DOI: [![DOI](https://joss.theoj.org/papers/10.21105/joss.05289/status.svg)](https://doi.org/10.21105/joss.05289) *Note: Do not submit your package separately to JOSS*

Are you OK with Reviewers Submitting Issues and/or pull requests to your Repo Directly?

This option will allow reviewers to open smaller issues that can then be linked to PR's rather than submitting a more dense text-based review. It will also allow you to demonstrate addressing the issue via PR links.

Code of conduct

Please fill out our survey

P.S. *Have feedback/comments about our review process? Leave a comment here

Editor and Review Templates

[Editor and review templates can be found here]: https://www.pyopensci.org/software-peer-review/how-to/editors-guide.html and https://www.pyopensci.org/software-peer-review/how-to/reviewer-guide.html

lwasser commented 1 year ago

ok wonderful @Robaina @arianesasso will followup with next steps. so appreciative of all of the back and forth on this review. Essentially we just need to get an Ok from both reviewers that the changes to your package have satisfied their requests in the review... and then there are a few closing steps and we can send you on your way to JOSS! more soon...

lwasser commented 1 year ago

Thanks for looking into this issue @Robaina and thanks for your support @lwasser!

@c-thoben thank YOU for being such a wonderful reviewer and for supporting open source!!

lwasser commented 1 year ago

hi everyone! i just wanted to check in @Batalex @c-thoben has everything in your reviews been completed at this point? i just want to understand where we are in the review !

Batalex commented 1 year ago

Yup, it is all good on my side. I could not have asked for a more reactive & understanding submitter 🙌

c-thoben commented 1 year ago

For me also everything is fine :)

Robaina commented 1 year ago

Thank you @Batalex. Likewise, you far exceeded my expectations in your review. Incredibly supportive and collaborative. From now on using ruff --fix in all my projects 😆

Robaina commented 1 year ago

Thank you so much for your time and great review @c-thoben, and for helping me identify and solve Pynteny's installation problems!

lwasser commented 1 year ago

ok next steps! @Robaina @Batalex @c-thoben please followup here by taking our post review survey. We greatly appreciate your time in doing. Your input improves our overall process (Alex if this survey feels super redundant to you please tell me as i know you've taken some of our other surveys). i welcome all input.

lwasser commented 1 year ago

Pynteny is now a part of the pyOpenSci Ecosystem!


🎉 Pynteny has been approved by pyOpenSci! Thank you @Robaina for submitting pyteny and many thanks to @Batalex @c-thoben for reviewing this package! 😸 NOTE: I have to say this was an extraordinary review over all. @NickleDave you also really did a wonderful job in getting this review together early on. All aspects of this review went exactly as i would hope a pyOpenSci review would go!! We want our reviews to be a conversation that supports maintainers in improving their package! And i really think this was achieved here. So thank you ALL for being a tremendous team in this review.

There are a few things left to do to wrap up this submission after you've taken the post review survey!

Author Tasks

@Robaina please do the following:

Editor Tasks

It looks like you would like to submit this package to JOSS. Here are the next steps: - [ ] Login to the JOSS website and fill out the JOSS submission form using your Zenodo DOI. **When you fill out the form, be sure to mention and link to the approved pyOpenSci review.** JOSS will tag your package for expedited review if it is already pyOpenSci approved. - [ ] Wait for a JOSS editor to approve the presubmission (which includes a scope check). - [ ] Please add a link to the JOSS review issue once it is created here as well - [ ] Once the package is approved by JOSS, you will be given instructions by JOSS about updating the citation information in your README file. - [ ] When the JOSS review is complete, add a comment to your review here in the pyOpenSci software-review repo that it has been approved by JOSS. 🎉 Congratulations! You are now published with both JOSS and pyOpenSci! 🎉 All -- if you have any feedback for us about the review process please feel free to share it here. We are always looking to improve our process and documentation in the [software-peer-review-guide](https://www.pyopensci.org/software-peer-review). We have also been updating our documentation to improve the process, so all feedback is appreciated!
allcontributors[bot] commented 1 year ago

@lwasser

I couldn't determine any contributions to add, did you specify any contributions? Please make sure to use valid contribution names.

I've put up a pull request to add @ALL! :tada:

I've put up a pull request to add @badge! :tada:

I've put up a pull request to add @robaina! :tada:

I've put up a pull request to add @package! :tada:

I couldn't determine any contributions to add, did you specify any contributions? Please make sure to use valid contribution names.

Could not find the user feedback on github.

NickleDave commented 1 year ago

Weird, seems like the all-contribs bot got triggered even though we didn't tag it?

I closed all these PRs except for the one that added @Robaina which I went ahead and merged. The reviewers will still need to be added.

NickleDave commented 1 year ago

@NickleDave you also really did a wonderful job in getting this review together early on.

It was really easy to work with @Robaina who has been really responsive to feedback and who has now evolved pynteny into a full-fledged package, happy to be a part of the review

lwasser commented 1 year ago

Weird, seems like the all-contribs bot got triggered even though we didn't tag it?

I closed all these PRs except for the one that added @Robaina which I went ahead and merged. The reviewers will still need to be added.

woah -- i just saw that. i guess i will have to link to instructions in our guide book 🙈 sorry y'all! i didn't think the bot worked like that

Robaina commented 1 year ago

@NickleDave you also really did a wonderful job in getting this review together early on.

It was really easy to work with @Robaina who has been really responsive to feedback and who has now evolved pynteny into a full-fledged package, happy to be a part of the review

Thank you so much for your help during the pre-review @NickleDave!

Robaina commented 1 year ago

Thank you so much you all! I think I have completed all the required checks from my side. Please, review my PR to include Pynteny in the database. Not sure I completed the fields correctly.

As a final note. I have to say that I have enjoyed this review process. You have been tremendously supportive. Feedback has been always constructive to better the package. I wished these kinds of open reviews were the norm in Science...

arianesasso commented 1 year ago

It is really great to know you enjoyed the process! I think we all did 😄 . Now, for the last steps regarding JOSS:

Please read their paper.md file requirements, and make sure that the paper is in your repo.

Then, follow the instructions here: submitting the package to JOSS.

Now, you don't need to go through another review 🙂 : You should just tag the JOSS issue with our issue.

Robaina commented 1 year ago

Great! will check paper format and submit it in the following days. Thank you @arianesasso !

Robaina commented 1 year ago

Hi @arianesasso,

just to inform you that Pynteny has been published in JOSS.

Thank you!

NickleDave commented 1 year ago

Closing this now that we're pyOS-approved and joss-approved! Great review y'all