Closed whedon closed 6 months ago
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @sbolusani, @joaquimg it looks like you're currently assigned to review this paper :tada:.
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
:star: Important :star:
If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/JuliaCon/proceedings-review) 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
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
@whedon generate pdf
Failed to discover a Statement of need
section in paper
Wordcount for paper.tex
is 3421
Software report (experimental):
github.com/AlDanial/cloc v 1.88 T=0.09 s (406.4 files/s, 220866.5 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
CSS 2 653 33 14577
TeX 8 282 178 2855
Julia 13 149 115 1009
JavaScript 4 38 64 450
Markdown 2 20 0 71
YAML 4 2 0 71
Ruby 1 8 4 45
TOML 2 4 0 19
HTML 2 0 0 4
-------------------------------------------------------------------------------
SUM: 38 1156 394 19101
-------------------------------------------------------------------------------
Statistical information for the repository '4bdf66050d86061e21566b57' was
gathered on 2022/12/11.
The following historical commit information, by author, was found:
Author Commits Insertions Deletions % of changes
hdavid16 2 609 0 100.00
Below are the number of rows from each author that have survived and are still
intact in the current revision:
Author Rows Stability Age % in comments
Hector Perez 609 100.0 0.0 11.17
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@sbolusani @joaquimg the reviewer's guide is here: https://juliacon.github.io/proceedings-guide/reviewer/
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1287/ijoc.2015.0669 is OK
- 10.1007/978-0-387-74759-0_348 is OK
- 10.1007/978-1-4613-0215-5_8 is OK
- 10.1002/9780470400531.eorms0537 is OK
- 10.1007/11527695_15 is OK
- 10.1137/15m1020575 is OK
- 10.1137/15M1020575 is OK
- 10.3390/pr7110839 is OK
- 10.1023/a:1025154322278 is OK
- 10.1007/s10589-020-00176-0 is OK
- 10.1145/3511528.3511535 is OK
MISSING DOIs
- 10.1007/978-3-642-11503-5_12 may be a valid DOI for title: Automating mathematical program transformations
- 10.1007/s12532-017-0130-5 may be a valid DOI for title: Parallelizing the dual revised simplex method
- 10.1016/s0098-1354(98)00293-2 may be a valid DOI for title: LOGMIP: a disjunctive 0β1 non-linear optimizer for process system models
- 10.1007/s12532-011-0026-8 may be a valid DOI for title: Pyomo: modeling and solving mathematical programs in Python
INVALID DOIs
- https://doi.org/10.1016/j.compchemeng.2014.03.014 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/B978-0-323-95879-0.50141-7 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.compchemeng.2021.107616 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.compchemeng.2022.107856 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.cherd.2022.08.027 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1002/aic.14088 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.compchemeng.2015.02.013 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/S0098-1354(00)00581-0 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.compchemeng.2005.04.004 is INVALID because of 'https://doi.org/' prefix
@hdavid16 can you check the DOIs listed above, that's minor but can be done in parallel
@hdavid16 can you check the DOIs listed above, that's minor but can be done in parallel
DOIs have been updated in the repo now.
:wave: @sbolusani, please update us on how your review is going (this is an automated reminder).
:wave: @joaquimg, please update us on how your review is going (this is an automated reminder).
ping @sbolusani @joaquimg
@sbolusani @joaquimg, this is a friendly reminder to please review. Thank you.
Sorry for the delay, I am working on it.
Hi @sbolusani and @joaquimg, I'm sure you are all super busy. But just want to remind you to review this conference paper. It's been almost a year since the last JuliaCon where this work was presented...
I just reminded the two reviewers
@whedon add @joaquimg as a reviewer
I'm sorry human, I don't understand that. You can see what commands I support by typing:
@whedon commands
@whedon add @joaquimg as reviewer
OK, @joaquimg is now a reviewer
From a first pass:
Installation: Does installation proceed as outlined in the documentation?
On Julia 1.9.0, no a clean enviroment:
julia> using Pkg
julia> Pkg.add("DisjunctiveProgramming")
Installs, but returns warnings:
Info Packages marked with β
have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`
Precompiling project...
45 dependencies successfully precompiled in 482 seconds. 94 already precompiled.
3 dependencies had warnings during precompilation:
β Symbolics [0c5d862f-8b57-4792-8d23-62f2024744c7]
β WARNING: Method definition isapprox(IntervalSets.AbstractInterval{T} where T, IntervalSets.AbstractInterval{T} where T) in module IntervalSets at C:\JG\Julia\packages\IntervalSets\6RTOk\src\IntervalSets.jl:144 overwritten in module DomainSets at C:\JG\Julia\packages\DomainSets\aafhp\src\domains\interval.jl:52.
β ** incremental compilation may be fatally broken for this module **
β
β WARNING: Method definition isapprox(IntervalSets.AbstractInterval{T} where T, IntervalSets.AbstractInterval{T} where T) in module IntervalSets at C:\JG\Julia\packages\IntervalSets\6RTOk\src\IntervalSets.jl:144 overwritten in module DomainSets at C:\JG\Julia\packages\DomainSets\aafhp\src\domains\interval.jl:52.
β ** incremental compilation may be fatally broken for this module **
β
β DisjunctiveProgramming [0d27d021-0159-4c7d-b4a7-9ccb5d9366cf]
β WARNING: Method definition isapprox(IntervalSets.AbstractInterval{T} where T, IntervalSets.AbstractInterval{T} where T) in module IntervalSets at C:\JG\Julia\packages\IntervalSets\6RTOk\src\IntervalSets.jl:144 overwritten in module DomainSets at C:\JG\Julia\packages\DomainSets\aafhp\src\domains\interval.jl:52.
β ** incremental compilation may be fatally broken for this module **
β
β DomainSets [5b8099bc-c8ec-5219-889f-1d9e522a28bf]
β WARNING: Method definition isapprox(IntervalSets.AbstractInterval{T} where T, IntervalSets.AbstractInterval{T} where T) in module IntervalSets at C:\JG\Julia\packages\IntervalSets\6RTOk\src\IntervalSets.jl:144 overwritten in module DomainSets at C:\JG\Julia\packages\DomainSets\aafhp\src\domains\interval.jl:52.
β ** incremental compilation may be fatally broken for this module **
β
Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
The example in the README could be end-to-end and contain a solver, a call to optimize
and some expected results.
Also, the line @proposition(m, y[1] β¨ y[2])
is failing on windows.
Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
I could not find docs other than the README. There is a docs folder, but no link in the README. Also, there are broken links in the README.
Automated tests: Are there automated tests or manual steps described so that the function of the software can be verified?
I could not find a CI.yml with the automated tests.
Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support
No.
Authors: Does the paper.tex file include a list of authors with their affiliations?
Only the last author has an email. He is supposed to be the corresponding author?
References: Do all archival references that should have a DOI list one (e.g., papers, datasets, software)?
Many references are missing DOIΒ΄s.
I recommend that the authors go through the reviewer check list on their own to avoid multiple iterations.
@matbesancon , about:
Page limit: Is the page limit for full papers respected by the submitted document?
what is the page limit? I could not find it easily. Sorry, it is probably obvious.
@hdavid16 there is work for you :)
yes page limit is respected here :)
Also for @matbesancon , Per the reviewer guidelines (https://joss.readthedocs.io/en/latest/review_checklist.html#software-paper) and this comment (https://github.com/JuliaCon/proceedings-review/issues/117#issuecomment-1345551688) a section named "Statement of need" seems necessary. Can you confirm? If so, @hdavid16 will have to make it explicit.
Content
This seems to be the best place to comment on paper presentation.
I have a few main points:
1) Models in section 2.2 are confusing because they are not self-contained. They are simply groups of formulas that show up as needed, and the text dictates how to combine them. Although it is possible to understand, it could be more straightforward.
For instance, instead of having a paragraph: "... this model is given by (13), (16)-(19)..." and only show the additional (16)-(19) one could do: "... this model is given by (16)-(20)..." and show (16)-(20) where (16) repeats (13) or adds it explicitly:
(13) (16)
new eq... (17)
new eq... (18)
new eq... (19)
new eq... (20)
2) In "Note: any negated Boolean variables, Β¬Yi, are replaced with 1 β yi in the reformulation" It is not clear if should be a term in the sum (this seems off) or if there would be and additional variable zi = 1 β yi (this looks good). Not sure here...
3) sections 2.4.2 and 2.4.3 seem to be not very related to the remainder of the paper. They are not mentioned as future work. So they might be better as one sentence comment in a section the focuses more on 2.4.1 which is the relevant piece for the paper.
4) From paper and readme it is not clear what is the difference between @disjunction
or add_disjunction!
.
From the example, it is not clear if the chosen usage was necessary to define the problem or if it was an arbitrary choice.
5) reference [11] seems off.
6) fix JuMP capitalization in references [9] and [10]
@joaquimg thank you for your review.
The package has just gone a complete rewrite and has now been released (v0.4). With this new release:
optimize!
call added to README and docs.Regarding your main points:
I look forward to your feedback.
@whedon generate pdf
@whedon check references
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1007/978-3-642-11503-5_12 is OK
- 10.1007/s12532-017-0130-5 is OK
- 10.1007/978-3-030-00148-3 is OK
- 10.1016/s0098-1354(98)00293-2 is OK
- 10.1287/ijoc.2015.0669 is OK
- 10.1007/978-0-387-74759-0_348 is OK
- 10.1016/j.compchemeng.2014.03.014 is OK
- 10.1007/978-1-4613-0215-5_8 is OK
- 10.1007/978-3-030-68928-5 is OK
- 10.1007/s12532-011-0026-8 is OK
- 10.1016/B978-0-323-95879-0.50141-7 is OK
- 10.1016/j.compchemeng.2021.107616 is OK
- 10.1016/j.compchemeng.2022.107856 is OK
- 10.1016/j.cherd.2022.08.027 is OK
- 10.1002/9780470400531.eorms0537 is OK
- 10.1007/11527695_15 is OK
- 10.1137/15M1020575 is OK
- 10.1137/15M1020575 is OK
- 10.3390/pr7110839 is OK
- 10.1002/aic.14088 is OK
- 10.1007/978-3-030-00148-3 is OK
- 10.1016/j.compchemeng.2015.02.013 is OK
- 10.1016/S0098-1354(00)00581-0 is OK
- 10.1002/9781118627372 is OK
- 10.1023/a:1025154322278 is OK
- 10.1007/s10589-020-00176-0 is OK
- 10.1145/3511528.3511535 is OK
- 10.1016/j.compchemeng.2005.04.004 is OK
- 10.48550/arXiv.2202.05198 is OK
- 10.48550/arXiv.1510.01791 is OK
MISSING DOIs
- None
INVALID DOIs
- None
@hdavid16 while we are waiting for confirmation from @joaquimg that the changes are satisfactory, one step to do is archiving on Zenodo the current version of the software and giving us the corresponding DOI that gets generated
@matbesancon here it is: 10.5281/zenodo.10144853
@whedon set archive 10.5281/zenodo.10144853
I'm sorry human, I don't understand that. You can see what commands I support by typing:
@whedon commands
@whedon commands
Here are some things you can ask me to do:
# List all of Whedon's capabilities
@whedon commands
# Assign a GitHub user as the sole reviewer of this submission
@whedon assign @username as reviewer
# Add a GitHub user to the reviewers of this submission
@whedon add @username as reviewer
# Re-invite a reviewer (if they can't update checklists)
@whedon re-invite @username as reviewer
# Remove a GitHub user from the reviewers of this submission
@whedon remove @username as reviewer
# List of editor GitHub usernames
@whedon list editors
# List of reviewers together with programming language preferences and domain expertise
@whedon list reviewers
# Change editorial assignment
@whedon assign @username as editor
# Set the software archive DOI at the top of the issue e.g.
@whedon set 10.0000/zenodo.00000 as archive
# Set the software version at the top of the issue e.g.
@whedon set v1.0.1 as version
# Open the review issue
@whedon start review
EDITORIAL TASKS
# All commands can be run on a non-default branch, to do this pass a custom
# branch name by following the command with `from branch custom-branch-name`.
# For example:
# Compile the paper
@whedon generate pdf
# Compile the paper from alternative branch
@whedon generate pdf from branch custom-branch-name
# Remind an author or reviewer to return to a review after a
# certain period of time (supported units days and weeks)
@whedon remind @reviewer in 2 weeks
# Ask Whedon to do a dry run of accepting the paper and depositing with Crossref
@whedon recommend-accept
# Ask Whedon to check the references for missing DOIs
@whedon check references
# Ask Whedon to check repository statistics for the submitted software
@whedon check repository
EiC TASKS
# Invite an editor to edit a submission (sending them an email)
@whedon invite @editor as editor
# Reject a paper
@whedon reject
# Withdraw a paper
@whedon withdraw
# Ask Whedon to actually accept the paper and deposit with Crossref
@whedon accept deposit=true
@whedon set 10.5281/zenodo.10144853 as archive
OK. 10.5281/zenodo.10144853 is the archive.
@whedon set v0.4.1 as version
OK. v0.4.1 is the version.
@hdavid16 for stylistic reasons, can we replace the successive equations by an align
block? This will look much nicer
same for all optimization problems, prefer a template like:
\begin{align*}
\min_{x}\,\, & f(x) \\
\text{s.t. }\, & g(x) \leq 0 \\
& x_i \in X && \forall i \in .. \\
& x \in \mathcal{X}
\end{align*}
I do re-iterate @matbesancon comment.
Other than that, good to go on my side.
Great work and congratulations for the nice package!
@joaquimg and @matbesancon the paper has been updated on master
as you requested (replacing all equations/expressions with align*
blocks).
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@whedon recommend-accept
Attempting dry run of processing paper acceptance...
Submitting author: !--author-handle-->@hdavid16<!--end-author-handle-- (Hector Perez) Repository: https://github.com/hdavid16/DisjunctiveProgramming.jl Branch with paper.md (empty if default branch): Version: v0.4.1 Editor: Reviewers: @sbolusani, @joaquimg, @joaquimg Archive:
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
@sbolusani & @joaquimg, 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 @matbesancon 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 β¨
Review checklist for @sbolusani
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Paper format
paper.tex
file include a list of authors with their affiliations?Content
[ ] Context: is the scientific context motivating the work correctly presented?
[ ] Methodology: is the approach taken in the work justified, presented with enough details and reference to reproduce it?
[ ] Results: are the results presented and compared to approaches with similar goals?
Review checklist for @joaquimg
Conflict of interest
[x] As the reviewer I confirm that I have read the JuliaCon conflict of interest policy and that there are no conflicts of interest for me to review this work.
Code of Conduct
General checks
Functionality
Documentation
Paper format
paper.tex
file include a list of authors with their affiliations?Content