I recently started working on a plugin enhancement for the Squeezebox server - which is written mostly in Perl, although the plugin architecture supports development with other tools. I don’t have much Perl experience, but afaik Perl developers rely primarily on the use of extensive logging (Log4Perl) features.
At one time there was a way to remotely debug the GAE server (using the Wing Python IDE) -my knowledge and this was fairly useful as a way to ‘Grok’ the design. I was hoping that that Komodo might be able to support the same with Slimserver. One complication arises in that AFAIK squeezebox runs as a service on the OS, and there is no squeezebox.pl file - I think there used to be, but it was removed.
Anyway I’m hoping/wondering whether Komodo can help with debugging/inspecting the Squeezeboxserver. To my knowledge the Squeezebox development community does not seem to be using debugging tools (other than logging/Log4perl).
Does anyone at Komodo/ActiveState have any relevant experience/insights here?
FYI I did read that page but have not tried the procedure there yet. However I’m a skeptical about the procedure described there as it relies (or seems to rely) on being able to start the remode process with a debug flag - something that afaik Squeezebox server does not support - unless there is some workaround for this. Perl is new to me -previous experience for me was python, dot net and various databases - so I’m trying to pick a few experienced brains for now.
Again, I’m hoping (but not assuming) that the Komodo IDE will help here.
FYI - Squeezebox runs as a service in the OS and (afaik) uses ‘fork’ requests to spawn child processes which makes debugging the perl app difficult - I’ve read some other postings about issues debugging services/child processes but was hoping others might have figured out some workarounds here.
So far, I have not been able to find a way to get around this limitation - but I don’t claim any extensive Perl knowledge. However I don’t believe this is strictly a Perl issue - more a generic OS debugging problem.
I’d like to be proven wrong on this issue, but I’ve not been getting much feedback that contradicts what I’ve just said - so there may be some (undocumented) gotcha’s here.
You’d probably be better off trying to get your question answered by Squeezebox devs as we merely provide standarized methods of debugging, its up to the software to remain compatible with debugging methods.
I’m not saying it’s not doable with Squeezebox, I’m just saying none of us are Squeezebox users so we are not really in a position to say what you can and cannot do to facilitate debugging.