1 |
Dne 1.9.2011 15:15, Michał Górny napsal(a): |
2 |
> On Thu, 01 Sep 2011 14:56:42 +0200 |
3 |
> Tomáš Chvátal<scarabeus@g.o> wrote: |
4 |
> |
5 |
>>> That function doesn't follow do*() argument scheme; it matches |
6 |
>>> rather one used by new*() funcs. Sadly, a number of ebuilds is |
7 |
>>> using that scheme to rename installed file. |
8 |
>>> |
9 |
>>> Furthermore, it uses two eclass variables to switch the behavior. |
10 |
>>> |
11 |
>>> BASHCOMPFILES allows it to install multiple files (but works only |
12 |
>>> if no arguments are passed). |
13 |
>>> |
14 |
>>> BASHCOMPLETION_NAME renames the installed file (if BASHCOMPFILES is |
15 |
>>> not used) and makes it ignore the second argument. |
16 |
>>> |
17 |
>>> I think the way to go would be to reimplement it completely. Maybe |
18 |
>>> just put dobashcomp() and newbashcomp() functions in eutils (to not |
19 |
>>> collide) and deprecate bash-completion.eclass? |
20 |
>>> |
21 |
>> I would go with the eutils.eclass update, but remember that you have |
22 |
>> to keep backcompat for the old call :( |
23 |
> |
24 |
> Ah, forgot about stats. |
25 |
> |
26 |
> dobashcompletion() with two args is used a lot of times. |
27 |
> |
28 |
> BASHCOMPFILES is used in ONE ebuild in gx86. |
29 |
> BASHCOMPLETION_NAME is used in 4-5 ebuilds. |
30 |
> |
31 |
> We can either go with a new func and retroactively replace the eclass, |
32 |
> or retroactively fix all uses and fix the old funcs. |
33 |
> |
34 |
how about new calls completely? |
35 |
dobashcomp |
36 |
newbashcomp |
37 |
|
38 |
As even if you fix main tree you can't ensure that you won't mess with |
39 |
some overlay (silently as it would not be seen by default). |
40 |
|
41 |
I would then go proactively and fix the packages inheriting the bashcomp |
42 |
eclass and when done just mark the eclass as dead. |
43 |
|
44 |
Tom |