Author Archives: Babak Basseri

About Babak Basseri

Computer science student at University of Toronto, working on ReviewBoard as gsoc project.

Review Board – Cross Platform Installer (GSoC)

This summer through the Google Summer Of Code, I got the chance to work with ReviewBoard, a web-based code review application. My project and task was to create a cross platform installer for ReviewBoard dependencies and the project can be found on ReviewBoard Cross Platform Installer . To complete this task, I had to use scripts to check the dependencies for each application. If the dependencies were not included, through another script “rb_install”, I had to retreive and provide the user with the guide to install the application. The other part of these scripts was to install the application automatically for the user. The scripts had to be implemented to work with all platforms using silent (No GUI) install methods. Continue reading


Status Report August 12 Summer 2011

-Worked on code fixes based on feedback
-Fixed caching issues, submit a djblets review request.
-Organized a lot of CSS and restructured some widget code.
Next Steps:
-Keep fixing TODOs and Bugs
-Start writing docs / wrap-up after August 16th
Road Blocks:
-Implemented the call to the dependency installer scripts within the webUI and the rb-site install.
-Implemented the functionality to get the guide and install from the rb-site installer wizard.
-Added more applications and fixed the style for installer scripts.
-Implemented an upgrade script.
Next Steps:
-Implementing the function to inform user if a newer version exists in the UI.
-Fixing patch problem on windows.
-Start documenting and wrapping up the code on 16th.
Road Blocks:
-Latest version of reviewboard should be included in documents/reviewboard.
-Missing some dependency checks.
– good amount of code was split into small chunks and successfully
accepted into main repo
– added pagination support in new API

Next Steps:

– finish and post the rest of accumulated work

Road Blocks:
None roadblocks.

Meeting Minutes – August 7th, 2011

  • Babak asked about installing applications through the webUI
  • ChipX86 exaplined about the different methods possible
  • ChipX86 talked about gsoc soft pencil’s down.
  • vladikoff asked about cache_memoize
  • ChipX86 explained how to use lambda with cache_memoize and how the keys are created
  • mbait, ChipX86 and m_conley talked about the namings in the code
  • vladikoff fixed the problem with cache_memoize and keys
  • babak and ChipX86 talked about the patch.exe problem in windows
  • ChipX86 explained the problem and how it should be implemented.
  • ChipX86 explained the Reviewboard upgrade to babak.


Status Report July 22 Summer 2011


  • Worked around with to add the required application checks
Next steps
  • Implement the list of the applications to install inside the site.
Road Blocks
  • Server keeps crashing so I couldn’t go too far in the code.



  • partially implemented “rb-patch”
  • continued work on new API design
Next steps
  • continue work on API
  • there are updated and unreviewed patches



  • Worked on the dashboard – CSS and more
  •   Memcache / Widget Query Updates

Next Steps

  • Update the settings pages after the “Header Styles” branch
  • Continue working on the dashboard.

Road Blocks

Meeting Minutes – July 17, 2011

  • M_conley and ChipX86 talk about the next steps after evaluations
  • Babak asked questions about the upgrades and their automation part of the project
  • ChipX86 explained to Babak how the upgrades should be implemented
  • Vladikoff talked about his issue regarding the ReviewRequests
  • ChipX86 and M_conley agreed that it is ok to use the PIL’s installation wizard, instead of a silent one
  • ChipX86 and Vladikoff went over his problem with ReviewRequest model and his code
  • ChipX86 gave Vladikoff some pointers on how he might be able to fix the problems he is facing
  • M_conley, ChipX86 and Vladikoff went over the problems Vladicoff was facing with the queries to group and order elements in the db
  • ChipX86 pointed out Vladikoff’s problem with the SQL queries.
  • ChipX86 told Babak about the exsisting installations for p4python
  • Babak asked about the python versions to cover and the next steps that he should take


Status Reports July 1st


  • Implemented the builtin python modules for downloading and unziping the applications
  • Finished Subversion applications
  • Added some documentation in the code

Next steps

  • Finish the script(2 more applications left)
  • Testing for 32bit operating systems


  • None



  • continued work on splitting SCM clients off post-review
  • improved new tests utility classes
  • completely finished ‘rb-config’ command
  • started work on resource classes

Next steps

  • continue the wrok on resource classes
  • start and finish work on ‘rb-create’ command
  • achieve split clients to be accepted in ‘master’
  • None


  • Submit a post-review with full dashboard code
Next Steps
  • Add caching
  • Add the sidebar to settings pages.
  • Enhance the ‘Review Request’ widget

Meeting Minutes June 26th, 2011

Babak talked about his road blocks and some possible solutions.
ChipX86 talked about the problems of using cygwin to install applications
Since the source to download the SVN required registration, ChipX86 changed the subversion to
Babak talked about using more built in python modules for his script to support versions 2.4 and up
Vladicoff talked about how he is adding the ability for the admin to see the number of review requests matching a timestamp
Vladicoff found out to solve the couting review requests for matching timestamps he has to pre-calculate the data.
Vladicoff talked about putting a limit on the log enteries.
ChipX86 gave Vlad an approach to itterate over the logs
ChipX86 talked about the upcoming release and the some future plans
Vladicoff showed m_conely the new version of the admin side bar with some of the new features
m_conely approved the new design