Contributing to Source Projects

For this assignment, we had to fix bugs and add features to existing source projects. This was to be done by submitting issue reports, then using Git creating new branches to push our changes to, before creating pull requests to request that the source project's owner merge out changes to the master branch.

Here are the bug fixes and features I implemented:

Issue:

The bug I fixed was a bug where the "Note Saved" message would be displayed upon opening the web page for the first time, before any note had been entered. This was misleading, as there was no data besides the default string to be saved, and the program wasn't saving any data anyways.
The fix for this bug was simple, and only involved removing the placeholder text in the HTML element displaying the note's save status.
<span id="status" class="saved"></span>
Feature:

The feature I added was a manual save feature using a hotkey combination of CTRL+S. It uses JQuery to check for the key combination, saves the note when the combination is pressed. The script also prevents the default action for CTRL+S from being performed, preventing the "Save page as..." window from popping up.
            $(document).keydown(function(e){
                if(e.ctrlKey && e.keyCode == 83){
                    e.preventDefault();
                    fs.writeFile('/note',document.querySelector('#note').innerText );
                    console.log("Saved");
                }
            });
I was initially planning to add a save indicator as well, but an issue was already submitted proposing that a save indicator feature be added, so I am assuming the submitter is already working on said feature.

Pull Request Review:
When checking my project's pull requests, I first cloned the branch to ensure the code worked as intended. I then read over the code to check for any logic or syntax that could be unproved. Finally, I accepted the pull request and merged the branch into the main branch.
The one Pull Request I received implemented the proposed feature properly, so I merged it into the master branch of my project.

Community Involvement:
In order to get involved with the community, I contributed to several other projects with bug fixes and additional features. I also encourage others to look over my code and make any changes they feel will improve my note taking application. 
 

Links:
Issues:
https://github.com/c3ho/whiteboard/issues/3
https://github.com/lozinska/my-note/issues/6

Pull Requests:
https://github.com/c3ho/whiteboard/pull/4
https://github.com/lozinska/my-note/pull/7

Pull Request Reviews:
https://github.com/jordanhui19/whiteboard/pull/2

Comments

Popular posts from this blog

The Real Time Voice Cloning Toolbox

Preparing For Hacktoberfest

The Whiteboard Note Taking App