Author Archives: Alexander Solovets

Post-mortem Meeting, Google Summer of Code 2011

  • Vlad publishes a post about his overall progress.
  • Alexander suggests that every crucial decisions made on IRC should be written down in the reviewboard-dev.
  • Babak is happy with his GSoC experience, just was a bit confused whet it has come to API or interactions with Review Board.
  • Alexander is happy too apart from the moments where he had to re-implement some things.
  • reviewboard-students is off now until the new even starts, all development discussions should be hold in groups: reviewboard, reviewboard-dev.
  • Christian accepts friendly reminders about review requests updates.
  • UCOSP will start soon, everyone is appreciated to help new students!
Advertisements

Status Report August 7 Summer 2011

Babak


Status

  • fixed the bug with running the server
  • added more applications to the installer script
  • setup the rb-setup to include the guides on missing dependencies
  • fixed the script’s style using pep8
  • added dependency guides for the web

Next steps

  • adding the installer to the rb-site install for missing dependencies
  • fixing the update error in windows
  • installing dependencies from web

Roadblocks

  • haven’t found a solution for installing the applications from the web
  • found couple of bugs not sure if its my server installation or general ones
  • upgrade for reviewboard

Alexander


Status

  • finished and posted the first version of the new API
  • did works on improving ‘inherited-code-cleanup’ patch
Next Steps
  • replace stub code in rb-* with the new API
Roadblocks
  • “inherited-code-cleanup” patch
  • unreviewd new API patch
  • some unresolved parts of the API design

Vlad


Status

  • add “No Result” styles
  • bug fixes and CSS style updates
  • added AJAX Collapse states to widgets
  • worked on cache regeneration using Django signals

Next Steps

  • testing and in-code TODOs, CSS fixes (Fix “Status Chart” label bugs, etc)
  • finish cache / signal work

Roadblocks

Easy installation of older python versions in Gentoo

Sometimes when you are to provide backward compatibility with particular version of somewhat you’d better have at least two versions of it: the oldest and the newest ones.

RBTools have its developers to look back on Python 2.4.  Unfortunately, until recently, I had to manually check backward compatibility of used libraries and language features and sometimes failed to do that forcing reviewers to do extra work and reject my review requests.

The most trivial (but not easiest) solution is to fetch python sources somewhere in $HOME and build it manually:

$>wget http://www.python.org/ftp/python/2.4.6/Python-2.4.6.tar.bz2
$>tar xjf  Python-2.4.6.tar.bz2 && rm Python-2.4.6.tar.bz2
$>cd Python-2.4.6
$>./configure && make

I didn’t mention before that another useful thing for python developers is virtualenv which allows to have separate python environments. So if you already use it you’ll have a problem at this point: virtualenv does not allow to use specified interpreter unless it’s located under /usr/local. So you’ll have to move it at least there. As I’m one of those who tries to maintain their system as clean as possible I started to search another way to solve the problem. And suddenly I recalled that I’m running Gentoo with its complicated (at least for me) notion of package slots. Briefly speaking, slot system allows you to install particular piece of software and protect it from being removed or updated. To install package in a new slot you must providie ‘-1’ or ‘–oneshot’ option for emerge. The only problem remains – how to install some very old version? Easy! Just provide required version separated from the package name with a colon:

$>emerge -1av python:2.4

Ok, now you get it. From this point you just need to run virtualenv with specified python version:

$>virtualenv .ve-2.4 -p python2.4

This is it! It remains to repeat installation of required modules for the new environment. Optionally, I like to link frequently used binaries:

$>ln -s .ve-2.4/bin/python2.4
$>ln -s .ve-2.4/bin/nosetest-2.4

Meeting Minutes – July 31, 2011

  • Babak is absent on this meeting
  • Christian reminded about the last month of coding and that the “Pencils down” will be in under 2.5 weeks
  • Christian helps Alexander to handle with old-style super-constructor invocation
  • Christian encourages to getting smaller, bite-sized review requests up that can go into the codebase
  • Christian advises Alexander to post changes in API and commands as two separate patches
  • Christian said Vlad could delete and re-generate the key to force clearing of cached items
  • Christian reminds about ‘force_overwrite’ parameter for updating cached information
  • Christian said that Vlad should be able to redefine the block to being empty in the template for the pages in order to fix his roadblock #1
  • Christian said that all Vlad needed was to place new template somewhere with a name other than admin/login.html, and then give the AdminSite that name
  • Christian reminded that RB site depended on django 1.3+
  • Christian said that it was not fatal to produce longer pages and advised some tips to improve site widgets usability: add collapse icon, change existing label “Hide” to “Show”, memorize state of folding
  • David said that was his last  attendance at weekly meeting, he promised to come back as of the post-mortem though
  • Alexander found out that resource token in response JSON payload is not necessarily unique and discussed with Christian about possible workarounds

Status Report July 15 Summer 2011

Babak


Status
  • implemented installation for lighttpd
  • implemented Apache mod_python installation for python versions up to 2.7
  • implemented pysvn installation
  • implemented win32api installation
  • ran code with pep8 and fixed the styling problems both windows and linux
Next steps
  • getting rid of the application installation that are not suppose to be in the script
  • fix the Perforce FTP Installation
  • split the code to different steps (Required for installing Review Board, and optional applications)
  • testing code on 32bit XP and Vista
  • oushing the newer version of scripts for Windows and Linux
Road Blocks
  • some installations can’t be silent
  • what applications should be taken out from the code
  • up to what version of python should be supported
  • rb_site install dependencies

Alexander


Status

  • continued work on SCM clients: pull out Subversion, Mercurial, Mercurial-Subversion tests into rbtools.clients.test
  • reached a consensus about new API design, started work on modifying existing one
  • started work on merging changed in ‘master’ into ‘api’
Plans
  • release new API as of the end of the weekend
  • post patch with merging results, update other patches
  • finish pending rb-create and rb-info using the new API
Roadblocks
  • unresolved issue with the new API HTTP transport

Vlad


Status

  • fixed the issues after the reviews
  • tested the dashboard with a fresh install, added blank data placeholders

Next Steps

  • work on the “Admin Header Styles” branch
  • add CSS styles to widgets when there’s no data
  • keep perfecting the widgets

Road Blocks

  • minor road block for the “Header Styles” branch review

Meeting Minutes – July 10, 2011

  • Babak feels that he is slightly behind his schedule due to plenty roadblocks
  • Alexander feelds that he is slightly behind too because of difficulties met at implementing new API
  • Vlad needs to fix up issues in two reviews
  • Babak searches the way to determine python interpreter’s version on the target system
  • David and Mike help Babak with useful links about his problem
  • Another Babak’s rodblock has to do with Subversion version on the target system and proper installation of the correct pysvn version
  • David approves parsing method of getting SVN version
  • Mike says that making new user is normal behaviour of Postgres on Windows
  • Davis finds out that p4python has convenient installer viva easy_install
  • Mike reminds that request drafts can be updated with `post-review -r <review_request_id>’
  • Mikes approves that resources listed in ‘uri_template’ field of Root List Resource are accessible via ‘GET’ request

Status Report June 26th, 2011

Babak


Status
  • submit a post-review and a revision to it
  • used the ‘fill-database’ script to run some dashboard chart tests
Next steps
  • continue based on feedback
  • do more ‘fill-database’ tests
Roadblocks

Alexander


Status

  • finished work on preliminary clean-ups on ‘api’ branch
  • created some tests for ‘commands’ and ‘api’ classes
  • met review notes of the patch related to splitting client classes from post-review
  • rewrote ‘Settings’ class which is responsible for (de)serialization of user settings
Next steps
  • add tests for ‘client’ classes
  • cover the most part of the ‘api’ code with unit tests
  • rewrite other poorly-designed parts
Roadblocks

Vlad


Status
  • Submit a post-review and a revision to it.
  • Used the ‘fill-database’ script to run some dashboard chart tests
Next steps
  • Continue based on feedback
  • Do more ‘fill-database’ tests
Roadblocks