FilerJS experience

Release 0.1

    Today, I would like to tell you about my so far best amateur usage of Git as a part of "Open Source Development" class assignment submission, and I what knowledge I have acquired from it.

Well, let's start from the beginning.

    The task was to provide a fix to one of the JS files in Filer project files. The "fix" was introduced to all class attendees as a mere move from using "var" (function-scope) upon variable declaration, to "let and "const" (block-scope), which were introduced in ES6. The main idea of the assignment was to practice with such incredibly needful in programmers' lives Git commands and try (only try) to master them.
Sean Bean Lord Of The Rings | ONE DOES NOT SIMPLY DO THE NEEDFUL | image tagged in sean bean lord of the rings | made w/ Imgflip meme maker

    The file fs.watch.prec.js had been randomly chosen as my personal firing field and the issue report/assignment request has been submitted via GitHub. After a prompt response with notification from my professor that I had just gotten assigned to issue #666, the learning process started.

So, what was done?

    The change was destined to happen on my local machine; therefore, the original project was supposed to be forked to account before any change would happen. After that, the repo has been cloned on my local machine, the pwd assigned to the root of the newly cloned directory, and all dependencies installed by running npm install. At this point of time, I already read a couple articles about Git's branches, the fact of which give a bit of courage to try creating branch issue-666 myself. While in issue-666, the code was changed with super user-friendly VS Code and 
here came the time for testing. 
    Eslint took some time while installing after running npm install eslint, which gave me some extra time to brew 4th cup of tea and reading a bit more about testing in general. Eslint allows users to discover problems in their JS code without executing it. The linting tool is standalone and pluggable. Isn't it nice? When the installer finished, and the cup was half-empty/half-full, I ran npm run test:manual, switched to localhost:1234 in my browser, and real-time test started its batch job (source of the steps).

    And here's where I have gotten the first issue:
    
    There was something wrong with one of the many "watcher" instances that I recently re-declared with "const" keyword. 
    
    I tried to find which instance I should exactly look for:
    
    And it gave me a hint to look at line 28, where I successfully forgot to put "const" keyword. 

    After fixing it, the test ran as intended:


    I wanted to find out why one of the tests was skipped, so I checked the file once again, only to find that another issue was assigned to fs.watch, and the issue has been worked on:

    After all the steps above, the code was added to a commit, and pushed to my forked repo, and pull request has been sent to the original repository.

    Looking at one of the previous pr's (#498), I think I started associating every pull request as more of a separate ticket, standalone task, which gets worked on.


Comments

Popular posts from this blog

Two Different Frames of Same VidioCapture

Node.js: fs.open()

Good friend penguinV