From baaa7adc168999bfe09e1f287608cc92f86ec0c0 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Fri, 9 Aug 2013 13:51:22 +0000 Subject: bitbake: runqueue: report close matches for an invalid task name Help to pick up mistakes such as "bitbake -c cleanstate xyz" (instead of "bitbake -c cleansstate xyz".) (Bitbake rev: 15c3db1cffdffd85641c6b12e77f19ce7a553472) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/lib/bb/runqueue.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index b2c9703..075c849 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -601,7 +601,13 @@ class RunQueueData: continue if target[1] not in taskData.tasks_lookup[fnid]: - bb.msg.fatal("RunQueue", "Task %s does not exist for target %s" % (target[1], target[0])) + import difflib + close_matches = difflib.get_close_matches(target[1], taskData.tasks_lookup[fnid], cutoff=0.7) + if close_matches: + extra = ". Close matches:\n %s" % "\n ".join(close_matches) + else: + extra = "" + bb.msg.fatal("RunQueue", "Task %s does not exist for target %s%s" % (target[1], target[0], extra)) listid = taskData.tasks_lookup[fnid][target[1]] -- cgit v1.1