Open jiajie0225 opened 3 years ago
Assigning @spentelow & @rtaph as reviewers.
Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
The package includes all the following forms of documentation:
setup.py
file or elsewhere.Readme requirements The package meets the readme requirements below:
The README should include, from top to bottom:
Reviewers are encouraged to submit suggestions (or pull requests) that will improve the usability of the package as a whole. Package structure should follow general community best-practices. In general please consider:
poetry install
, but the given installation commands do not workNote: Be sure to check this carefully, as JOSS's submission requirements and scope differ from pyOpenSci's in terms of what types of packages are accepted.
The package contains a paper.md
matching JOSS's requirements with:
Estimated hours spent reviewing:
3.5
Hi Joshua, Mo , Rui, and Aishwarya,
Thanks for putting this package together. I had fun playing around with some pictures using your functions! The way the functions work is very intuitive and they are definitely a time saver over playing with a bunch of matplotlib functions and transformations.
I've made note below of a few things that I think would improve the overall package. Most things are working well but I have noted a couple of items I had issues getting to work. Other than that, my comments are just on 'polishing' items (documentation etc.).
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple imageprocessor
Nice work on this project. I enjoyed reviewing/playing around with it. Let me know if you have any questions about this feedback.
Steffen
Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
The package includes all the following forms of documentation:
pip
fails at the moment (see below).usage
section yet.flipping
funtion documentation is there.setup.py
file or elsewhere.
Readme requirements The package meets the readme requirements below:
The README should include, from top to bottom:
Reviewers are encouraged to submit suggestions (or pull requests) that will improve the usability of the package as a whole. Package structure should follow general community best-practices. In general please consider:
pip
installation from testPyPI does not work. See below.padding()
to work as intended. See further below. All the others do what they say on the tin !Note: Be sure to check this carefully, as JOSS's submission requirements and scope differ from pyOpenSci's in terms of what types of packages are accepted.
The package contains a paper.md
matching JOSS's requirements with:
Estimated hours spent reviewing: 3
Dear Joshua, Mo, Rui, and Aishwarya,
Great job on getting a successful CI build and deployment! I enjoyed reviewing your work. Opening the sample image and seeing a happy lamb brought a smile to my face! 🐐 😄
$ conda create -n peer-review python=3 poetry -y
$ conda activate peer-review
$ pip install -i https://test.pypi.org/simple/imageprocessor
ERROR: You must give at least one requirement to install (see "pip help install")
I believe you can fix this by adding the --extra-index-url
option and pointing it to the normal PyPI.
Would be great to add that to your README:
pip install -i https://test.pypi.org/simple --extra-index-url https://pypi.org/simple imageprocessor
Unfortunately, I was not able to run the test suite. 😢 Here is what I get:
# Confirm working directory
$ pwd
/Users/raf/Dropbox/mds/b5/524_csd/imageprocessor
# Set up an fresh environment and install
$ conda create -n peer-review python=3 poetry -y
$ conda activate peer-review
$ poetry install
# Run pytest
$ poetry run pytest
FileNotFoundError
[Errno 2] No such file or directory
at ~/opt/miniconda3/envs/peer-review/lib/python3.9/os.py:607 in _execvpe
603│ path_list = map(fsencode, path_list)
604│ for dir in path_list:
605│ fullname = path.join(dir, file)
606│ try:
→ 607│ exec_func(fullname, *argrest)
608│ except (FileNotFoundError, NotADirectoryError) as e:
609│ last_exc = e
610│ except OSError as e:
611│ last_exc = e
flipping()
:
flipping()
changes a colour image to greyscale. Any reason for this? I see that this is mentioned in the README, but not in the docstring.greyscale()
:
raise
?padding()
:
padding("sample.jpg", 10, "abc1.jpg")
and padding("sample.jpg", 50, "abc2.jpg")
, I get the same output. But I was expecting the second to have a lot more padding. I think these lines of code need to be changed to take width
rather than 1.rotate()
:
rotate()
docstring to explain that rotation is counter-clockwise.sample.jpg
sample photo yourself? I did not see any attribution for its author and it would be great to give them credit :)/dist
folderGreat job with the 🐍 📦 . Although I put a lot of remarks above, feel free to take what's useful and leave the rest. You're not too far off from being able to tick some of the boxes. 🕺
Keep up the great work! If there's anything else I can do to help, let me know!
-Raf
Much appreciated @spentelow and @rtaph for your comprehensive and thoughtful feedback. We've learned a lot from it 👍 Hopefully, we could manage to address them all in the rest of the week. Again, thank you so much.
Submitting Author:
Package Name: imageprocessor One-Line Description of Package: A Python package that aims to make the image processing task easy and intuitive. Repository Link: imageprocessor Version submitted: 0.3.0 Editor: Tiffany Timbers (@ttimbers) Reviewer 1: TBD
Reviewer 2: TBD
Archive: TBD
Version accepted: TBD
Description
Scope
* Please fill out a pre-submission inquiry before submitting a data visualization package. For more info, see notes on categories of our guidebook.
Explain how the and why the package falls under these categories (briefly, 1-2 sentences):
Who is the target audience and what are scientific applications of this package?
Are there other Python packages that accomplish the same thing? If so, how does yours differ?
If you made a pre-submission enquiry, please paste the link to the corresponding issue, forum post, or other discussion, or
@tag
the editor you contacted: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
JOSS Checks
- [ ] 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. - [ ] 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. - [ ] The package contains a `paper.md` matching [JOSS's requirements][JossPaperRequirements] with a high-level description in the package root or in `inst/`. - [ ] The package is deposited in a long-term repository with the DOI: *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
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