User:MarkAHershberger/Weekly reports/2010-W13

Firefox Chunked Uploading Extension

edit

I completed the initial testing of Firefogg's chunked uploading protocol against the new extension and version 1.16 of MediaWiki. In the process I discovered several bugs (apparently) in the JS implmentation.

  • Apparently Firefogg or mwUpload does not handle errors the server sends on the first packet. This is a problem when we're doing server-side verification, but also if an error occurs server-side.
  • While watching the logs, I noticed that the client sent two or three done packets after the initial done message got confirmation.

I think these bugs and the lack of code-review on the JS branch show that some serious code review needs to start on the firefogg extension. I suppose this is as good a place as any for me to start doing some actual CR.

Unit Testing Plans

edit

I also thought about Unit Test and wrote up the following. I will start on the first step: adding failing reports from PHPUnit to the Code Review comments.

It is apparent that other contributors have worked on creating unit tests in the past and there is now effort to automate end-user regression tests as well as my own effort to organize and add unit tests.

I've enjoyed this work, and other MW contributors seem to think it is valuable, but I'd like to start thinking about how to integrate it into CodeReview and to begin to provide feedback to developers on a regular basis.

Part of that effort will mean working with other community members to evangelize unit testing (it doesn't work very effectively if no one writes tests) and figuring out what is appropriate to ask of contributors. I can imagine that some contributors might want to write unit tests for other's code in the same way that people periodically troll through the code for style or non-functional problems (see ialex's Doxygen fix-ups for example).

A good first step in bootstrapping this social/technical process is to write tests and have an instance of PHPUnit comment on commits in CodeReview that fail the tests.

Another way to bootstrap this is to write automated checks for uses of wfMsg where translation strings are not provided or for code that triggers E_STRICT warnings, and have them put automated comments in CodeReview. The E_STRICT bit, especially, would be better than errors being caught when they show up on TranslateWiki.