Team Serv0101 (Servo) [2017]
- Starts On
- July 01, 2017
- Finishes On
- September 30, 2017
- Last Activity
- September 26, 2017
Sources
ActivitiesAtom Feed
September 26, 2017
Day 54-62
Team Serv0101 (Servo) [2017] — at September 26, 2017 18:12 UTC
Last week was pretty busy one. We have finally submitted our PR(Hopefully they will get merged this time).
We had a small party with our supervisor last weekend. You can assume it as RGSoC End Party.
We both are working on new issues as suggested by our mentor.
Wrote a blog about our JSFOO 2017 conference experience.
Sad to see we are at the End of RGSoC :(
September 20, 2017
Day 52 & Day 53
Team Serv0101 (Servo) [2017] — at September 20, 2017 18:26 UTC
Weekend spend well in JSFoo 2017 conf.
We would like to thank RGSoC team for giving us a free ticket to JSFoo.
JSFoo was in Bangalore, India so it was convenient for us to travel.Things we did in JSFoo:
* Learned what is WebVR.
* UsingA-frame
created basics hello world VR.
* Aframe is a web framework for building virtual reality experiences. To learn more about it go to the official website https://aframe.io/
* Meet many developers and speakers.
* Discussed our work in servo and encouraged other girls to contribute in open source.
Day 50 & Day 51
Team Serv0101 (Servo) [2017] — at September 20, 2017 18:17 UTC
- We are done with our task.
- Neha's PR #18313 will merge soon and Rakhi PR #17808 is left with few test cases.
- Got an email from Josh for our next task
September 12, 2017
Day 49
Team Serv0101 (Servo) [2017] — at September 12, 2017 14:53 UTC
Day went very well with both the PRs.
* Working on nits
* Testing out code using ' ./mach test-tidy'
* Had a talk with our mentor and coaches and they helped us with some issue
* We can see people are taking interest in our PRs and they are also suggesting small changes
September 11, 2017
Day 46-47-48
Team Serv0101 (Servo) [2017] — at September 11, 2017 05:17 UTC
First two days+weekends, we learn few complex concepts of rust programming language.It's been two months, now we are confident enough about our understanding of codebase of Servo. Today we are planning to update our PR's and if PR got approved then we will pickup the next task and start working.
We also have to write blog. We are collecting our data about whatever we did during last 2 months.
Also this Friday we are going to attend JSFoo conference. Thanks to RGSoC for arranging tickets. Well we are pretty much excited.
September 06, 2017
Day 43-44-45
Team Serv0101 (Servo) [2017] — at September 6, 2017 05:26 UTC
Wrote test cases and pushed the latest code and got lot, I mean really lot of comments :P So we both ended up writing more test cases. Though this time I am happy to inform we are very close(our mentor said that Yay :) ). during these 3 days we updated patches 2-3 times.
Hoping to start working on other issues soon.
August 31, 2017
Day 41 & Day 42
Team Serv0101 (Servo) [2017] — at August 31, 2017 09:43 UTC
Things we did:
* Neha resolved most of the issue of srcset algorithm and her test cases is passing perfectly.
* We both left with few test cases and we are hoping that our both PR will merge soon.Things we learned :
Neha learnt one thing about git while rebasing.
While rebasing if you rebase themerge
commit also then, there are chances that all the commit inside that merge commit will open and get overlap on your commit.
And you are not able to see you commit at HEAD
So to get back your commit do this:
user@ae4320e553db:~/servo (parseSrcset) $ git reflog
SHA1 HEAD@{12}: otherusercommitmessage
SHA2 HEAD@{13}: otherusercommitmessage1
SHA3 HEAD@{14}: otherusercommitmessage2
:
:
SHA34 HEAD@{120}: yourcommitmessage1
SHA35 HEAD@{121}: yourcommitmessage2
SHA36 HEAD@{122}: yourcommitmessage3find your commit message and copy SHA of that commit
. Now suppose your SHA isSHA34
user@ae4320e553db:~/servo (parseSrcset) $ git checkout SHA34
user@ae4320e553db:~/servo ((SHA34)) $ git checkout -b srcset [This will lead you to a new branch]
user@ae4320e553db:~/servo (srcset) $ git log --oneline
SHA34 (HEAD -> srcset, origin/parseSrcset) yourcommitmessage1
SHA35 yourcommitmessage2
SHA36 yourcommitmessage_3Now you see your commit on head
Next step is to delete the old branch where you messed up thing and move your current branch to new branch
user@ae4320e553db:~/servo (srcset) $ git branch -D parseSrcset
user@ae4320e553db:~/servo (srcset) $ git branch -m parseSrcset
user@ae4320e553db:~/servo (parseSrcset) $
You are done now.Thanks to our coach Ravi who helped me to get out of this.
Day 40
Team Serv0101 (Servo) [2017] — at August 31, 2017 05:57 UTC
Things we did:
The janitor is working fine now. Neha's is moving her work from her local repo to the main project.
Rakhi has written more test cases and updated the PR, she is waiting for the review from our mentor Josh. After that hopefully, if everything went well she will start working on next part of the project.
August 29, 2017
Day 39
Team Serv0101 (Servo) [2017] — at August 29, 2017 10:43 UTC
Things we did:
* Had a weekly talk with our supervisor and discussed the project status.
What Neha did:
* Janitor again stopped working and Neha again got stuck in her work. Neha had a talk with one of the janitor maintainer and he told us that Janitor server again went down and a proper failover server requires a full setup. So, again it will take 1, 2 Days.
* At the end of the day, Josh(mentor) helped Neha and resolved her problem by giving her a great idea of creating a new project on her machine usingcargo new srcset
Josh gave her all necessary code that she need in this file. Big thanks to Josh.
* Now Neha is able to hack on her code more quickly than servo ;)
What Rakhi did/doing:
She is writing more test case these days.
August 26, 2017
Day 37- Day 38.
Team Serv0101 (Servo) [2017] — at August 26, 2017 12:30 UTC
Spent time writing more test case. Got to learn one thing- Never ever think that particular part is something that is going to be easy. We both thought test will be something that we can finish very easily. And believe us test is something that is giving us tough time. Though that's good because we are getting to learn lot of things.
August 23, 2017
Day 36
Team Serv0101 (Servo) [2017] — at August 23, 2017 14:20 UTC
The whole day went well:
* We had a talk with the mentor and he told us that specification is confusing forparse srcset algorithm
and he opened an issue for this.
you can find an open issue here ->https://github.com/whatwg/html/issues/2958
* We resolved so many things with the help of our coach Rahul.
* We refactored the code for the srcset algorithm.
August 21, 2017
Day 35
Team Serv0101 (Servo) [2017] — at August 21, 2017 18:42 UTC
The Whole Day:
I was already feeling sad after watching the GOT's episode 6th of season 7 ðŸ˜ðŸ˜ðŸ˜ #OnlyGotFanCanUnderstandTheReason .
After that got a new reason to get depress ~~> Dealing with errors, Servo build failing after pull. Whole day got wasted can't believe this, still can't see any solution ðŸ˜Update: Finally got a solution, After discussing with our mentor, Josh suggested to use a version of servo from before a7815aa commit. And yes it is working(I am 3 commits behind the mentioned one). A big relief!
August 18, 2017
Day 34
Team Serv0101 (Servo) [2017] — at August 18, 2017 08:35 UTC
I am Back. I am all well now! So what I and Neha did on day 34.
* Neha's Bad: she is still dealing with Janitor issue. Janitor is facing problem. Neha updated her pull request but still while writing some new testes she did lot changes in pull request and Janitor stopped working instantly, She unfortunately didn't had her changes with her. I hope Janitor will start working properly so that we can get back on track asap.
* For me last week was not that good. I was sick. But I am back with lot of energy. Rahul was helping me writing more test cases for sizes issue last day. I will update the pull request soon.
* I hope we will start working on other issues soon.P.S: Today is 35th day and it's is RGSoC dayOff. I don't know how but i totally forgot about this. I don't know how this happened because I never forget about holidays 😜
August 16, 2017
Day 33
Team Serv0101 (Servo) [2017] — at August 16, 2017 20:57 UTC
Janitor worked for some time and then again it failed.
In those time we are able to get the access to Neha's remote.
So many things have changed today on parse srcset algorithm.Things we learned while updating the code for a srcset algorithm is:
* loop { } : Rust provides aloop
keyword to indicate an infinite loop. The break statement can be used to exit a loop at any time, whereas the continue statement can be used to skip the rest of the iteration and start a new one.
* Bindings: You can bind values to names with@
. Let's see an example to understand it properly.let x = 1;
match x {
e @ 1 => println!("Value: {}", e),
_ => println!("anything"),
}This will print
Value: 1
Day 31 & Day 32
Team Serv0101 (Servo) [2017] — at August 16, 2017 20:35 UTC
Things were not working properly.
Janitor stopped working on Friday eve(Day 30).
After janitor stopped working we are not able to access our remote and we can not even see our branches. Everything is stopped because of this.
We had a talk with people who are working closely with the janitor and they are working on resolving this issue.
August 11, 2017
Day 30
Team Serv0101 (Servo) [2017] — at August 11, 2017 11:12 UTC
HAPPY BIRTHDAY RAKHI :)
So today is her birthday and she is sick. (Get well soon dear)Rakhi is on complete rest today and we will soon have a small birthday party.
While going through the srcset algorithm we figured out something wrong.
Things are changed in the code but still lot of work is left.
Day 29
Team Serv0101 (Servo) [2017] — at August 11, 2017 11:04 UTC
Hello, everyone!
While going through test cases of srcset. Test cases started failing :/
Going through each and every step of an algorithm to check where our code is wrong.Rakhi is suffering from the viral fever so she is having rest.
August 08, 2017
Day 27 & Day 28
Team Serv0101 (Servo) [2017] — at August 8, 2017 19:05 UTC
So many learning is going on while writing test cases.
A new thing that we learned is:
PartialEq -> It is a trait for equality comparisons.
This trait can be used with #[derive]. When derived on structs, two instances are equal if all fields are equal, and not equal if any fields are not equal. When derived on enums, each variant is equal to itself and not equal to the other variants.
It has two methods :
1. fn eq(&self, other: &Rhs) -> bool
This method tests for "=="
2. fn ne(&self, other: &Rhs) -> bool
This method tests for "!="
Day 26
Team Serv0101 (Servo) [2017] — at August 8, 2017 18:52 UTC
It's a regular day for us today as well.
We got to know about so many things about servo while testing our code.
For example:
If you run this --> ./mach test-tidy
This is a source code tidiness check. And it is a good idea to run this test before submitting PR.Had a regular discussion with our mentor and coaches.
August 04, 2017
Day 24 & Day 25
Team Serv0101 (Servo) [2017] — at August 4, 2017 15:41 UTC
- Updated PR for srcset .
- Progress on both sizes and srcset test cases.
- Went through some more tutorials of Rust.
August 03, 2017
Day 22 & 23
Team Serv0101 (Servo) [2017] — at August 3, 2017 05:28 UTC
Updated PR for Srcset.
Gone through some new topics of Rust.
Yesterday we were facing Internet connectivity issue, not exactly a good day for us. Issue is fixed now. So we are back on track .
July 31, 2017
Saturday and day 21
Team Serv0101 (Servo) [2017] — at July 31, 2017 19:06 UTC
*Day 21:-
Writing more test cases for srcset and sizes. Both components are going parallely.
*Saturday
Met one of our coach Rahul. He cleared lot of our doubts. He also helped us with test cases and understanding the comments that we got on Sizes and Srcset PR for further improvement.
Had Pizza yumm.. :)
July 28, 2017
Day 18 & Day 19 & Day 20
Team Serv0101 (Servo) [2017] — at July 28, 2017 15:24 UTC
- Sent another PR for parsing srcset algorithm.
- Updated parsing sizes algorithm with few test cases.
- Refactoring of code.
- Planned a meet up with a coach on Saturday.
July 26, 2017
Day 17
Team Serv0101 (Servo) [2017] — at July 26, 2017 05:09 UTC
- We spent most of our day reading the docs about testing in rust.
- Discussed different ways of writing testing for the last PR we sent.
- Wrote one test case that passed successfully, but still we are struggling with testing part and this is depressing :P
July 24, 2017
Day 15, weekend & day 16
Team Serv0101 (Servo) [2017] — at July 24, 2017 18:05 UTC
Day15:
* Big day! We were able to send our first PR of parsing sizes. That is the first step towards our contribution to the project.
Weekend(Saturday):
* Met one of our coach Rahul Sharma.
* Cleared our doubts about rust language, servo and testing! Also, we had Pizza. Yummy.
Day16:
* We are done with setting up Janitor.
* Went through other testing files. Started writing testcases.
* Will send PR for Srcset soon.
July 20, 2017
Day 14
Team Serv0101 (Servo) [2017] — at July 20, 2017 18:27 UTC
Things we learned:
* try: try execute the closure, passing it to the parser.
fn try(&mut self, thing: F) -> Result
where F: FnOnce(&mut Parser<'i, 't>) -> ResultParserContext: The data that the parser needs from outside in order to parse a stylesheet.
Made progress on parse size algorithm.
July 18, 2017
Day 12 & Day 13 (When we decide to TOSS a COIN)
Team Serv0101 (Servo) [2017] — at July 18, 2017 22:16 UTC
What we did:
We are very serious about sending our first PR now. We both were stuck with errors. Today we decided to finish one of the issue first. And that was fun how we decided which issue we gonna work on first, we both are working on different issue, so we both wanted to resolve our own issue first. Finally, we decided to TOSS a COIN and guess what? I won ((issue number #10989 won) that was funny and interesting :P
So now we are working on Sizes issue (#10989).
Today was pretty good as we were able to resolve lot of errors (from 11 to 5 now). Hope fully we will send our PR by the end of this week.Togetherwecandoanything!
July 17, 2017
Day 10 & Day 11
Team Serv0101 (Servo) [2017] — at July 17, 2017 20:58 UTC
Last weekend we had the meetup with the local rust community members.
In the meetup, we learned about references and borrowing. We will cover these topic breifly in coming blogs.
It was the great time spending with Rust community people and we also met one of our coach who introduced us to this community.Things we learned:
* Iterator and Enumerator:
fn main () {
Let foo = vec![1, 3, 7, 9, 12, 25, 27];
for (i, item) in foo.iter().enumerate() {
println!("the { }th item is { }", i+1, item);
}
}
Output:
the 1th item is 1
the 2th item is 3
the 3th item is 7
so on...Iterator: It gives us a sequence of things.
Enumerator: Creates an iterator which gives iteration count as well as the next value.Generic Data Type : It is more flexible, provide more functionality and remove code duplication.
Generic function -->
fn foo(list:&[T]) ->THere T : Type parameter
The function foo is generic over some type T. It has one parameter named list and type of list is a slice of values of type T
The foo function will return a value of the same type T.
July 13, 2017
Day 8 & Day9
Team Serv0101 (Servo) [2017] — at July 13, 2017 18:09 UTC
Things we did:
* Understanding specification became hard for us. Coaches helped us in understanding that thing.
Follow this guide --> https://html.spec.whatwg.org/#how-to-read-this-specification
* As Rust is new for us, we are implementing a small program and learning it.
* This weekend we are invited to a meetup in Rust community Bangalore. There we will discuss our doubt and we are going to meet our coach also.
July 11, 2017
Day 7
Team Serv0101 (Servo) [2017] — at July 11, 2017 18:27 UTC
Hey!
Things we did:
* On the way of srcset algorithm and facing so many challenges.
* Asked our queries on IRC and discussed things with Mentor and coaches.
* Had a 2nd-week meeting with our supervisor Vaishali.
* Parallelly started working on parsing sizes algorithm.
July 10, 2017
Day 6
Team Serv0101 (Servo) [2017] — at July 10, 2017 18:16 UTC
Hello everyone!
We started making change in our code. Started writing parsing algorithm https://html.spec.whatwg.org/multipage/images.html#parsing-a-srcset-attribute
Things we learned:
* enum: It represents data than could be one of the several possible variants.
* use: This declaration can be used so manual scoping isn't needed.
* match: It replaces complicated if/else or it can also be used as C switch.
* match n {
Some(v) =>
None =>
}
Some and None: When given index is valid, it returns Some with the element under that index, otherwise it returns None.
*tuple: tuple is a overloaded list of fixed size.
July 07, 2017
Day 5
Team Serv0101 (Servo) [2017] — at July 7, 2017 16:39 UTC
Hey, Folks!
*Had a conversation with the mentor on IRC and cleared our doubt related to rust.
*Gone through the DOM API testing.
*Made a progress on parsing algorithm.Rust is new for us so things we learned during scrset parsing algorithm is:
* Learned the role of getter setter.
* Learned to take input, declared the function and how it returns the value.
* Learned to allocate vector.We would like to thank jeenalee and malisa (previous year RGSoC Intern) who really made good blog on DOM API.
July 06, 2017
Day 4
Team Serv0101 (Servo) [2017] — at July 6, 2017 18:26 UTC
Hey!
Things we did:
* Gone through a tutorial of the responsive image.
* Learned the role of srcset and sizes in the responsive image.
July 05, 2017
Day 3
Team Serv0101 (Servo) [2017] — at July 5, 2017 20:04 UTC
Things we did:
* Finally implemented DOM API after hours of debugging.
* Learned about DOMString and core::result::Result.
* Had conversation with mentor and coaches on #servo channel.TODO:
* Go through W3C docs and learn how srcset and sizes works!
* Learn more rust.
* Try to start writing parsing algorithm for srcset and sizes!
July 04, 2017
Day 2
Team Serv0101 (Servo) [2017] — at July 4, 2017 18:20 UTC
Things we did:
* Had a brief meeting with the coach.
* Learned how to implement a new DOM API for Servo. http://jeenalee.com/2016/10/03/implementing-doge-for-servo.html
* Sent updated timeline to supervisorTODO :
* Learn more Rust.
* Implement DOM API.
* Start writing code separate from servo so, it's easy to iterate.
Day 1
Team Serv0101 (Servo) [2017] — at July 4, 2017 00:41 UTC
Finally had a kick-off call with supervisor, coaches and mentor. There were some confusion, we cleared that confusion during call and guess what everything is fine now.
Had a discussion with coach about project and creating a #rgsoc17 channel on IRC were we gonna discuss everything.
Gone through some documentation about testing in rust and servo.TODO:
Remember to write logs everyday. We forget to write this on our second day, got an email from Robot then we realize.
Write functions for srcset attribute.
Write test cases for each function, we write.
July 02, 2017
Kick Start of RGSoC
Team Serv0101 (Servo) [2017] — at July 2, 2017 10:07 UTC
Hello, everyone :)
New city, another new day and a fresh start. Last 2 week was busy for both of us. We recently completed our graduation and moved to Bangalore, India to start our Internship.
Officially work will start from tomorrow because it's weekend and we are ready with everything.
Our project is Servo, a modern high-performance browser engine written in Rust. This summer our goal is to support responsive image in project Servo.
We talked to our mentor, coaches, supervisor and planned a call in coming week with all the team members.