public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Tom Rini <trini@konsulko.com>
To: Simon Glass <sjg@chromium.org>
Cc: Wolfgang Denk <wd@denx.de>,
	U-Boot Mailing List <u-boot@lists.denx.de>,
	Rasmus Villemoes <rasmus.villemoes@prevas.dk>,
	Heinrich Schuchardt <xypron.glpk@gmx.de>,
	Joe Hershberger <joe.hershberger@ni.com>
Subject: Re: [PATCH v8 4/8] env: Allow U-Boot scripts to be placed in a .env file
Date: Tue, 19 Oct 2021 12:44:49 -0400	[thread overview]
Message-ID: <20211019164449.GJ7964@bill-the-cat> (raw)
In-Reply-To: <CAPnjgZ00MfCPTpUkD_=dgC463ve4cqXj0c=2xFEYX2yqtsEk8w@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3050 bytes --]

On Tue, Oct 19, 2021 at 10:39:55AM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Tue, 19 Oct 2021 at 10:30, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Tue, Oct 19, 2021 at 10:24:25AM -0600, Simon Glass wrote:
> > > Hi Wolfgang,
> > >
> > > On Tue, 19 Oct 2021 at 10:20, Wolfgang Denk <wd@denx.de> wrote:
> > > >
> > > > Dear Simon,
> > > >
> > > > In message <CAPnjgZ1p6ueRhDsgBZGMXFhgv7UhRFA1UfvoHGGd0-136oTgvA@mail.gmail.com> you wrote:
> > > > >
> > > > > But how do we handle this?
> > > > >
> > > > > var+=fred
> > > > >
> > > > > Is this appending to var or assigning to var+  ?
> > > >
> > > > It is assigning to "var+".
> > >
> > > er...
> > >
> > > > >
> > > > > var++=fred
> > > > >
> > > > > is unambiguous but very confusing. I think it would be better to disallow +
> > > >
> > > > It's neither unambiguous nor confusing.  It is assigning to "var++".
> > >
> > > What? Can you read that again?
> >
> > With the assumption that the append operator is "=+" and NOT "+=" then
> > yes, your examples are unambiguous because = is not allowed in variable
> > names, before and after.
> >
> > > > I think we should not change what is old and might be in use.
> > > >
> > > > It is much easier to change what is new and can be defined at will.
> > > >
> > > > If we define for example that "<name>=+<value>" appends, then we can
> > > > also define our own escape rules, for example:
> > > >
> > > >         var=fred        assigns
> > > >         var=+fred       appends "fred"
> > > >         var=\+fred      assignes the value "+fred"
> > > >         var=++fred      appends "+fred"
> > >
> > > I don't like that at all. It requires an escape for a common case and
> > > is very confusing.
> >
> > Wait saying we'll add "+SOMETHING" is a common case?
> 
> Yes we have places where we add to env vars depending on CONFIG settings.

Yes, but what requires escape is we want "var" to evaluate to or append
the string "+fred".  Not append "fred" which is common.

> > > Since people will be converting their out-of-tree scripts anyway, they
> > > can check for this sort of madness at the time. There should be no
> > > problem.
> >
> > I'm not sure I like saying the operator is "=+" rather than "+=" because
> > "=+" is a less commonly seen operator and tends to be an alternative
> > appends for special cases / side-effects / position in parsing.
> 
> Me neither. I started hearing Voltaire's admonition ringing in my head
> a few emails back.
> 
> The way I have this, is it fairly trivial to convert an existing
> script to a text file. I suspect it can be done automatically but I
> have not actually tried it. I'd really like to keep it simple. I also
> want to invoke the 'if you are not in mainline you don't exist' maxim
> at this point.

I really want to see the non-trivially-constructed case where "+" is at
the end of a variable today.  If we can support it in the middle, yes, I
can see how there might be example of that in use today.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

  reply	other threads:[~2021-10-19 16:45 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-18 18:13 [PATCH v8 0/8] env: Allow environment in text files Simon Glass
2021-10-18 18:13 ` [PATCH v8 1/8] binman: Allow timeout to occur in the image or its section Simon Glass
2021-10-19 14:19   ` Marek Behún
2021-10-31 12:57     ` Simon Glass
2021-10-18 18:13 ` [PATCH v8 2/8] sandbox: Drop distro_boot Simon Glass
2021-10-19 14:20   ` Marek Behún
2021-10-18 18:13 ` [PATCH v8 3/8] doc: Move environment documentation to rST Simon Glass
2021-10-19 14:21   ` Marek Behún
2021-10-18 18:13 ` [PATCH v8 4/8] env: Allow U-Boot scripts to be placed in a .env file Simon Glass
2021-10-19 10:57   ` Wolfgang Denk
2021-10-19 14:07   ` Tom Rini
2021-10-19 14:11     ` Simon Glass
2021-10-19 14:25       ` Tom Rini
2021-10-19 15:31         ` Simon Glass
2021-10-19 16:20           ` Wolfgang Denk
2021-10-19 16:24             ` Simon Glass
2021-10-19 16:30               ` Tom Rini
2021-10-19 16:39                 ` Simon Glass
2021-10-19 16:44                   ` Tom Rini [this message]
2021-10-19 18:21                     ` Simon Glass
2021-10-21  9:10                   ` Wolfgang Denk
2021-10-21  9:05                 ` Wolfgang Denk
2021-10-21  9:02               ` Wolfgang Denk
2021-10-19 16:05       ` Wolfgang Denk
2021-10-19 16:14         ` Simon Glass
2021-10-19 15:57     ` Wolfgang Denk
2021-10-19 15:11   ` Marek Behún
2021-10-18 18:13 ` [PATCH v8 5/8] sandbox: Use a text-based environment Simon Glass
2021-10-19 14:32   ` Marek Behún
2021-10-19 15:52     ` Simon Glass
2021-10-19 16:07       ` Marek Behún
2021-10-18 18:13 ` [PATCH v8 6/8] doc: Mention CONFIG_DEFAULT_ENV_FILE Simon Glass
2021-10-19 14:34   ` Marek Behún
2021-10-19 15:52     ` Simon Glass
2021-10-19 16:07       ` Marek Behún
2021-10-19 18:20         ` Simon Glass
2021-10-18 18:13 ` [PATCH v8 7/8] doc: Improve environment documentation Simon Glass
2021-10-19 14:36   ` Marek Behún
2021-10-18 18:13 ` [PATCH v8 8/8] bootm: Tidy up use of autostart env var Simon Glass
2021-10-19 14:38   ` Marek Behún
2021-10-19 10:48 ` [PATCH v8 0/8] env: Allow environment in text files Wolfgang Denk

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=20211019164449.GJ7964@bill-the-cat \
    --to=trini@konsulko.com \
    --cc=joe.hershberger@ni.com \
    --cc=rasmus.villemoes@prevas.dk \
    --cc=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    --cc=wd@denx.de \
    --cc=xypron.glpk@gmx.de \
    /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