panosz / alpha_shapes

A Python library for working with alpha shapes
MIT License
45 stars 9 forks source link

Docstrings and type hints #12

Open Rhobar9 opened 1 year ago

Rhobar9 commented 1 year ago

Commits add docstrings and type hints for alpha_shapes.py and plotting.py files. Docstrings follow Google Style Python Docstrings pattern. Please, keep particular attention at type hints. I have checked it many times. However it was most challenging part of task, in few methods flow of object is quite advanced. Maybe I made a mistake somwhere. I am open for hints and discussion. If need of amendments occurs, I will rewrite code. Regards, Rhobar9

panosz commented 1 year ago

Thank you for this PR. As you may have already noticed, there are some merge conflicts. Please, add a new commit that resolves them, before we can go on with the review. Here are some instructions on how you may do this:

  1. Update Your Local Master Branch:

    Before you resolve the merge conflict, ensure that your local master branch (or main branch if you're using newer conventions) is up-to-date with the original repository. You can do this by adding the original repository as a remote (if you haven't done this already) and then pulling from it:

    git remote add upstream git@github.com:panosz/alpha_shapes.git
    git fetch upstream
    git checkout master
    git merge upstream/master
  2. Checkout Your Feature Branch:

    After you've updated your master branch, checkout your feature branch which has the conflict with the original repository:

    git checkout docstrings_and_type_hints
  3. Merge Your Updated Master Branch Into Your Feature Branch:

    Merge your updated master branch into your feature branch:

    git merge master

    Now, you are likely to face merge conflicts.

  4. Resolve Merge Conflicts:

    Git will give you an output indicating which files are conflicted. Open those files and you'll see something like this:

    <<<<<<< HEAD
    your changes
    =======
    changes made by others
    >>>>>>> commit_id

    You have to decide which changes to keep. You can keep your changes, their changes, or even both. Once you've resolved the conflict, delete these markers.

  5. Commit Your Resolved Files:

    After you've resolved all conflicts, add your resolved files with git add alpha_shapes/alpha_shapes.py. Once all resolved files are added, commit the changes:

    git commit -m "Resolved merge conflicts"
  6. Push Changes to Your Forked Repository:

    Finally, push your changes back up to your forked repository:

    git push origin docstrings_and_type_hints

Your PR in the original repository will automatically get updated with your latest push.

Rhobar9 commented 1 year ago

Yes, I have seen merge conflicts. I was waiting for your comment and approval on solving them. Thank you for hints. I will solve merge conflicts possibly fast as I can.

Rhobar9 commented 1 year ago

I have resolved merge conflicts. Now everything should be fine. I will briefly explain the idea that guided me in sloving the problem. I did not touch the code responsible for mechanics of objects and project. I copied this part of code from upstream. Overall I was trying copy also your docstrings and comments. I have change them only when it was necessary due to coherency. We can start review now, I suppose. Best regards, Rhobar9

panosz commented 1 year ago

I also noticed that the .idea directory from your local IntelliJ IDEA configuration has been inadvertently committed to the repository. This directory typically contains user-specific settings and should generally not be part of the version-controlled code.

To rectify this, I've updated the .gitignore file in the repository to exclude the .idea directory. Here are the steps you should follow to remove the .idea files from your branch:

  1. Pull the latest changes from the original repository (upstream) to your local master branch:

    git checkout master  # switch to your local master branch
    git pull upstream master  # pull the latest changes, including the updated .gitignore

    If you haven't already, you can add the original repository as "upstream" with this command:

    git remote add upstream git@github.com:panosz/alpha_shapes.git
  2. Merge the updated master branch into your docstrings_and_type_hints branch:

    git checkout docstrings_and_type_hints  # switch to your feature branch
    git merge master  # merge changes from master branch into feature branch
  3. Now, remove the .idea directory from your docstrings_and_type_hints branch:

    git rm --cached -r .idea  # untracks the .idea directory
  4. Commit and push these changes to your fork:

    git commit -m "Remove .idea directory from version control"
    git push origin docstrings_and_type_hints  # push changes to your remote feature branch on your fork

These steps will ensure that the .idea directory is untracked from Git while still existing on your local machine.

As always, if you have any questions or need further assistance, please let me know.

Rhobar9 commented 1 year ago

Hi @panosz! As always, I really appreciate your hints and rich knowledge. Obviously I will follow them. I will remove all docstrings from init methods. I will introduce changes to docstrings according your pattern. I enjoy working with you on this project. If needed, I am ready to make further amendments. Of course I will remove .idea files from my repository. Probably I put these files in wrong directory and then typed git add -A command instead git add -u. Kind regards

panosz commented 1 year ago

Hey @Rhobar9 I just wanted to check how it's going. Are you still pursuing this?

Rhobar9 commented 1 year ago

Hi @panosz ! Yes, I am writing last changes. I hope it is only matter of days now. Thank you for patience and involvement. I am glad of our cooperation. I will finish this PR and make docstrings for another files. Kind regards:)

panosz commented 1 year ago

No pressure! Take your time and enjoy.

Rhobar9 commented 1 year ago

Hi again @panosz ! I am so sorry that I made a little bit mess. Yesterday I badly estimated size of needed work and my free time. Today I finished docs, at least for presentation and further amendments:) In few spots I made utter changes. Unfortunately sometimes your work may resemble new review. If you notice any code that needs improvement, please let me know without hesitation. I am ready to make amendments until we achieve a positive outcome Kind regards

Rhobar9 commented 10 months ago

I have just pushed the code. I will describe my doubts and the scope of work in detail in the issue discussion.