From: Peter Stephenson <p.stephenson@samsung.com>
To: zsh-users@zsh.org
Subject: Re: Next release (5.3)
Date: Wed, 13 Jul 2016 10:32:33 +0100 [thread overview]
Message-ID: <20160713103233.14bfd05a@pwslap01u.europe.root.pri> (raw)
In-Reply-To: <37271.1468354988@hydra.kiddle.eu>
On Tue, 12 Jul 2016 22:23:08 +0200
Oliver Kiddle <okiddle@yahoo.co.uk> wrote:
> Bart wrote:
>
> Thanks for the concise summary.
>
> > The present situation is:
> >
> > 1. :a performs a string-manipulation on the path to remove any
> > relative path segments.
> > 2. :A does (1) and then calls realpath on the result.
>
> The only advantage I can think of that is that it might do what you want
> in the case where you don't have read permissions on one of the
> intermediate directories. Otherwise, the potential for the result being
> a different file is not good.
I've seen that last statement a lot recently and I think it's misleading.
It's not wrong but it's far from the whole story given the complexities
involved.
It's long-standing behaviour of zsh that by default directories are
managed logically, not physically, and hence that a ".." takes you up in
the logical hierarchy, i.e. the one you see in the string.
It's true that this case here isn't to do with $PWD or changing
directory etc. etc., but you don't know where the path you're applying
to the expression that's getting the :A has come from. It might very
well have been something that was previously used for directory
management (it's a directory, after all). In *that* case, changing the
behaviour of :A introduces bugs. (Rather than it being a different
file, which is possible but unlikely, it's much more likely to refer to
something that doesn't exist at all --- less dangerous, but still
unhelpful.)
No one can actually point to a specific error case being fixed by the
change.
I suggest we focus on improving the documentation of :A, as the current
".." behaviour is one thing it *is* clear about so it's a little
bizarre to change *that*, to point out problems, and decide if we
actually want a new qualifier, which I think would be fairly
uncontroversial even if it's not frequently used.
pws
next prev parent reply other threads:[~2016-07-13 9:32 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-05 4:57 realpath(3), symlinks, '..' components, and the ':A' word modifier Daniel Shahaf
2016-07-05 12:54 ` Roland Eggner
2016-07-05 13:24 ` Vadim Zeitlin
2016-07-06 15:15 ` Filipe
[not found] ` <20160705125430.GA29959__3886.85245202414$1467723835$gmane$org@mobil.systemanalysen.net>
2016-07-07 2:00 ` Daniel Shahaf
2016-07-07 17:20 ` Bart Schaefer
[not found] ` <20160705093321.79d7c4bc@pwslap01u.europe.root.pri>
2016-07-12 7:58 ` Next release (5.3) Roman Neuhauser
2016-07-12 16:40 ` Bart Schaefer
2016-07-12 20:23 ` Oliver Kiddle
2016-07-13 2:56 ` Filipe Silva
2016-07-13 4:45 ` Bart Schaefer
2016-07-13 5:09 ` Filipe Silva
2016-07-13 9:32 ` Peter Stephenson [this message]
2016-07-13 9:59 ` Peter Stephenson
2016-07-13 16:35 ` Bart Schaefer
2016-07-13 16:59 ` Peter Stephenson
2016-07-13 17:50 ` Bart Schaefer
[not found] ` <20160713105910.2b33701c__17004.846657119$1468404086$gmane$org@pwslap01u.europe.root.pri>
2016-07-17 14:59 ` Daniel Shahaf
[not found] ` <20160713103233.14bfd05a__26126.9551389434$1468402471$gmane$org@pwslap01u.europe.root.pri>
2016-07-17 14:59 ` [PATCH] improve :A docs (was: Re: Next release (5.3)) Daniel Shahaf
[not found] ` <20160717145931.GA4859__10178.6871244714$1468767679$gmane$org@tarsus.local2>
2016-07-20 6:54 ` Daniel Shahaf
2016-07-13 7:41 ` Next release (5.3) Roman Neuhauser
2016-07-13 17:36 ` Bart Schaefer
2016-07-20 13:05 ` Vincent Lefevre
2016-07-20 14:00 ` Vincent Lefevre
2016-07-20 14:15 ` Peter Stephenson
2016-07-20 14:19 ` Peter Stephenson
[not found] ` <20160720151517.6a833f2c__37436.2382958227$1469024822$gmane$org@pwslap01u.europe.root.pri>
2016-07-21 5:40 ` Daniel Shahaf
2016-07-21 9:19 ` Peter Stephenson
2016-07-21 3:50 ` Bart Schaefer
[not found] ` <160712094017.ZM17395__33553.1437922784$1468341719$gmane$org@torch.brasslantern.com>
2016-07-13 5:00 ` Daniel Shahaf
[not found] ` <20160712075849.GG1537__20664.8654224866$1468310440$gmane$org@isis.sigpipe.cz>
2016-07-13 5:01 ` Daniel Shahaf
2016-07-20 12:44 ` realpath(3), symlinks, '..' components, and the ':A' word modifier Vincent Lefevre
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=20160713103233.14bfd05a@pwslap01u.europe.root.pri \
--to=p.stephenson@samsung.com \
--cc=zsh-users@zsh.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.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).