Recently my task within Review Board has experienced a bit of upheaval. I found out that the extension I was working on didn’t really make a lot of sense. So, I was told to work on the configurability of extensions. No one was entirely sure if that part was working yet, so off I went into the extension code to find out.
I downloaded the rb-extension-pack from chipx86’s github, and set up the rbcia extension on my dev server. But when I tried to enable it, things exploded! Well, not literally. But there were errors, and the world of debugging python is not one in which I am well-travelled.
Luckily, Mike had seen these errors before, so I was saved from hours of slow-moving debugging. The problem was that the rbcia extension was out of date in regards to signal handling, so by commenting out any code that called the signal stuff I managed to get the errors to go away.
Next, I had to get the code of interest in the rbcia extension into my extension. I had no idea how many places I would have to copy code to get one page to appear! But eventually I had copied and adjusted all the code that had to do with configuration, and finally the config page appeared for the Excel Exporter! I made a test field, and tested that when I changed the value and clicked save, it really did save, and it did.
So now I have reached a point of some uncertainty. Is that all that needs to be tested, or is there more? I need to learn more about how exactly this configuration stuff is supposed to work. Then I’ll know where I’m headed next.