Skip to content

{ Category Archives } Mozilla

CLI Split Windows in Vim

I use split windows, both horizontally and vertically, in Vim all the time. I’ve always wanted to be able to split the window and then start a command line shell within that window but up until now that has just been a dream. My friend sent me a link to conque this morning which I’m [...]

Tagged , , ,

addons.mozilla.org ♥s unit tests. Again.

AMO has had an on-again off-again relationship with unit tests. A little over a year ago we had a thousand unit tests that sort of, mostly, ran. The problem is, PHP unit testing just isn’t as good as it should be. CakePHP relies on SimpleTest, one of the main PHP test suites. It worked relatively [...]

Tagged , , , , , ,

Continuous Integration comes to AMO

It’s time to hail another milestone for AMO in our epic push for improvements in 2010. This time I’m happy to announce our Hudson continuous integration server which has been humming along for a few months. Hudson Integration Screenshot. Click to enlarge. AMO is the first Mozilla Webdev site to use continuous integration, and it’s [...]

Tagged , , , ,

Libraries to connect to a Citrix NetScaler or Zeus Traffic Manager

The first front end cache we used on AMO was the Citrix NetScaler. I’ve complained about it’s API before but apparently never announced the library I wrote to purge items from the cache. So, a little late, but I have some reusable PHP code that will talk to your NetScaler and let you expire objects. [...]

Tagged , , , , ,

Maintaining localization between Python and PHP (it’s not fun)

I reached my hand into the barrel of problems our migration to Python is going to cause and came up with Localization. It figures. First out of the chute was the .po files. It turns out the actual formatting is different between the two languages. PHP uses %1$s for its substitutions, but python uses either [...]

Tagged , , , , ,

AMO Development Changes in 2010

The AMO team met in Mountain View last week to develop a 2010 plan. We’ve been wanting to change some key areas of our development flow for a while but we needed to make sure time was budgeted in the overall AMO and Mozilla goals. As usual, the timeline will be tight, but the AMO [...]

Tagged , , , , , , , , , , ,

Add-on Localization Completeness Script is on AMO

The add-on verification suite launched a few months ago and has been refined with each subsequent milestone. We’ve changed what it searches for based on feedback and our own findings and earlier this month we made it available to anyone on AMO, not just a hosted add-on’s authors. The framework was written in an extensible [...]

Tagged , , ,

Using substitution strings in .po files

A couple years ago I recommended using fake msgid’s in .po files and was, predictably, met with some argument. I suggested using this hack because there wasn’t a standard way to store context in a .po file yet.[1] Since that time msgctxt has become a standard part of gettext and makes my substitution string recommendation [...]

Tagged , , ,

Top 50 searches on addons.mozilla.org

The flight from Portland to San Jose is just about the right length to write some scripts to analyze a bunch of data, make a pretty graph, and then write a blog post drawing fairly obvious conclusions. Someone on IRC said they were interested in the top search terms being used on addons.mozilla.org so here [...]

Tagged , , ,

addons.mozilla.org Celebrates 1000 (passing) Unit Tests

We started writing unit tests for AMO a few years ago with the best of intentions. As the tests grew we started running into memory/timeout problems that prevented us from running the tests. Other priorities took over and since we couldn’t run the tests we quit writing them. The tests got put on the back [...]

Tagged , ,