-
-
Notifications
You must be signed in to change notification settings - Fork 38
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]: OptiCommPy: Open-source Simulation of Fiber Optic Communications with Python #6600
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:
|
Software report:
Commit count by author:
|
Paper file info: 📄 Wordcount for ✅ The paper includes a |
|
License info: 🟡 License found: |
Review checklist for @klb2Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
Review checklist for @taladjidiConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
Review checklist for @ebezzamConflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
|
@lucydot, @edsonportosilva below is my initial review. I realize that there is an examples folder, but is it expected to run everything or is there a notebook/script that gives an overview of the main features? Functionality
Documentation
Software paper
Miscellaneous
|
Thank you for your thoughtful review @ebezzam
With the immediate review process in mind, this seems like an important thing to address. Could you indicate which examples demonstrate the key software functionality @edsonportosilva? This could be useful for future users, so I suggest it is also included in the documentation. |
Thanks for the review and the feedback! In the examples folder, we provide notebooks with simulation setups with various levels of complexity to help the user. The simplest simulation of optical transmission (kind of a 'textbook example') is provided in basic_OOK_transmission.ipynb. This notebook would be the starting point e.g. for undergrad students who are taking a first course in optical communications. The notebook test_WDM_transmission.ipynb is a more advanced example that deals with coherent optical transmission and uses main features of OptiCommPy (coherent communications, advanced fiber optic modeling, and digital signal processing (DSP)). It is also the kind of simulation targeted by experienced users, such as researchers/engineers working with optical communications. This notebook also automatically calls for GPU processing, if a suitable GPU is available. Thus, by simply running it in e.g. Colab with and without a GPU accelerator, the user can estimate how fast a GPU speeds up the simulation (for this kind of simulation, the difference is quite significant, at least 10x faster I would expect). The other notebooks are mostly simulation scenarios to "test" various features of the code. In particular, we have included the notebook test_metrics.ipynb where all relevant functions that calculate performance metrics are tested and the results compared with results from communications theory. We are working on setting up proper automated tests for the code in the repository, but it is working in progress. @ebezzam @lucydot, I will proceed in fixing the issues listed in your preliminary review. |
@edsonportosilva - thanks for the update. As @ebezzam has already mentioned, it would be useful to have documentation to show / walk through the different features as it is difficult to know where to start with the examples folder. Often I see this as a (series of) notebooks displayed in ReadTheDocs. For example, a "Getting Started" code walkthrough showing the basic functionality. You could then link to the examples folder for the more advanced topics. This could also go some way to ensuring that the "Testing" JOSS criteria is met. We strongly encourage this would be a suite of automated tests, however the following can also be deemed acceptable:
From here. |
Sorry for the late reply, I was in leave. Below are my first comments. Functionality
Documentation
Software paper
Overall it's a very nice project, while the examples need a bit of documentation work, they do seem to cover most of the functionalities of the package. Best, |
I have now completed my review. I tried to limit my comments to new ones that have not been covered in the reviews above. In general, the package is interesting and contains a lot of features. The main issues are related to the tests and documentation, which lacks significant information (even missing whole modules). Documentation
Tests
Examples
Paper (Minor Stuff)
|
Hello @lucydot @ebezzam. Sorry for my late reply. I am currently overloaded with the end of semester tasks. @ebezzam, thanks again for the time reviewing this project. Here is the reply to your queries.
|
@taladjidi, thanks for your time reviewing this project. Please, see below the replies to the points you listed.
Thanks! :)
|
Hello @lucydot @klb2 thanks for your time reviewing this project. Please, see below the replies to the points you listed.
1 . Fixed, partially. The content in the getting started notebook available in the documentation should run without issues.
|
Thank you very much @ebezzam @taladjidi @klb2 for your thorough and timely reviews 🌟 And excellent that you have addressed so many points in a short timeframe @edsonportosilva @ebezzam @taladjidi @klb2 - please re-visit your checklist when you get a chance, and see if there are any outstanding issues blocking acceptance. Reading discussion, there may be some uncertainty around testing criteria - in which case it would be great to hear your thoughts and I can feed in with editorial viewpoint. The other key aspect was documentation. |
@editorialbot generate pdf |
Thank you for addressing my comments @edsonportosilva. I checked the code and documentation again and only some issues are remaining.
Regarding point 8 from the previous comments: In the original submission, it was not clear/documented that pytest would be required to run the unit tests. Only the |
Hello @klb2, thanks again for the feedback,
|
@editorialbot generate pdf |
@editorialbot set v0.9.0-alpha as version |
Done! version is now v0.9.0-alpha |
@editorialbot check references |
|
Hi @edsonportosilva, can you check and confirm that there are no DOIs available for the references above? I can see they are either software or book references, so less likely to be available than for journal references. After that I will recommend acceptance to the track editors 🥳 |
Hi @lucydot,
I have checked and there is no DOI available for those references, mostly because they are either software or physical books, as you noted.
Great to hear that and thank you for your guidance during this peer review process 😊 |
@editorialbot recommend-accept |
|
|
Element isbn: [facet 'minLength'] The value has a length of '9'; this underruns the allowed minimum length of '10'.
Element isbn: [facet 'minLength'] The value has a length of '9'; this underruns the allowed minimum length of '10'.
Element isbn: [facet 'minLength'] The value has a length of '9'; this underruns the allowed minimum length of '10'. |
I'm sorry @edsonportosilva, I'm afraid I can't do that. That's something only editors are allowed to do. |
Hello @lucydot, I guess something was wrong with the ISBN information in the .bib file added to the paper. I have removed this information from the file since it is not displayed in the paper. Now, perhaps the process will run without errors. |
Thanks @edsonportosilva, I'll try again now. |
@editorialbot recommend-accept |
|
|
👋 @openjournals/pe-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#5479, 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 @edsonportosilva on your article's publication in JOSS! rePlease consider signing up as a reviewer if you haven't already. Many thanks to @klb2, @ebezzam, and @taladjidi for reviewing this, and @lucydot for editing. |
🎉🎉🎉 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:
|
Submitting author: @edsonportosilva (Edson Porto da Silva)
Repository: https://github.com/edsonportosilva/OptiCommPy/
Branch with paper.md (empty if default branch): add-paper
Version: v0.9.0-alpha
Editor: @lucydot
Reviewers: @klb2, @ebezzam, @taladjidi
Archive: 10.5281/zenodo.11450597
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
@klb2 & @ebezzam & @taladjidi, 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 @lucydot 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 @klb2
📝 Checklist for @taladjidi
📝 Checklist for @ebezzam
The text was updated successfully, but these errors were encountered: