Open Source

OSD Release 0.2 Part 1 Intro

Better late than never, this is my introductory post to my 0.2 release.

What project did I choose?

For this release I chose to contribute to the Desktop/Laptop version of the Brave Browser project, a free open source browser that works on all platforms, whose mission is to give users a better browsing experience.

Brave is on a mission to fix the web by giving users a safer, faster and better browsing experience – while growing support for content creators through a new attention-based ecosystem of rewards.

Much more than a browser, Brave is a new way of thinking about how the web works.

Brave is open source, and built by a team of privacy focused, performance oriented pioneers of the web, founded by the inventor of Javascript and co-founder of Mozilla.

Source:  www.brave.com/about

At first glance, I thought that this release would be an easy peasy task to do, but I came into the realization this is much more than anticipated and expected.  Such task of finding a good first bug to fix as a novice requires such dedication as I can’t gauge how simple or difficult a bug is until the moment of realization.

In this release, I have dedicated my last week or two into fixing an issue that Kamil Jozwiak published roughly a month ago at the time of this writing.  Kamil is an official member of the Brave team, therefore my initial inclination is that this is a real issue that isn’t too critical to the browser’s overall performance, nor isn’t too simple to ignore, but the overall verdict is that it shouldn’t happen.

I also think that because of the degree of this issue, the team perhaps want it fixed, but it’s not critical to get it fixed now, nor they have time for it, so they are inviting contributors to participate.

To read more about the issue, you can visit the issue page:  https://github.com/brave/browser-laptop/issues/13634

I’ve tested and verified this issue as well when I reproduced the issue on a website I visit frequently.

05

Here, you can see that upon first visit on the website, the history is recorded.

06

And then, I navigated through links inside the website…

07

And then I reproduced the error when the history page didn’t record it (Ignore the Slack notification).

08

My task for the next 7 days is to try and fix this issue, and hopefully if I do, I’ll submit a pull request and be approved for merge.

And so it begins!

 

 

Open Source

Lab 4: Getting a feel of Testing

The goal for this lab is to get a familiarity of how testing is done in development, but more specifically to this course is testing in the open source development.

To dive in deeper into the type of testing I am assigned to do for this lab, David has assigned us to contribute to the active testing of the JavaScript (ECMAscript) language itself using the test suite built for it called Test262.  Perhaps 262 means that this is the 262nd release, or something?

Getting familiar with the test suite required us to clone the repository off Github, installing and then running it to see the results.

Figure 1: Cloning the Test262 repository

Capture.PNG

Figure 2: Installing it and all its dependencies

Capture1.PNG

Figure 3: Running the test suite.  It appears that of the 205 tests that were executed, 201 has passed and 4 has failed.  It has got something to do with locale.js but I am quite not sure what it is.

Capture2.PNG

Continuing with this lab, our task was to write a simple test for the Array.prototype.reverse() functionality of JavaScript.  reverse() as literally it means to reverse the order of the elements it stores.

So I wrote a very simple test.js script that simply tests whether an array has been successfully reversed.

Capture3.PNG

The initialized an array of 6 elements, reversed it, and then passed it into another array.

I wrote two simple tests that assesses whether the second array captured the reversed values of the original array that was also reversed.  And also,  I wrote a simple test that determines whether the type of both is the same.

I saved and ran the tests, and both passed.

Capture4.PNG

And that’s pretty much it!