User:Hardik95/GSoC 2014 Progress Report
Progress Report
editMay 2014
editCommunity Bonding Period
edit- Learnt how parsiod actually work and what are the stages involved in the whole parsing pipeline.
- Studied logger code and familiarized myself with its structure.
- Experimented with the logger and how to emit events using logger.
- Tried to find some places where I can place log events.
Week 1: Official Coding Period starts
edit- College Exams
Week 2: 26th May to 2nd June
- Created a new logger backend
- Added log events for few broken wiki text to the code
- Submitted a patch for the same https://gerrit.wikimedia.org/r/#/c/135620/
- Tested the log output and code by parsing few pages
Week 3: 3rd June to 9th June
edit- Submitted a patch for buffering log event - https://gerrit.wikimedia.org/r/#/c/138104/
- Researched on which database to choose for the backend (Selected MongoDB)
- Created an JSON API to publish and fetch log events.
- linked the new API with the linter backend and made the the linter publish log events as JSON.
- Code both API and UI is hosted here - https://github.com/hardikj/lintbridge
- Created a UI to navigate the collected data - http://parsoid.wmflabs.org:3000/_html/issues
- Collected the data on 50 pages using a python script.
Week 4: 9th June to 16th June
edit- Implemented a new --lint option ( Patch)
- Moved registerLoggingBackends function from ParsoidConfig to mediawiki.Utils (Patch)
- Fixed some minor fixups in linter (Patch)
- Setup new instance on wikimedia labs and learn about services like systemd, upstart
- Gave a new home to lint bridge : http://lintbridge.wmflabs.org
- Added some new features to lintbridge
- Made UI responsive using bootstrap
- Added Handlebars as a template engine
- Applied styling on all /_html/ routes
- All commits can be found at github
Week 5: 17th June to 23th June
edit- fixed a bug in --lint flag for parse.js (Patch)
- fixed few bugs in lintbridge
- Tested lintbridge on 1000 pages using a python script
- Added more features to lintbridge
- Added direct link to wiki edit page
- Added pagination on each routes
- added pages for exception handling
Week 6: 23th June to 30th june
edit- Added new features to lintbridge :
- Added next and prev button
- Added a Stats page
- some more minor bug fixes
Week 7: 30th June to 6th july
edit- Worked on two patches
- Researched a bit for what test suite to use for linter tests
- Decided to go with Mocha and Chai
- Learned mocha and Javascript Promises
- Added a basic test suite with mocha
Week 8: 6th july to 13th july
edit- Two new Patches
- Discussed next steps for the projects
- Posted to checkwiki and village pump about lintbridge