openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
694 stars 36 forks source link

[REVIEW]: biobabel: a unified interface for reading a plethora of file formats for biosignals such as cardiac, respiration, electrodermal data #6884

Open editorialbot opened 2 weeks ago

editorialbot commented 2 weeks ago

Submitting author: !--author-handle-->@florisvanvugt<!--end-author-handle-- (Floris Tijmen van Vugt) Repository: https://github.com/florisvanvugt/biobabel Branch with paper.md (empty if default branch): Version: v1.0.0 Editor: !--editor-->@marcosvital<!--end-editor-- Reviewers: @sappelhoff, @finsberg, @ntolley Archive: Pending

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/69fccaf4b796a4b3e3b46d89416a3b09"><img src="https://joss.theoj.org/papers/69fccaf4b796a4b3e3b46d89416a3b09/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/69fccaf4b796a4b3e3b46d89416a3b09/status.svg)](https://joss.theoj.org/papers/69fccaf4b796a4b3e3b46d89416a3b09)

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

@sappelhoff & @finsberg & @ntolley, 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:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @marcosvital 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 @sappelhoff

πŸ“ Checklist for @finsberg

πŸ“ Checklist for @ntolley

editorialbot commented 2 weeks ago

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:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 2 weeks ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.21105/joss.02621 is OK
- 10.5281/ZENODO.3597887 is OK
- 10.1109/MCSE.2007.55 is OK
- 10.1038/s41592-019-0686-2 is OK
- 10.1038/s41586-020-2649-2 is OK
- 10.25080/Majora-92bf1922-00a is OK
- 10.1006/cbmr.1996.0014 is OK
- 10.5281/zenodo.10714563 is OK
- 10.1177/1094428116681072 is OK
- 10.1016/j.concog.2017.09.008 is OK
- 10.3390/s21237869 is OK
- 10.3390/s20020479 is OK
- 10.1016/j.neubiorev.2020.09.008 is OK
- 10.21105/joss.02621 is OK
- 10.1038/s41592-021-01254-9 is OK
- 10.3758/s13428-020-01516-y is OK

MISSING DOIs

- 10.1007/978-981-13-2517-5_102 may be a valid DOI for title: Educational Platform for Physiological Signal Meas...

INVALID DOIs

- None
editorialbot commented 2 weeks ago

Software report:

github.com/AlDanial/cloc v 1.90  T=0.02 s (924.5 files/s, 160270.4 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          14            687            348           1267
TeX                              1             44              0            282
Markdown                         2            133              0            219
Jupyter Notebook                 1              0            369             42
TOML                             1             11              8             33
YAML                             1              2              4             18
-------------------------------------------------------------------------------
SUM:                            20            877            729           1861
-------------------------------------------------------------------------------

Commit count by author:

    69  Floris
     1  Floris van Vugt
editorialbot commented 2 weeks ago

Paper file info:

πŸ“„ Wordcount for paper.md is 2036

βœ… The paper includes a Statement of need section

editorialbot commented 2 weeks ago

License info:

🟑 License found: GNU General Public License v3.0 (Check here for OSI approval)

editorialbot commented 2 weeks ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

marcosvital commented 2 weeks ago

Dear @sappelhoff, @finsberg and @ntolley, thank you again for accepting review this submission for JOSS.

The reviewing process is checklist based, and instructions were already posted above by the editorial bot - but let me know if you need any assistance, ok?

Also, you can tag @florisvanvugt if you have specific questions about the manuscript.

sappelhoff commented 2 weeks ago

Review checklist for @sappelhoff

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

finsberg commented 2 weeks ago

Review checklist for @finsberg

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

ntolley commented 2 weeks ago

Review checklist for @ntolley

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

ntolley commented 2 weeks ago

@florisvanvugt going over the software and everything is looking clear and documented!

A major piece that is missing right now is an appropriate testing suite. Please see the guidelines here: https://joss.readthedocs.io/en/latest/review_criteria.html#tests

While I do indeed see a test folder, this is more of a tutorial/example that only covers the functionality for a single file type. Given that the point of this software is to integrate many disparate file types, at a minimum I think the tests should ensure all of the loading functions work for each supported file type.

My major recommendation would be to: 1) Generate or add very small files (size is important since once they are committed it will be carried in the git history) for each supported datatype 2) Set up .py testing files with formatted to work with pytest: https://docs.pytest.org/en/7.1.x/getting-started.html 3) Loop through these files and ensure that they can be loaded without error.

In the end you should be able to run pytest test_loading.py or something similar and quickly verify that your code is functioning correctly.

ntolley commented 2 weeks ago

If you see yourself building out this software further, it is rather easier to set up automated testing through github workflows: https://docs.github.com/en/actions/automating-builds-and-tests/about-continuous-integration

While I think this is outside the scope of this JOSS submission, I just wanted to point you in the right direction if you hadn't seen this before