What I did over the past week LXV

After reporting for Jury Duty, I spent all day in a cold, ass-numbing courtroom pew. I was assigned to a courtroom where a four-day first degree murder case was to be tried, but I ultimately didn't get a chance to get properly rejected during voir dire as the counsels selected a jury using the first two batches of eighteen prospects.


  • Pulled the big litter box out of the hall closet and moved it into the hall bathroom, stacking it using a perfectly-sized shelf. Still need to build a small ramp to encourage the cats to use the upper level


  • The vampire splice on the truck's A/C clutch was failing, so I re-did it using proper heat-shrink spade connectors, and re-routed it along the top of the radiator for added neatness. While I was at it I re-did the connections for the cooling fans, also using proper heat-shrinking
  • Adjusted the truck's headlights upwards a bit. Definitely better but still not quite right
  • Confirmed the WRX's steering rack needs a rebuild; A torn boot allowed a quantity of gunk to get all up into the gearing. It's possible that this can be resolved by a partial disassembly and cleaning (along with new boots and possibly new tie rods) but the rack will need to come off the car no matter what


  • Fixed a few straggling issues from the www service migration
  • Enhanced numeric read-back to handle languages that swap the tens and ones columns; eg "233" == "Two hundred three and thirty"
  • Enhanced date read-back to be configurable per-locale, for example "12 January 2013" vs "January 12 2013"
  • Improved automatic language/voice file fix-ups for incomplete or inconsistent translations
  • Enabled Serbian & Norwegian nightly voicefile generation
  • Improved the translation web site to flag languages that have a high proportion of "translated" strings that are the same as English
  • Migrated the themesite from native SQLite bindings to PDO
  • First cut at upgrading the wiki from foswiki 1.x to 2.x


  • A handful of fatal errors were holding the print job instead of properly stopping the printer queue. This affected the DNP/Citizen, Canon SELPHY, and Mitsubishi 9xxx backends
  • Log the USB bus/port numbers when connecting
  • Rework connecting-to-printer STATE usage, and add offline-report
  • Report the USB information up as PPD updates
  • Don't sleep when issuing PPD updates
  • Submitted a fix to CUPS so that it respects offline-reports from the Gutenprint backend
  • Centralize fast_return logic, and make the decision only apply for the final page of a given job
  • Move common backend job structures into their own structure, and make proper use of it. This fixed some logging glitches but was done primarily to enable future refactoring