From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: pesa@gentoo.org
Subject: Re: [gentoo-dev] RFC: using array variables in qt4-r2.eclass
Date: Sun, 15 Jul 2012 17:53:36 +0200 [thread overview]
Message-ID: <20120715175336.0df6d073@pomiocik.lan> (raw)
In-Reply-To: <CADfzvvZ1Cy2BCua1s5973uG5et6PVSQtNSPL81UsWhBx4wvT3Q@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 3141 bytes --]
On Sun, 15 Jul 2012 17:36:05 +0200
Davide Pesavento <pesa@gentoo.org> wrote:
> On Sun, Jul 15, 2012 at 3:42 PM, Michał Górny <mgorny@gentoo.org>
> wrote:
> > On Sun, 15 Jul 2012 13:00:47 +0200
> > Davide Pesavento <pesa@gentoo.org> wrote:
> >
> >> On Sat, Jul 14, 2012 at 4:00 PM, Michał Górny <mgorny@gentoo.org>
> >> wrote:
> >> > On Sat, 14 Jul 2012 12:29:59 +0200
> >> > Davide Pesavento <pesa@gentoo.org> wrote:
> >> >
> >> >> On Fri, Jul 13, 2012 at 3:50 PM, Alexis Ballier
> >> >> <aballier@gentoo.org> wrote:
> >> >> > On Fri, 13 Jul 2012 15:26:58 +0200
> >> >> > Davide Pesavento <pesa@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.
So, you're saying that you're going to support two different variants
of the variable which work two different ways?
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 316 bytes --]
next prev parent reply other threads:[~2012-07-15 15:54 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-13 12:02 [gentoo-dev] RFC: using array variables in qt4-r2.eclass Ben de Groot
2012-07-13 12:34 ` Alexis Ballier
2012-07-13 13:26 ` Davide Pesavento
2012-07-13 13:50 ` Alexis Ballier
2012-07-14 10:29 ` Davide Pesavento
2012-07-14 14:00 ` Michał Górny
2012-07-15 11:00 ` Davide Pesavento
2012-07-15 13:42 ` Michał Górny
2012-07-15 15:36 ` Davide Pesavento
2012-07-15 15:53 ` Michał Górny [this message]
2012-07-15 16:15 ` Davide Pesavento
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120715175336.0df6d073@pomiocik.lan \
--to=mgorny@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
--cc=pesa@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox