Spent way too much time today poking at problems pychecker was reporting on Flumotion. The problem with most code checkers is that they often report problems in code you don't care about because it's beyond your control, and that once in a while you want to do explicitly allow a specific instance of a bad thing Just This Once. The usefulness of the tool is directly related to the granularity with which you can enable or disable checks for specific objects, from small functions to complete modules.
After fixing a few easier problems, I again got the eerie sensation that pychecker was not reporting all the problems it should. I would run pychecker on less files than a standard make check does, and get more warnings. Paradoxically quixotic. The problem is it's kind of slow to reproduce, on my laptop, taking a few minutes to run pychecker, so playing with the file arguments to see where it went wrong was a little time-consuming. When chasing bugs, it always pays off to spend some time poking at the Black Box and taking your Diamond Saw of Perception and shave off chunks of the box. Try to find the simplest test case that reproduces the problem.
At some point I noticed that it was not necessarily the contents of the file that caused warnings to go away - I renamed a file to something else and suddenly it did show all the warnings when checking that newly named file. That finally gave me the last clue I needed to find the most minimal test case.
Since seeing is believing, I've written a third-millenium play that explains the bug. All you need to do is:
svn co https://thomas.apestaart.org/thomas/svn/tests/pychecker/order; cd order; make
For the lazy ones, I've had Zaheer make me a screencast:
Spent way too much time today poking at problems pychecker was reporting on Flumotion. The problem with most code checkers is that they often report problems in code you don't...
[moap-trunk] [thomas@otto trunk]$ moap doap -f /home/thomas/svn/tests/redland/doap/gst-plugins-base.doap -v 0.10.10 mail -f thomas@apestaart.org gstreamer-devel@lists.sourceforge.net gstreamer-announce@lists.sourceforge.net kde-multimedia@kde.org gnome-multimedia@gnome.org
Downloading http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-0.10.10.tar.bz2 ... done.
Downloaded gst-plugins-base-0.10.10.tar.bz2 in current dir
Sending release announcement ... sent.
[moap-trunk] [thomas@otto trunk]$ moap doap -f /home/thomas/svn/tests/redland/doap/gst-plugins-base.doap -v 0.10.10 freshmeat - Submitting release of GStreamer Base Plug-ins 0.10.10
Releasing used to be a long drawnout process riddled with intricate little complicated steps involving lots of manual labour.
It's still a long drawnout process. But it's fun to write tools that take away the repetitiveness, allowing me more time to focus on the release parts that really need manual attention. Like, eating pizza.
In related news, today saw a release of GStreamer Core and Base Plugins, as well as Cortado.
[moap-trunk] [thomas@otto trunk]$ moap doap -f /home/thomas/svn/tests/redland/doap/gst-plugins-base.doap -v 0.10.10 mail -f thomas@apestaart.org gstreamer-devel@lists.sourceforge.net gstreamer-announce@lists.sourceforge.net kde-multimedia@kde.org gnome-multimedia@gnome.org Downloading http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-0.10.10.tar.bz2 ... done. Downloaded gst-plugins-base-0.10.10.tar.bz2 in current dir Sending release announcement ... sent....
Guess what we're doing tonight. There's a nice piece of solomillo and a sausage special, I think I have over five types.
Meanwhile, the cat seems to really like computers, but not in the same way as me.
Guess what we're doing tonight. There's a nice piece of solomillo and a sausage special, I think I have over five types. Meanwhile, the cat seems to really like computers,...
A new company has taken its residence just next door.
I don't know if it's a simple typo, a clever naming strategy, or if they have instituted chiefs that really are good at executing while dressed in leather.
A new company has taken its residence just next door. I don't know if it's a simple typo, a clever naming strategy, or if they have instituted chiefs that really...
So, quiz time.
Next week, Bananarama are "performing" at the Razzmatazz club.
-
Should I
- stay home, because it's a waste of money
- go, because it cannot fail to be fun
- treasure the memory of Elizabeth Shue shaking her pompons to the tune of "Cruel Summer" instead
-
If I go, which of the girls should I hook up with given the chance ?
- Bana
- Rama
- Nana (apparently she left the band and they're now a duo)
-
To weed out people that don't know what they're talking about:
Which of the following Bananarama hits is not an "original"
- Love in the first degree
- Venus
- Really Saying Something
- Cruel Summer
bonus question: which of these songs was borrowed by which more contemporary female artist ?
-
To round off, which of the following producers should Bananarama never have worked with:
- Stock
- Aitken
- Waterman
- All of the above
Answers on a postcard by Sep 10 at the latest. Alternatively, you can use one of those new-fangled third millenium e-mail thingies people seem to be raving about.
So, quiz time. Next week, Bananarama are "performing" at the Razzmatazz club. Should I stay home, because it's a waste of money go, because it cannot fail to be fun...