You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ArgParser: read ArgumentHelpText from nested records and unions
The type-level help lookup ran only against the [<ArgParser>]-tagged
root, so an [<ArgumentHelpText>] on a nested argument record or union
was silently ignored -- despite the attribute documenting itself as
applying to a record type generally. RecordType.Attributes and
UnionType.Attributes were already to hand at the nesting site; nothing
was reading them.
The nested type's help now heads the group its arguments form, wherever
that type is embedded. A field's own [<ArgumentHelpText>] overrides it:
the field is the more specific placement, and one type may be embedded
at several sites for different purposes.
Both the root lookup and the field lookup now go through one
helpTextAttribute helper, rather than three copies of the same tryPick.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,13 @@
1
1
Notable changes are recorded here.
2
2
3
+
# WoofWare.Myriad.Plugins 10.7.2
4
+
5
+
`ArgParserGenerator` now reads `[<ArgumentHelpText>]` from a nested argument record or union of alternative argument sets, and not only from the `[<ArgParser>]`-tagged root.
6
+
The nested type's help heads the group of arguments that type contributes, wherever it is embedded; previously it was silently ignored, despite the attribute documenting itself as applying to a record type generally.
7
+
8
+
An `[<ArgumentHelpText>]` on the *field* overrides the one on the type it refers to.
9
+
The field is the more specific placement, and one type may be embedded at several sites for different purposes, so that is the one which can say what a particular occurrence is for.
10
+
3
11
# WoofWare.Myriad.Plugins 10.7.1
4
12
5
13
`ArgParserGenerator` help text now groups the arguments contributed by a field whose type is another argument record, or a union of alternative argument sets, under a header line naming that field.
0 commit comments