panosz / alpha_shapes

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

documentation and type hinting #6

Open panosz opened 1 year ago

panosz commented 1 year ago

code is in need of docstrings and type hints

Rhobar9 commented 1 year ago

I would like to tackle the issue. Can I?

panosz commented 1 year ago

@Rhobar9

Absolutely, your help would be greatly appreciated!

If you feel more comfortable working on your own fork, feel free to do so. Alternatively, you're also welcome to work directly in this repository. Here are some steps to keep in mind:

  1. Start by creating a new branch for this specific issue. Consider using a descriptive name such as 'docs_and_type_hints' which would help in identifying the purpose of the branch.

  2. As you make changes, commit them locally with meaningful commit messages. This practice is important for maintaining a clean and understandable commit history.

  3. Periodically push your changes to the remote repository. This ensures your work is backed up and allows others to follow your progress.

  4. Once you've completed your work, or if you want some feedback midway, go ahead and open a pull request. This initiates the process of merging your changes back into the main codebase.

Thank you for expressing your interest in contributing to this project. Your effort is much appreciated and we're looking forward to seeing your work!

Best, panosz

Rhobar9 commented 1 year ago

Thank you for whole bunch of advices:) I really appreciate it and I will obey all of them. For security and order sake I will create my own fork.

Best regards, Rhobar9

Rhobar9 commented 1 year ago

Hi panosz, I have made docs for almost all objects in alpha_shapes.py file. Therefore I have a question. When I should open a pull request? At the end of work or after part of task? Thank you in advance:) Regards,

panosz commented 1 year ago

Hey @Rhobar9, You're welcome to open a pull request as early as you're comfortable with. No need to wait until you believe you've completed the task. Early PRs give us a chance to review your contribution, offer insights, and help steer your efforts in the right direction. This way, we can avoid duplicating work and ensure smooth progress.

I anticipate that there may be some merge conflicts since the main branch has moved ahead from the point when you forked your copy. By opening a pull request, we can address these potential issues together.

Again, I truly appreciate your contribution and am excited to see your work.

Best Regards, panosz

Rhobar9 commented 1 year ago

Thank you for hints:) Thus I will make docstrings and type hints for all files in alpha_shapes directory and then I will start PR. I have made approximately 70-80 % work for this part of code because I tends to fully cover docs all objects. If we dicuss this part, writing docs and type hints for rest of directories will be easier. What do you think about this idea? Maybe we will establish some channel of communication for project besides Github? Best regards, Rhobar9

panosz commented 1 year ago

Hi @Rhobar9,

Regarding the establishment of another communication channel, while I see its potential benefits, I believe keeping as many discussions as possible on GitHub could be more beneficial for the project. GitHub discussions serve as a public record of all the conversations, decisions, and problem-solving processes related to specific issues. This transparency can be helpful for both current and future contributors to understand the project's history and rationale behind certain decisions.

However, I understand that there might be a need for more direct or real-time communication at times. For such instances, we could use email or set up meetings through Skype or any other platform you may want to suggest. Let me know your thoughts on this.

Thank you for your hard work and your open communication. Looking forward to seeing your pull request.

Best, panosz

Rhobar9 commented 1 year ago

Hi @panosz Currently I opended a PR. I encourage you to indicate doubts and parts of code to rewrite. I will make amendements. I really appreciate your knowledge about Git and Github workflow. It helps me with properly planning work and smoothly writing code. Thus main discussion, especially about technical topics, will have place on Github. I will send email to you in order to set up personal communication on Skype. Best, Rhobar9

Rhobar9 commented 11 months ago

Hi @panosz ! I have made amendments of docstrings some time ago. I didn't bother you because you're working at many serious projects. Now I am writing because I have an idea for the rest of doctrings and even tests if you agree of course. If the docstrings are inappropriate, I can either change them or work on a simpler task. Just please give me feedback on this. Thank you for the cooperation so far. I have learned a lot from you. If there's something I need to improve, don't hesitate to let me know. Best wishes:)

panosz commented 11 months ago

Hi @Rhobar9 My sincere apologies for the delay in reviewing your contributions. Your patience is genuinely appreciated.

I've just submitted a review of the docstrings you've amended. Your dedication and proactive approach stand out, and I value that. Let's go through the comments and work on them collaboratively. I'm also interested to hear your ideas regarding the remaining docstrings and tests.

Thank you for being an integral part of our project. Looking forward to more collaborations.

Best wishes :)

Rhobar9 commented 11 months ago

No pressure, no worries:) I understand that you're really busy, and it was the holiday season. Collaborative work may be necessary. I think I understand this project holistically. However, I don't have such extensive programming knowledge to refine all the details in a public project available through pip. So now I will work with our opened PR, then I will try add rest of docstrings and simple tests. I am very pleased with our cooperation so far. Maybe can I help you with another project? I have basic experience in programming C++ and JavaScript languages also. Best:)

panosz commented 11 months ago

@Rhobar9, You may want to take into account the discussion on #13 about optimize, when writing your docstrings. There is at least one user who is unhappy about the lack of documentation on this method in particular.

Rhobar9 commented 11 months ago

Hi @panosz ! I will do it obviously. I will pay special attention to this matter. I have already done most of the work in improving the docstrings. I want to do it as well as I can. That's why I want to refine some docstrings. I am going to end amendments within this week. Best:)

Rhobar9 commented 10 months ago

Hi @panosz! I am so sorry for my big delay. I didn't waste this long time. I have spend it on playing around with the project mechanisms, studing numpy package, styles of docstring etc. I made a little piece of work now. I have corrected the errors you pointed out. Unfortunately I also corrected what seemed inaccurate to me at this point of work, so you have to be cautious during next review. I standarized doctrings according this pattern: https://www.sphinx-doc.org/en/master/usage/extensions/example_google.html . In my docstrings I focused on outcome now, no on the process. Please tell me if my work is generally heading in the right direction. I have also one technical question now. You indicated that I should provide info when base class of Delaunay class. I totally agree with your idea. But how should I do it? Like in the case of the Delaunay class? Should I I describe all exceptions of Triangulation class? Thank you for your big patience:) Many of these things are new to me. You are very good teacher:) Best whishes:)

Rhobar9 commented 8 months ago

Hi @panosz! I still remember about alpha_shapes project and my task. I have already completed the larger part of the task. I need to refine the type hints thoroughly and new commit will be done. I'm writing this to make sure you have no doubts that I'm still committed to the project. I have just had a bit less free time lately. Merry Christmas and Happy New Year to you, my friend!