- Longnames in a command option if modified via
name modifier didn't provide enough backmapping
info for command execution experience being accurate.
- Add new getLongNamesModified() into CommandOption
which is populated if name modifier is used.
- Add more hints in CommandExecution for modified
option names.
- This should bring annotation
and programmatic commands up to date.
- Backport #777
- Fixes#782
- Fixes issue when last "word" is within quotes and
cursor is at the end of a line which caused empty
"word" string in an argument list.
- This then caused i.e. string option to have a collection
as an input(if no arity settings used) and via
spring conversions a comma were added.
- Backport #763
- Fixes#764
- Annotate ShellComponent with @Reflective and use custom
AvailabilityReflectiveProcessor to find possible method
targets returning Availability.
- Backport #747
- Fixes#758
- Use io.spring.asciidoctor.backends:spring-asciidoctor-backends:0.0.5
- As this relates to anon repo access, use ge conventions from
public repos and fix some other used repos.
- Backport #722
- Fixes#724
- In `CommandRegistration` add `ResolvableType` for `OptionSpec` giving
more spesific handling of a type.
- In `CommandParser` handle source and target types so that we
have generics with `List`, `Set` and arrays working better.
- In `HandlerMethodArgumentResolver` add better handling for
`ConversionService` for generic types.
- In `StandardMethodTargetRegistrar` add better types via `ResolvableType`
now that `CommandRegistration` support it.
- In `OptionConversionCommands` remove converter from `String` to `Set` as
now things should work as is if generic in a `Set` has a converter.
- Backport #694
- Fixes#699
- When target is set and only one option argument is given,
we should not convert to list as user expects string to xxx
Converter to work.
- This is how it used to work and previous changes caused
regression.
- Bug is actually in an old parser and new parser works fine.
- Backport #667
- Fixes#670
- ShellTest now has fields which can be used to
change terminal default widht/height.
- Backed by properties so can be used with
`spring.shell.test.terminal-width` and
`spring.shell.test.terminal-height`.
- Backport #656
- Fixes#659
- Now lexing better with valid options
- Only report unrecognised option with double dash
as current parser don't have structure to do
deeper analysis.
- Backport #651
- Fixes#652