Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: List of pending patches
- X-seq: zsh-workers 55107
- From: Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx>
- To: Zsh hackers list <zsh-workers@xxxxxxx>
- Subject: Re: List of pending patches
- Date: Sat, 22 Aug 2026 18:04:35 -0700
- Arc-authentication-results: i=1; mx.google.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=p+1A1u2VLaxhEAXZcVQkIm2FTbEdD3AJUGRq573NbUs=; fh=BgAYDYpL6Ne/A5nWEMVJiHiBtrz8Imz3uf26RDwgQX4=; b=r3AHGfvSCKnaQs/dHevWoixOJq9XD6UT3F/Ji5QcsLdFZrpkLtW9kAWniphSIQgXDa zFZlLI2xIqviABln61BHPmU433xOqeSOnI0CFODsjG9J0P9toLlQhqpJxNEGrHGbRa+k C+ivtsrNptmHXb9VeCLXcp/IOA87CpxJVNmslLLif3c7AhLyyWF7Zyx2miSri6H4Z4u7 BklcNaNsQMoCgT1aXvWOHCCYve+UrBfXm/szkaCbGngFlJ2k38L8QV2Z6tyECX+DWgBs dC8rrX5ThxsK4sOSaHSdrrXiI5CHH+UCywO5NT4MQfsTAXfqu+QK3+UJhyVeueAizImi aC0A==; darn=zsh.org
- Arc-seal: i=1; a=rsa-sha256; t=1787447088; cv=none; d=google.com; s=arc-20260327; b=POpsp2lbishP16KIpSVjcFhahpyPl4wiKMAklcpNbT2KbWHGr+axJZLJMFuDS8w2zv UIG2IBwF4P+3hxXUjezIBPH8X38TQa4J9EuqwJ3HLuDjVu8SUszdciy1k1cCSfPwmSPR EDMLJI2C5kflcsN4XJruEeT0oUFagwLW6/Joqwpoeg+RTnSw2mvxAciSZZr1xqR/0guP 0C1/XrQvrSQc16Yaid3s1vu8e6mSF6pk9NdAazLh3kbylQaLCRUgD3pqQDQmwXqqyAEH di9VkfNOeo9OQtdc2hV7lTpTEj0LcR+mSHueFN3cJHT3xpBMEO1hns25dZiT+SeiE1nu 3F5w==
- Archived-at: <https://zsh.org/workers/55107>
- In-reply-to: <CAGdYchuajL_fgWA1qfcHuFFkhGsZCNVYsp6p+dnNTt5DoGn5BQ@mail.gmail.com>
- List-id: <zsh-workers.zsh.org>
- References: <CAGdYchuajL_fgWA1qfcHuFFkhGsZCNVYsp6p+dnNTt5DoGn5BQ@mail.gmail.com>
On Fri, Aug 14, 2026 at 4:26 PM Philippe Altherr
<philippe.altherr@xxxxxxxxx> wrote:
>
> The following two would be helpful for ongoing work.
>
> - Drop some reference specific code from typeset - workers/55046
I've not applied this because it appears to duplicate parts of 55026
-- can you provide another updated patch?
> - Use realparamtab in param_private.c and util.c - workers/54810
I decided to apply only the param_private.c hunks of this, changing
util.c would prevent spell checking of hash keys should that ever come
up.
> - Perform cumulative typesetting also on parameters with no value - workers/55020
Done
> - More readable parameter definitions in params.c - workers/55022
Accepted
> - Fix bang flag in ${(!)ref::=var} substitutions - workers/55026
Applied
> - Don't map ksh's ! to Zsh's (!k), map it to (k) - workers/55047
I've applied the first patch but not yet the "DO NOT COMMIT" patch.
However, I'm inclined to agree with your assessment in workers/55091
after reviewing your table.
> - The substitution flags (v!) are forbidden, also forbid (!v) - workers/54940
Done (oops, I was trying to do each in X-Seq order to avoid conflicts,
but missed this one)
> - Forbid break/continue in subshells - workers/55061
Included the first patch, but not the second ("break N" would error
for oversize N).
> - Fix named reference documentation - workers/55069
Applied, but I have a niggle with this bit:
+A named reference declared with the `tt(-n)' option to any of the
+`tt(typeset)' commands acts as a reference to another parameter, which
"A named reference ... acts as a reference" reads wrong to me, The
original sentence "A named parameter declared with ..." intentionally
did not introduce the term "named reference" until after "acts as a
reference" had been stated. (The original term "named parameter" was
differentiating from "positional parameter" in context.)
> - Reorder the documentation of typeset flags - workers/55070
> Only documentation
I've not applied this yet because I'm not entirely happy with moving
'-n' into the list of parameters with everything else. The
introduction to `typeset` looks like this:
typeset [ {+|-}AHUaghlmrtux ] [ {+|-}EFLRZip [ N ] ]
[ + ] [ NAME[=VALUE] ... ]
typeset {+|-}n [ -g ] [ {+|-}r ] [ NAME[=VALUE] ... ]
typeset -T [ {+|-}Uglrux ] [ {+|-}LRZp [ N ] ]
[ + | SCALAR[=VALUE] ARRAY[=(VALUE ...)] [ SEP ] ]
typeset -f [ {+|-}TUkmtuz ] [ + ] [ NAME ... ]
This implies that there are four different entities being managed:
"normal" parameters with all their bells and whistles; named
references; tied parameters; and functions. Rearranging the
documentation to mix all of the "flags" into one table discards these
distinctions. (Yes, I acknowledge that '-f' is already "in the wrong
place" from this standpoint.)
Noting for reference that the intro needs -H and -h added to to
`typeset {+|-}n ...` too.
> The following should probably wait after the work on inline assignments (and localized special parameters):
>
> - Don't export hidden parameters - workers/54987
> - In inline assignments, assign the reference, not its referent - workers/54944
Left those for the "language design" thread as previously noted.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author