Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Hard to debug traces #83

zimbatm opened this Issue · 2 comments

2 participants


Taking the example of issue #82.

rake -t
** Invoke default (first_time)
** Invoke file1 (first_time, not_needed)
** Invoke foo (first_time)
** Invoke file2 (first_time, not_needed)
** Execute foo
** Execute default

Why was foo executed ? What kind of task is it ? It's not possible to tell just by inspecting the trace log.

Therefore, I propose to change the signature of the "Task#needed?" method returns a reason or nil instead of a boolean, to be re-used in the trace logs, and to also show the task type in the trace logs.

The "what kind of task is it" part is especially important because a task type is determined by it's first declaration. Even with namespaces, I had the case where a task would have two definitions and change behavior depending on the "rakelib/*.rake" inclusion order (which should have raised a conflict error, but this is another issue).


I would entertain patches (or even concrete suggestions) for improving the trace output.


Closing this for lack of feed back. Concrete suggestions for improvement are still welcome, just open a new request.

@jimweirich jimweirich closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.