On Jun 12, 2010, at 8:23 AM, Bill Moseley wrote:
On Fri, Jun 11, 2010 at 8:41 AM, Karen Etheridge <p...@froods.org> wrote:

On Fri, Jun 11, 2010 at 07:37:27AM -0700, Bill Moseley wrote:
Our developers (and people that handle staging) have been remarking about very low signal to noise error messages since moving some of our code to
Moose.

Unless you're doing a lot of runtime role application or other meta magic, virtually all the errors you should be seeing from Moose happen at compile time during development, so I would expect you would be screening these
out before you get to staging.  Is this not your experience?


As I said, my bet is that the error I posted is a dependency issue --
haven't had time to resolve yet.

It is, you have an old copy of MooseX::AttributeHelpers on the prod box, upgrade it and this will go away.

So, in this case it compiles and runs fine on the development box. But, when the QA team pushed to their hardware they got that error -- which they
had no idea how to decipher.

The QA team needs to make sure they have the same versions as the development box, this is a deployment issue really.

The rule for reading stack traces is to look at the top and then move down. While it is true that the true problem is usually the very top, often times I find that being able to see the deeper calling context going back up the call stack is very helpful.

This particular error is difficult to decipher largely because it is an error between Moose and an old version of MooseX::AttributeHelpers, neither of which are your code, so therefore difficult for you to decipher at first glance.

Perhaps unfortunate, but the dev box probably happened to have the required libraries so Makefile.PL was not updated with new dependencies which would
have prevented this.

Exactly.

But, my question here was more about making these message more concise in general. True, with a bit of practice the developers can usually find the
important bits at the top of the trace.

What exactly would conciseness buy you?

I find that the more information I have at the start of a bug hunt the quicker I can find the source and fix it.

Sure some Moose error messages could be less cryptic, but then we run into the difficulty of divining user intent from user action, I believe there was a long discussion on this previously on the list.

- Stevan
















Reply via email to