1 |
Author: idl0r |
2 |
Date: 2010-03-31 12:45:41 +0000 (Wed, 31 Mar 2010) |
3 |
New Revision: 762 |
4 |
|
5 |
Modified: |
6 |
trunk/gentoolkit/ChangeLog |
7 |
trunk/gentoolkit/bin/epkginfo |
8 |
Log: |
9 |
epkginfo: Fix epkginfo to handle ambiguous package names. |
10 |
|
11 |
Modified: trunk/gentoolkit/ChangeLog |
12 |
=================================================================== |
13 |
--- trunk/gentoolkit/ChangeLog 2010-03-30 11:15:33 UTC (rev 761) |
14 |
+++ trunk/gentoolkit/ChangeLog 2010-03-31 12:45:41 UTC (rev 762) |
15 |
@@ -1,3 +1,6 @@ |
16 |
+2010-03-31: Christian Ruppert <idl0r@g.o> |
17 |
+ * epkginfo: Fix epkginfo to handle ambiguous package names. |
18 |
+ |
19 |
2010-03-09: Paul Varner <fuzzyray@g.o> |
20 |
* gentoolkit: Add inital py3k support. |
21 |
* analyse: Add new analyse utility from dol-sen. This will probably |
22 |
|
23 |
Modified: trunk/gentoolkit/bin/epkginfo |
24 |
=================================================================== |
25 |
--- trunk/gentoolkit/bin/epkginfo 2010-03-30 11:15:33 UTC (rev 761) |
26 |
+++ trunk/gentoolkit/bin/epkginfo 2010-03-31 12:45:41 UTC (rev 762) |
27 |
@@ -21,6 +21,7 @@ |
28 |
from gentoolkit import equery, errors |
29 |
from gentoolkit.equery import mod_usage |
30 |
from gentoolkit.equery.meta import main, print_help |
31 |
+from portage.exception import AmbiguousPackageName |
32 |
|
33 |
def print_epkginfo_help(): |
34 |
print(mod_usage(mod_name="epkginfo")) |
35 |
@@ -34,6 +35,18 @@ |
36 |
else: |
37 |
try: |
38 |
main(args) |
39 |
+ except AmbiguousPackageName as e: |
40 |
+ pkgs = e.args[0] |
41 |
+ for candidate in pkgs: |
42 |
+ print(candidate) |
43 |
+ |
44 |
+ from gentoolkit import pprinter as pp |
45 |
+ from os.path import basename # To get the short name |
46 |
+ |
47 |
+ print(file=sys.stderr) |
48 |
+ print(pp.error("The short ebuild name '%s' is ambiguous. Please specify" % basename(pkgs[0])), |
49 |
+ file=sys.stderr, end="") |
50 |
+ pp.die(1, "one of the above fully-qualified ebuild names instead.") |
51 |
except errors.GentoolkitException as err: |
52 |
from gentoolkit import pprinter as pp |
53 |
pp.die(1, str(err)) |