User:Shanegreat/sandbox

CSC/ECE 517 Spring 2015/OSS

M1502: Improve HTTP monitoring devtool support
Firefox supports remote developer tools - ie. communicating with an arbitrary server that implements a protocol for exposing information about web content. Servo implements a very basic developer tools server that currently supports executing JS remotely and investigating the DOM tree in the document inspector. We want to expand these capabilities by exposing further information about HTTP requests and responses that web content initiates. .

Github Location
https://github.com/akumar21NCSU/servo

Build Process
git clone https://github.com/servo/servo cd servo ./mach build --dev ./mach run tests/html/about-mozilla.html

Forked Branch
A branch was forked from https://github.com/servo/servo and placed at the following location: https://github.com/akumar21NCSU/servo

Development
The primary goal of the development effort is to support the presence of a pipeline id. The goal is to pass values to send_request_to_devtools derived from the actual request. The request containing the new pipeline id. The development command is: ./mach build --dev

Test
A unit test is added to test the new functionality of the pipeline id. The testing is run by performing the following command in the command line: ./mach test-wpt

Implementation
Servo implements a very basic developer tools server that currently supports executing JS remotely and investigating the DOM tree in the document inspector. We want to expand these capabilities by exposing further information about HTTP requests and responses that web content initiates.

Project Benefits & Challenges
Benefits: 1. Helps add additional debug to the HTTP monitoring in Servo 2. Provides developers capability of monitoring the data traffic 3. Mozilla messages are clearly analyzed using Servo Challenges: Rust code development presents a challenge as the build environment takes time to build. Adding additional filters to the Servo causes failures initially as development tends to be a hit or miss. Communicating with both the TA and the Mozilla team members is critical. It is generally expected that new changes should not introduce new crashes in the testsuite however this was not the case. The team did encounter crashes when unit tests were carried out.