On Sun, Jul 15, 2012 at 3:42 PM, Michał Górny <mgo...@gentoo.org> wrote:
> On Sun, 15 Jul 2012 13:00:47 +0200
> Davide Pesavento <p...@gentoo.org> wrote:
>
>> On Sat, Jul 14, 2012 at 4:00 PM, Michał Górny <mgo...@gentoo.org>
>> wrote:
>> > On Sat, 14 Jul 2012 12:29:59 +0200
>> > Davide Pesavento <p...@gentoo.org> wrote:
>> >
>> >> On Fri, Jul 13, 2012 at 3:50 PM, Alexis Ballier
>> >> <aball...@gentoo.org> wrote:
>> >> > On Fri, 13 Jul 2012 15:26:58 +0200
>> >> > Davide Pesavento <p...@gentoo.org> wrote:
>> >> >
>> >> >> > [...]
>> >> >> >> +     # backward compatibility for non-array variables
>> >> >> >> +     if [[ -n ${DOCS} ]] && [[ "$(declare -p DOCS
>> >> >> >> 2>/dev/null
>> >> >> >> 2>&1)" != "declare -a"* ]]; then
>> >> >> >> +             dodoc ${DOCS} || die "dodoc failed"
>> >> >> >> +     fi
>> >> >> >> +     if [[ -n ${HTML_DOCS} ]] && [[ "$(declare -p HTML_DOCS
>> >> >> >> 2>/dev/null 2>&1)" != "declare -a"* ]]; then
>> >> >> >> +             dohtml -r ${HTML_DOCS} || die "dohtml failed"
>> >> >> >> +     fi
>> >> >> >>  }
>> >> >> >
>> >> >> > maybe issue an eqawarn in that case telling people to convert
>> >> >> > to arrays; some time later make this an ewarn telling
>> >> >> > non-array support will be removed and again later make this a
>> >> >> > die :) (if you take that route i would expect you to start
>> >> >> > converting packages to use arrays)
>> >> >> >
>> >> >>
>> >> >> We have no intention of deprecating non-array variables in
>> >> >> qt4-r2 eclass.
>> >> >
>> >> > why ? having two codepaths for the same thing, one being
>> >> > inferior, sounds like a good reason to deprecate the inferior
>> >> > one :)
>> >> >
>> >> > A.
>> >> >
>> >>
>> >> Maintaining these two codepaths has practically zero cost, while
>> >> forcing every ebuild using qt4-r2 to switch to arrays would waste
>> >> developers' time which is better spent elsewhere.
>> >>
>> >> Furthermore, the non-array variant is not necessarily inferior,
>> >> because it allows you to use bash globbing, brace expansion, etc...
>> >
>> > And arrays stopped to allow that overnight?
>> >
>>
>> I mean that the following won't work as you might expect:
>>
>>     DOCS=("*.txt")
>
> I doubt anyone would expect quoted string to be evaluated as glob.
>

It depends on when the expansion is performed, although in the
base.eclass case, DOCS=(*.txt) doesn't work either, because the
quoting happens inside the eclass function.

Anyway, I was just explaining why I argued that "the non-array variant
is not necessarily inferior". Using DOCS="*.txt" is actually a
supported use case and a valid reason not to deprecate non-array
variables.

Regards,
Pesa

Reply via email to